Vad är Compact Blocks?
Compact Blocks är ett sätt för Bitcoin-noder att dela nya block med betydligt färre byte utan att förlora någon information. Istället för att skicka varje fullständig transaktion byter noder en liten sammanfattning så att peers kan bygga upp blocket från det de redan har. Tänk på det som att skicka namnet på en spellista till en vän som redan har laddat ner låtarna.
“Compact Blocks förändrar blockens storlek.” Nej. Blocket som finns i kedjan förblir detsamma. Det här handlar endast om hur noder synkar det snabbare och med mindre data över nätverket.
Hur Compact Blocks fungerar
Föreställ dig att en miner hittar ett giltigt block och din nod vill ha det direkt. Istället för att skicka hela blocket skickar en granne ett litet paket så att du kan återskapa det lokalt.
- Steg 1: En nod meddelar ett nytt block genom att skicka sina blockheaders och några ledtrådar.
- Steg 2: Tillsammans med headern inkluderar den korta ID för transaktioner som den antar att du redan har i din mempool.
- Steg 3: Din nod matchar de korta ID mot mempoolen och återskapar större delen av blocket lokalt.
- Steg 4: Om något fattas begär din nod endast de specifika transaktionerna som saknas.
- Steg 5: Du verifierar det återbyggda blocket och går vidare, helst några hundra millisekunder snabbare.
Små meddelanden, snabbare synk, samma säkerhet. Ja, det är tanken.
Varför Compact Blocks spelar roll
Eftersom tid och bandbredd är pengar, och noder värdesätter båda.
- Fördel: Mindre data skickad per block betyder minskad bandbreddsanvändning och snabbare spridning i nätverket.
- Synpunkt: Snabbare spridning minskar risken för föråldrade block och förbättrar den övergripande skalbarheten på ett praktiskt sätt.
- Betydelse: Om du kör en nod hemma eller i molnet är detta en del av varför synkningen fungerar bra även vid hög belastning.
Om du kör en Bitcoinnod, håll din mempool välfylld och dina anslutna noder i gott skick. Ju mer överlappning du har, desto bättre presterar Compact Blocks.
Nyckelkaraktäristika för Compact Blocks
Lyft fram de viktigaste dragen som gör detta unikt. Håll dem korta och enkla att skumma igenom:
- Lättviktig: Skickar identifierare i stället för fullständiga transaktioner när det är möjligt.
- Snabb: Kortare meddelanden innebär att block sprids snabbare mellan noder.
- Selektiv: Endast de saknade transaktionerna hämtas, inte hela blocket igen.
- Kompatibel: Fungerar med ordinarie blockverifiering och mempool-logik.
Varianter
Olika protokoll strävar efter liknande mål, var och en med sin egen approach.
- Compact: Standard i Bitcoin via BIP 152, praktisk och utbredd.
- Graphene: Forskningsdriven idé med set reconciliation och smartare kodning.
- Xthin: Ett tidigare tillvägagångssätt som använts av vissa forks, med fokus på tunn blocköverföring.
- Erlay: Ett förslag för att minska overhead vid transaktionsrelä, som fungerar väl tillsammans med koncepten bakom Compact Blocks.
Compact Blocks ändrar hur data delas mellan noder, inte hur block byggs eller verifieras. Säkerhetskontrollerna förblir desamma.
Exempel
En miner hittar ett nytt block, din nod får headern och korta ID, fyller det mesta från mempoolen, hämtar två saknade transaktioner, validerar det och vidarebefordrar det.
Kul fakta
Compact Blocks infördes i Bitcoin som BIP 152 och rullades ut 2016, vilket tyst minskade bandbreddsanvändningen avsevärt under perioder med hög mempool-belastning.
Sammanfattning
Vill du ha en mening så här är den: Compact Blocks håller block autentiska samtidigt som nedladdningen känns som en genväg.
