[ANNOUNCE] izvedba gotovinske poštnine
Datum je 28. marec 1997, ko 2000-ih naročnikov poštnega seznama Cypherpunks prejme E-naslov z zgornjo glavo v mapi »Prejeto«. Pošiljatelj je 26-letni britanski postdoc z univerze v Exeterju, mladi kriptograf in ploden sodelavec na poštnem seznamu z imenom Dr. Adam Back. E-poštno sporočilo vključuje opis in zgodnjo izvedbo tega, kar opisuje kot “poštno shemo, ki temelji na delnem razprševanju” – nekakšen žig, enakovreden e-poštnim sporočilom, ki temelji na izvrstnem kriptografskem triku.
“Ideja uporabe delnih zgoščevalnih znakov je, da jih je mogoče izračunati poljubno drago,” je zapisal Back in pojasnil prednost svojega sistema, “vendar jih je mogoče takoj preveriti.”
Ta predlog kriptografa, ki bi v prihodnosti postal sedanji Blockstream Izvršni direktor ni takoj pritegnil veliko pozornosti na e-poštnem seznamu; samo en bralec se je odzval, s tehnično poizvedbo o izbranem algoritmu zgoščevanja. Toda tehnologija, na kateri temelji Hashcash – dokazilo o delu – oblikoval bi raziskave digitalnega denarja še več kot desetletje.
“Cene s pomočjo obdelave ali boja proti neželeni pošti”
Back’s Hashcash pravzaprav ni bila prva tovrstna rešitev.
Do začetka devetdesetih let so obljube interneta in zlasti prednosti elektronskega sistema za pošiljanje postale očitne za tehniko, ki je pozoren. Kljub temu so tedanji internetni pionirji spoznali, da ima elektronska pošta, kot se je imenoval ta elektronski poštni sistem, svoje izzive.
“Zlasti enostavni in nizki stroški pošiljanja elektronske pošte in zlasti preprostost pošiljanja istega sporočila številnim stranem, vendar ne vabijo k zlorabam,” sta IBM-ovi raziskovalki dr. Cynthia Dwork in dr. papir z imenom „Cene s pomočjo obdelave ali boja proti neželeni pošti.”
S povečevanjem priljubljenosti e-pošte se je povečevala tudi vsiljena pošta.
Potrebna je bila rešitev, zgodnji uporabniki interneta so se strinjali – in rešitev je tisto, kar sta ponudila Dwork in Naorjev papir.
Dvojica je predlagala sistem, v katerem bi morali pošiljatelji priložiti nekatere podatke vsakemu e-poštnemu sporočilu, ki ga pošljejo. Ti podatki bi bili rešitev za matematični problem, edinstven za zadevno e-poštno sporočilo. Dwork in Naor sta natančno predlagala tri uganke, ki bi jih lahko uporabili v ta namen, vse pa temeljijo na kriptografiji in podpisnih shemah javnega ključa..
Dodajanje rešitve e-poštnemu sporočilu ne bi bilo pretežko, v idealnem primeru bi bilo potrebno le nekaj sekund procesorske moči običajnega računalnika, prejemnik pa bi lahko brez težav preveril njegovo veljavnost. In v tem je trik, celo trivialna količina procesorske moči na e-pošto se doda oglaševalcem, prevarantom in hekerjem, ki poskušajo poslati na tisoče ali celo milijone sporočil hkrati. Pošiljanje neželene pošte, prav tako teorija, bi lahko postalo drago in zato nedonosno.
“Glavna ideja je zahtevati, da uporabnik izračuna zmerno trdo, a nerešljivo funkcijo, da bi pridobil dostop do vira in tako preprečil neresno uporabo,” sta pojasnila Dwork in Naor.
Medtem ko Dwork in Naor izraza nista predlagala, bi vrsta rešitve, ki sta jo uvedla, postala znana kot sistem “dokaz dela”. Uporabniki bi morali dobesedno pokazati, da je njihov računalnik opravil delo, da bi dokazali, da so porabili resnične vire.
Čudovita rešitev, a morda predaleč pred svojim časom. Predlog ni nikoli presegel sorazmerno majhnega kroga računalniških znanstvenikov.
Adam Back in Cypherpunks
Približno v istem času, ko sta Dwork in Naor objavila svojo belo knjigo, je skupina aktivistov za zasebnost z naklonjenim svobodnjakom spoznala tudi ogromen potencial interneta. Ideološko usmerjena množica se je začela organizirati prek poštnega seznama, osredotočenega na tehnologije za izboljšanje zasebnosti. Tako kot Dwork in Naor so tudi ti “Cypherpunki” – kot bi se imenovali – uporabili sorazmerno novo znanost kriptografije, da bi dosegli svoje cilje.
Z leti je Adam Back – ki je doktoriral. leta 1996 – se je uveljavil kot eden aktivnejših udeležencev na tem seznamu in včasih prispeval na ducate e-poštnih sporočil v enem mesecu. Kot večina Cypherpunkov je bil kriptograf navdušen tudi nad temami zasebnost, svoboda govora in svobodnjaštvo, in sodeloval v tehničnih razpravah v zvezi s tem anonimnim nadaljnjim prodajalcem, šifrirani datotečni sistemi, elektronska gotovina kot ga je predstavil dr. David Chaum in še več.
Toda Back je bil nekaj časa morda najbolj znan po tiskanju in prodaji majic s strelivom: majice z natisnjenim protokolom za šifriranje, ki naj bi pomagale opozoriti na nesmiselno odločitev ameriške vlade, da uredi PGP Phila Zimmermanna (Pretty Good Program za šifriranje zasebnosti) kot “strelivo” v okviru opredelitve izvoznih predpisov ZDA. Nošenje Back-ove majice med prehodom meje za izstop iz ZDA tehnično pomeni, da ste “izvoznik streliva”.
Kot mnogi je bil tudi Back ne zavedajo predloga Dwork in Naor za dokaz o delu. Toda sredi devetdesetih let je razmišljal o podobnih idejah, da bi preprečil neželeno pošto, včasih “naglas” na poštnem seznamu Cypherpunks.
“Stranska prednost uporabe PGP je, da bi moralo šifriranje PGP spamerju dodati nekaj dodatnih stroškov – verjetno lahko šifrira manj sporočil na sekundo, kot lahko pošlje neželeno pošto po povezavi T3,” Nazaj komentiral, na primer v kontekstu dodajanja več zasebnosti preprodajalcem; ideja, ki je nekoliko podobna Dwork in Naor.
Poštni seznam Cypherpunks se je v približno pol desetletja znatno povečal. Kar se je začelo kot spletna diskusijska platforma za skupino ljudi, ki se je sprva zbrala pri enem od svojih start-upov na območju zaliva, je postalo majhen internetni pojav s tisoči naročniki – in pogosto več e-poštnih sporočil na en dan, kot jih je kdo razumno lahko spremljal.
V tem času – leta 1997, blizu največje priljubljenosti seznama – je Back predložil svoj predlog Hashcash-a.
Hashcash
Hashcah je podoben predlogu Dworka in Naorja za preprečevanje neželene pošte in ima isti namen, čeprav je Back predlagal nekaj dodatnih primerov uporabe, kot je boj proti anonimni zlorabi preprodajalca. A kot že ime pove, Hashcash ni temeljil na kriptografskih ugankah, kot sta Dwork in Naor’s; temeljila je na zgoščevanju.
Razprševanje je kriptografski trik, ki zajema vse podatke – ne glede na to, ali gre za eno črko ali celo knjigo – in jih spremeni v navidezno naključno število vnaprej določene dolžine.
Na primer, razpršena stavka SHA-256 To je stavek ustvari to šestnajstiško število:
Kar lahko “prevedemo” v običajno decimalno število:
Ali v binarno:
Medtem se SHA-256 razprši v stavku To je stavek ustvari to šestnajstiško število:
Kot lahko vidite, samo z vstavitvijo ene vejice v stavek popolnoma spremenite razpršitev. In kar je pomembno, kakšna bi bila zgoščevalnost katerega koli stavka, je bila popolnoma nepredvidljiva; tudi po zgoščevanju prvega stavka drugega heša ni bilo mogoče izračunati. Edini način, da to ugotovimo, je bil dejansko razpršiti oba stavka.
Hashcash ta matematični trik uporablja na pameten način.
Pri Hashcash so metapodatki e-poštnega sporočila (naslov »od«, naslov »do«, čas itd.) Formalizirani kot protokol. Poleg tega mora pošiljatelj e-pošte tem metapodatkom dodati naključno številko: »nonce«. Vsi ti metapodatki, vključno z noncem, se nato zgostijo, tako da nastalo zgoščevanje izgleda nekoliko kot eno od zgoraj naključnih števil.
Tu je trik: ne šteje vsak hash za “veljaven”. Namesto tega se mora binarna različica zgoščene datoteke začeti z vnaprej določenim številom nič. Na primer: 20 ničel. Pošiljatelj lahko generira razpršitev, ki se začne z 20 ničlami, tako da vključi nonce, ki se naključno pravilno sešteva … pošiljatelj pa ne more vnaprej vedeti, kako bo ta nonce videti.
Zato ima pošiljatelj za ustvarjanje veljavnega zgoščenega števila le eno možnost: poskusi in napake (»surova sila«). Še naprej mora preizkušati različne nonce, dokler ne najde veljavne kombinacije; v nasprotnem primeru bo e-poštni odjemalec prejemnika zavrnil njegovo e-pošto. Tako kot Dwork in Naorjeva rešitev tudi tu zahtevajo računske vire: gre za sistem preverjanja dela.
“[Če] nima 20-bitne razpršitve […] imate program, ki ga odbije z obvestilom, ki pojasnjuje zahtevano poštnino in od kod lahko dobim programsko opremo,” je razložil Back na poštnem seznamu Cypherpunks. “To bi pošiljatelje neželene elektronske pošte prekinilo čez noč, saj je 1.000.000 x 20 = 100 let MIP, kar bo bolj preračunljivo, kot so ga dobili.”
Predvsem je Backov dokazni sistem bolj naključen kot Dwork in Naorjev. Rešitev dvojca je zahtevala reševanje sestavljanke, kar pomeni, da bi jo hitrejši računalnik vsakič rešil hitreje kot počasen računalnik. Toda statistično gledano Hashcash vseeno počasnejšemu računalniku omogoča, da hitreje najde pravilno rešitev.
(Po analogiji, če ena oseba teče hitreje kot druga oseba, bo prva vsakič osvojila sprint med njimi. Če pa ena oseba kupi več loterijskih vstopnic kot druga oseba, bo slednja nekaj časa statistično še vedno zmagovala – samo ne kot pogosto.)
Digitalna redkost
Tako kot Dwork in Naorjev predlog, Hashcash – ki bi ga Back podrobneje obdelal v bel papir leta 2002 – nikoli ni vzletel na zelo velik način. Izvedena je bila v Apachejevi odprtokodni platformi SpamAssassin, Microsoft pa je idejo za dokazovanje dela zavrtel v nezdružljivi obliki “email postmark”. In Back, kot tudi drugi akademiki, so v preteklih letih pripravili različne alternativne aplikacije za rešitev, vendar večina teh ni nikoli dobila večjega oprijema. Za večino potencialnih aplikacij je bilo pomanjkanje kakršnega koli omrežnega učinka verjetno preveliko, da bi ga bilo mogoče premagati.
Kljub temu sta Dwork in Naor ter Back (neodvisno) res uvedla nekaj novega. Kadar je ena najmočnejših lastnosti digitalnih izdelkov enostavnost kopiranja, je bil dokaz dela v bistvu prvi koncept, podoben virtualni pomanjkljivosti, ki se ni zanašal na osrednjo stranko: digitalne podatke je vezal na resnično svet, omejen vir računalniške moči.
In pomanjkanje je seveda predpogoj za denar. Dejansko je Back še posebej izrecno umestil Hashcash v kategorijo denarja v svojih prispevkih na poštnem seznamu Cypherpunks in v beli knjigi, zrcali pa ga v edino digitalno gotovino, ki jo je svet videl v tistem trenutku: DigiCash’s Ecash by Chaum.
“Hashcash lahko zagotovi ukrep za zaustavitev, dokler se digicash ne začne širše uporabljati,” je argumentiral Back na poštnem seznamu. »Hashcash je brezplačen, vse, kar morate storiti, je zapisati nekaj ciklov v računalniku. To je v skladu z neto kulturo svobodnega diskurza, kjer ga lahko finančno prizadeti pod enakimi pogoji zavedejo z milijonarji, upokojenimi vladnimi uradniki itd. [In] Hashcash nam lahko priskrbi nadomestno metodo za nadzor nad [sic] neželeno pošto, če digicash postane preobremenjen (postane prepovedan ali mora zaseči uporabniške identitete). “
Kljub imenu pa Hashcash sam po sebi ni mogel pravilno delovati kot polnopravni denar (niti Dwork in Naorjev predlog). Morda je najpomembneje, da je vsak »prejeti« dokaz o delu za prejemnika neuporaben. V nasprotju z denarjem ga ni mogoče porabiti drugje. Poleg tega pa so lahko računalniki vsako leto z večjo hitrostjo sčasoma ustvarili vedno več dokazov z nižjimi stroški: Hashcash bi bil podvržen (hiper) inflaciji.
Kateri dokazi o delu so ponujali bolj kot kar koli drugega, je bila nova podlaga za raziskave na področju digitalnega denarja. Nekaj najpomembnejših predlogov za digitalni denar, ki so sledili, je temeljilo na Hashcashu, običajno tako, da je omogočilo ponovno uporabo dokazil o delu. (Z najočitnejšim primerom dokazov o delu Hal RPF – RPOW -).
Bitcoin
Na koncu so dokazi o delu seveda postali temeljni kamen za Bitcoin, Hashcash pa je bil eden redkih navedkov v Bitcoin beli knjigi.
Vendar se Hashcash (ali natančneje njegova različica) v Bitcoinu uporablja zelo drugače, kot bi mnogi uganili prej. V nasprotju s Hashcashom in drugimi predlogi, ki temeljijo na Hashcashu, se pomanjkanje, ki ga zagotavlja, sploh ne uporablja kot denar. Namesto tega Hashcash omogoča dirko. Kateri rudar prvi predloži veljavno dokazilo o delu – razpršitev bloka Bitcoin – se mora odločiti, katere transakcije bodo opravljene. Vsaj teoretično lahko vsak tekmuje enako: podobno kot na loteriji bi bili tudi majhni rudarji prvi, ki bi vsake toliko časa predložili veljaven dokaz o delu.
Nadalje, ko je miniran nov blok, ki potrjuje niz transakcij, verjetno, da se te transakcije ne bodo razveljavile. Napadalec bi moral dokazati vsaj toliko dela, kolikor je bilo potrebno, da bi sploh našel blok, in sešteval za vsak dodatni blok, ki ga je našel, ki pa v normalnih okoliščinah sčasoma postane eksponentno težji. Resnični viri, ki jih je treba porabiti za goljufanje, običajno odtehtajo potencialni dobiček, ki ga je mogoče doseči z varanjem, kar prejemnikom Bitcoin transakcij daje zaupanje, da so te transakcije dokončne.
Tako je v Bitcoinu Hashcash z enim kamnom ubil dve ptici. Rešila je problem dvojne porabe na decentraliziran način, hkrati pa nudi trik za vnos novih kovancev v obtok brez centraliziranega izdajatelja.
Hashcash ni realiziral prvega sistema elektronskih gotovin – Ecash prevzame to krono in dokaz o delu v resnici ni mogel delovati kot denar. Toda a decentralizirano elektronski gotovinski sistem brez njega verjetno ne bi bil mogoč.
To je drugi obrok v seriji The Genesis Files revije Bitcoin. Prvi članek je zajemal eCash dr. Davida Chauma