Halving
În spațiul criptomonedelor, termenul de halving se referă la un proces care reduce rata de emisiune a monedelor noi. Mai exact, halvingul reprezintă reducerea periodică a subvenției de bloc acordate minerilor. Halvingul asigură că un activ cripto va urma o rată de emisiune constantă până când
rezerva sa maximă este atinsă în cele din urmă.
Când vine vorba de Bitcoin, monedele noi sunt generate continuu ca parte a
recompensei de bloc (care este alcătuită din subvenția blocului plus comisioanele de tranzacție). Deci, de fiecare dată când un miner „descoperă” și validează cu succes un nou
bloc, câștigă monede nou create drept compensație pentru
munca sa.
Deci, procesul de
minerit este cel care introduce noi
Bitcoini în sistem, iar acest lucru se face într-un ritm previzibil și controlat. Noile blocuri Bitcoin sunt minerite, în medie, la fiecare 10 minute, iar subvenția blocurilor urmează o rată de scădere controlată. În consecință, halvingul este cel care asigură că subvenția de bloc va scădea cu 50% la fiecare 210.000 de blocuri (aproximativ la fiecare patru ani).
Începând cu
blocul de geneză, subvenția de bloc a Bitcoin a fost stabilită inițial la 50 BTC. Apoi, a fost redusă la 25 BTC în 2012 și la 12,5 BTC în 2016. Se estimează că următorul halving va avea loc în jurul lunii mai 2020, reducând subvenția de bloc la 6,25 BTC. După ce vor avea loc 32 de halvinguri, procesul se va opri și nu se vor mai crea Bitcoini. În acel moment, va fi atinsă rezerva maximă de 21 de milioane de BTC.
Urmăriți halvingul Bitcoin
Halvingul este o parte importantă a protocolului Bitcoin și, deoarece codul este cu sursă deschisă, oricine îl poate vedea. De exemplu, implementarea
Bitcoin Core este disponibilă pe
GitHub, iar una dintre
secțiunile de cod care definește subvenția de bloc arată astfel:
CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams)
{
int halvings = nHeight / consensusParams.nSubsidyHalvingInterval;
// Force block reward to zero when right shift is undefined.
if (halvings >= 64)
return 0;
CAmount nSubsidy = 50 * COIN;
// Subsidy is cut in half every 210,000 blocks which will occur approximately every 4 years.
nSubsidy >>= halvings;
return nSubsidy;
}