Mit jelent a munka bizonyítása?
A munkadokumentum olyan rendszert ír le, amely nem jelentéktelen, de megvalósítható erőfeszítést igényel a számítástechnika könnyű vagy rosszindulatú felhasználásának elkerülése érdekében, például spam e-mailek küldése vagy szolgáltatásmegtagadási támadások elindítása. A koncepciót Hal Finney 2004-ben a pénzhez igazította a pénz újrafelhasználható bizonyításának gondolatán keresztül. A 2009-es bevezetést követően a bitcoin lett a Finney ötletének első széles körben alkalmazott alkalmazása (Finney volt az első bitcoin-tranzakció címzettje). A munka bizonyítéka számos más kriptovaluta alapját is képezi.
A munka igazolása megmagyarázva
Ez a magyarázat a munka igazolására összpontosít, mivel a bitcoin hálózatban működik. A Bitcoin egy digitális valuta, amelyet egyfajta elosztott főkönyv alátámaszt. Ez a főkönyv az összes bitcoin-tranzakció nyilvántartását tartalmazza, egymás utáni "blokkokban" elrendezve, így egyetlen felhasználónak sem szabad kétszer költenie a gazdaságokba. A hamisítás megakadályozása érdekében a főkönyv nyilvános vagy "elosztott"; egy megváltoztatott verziót a többi felhasználó gyorsan elutasít.
A felhasználók a gyakorlatban a hamisítást észlelhetik hash-ok, hosszú számsorok révén, amelyek bizonyítják a munkát. Adjon egy adott adatkészletet hash-funkción keresztül (a bitcoin az SHA-256-at használja), és csak egyszer generál egy hash-ot. A "lavinahatás" miatt azonban az eredeti adatok bármely részének apró módosítása teljesen felismerhetetlen kivonatot eredményez. Bármi legyen is az eredeti adatkészlet mérete, az adott funkció által generált kivonat azonos hosszúságú lesz. A hash egyirányú funkció: nem használható az eredeti adatok beszerzésére, csak annak ellenőrzésére, hogy a hash-ot előállító adatok megegyeznek az eredeti adatokkal.
A bitcoin-tranzakciók készítéséhez bármilyen kivonat generálása triviális lenne egy modern számítógép számára, tehát ahhoz, hogy a folyamatot „munkássá” alakítsák, a bitcoin-hálózat bizonyos szintű „nehézséget” állít fel. Ezt a beállítást úgy állítják be, hogy egy új blokkot "bányítsanak ki" - adjunk hozzá a blokklánchoz érvényes hash generálásával - kb. 10 percenként. A beállítási nehézség a hash "céljának" létrehozásával érhető el: minél alacsonyabb a cél, annál kisebb az érvényes hash-készlet, és annál nehezebb előállítani. A gyakorlatban ez azt jelenti, hogy egy hash hosszú nullás karakterlánccal kezdődik: például a # 429818 blokk kiviteli száma: 000000000000000004dd3426129639082239efd583b5273b1bd75e8d78ff2e8d. Ez a blokk 2, 012 tranzakciót tartalmaz, amelyek alig több mint 1000 bitcoint tartalmaznak, valamint az előző blokk fejlécét. Ha a felhasználó egy tranzakciós összeget 0, 0001 bitcoinnal változtatott volna meg, akkor a kivonat nem lenne felismerhető, és a hálózat elutasítja a csalást.
Mivel egy adott adatkészlet csak egy kivonatot képes előállítani, hogyan tudják a bányászok megbizonyosodni arról, hogy a cél alatt kivonatot generálnak? Megváltoztatják a bemenetet egy egész szám hozzáadásával, amelyet nonce-nek hívnak ("egyszer használt szám"). Miután megtalálható egy érvényes kivonat, azt továbbítja a hálózatra, és a blokk hozzáadódik a blockchainhez.
A bányászat versenyképes folyamat, de inkább lottó, mint verseny. Átlagosan valaki tíz percenként elfogadható bizonyítékot állít elő a munkáról, de ki lesz az, kit gondolja valaki. A bányászok egyesülnek, hogy növeljék a bányászati blokkok esélyét, ami tranzakciós díjakat és korlátozott ideig díjat generál az újonnan létrehozott bitcoinokért.
A munka bizonyítása rendkívül megnehezíti a blokklánc bármely aspektusának megváltoztatását, mivel egy ilyen változtatáshoz az összes következő blokk újbóli bányászatához lenne szükség. Ezenkívül megnehezíti a felhasználót vagy a felhasználói csoportot a hálózat számítási teljesítményének monopolizálását, mivel a hash-funkciók végrehajtásához szükséges gépek és energia drágák.