Halvering

Begynder
I kryptovalutaområdet henviser udtrykket halvering til en proces, der reducerer udstedelseshastigheden af nye coins. Mere præcist er halvering den periodiske reduktion af bloktilskuddet til minere. Halveringen sikrer, at et kryptoaktiv vil følge en stabil udstedelseshastighed, indtil dets maksimale udbud til sidst nås.
Når det drejer sig om bitcoin, genereres der løbende nye coins som en del af block reward (som består af bloktilskuddet plus transaktionsgebyrer). Så hver gang en miner "opdager" og validerer en ny blok, tjener vedkommende nyoprettede coins som kompensation for sit arbejde
mining-processen er det, der introducerer nye bitcoins i systemet, og det sker i et forudsigeligt og kontrolleret tempo. Nye bitcoin-blokke mines i gennemsnit hvert 10. minut, og bloktilskuddet følger en kontrolleret aftagende hastighed. Halveringen sikrer således, at bloktilskuddet falder med 50 % for hver 210.000 blokke (ca. hvert fjerde år).
Fra oprindelsesblokken blev bitcoins bloktilskud oprindeligt sat til 50 BTC. Derefter blev det reduceret til 25 BTC i 2012 og til 12,5 BTC i 2016. Den efterfølgende halvering forventes at ske omkring maj 2020, hvilket vil reducere bloktilskuddet til 6,25 BTC. Når der er sket 32 halveringer, stopper processen, og der bliver ikke oprettet flere bitcoins. På dette tidspunkt vil det maksimale udbud på 21 millioner BTC være nået.

Følg med i halveringen af bitcoin

Halveringen er en vigtig del af Bitcoin-protokollen, og da koden er open source, kan alle se den. F.eks. er Bitcoin Core-implementeringen tilgængelig på GitHub, og ét af kodeafsnittene, der definerer bloktilskuddet, ser således ud:
CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams)
{
int halvings = nHeight / consensusParams.nSubsidyHalvingInterval;
// Tvinger block reward til nul, når højre forskydning er udefineret.
if (halveringer >= 64)
return 0;

CAmount nSubsidy = 50 * COIN;
// Tilskuddet halveres for hver 210.000 blokke, hvilket vil ske ca. hvert 4. år.
nSubsidy >>= halveringer;
return nSubsidy;
}