Kryptovaluta

Ville rense Bitcoin for «søppeldata» – så stoppet opprøret etter to blokker

Da BIP-110-noder begynte å avvise ordinære Bitcoin-blokker, oppstod en minoritetskjede med bare en brøkdel av nettverkets regnekraft. Søndag formiddag lå den 82 blokker bak hovedkjeden – uten å ha produsert en ny blokk på rundt elleve timer.

Publisert Sist oppdatert



Den omstridte BIP-110-aktiveringen har foreløpig endt i en nær livløs utbryterkjede. Med bare 2,53 prosent støtte fra utvinnerne brøt BIP-110-tilhengerne ut av Bitcoins hovedkjede. Utbryterkjeden arvet full vanskelighetsgrad, men nesten ingen regnekraft. Resultatet ble timevis mellom blokkene, en aktivering som kan ligge mange måneder unna – og risiko for at eiere som selger de nye myntene, samtidig gir fra seg ekte bitcoin.

Splittelsen oppstod ved blokk 961.632 lørdag 8. august. AntPool utvant en blokk som ikke signaliserte støtte til BIP-110. Det ordinære Bitcoin-nettverket godtok blokken, mens noder som håndhever BIP-110 avviste den. Det rapporterer CoinDesk.

En utvinner som benyttet Ocean, produserte i stedet en konkurrerende versjon av blokk 961.632 som BIP-110-nodene bygget videre på. Deretter kom blokk 961.633 – og så stoppet kjeden praktisk talt opp.

Rundt åtte timer etter splittelsen hadde BIP-110-kjeden dermed produsert bare to blokker: sin egen versjon av blokk 961.632 og den påfølgende blokk 961.633. I samme tidsrom hadde Bitcoins hovedkjede nådd blokk 961.681 og beveget seg 48 blokker videre.

En Bitcoin-blokk kommer normalt omtrent hvert tiende minutt. På BIP-110-kjeden gikk det i stedet flere timer mellom blokkene.

Fakta: Dette dreier BIP-110 seg om

Hva er det?
BIP står for Bitcoin Improvement Proposal. BIP-110, formelt kalt «Reduced Data Temporary Softfork», foreslår et midlertidig og strengere sett med konsensusregler for Bitcoin i omtrent ett år. At et forslag har fått et BIP-nummer, betyr ikke i seg selv at det er vedtatt eller har bred støtte.

Hva er målet?
Forslaget skal gjøre det vanskeligere å lagre bilder, tekst og annen vilkårlig informasjon direkte i Bitcoin-transaksjoner. Det er særlig rettet mot Ordinals-inskripsjoner og lignende bruk av blokkjeden som datalager.

Hva endres teknisk?
BIP-110 innfører sju nye regler. Blant annet begrenses ordinære output-skript til 34 byte, mens OP_RETURN-felt kan inneholde opptil 83 byte. Enkelte datapush-operasjoner og witness-elementer begrenses til 256 byte. Forslaget forbyr også Taproot-annexer, store Taproot-kontrollblokker og enkelte Tapscript-konstruksjoner.

Forslaget kan ikke gjøre all skjult datalagring umulig. Data kan fortsatt deles opp eller kamufleres som andre typer transaksjonsinformasjon, men det blir mer tungvint og potensielt dyrere.

Hva skjer med eksisterende bitcoin?
UTXO-er – ubrukte transaksjonsutganger – som ble opprettet før den egentlige aktiveringen, er unntatt fra de nye reglene. Det skal hindre at eksisterende mynter blir låst fordi de benytter konstruksjoner BIP-110 senere forbyr.

Hvorfor ønsker tilhengerne dette?
De mener ikke-finansiell datalagring påfører nodeoperatører unødvendige kostnader, blåser opp blokkjeden og fortrenger betalingsbruk. Bitcoin bør etter deres syn først og fremst være et desentralisert pengesystem, ikke et permanent lager for bilder og filer.

Hva mener motstanderne?
Kritikerne mener at brukere som betaler markedsprisen for blokkplass, må få bruke den som de vil. De advarer også mot at konsensusreglene brukes til å avgjøre hvilke formål som er legitime, og at restriksjonene kan ramme fremtidige løsninger basert på Taproot, Miniscript og avanserte kontrakter.

Hvordan skulle det aktiveres?
For ordinær innlåsing måtte 1.109 av 2.016 blokker – 55 prosent – signalisere støtte. Da terskelen ikke ble nådd, gikk programvaren over til obligatorisk signalering fra blokk 961.632. BIP-110-noder avviser alle blokker som ikke signaliserer støtte frem til blokk 963.647. På BIP-110-kjeden skal forslaget låses inn ved blokk 963.648, mens selve datarestriksjonene først skal håndheves fra blokk 965.664. Reglene skal deretter gjelde i 52.416 blokker, tilsvarende omtrent ett år.

Splittelsen kom før selve «forbudet»

Et viktig skille er at BIP-110s nye begrensninger på transaksjonsdata ennå ikke er aktive.

Det som trådte i kraft ved blokk 961.632, var kravet om obligatorisk signalering. BIP-110-noder begynte da å avvise ellers gyldige blokker dersom de ikke inneholdt et bestemt signal i blokkheaderen.

Noder som følger Bitcoins eksisterende regler, fortsetter derimot å godta både signalerende og ikke-signalerende blokker. Dermed kunne en enkelt blokk uten BIP-110-signalet skille de to kjedene fra hverandre, lenge før de egentlige begrensningene på bilder, tekst og annen data skulle begynne å gjelde.

Bare 51 av 2.016 blokker støttet forslaget

Problemet var at utvinnerstøtten aldri var i nærheten av nivået BIP-110 krevde.

Bare 2,53 prosent av blokkene i den foregående vanskelighetsperioden signaliserte støtte. Det tilsvarer 51 av 2.016 blokker, mot de 1.109 blokkene som krevdes for å nå terskelen på 55 prosent.

Tilhengerne satset derfor på en såkalt brukeraktivert softfork, eller UASF. Tanken er at nodeoperatører kan tvinge frem en regelendring ved å nekte å godta blokker som ikke følger de nye reglene – og dermed legge økonomisk press på utvinnerne.

Men dersom de økonomisk viktige nodene, børsene, lommebøkene og utvinnerne ikke følger etter, skjer det motsatte: Nodene som forsøker å håndheve de nye reglene, kobler seg i praksis fra kjeden resten av markedet bruker.

Det er dette som foreløpig har skjedd med BIP-110.

Arvet full vanskelighetsgrad

Stillstanden har en mekanisk forklaring.

Bitcoin justerer vanskelighetsgraden etter hver 2.016. blokk, med mål om at det i gjennomsnitt skal ta omtrent ti minutter å finne en ny blokk.

BIP-110-kjeden arvet den samme høye vanskelighetsgraden som Bitcoins hovedkjede, men fikk bare med seg en forsvinnende liten andel av den samlede regnekraften. Dermed må langt færre maskiner forsøke å løse oppgaver med nøyaktig samme vanskelighetsgrad.

Resultatet er at blokkene kan bruke flere timer i stedet for ti minutter.

Utbryterkjeden kan heller ikke redusere vanskelighetsgraden umiddelbart. Den må først produsere ytterligere 2.016 blokker. BIP-110-monitoren anslo søndag at dette med det observerte tempoet kunne ta rundt 350 dager, mot normalt cirka 14 dager på Bitcoin.

BIP-110-kjedens obligatoriske signaleringsperiode varer frem til blokk 963.647. Det er altså ikke en tidsfrist i kalenderen, men en blokkhøyde. Kjeden kan teknisk sett nå dit til slutt, men dersom blokkene fortsetter å komme med flere timers mellomrom, ryker hele den planlagte tidslinjen.

«Gratis» forkmynter kan koste ekte bitcoin

Splittelsen skaper også en mer direkte risiko for bitcoin-eiere.

Alle som eide bitcoin før splittelsen, har i utgangspunktet den samme transaksjonshistorikken og den samme saldoen på begge kjedene. Dermed kan det se ut som om de har mottatt en tilsvarende mengde nye BIP-110-mynter gratis.

Problemet er at kjedene ikke har innebygget replay-beskyttelse. En ordinær betalingstransaksjon kan derfor være gyldig på begge kjedene.

Dersom en eier signerer en transaksjon for å selge BIP-110-myntene, kan kjøperen kopiere den signerte transaksjonen og sende den ut på Bitcoins hovedkjede. Da kan samme mengde ekte bitcoin bli sendt til den samme mottakeren.

Dette kalles et replay-angrep. Angriperen trenger ikke stjele private nøkler eller bryte seg inn i lommeboken. Det holder å kopiere en transaksjon eieren allerede har signert.

Angrepet tømmer heller ikke automatisk hele lommeboken. Det er de konkrete transaksjonsutgangene som inngår i den signerte betalingen, som kan bli brukt på begge kjeder. Men for en eier som tror han bare selger verdiløse forkmynter, kan tapet fortsatt bli betydelig.

Bitcoin-utvikler Kevin Loaec har derfor advart eiere mot å flytte eller selge BIP-110-mynter før saldoene på de to kjedene er skilt fra hverandre på en sikker måte.

Ikke teknisk død

BIP-110-kjeden er ikke teknisk død. En utvinner kan finne en ny blokk når som helst, og flere utvinnere kan i teorien flytte regnekraft over til kjeden.

Men en ny blokk alene løser ikke det grunnleggende problemet. For å få normale blokktider må kjeden enten tiltrekke seg vesentlig mer regnekraft eller langsomt arbeide seg frem til neste vanskelighetsjustering.

Foreløpig viser forsøket forskjellen mellom å avvise Bitcoin-kjeden og å få Bitcoin-økonomien med seg. BIP-110-tilhengerne klarte å skape en ny gren av blokkjeden, men ikke å tvinge resten av nettverket over på den. Så langt har de ikke endret Bitcoin. De har forket seg selv ut av Bitcoin.

Bjeffet frem av Labrador