Selfish mining og sikkerhetsmodeller

Hvorfor «ærlig majoritet» kanskje ikke er hele historien.

Satoshis hvitbok argumenterer for at Bitcoin er sikkert så lenge ærlige noder kontrollerer mer CPU-kraft enn noen gruppe angripere. Den argumenterer også for at en stor utvinner ville tjene mer på å følge reglene enn på å angripe. I 2013 utfordret Ittay Eyal og Emin Gün Sirer den andre idéen i «Majority is not Enough».

Angrepet

I selfish mining holder en pool som finner en blokk den hemmelig og fortsetter å mine på den.

  • Hvis poolen finner en andre blokk først, er den foran. Den slipper blokker på en måte som alltid holder den offentlige kjeden bak, så ærlige utvinnere kaster bort arbeidet sitt på blokker som blir stale.
  • Hvis ærlige utvinnere finner en blokk mens poolen er én blokk foran, slipper poolen blokken sin umiddelbart og starter et kappløp. Andelen ærlige utvinnere som bygger på poolens blokk kalles γ (gamma).

Poolen mister noen blokker selv, men ærlige utvinnere mister mer. Siden belønninger fordeles etter blokker i den endelige kjeden, kan poolens andel overstige dens andel av hashkraft.

Tersklene

  • Med γ = 0 (poolen vinner aldri uavgjort) lønner selfish mining seg over omkring 1/3 av total hashkraft.
  • Med γ = 1 lønner det seg ved hvilken som helst størrelse.
  • Forfatterne foreslo at utvinnere velger tilfeldig mellom konkurrerende blokker, noe som ville heve terskelen til 1/4.

Advarselen deres var at rasjonelle utvinnere kunne slutte seg til den selfish poolen til den blir en majoritet.

Har det skjedd?

Det finnes ingen offentlig bekreftet sak om storskala selfish mining på Bitcoin. Det beviser ikke at det er umulig. Det er vanskelig å oppdage sikkert, og pooler bryr seg også om omdømmet sitt og bitcoin-prisen.

Sikkerhetsmodeller

  • Ærlig majoritet: hvitbokens modell. Med en angriper som holder 10 % av hashkraft er sjansen for å ta igjen fra 5 blokker bak omkring 0,09 %.
  • Rasjonelle utvinnere: utvinnere maksimerer fortjeneste. Selfish mining viser at protokollregler og insentiver ikke alltid stemmer overens.
  • Majoritetssangriper: med over 50 % kan en angriper reversere egne nylige betalinger eller blokkere transaksjoner. Den kan fortsatt ikke stjele mynter eller bryte konsensus-reglene nodene håndhever.

Hvorfor propagering betyr noe

Rask blokkvideresending, som kompakte blokker, reduserer stale blokker og begrenser fortrinnet til en godt tilkoblet angriper.