Alle Cypherpunks verdsetter privatliv; det er i utgangspunktet grunnleggende prinsipp for kollektivet av kryptografer, akademikere, utviklere og aktivister gruppert rundt 1990-postlisten med samme navn. Men få gjør det i praksis som Wei Dai gjør. En gang beskrevet som en “intenst privat datamaskiningeniør” av New York Times, er det ikke mange personlige opplysninger kjent om mannen som for to tiår siden drømte om et elektronisk kontantsystem som var veldig lik Bitcoin..
Denne mangelen på personlige detaljer er gjort opp av Wei Dais arbeid og spredning av ideer. En talentfull kryptograf, Dai opprettet og vedlikeholder fortsatt Krypto++: et C ++ – bibliotek for kryptografiske algoritmer. Dai er også den dag i dag aktiv på rasjonalitetsfora som Mindre galt, der han filosoferer om temaer som kunstig intelligens, etikk, epistemologi og mer. Hans innsikt tjent ham ros fra den kjente AI-forskeren Eliezer Yudkowsky og gjentatte invitasjoner til å tale på hans Machine Intelligence Research Institute (MIRI; tidligere kjent som Singularity Institute).
Dais interesse for filosofi og politikk er ikke noe nytt. Tilbake på 1990-tallet, som en ung bachelorstudent i informatikk ved Washington University, førte hans nysgjerrighet til skriftene til Timothy May, en av “grunnleggerne” til Cypherpunk-bevegelsen. Dai var inspirert ved krypto-anarki Kan fortalte; den splitter nye ideologien som er utbredt blant Cypherpunks, basert på overbevisningen om at kryptografi og programvare kan gi og beskytte politisk og økonomisk frihet bedre enn noe styresystem ville.
“Jeg er fascinert av Tim May’s krypto-anarki,” Dai skrev i 1998. “I motsetning til samfunnene som tradisjonelt er assosiert med ordet‘ anarki ’, blir ikke regjeringen i et krypto-anarki midlertidig ødelagt, men permanent forbudt og permanent unødvendig. Det er et samfunn der trusselen om vold er impotent fordi vold er umulig, og vold er umulig fordi deltakerne ikke kan knyttes til deres sanne navn eller fysiske steder. “
På midten av 1990-tallet deltok Dai i diskusjoner om ulike emner på Cypherpunks adresseliste som digitale omdømmesystemer, spill teori, personvern og anonymitet i digitale kontantsystemer. Kanskje enda viktigere, Dai kom med en rekke forslag for å fremme Cypherpunk-saken, inkludert klarert tidsstempling, en kryptert TCP-tunneler, en sikkert fildelingssystem og mer. Det ga ham et rykte som en produktiv bidragsyter til Cypherpunk-samfunnet – men selv da var det ingen som visste mye om ham personlig. (Ikke engang om Dai var mann eller kvinne, Timothy May nylig sa.)
Men Dai ville bli mest kjent for en idé han tilfeldig annonsert i november 1998, like etter uteksaminering fra universitetet. “Effektivt samarbeid krever et byttemiddel (penger) og en måte å håndheve kontrakter på,” forklarte Dai. “Protokollen som er foreslått i denne artikkelen, lar sporbare, pseudonyme enheter samarbeide mer effektivt ved å gi dem et byttemiddel og en metode for å håndheve kontrakter. […] Jeg håper dette er et skritt mot å gjøre krypto-anarki til en praktisk så vel som en teoretisk mulighet. “
Han kalte forslaget sitt “b-penger ”.
B-penger
Typiske digitale pengesystemer bruker en sentralboks for å holde oversikt over kontosaldoer. Enten det er en sentralbank, en kommersiell bank, VISA eller andre betalingsleverandører, sporer en sentralt kontrollert database et sted hvem som eier hva.
Problemet med denne løsningen, fra Dais og det krypto-anarkistiske perspektivet, er at den til slutt lar regjeringer kontrollere strømmen av penger gjennom regulering, mens deltakere i systemet vanligvis er pålagt å identifisere seg. “Min motivasjon for b-penger var å muliggjøre onlineøkonomier som er rent frivillige … de som ikke kunne skattlegges eller reguleres gjennom trussel om makt,” sa han senere. forklart.
Så Dai kom på en alternativ løsning. Eller egentlig to alternative løsninger.
I den første løsningen, i stedet for at en sentral enhet som kontrollerer hovedboken, opprettholder alle deltakerne separate kopier av den samme hovedboken. Hver gang en ny transaksjon blir gjort, oppdaterer alle postene sine. Disse hovedbokene vil dessuten bestå av offentlige nøkler, med beløp knyttet til dem – ingen virkelige navn. Denne desentraliserte tilnærmingen vil forhindre at en enkelt enhet blokkerer transaksjoner, samtidig som det gir et privatlivsnivå for alle brukere.
La oss si at Alice og Bob er brukere av penger. De har begge en offentlig nøkkel: Alice har en offentlig nøkkel “A” og Bob har en offentlig nøkkel “B”, som de begge kontrollerer sine unike private nøkler for. Og som registrert i hovedbøkene vedlikeholdt av alle brukere, har begge deres offentlige nøkler b-penger enheter; la oss si tre enheter hver.
Hvis Bob ønsker å motta to b-penger-enheter fra Alice (fordi han selger et produkt til henne), sender han henne sin offentlige nøkkel: B. Forutsatt at Alice vil kjøpe produktet, oppretter hun en transaksjon i form av en melding: “2 b-penger fra A til B.” Deretter signerer hun denne meldingen, med sin private nøkkel som tilsvarer A. Meldingen og den kryptografiske signaturen blir deretter sendt til alle brukere av b-penger.
Den signerte meldingen beviser for alle brukere av b-penger at den rettmessige eieren av A ønsker å sende to b-penger-enheter til B. Alle oppdaterer derfor reskontrene sine, og tildeler nå totalt en b-penger-enhet til A og totalt på fem b-penger-enheter til B – uten å lære at Alice eller Bob kontrollerer heller.
Hvis denne løsningen høres kjent ut, burde den: Det er omtrent hvordan Satoshi Nakamoto 10 år senere designet Bitcoin.
B-penger, versjon 2
Dai betraktet sin første b-pengeløsning imidlertid upraktisk, “fordi den bruker tungt en synkron og ikke-brennbar anonym kringkastingskanal,” forklarte han i sitt forslag..
Sagt på en annen måte, løste ikke det første b-pengeforslaget problemet med dobbeltbruk. Alice kunne sende to b-penger-enheter til både Bob’s B og Carol’s C samtidig, og overføre disse transaksjonene til forskjellige deler av nettverket. Både Bob og Carol ga Alice et produkt i retur … bare for senere å finne ut at halvparten av nettverket ikke vil anerkjenne sine nye saldoer.
Derfor kom Dai med en andre løsning for b-penger, alt i samme forslag.
I denne versjonen opprettholder ikke alle en versjon av hovedboken. I stedet vil systemet bestå av to typer brukere: vanlige brukere og “servere”. Bare serverne, koblet gjennom en Usenet-stil kringkastingsnettverk, ville opprettholde b-money ledgers. For å bekrefte at en transaksjon gikk gjennom slik den skulle, ville vanlige brukere – som Bob og Carol – måtte bekrefte den med et tilfeldig delsett av disse serverne. (I tilfelle en konflikt ville Bob og Carol antagelig avvise transaksjonen fra Alice og ikke selge henne noe.)
Selv om det ikke er detaljert i forslaget, ville noen sannsynligvis ha vært i stand til å bli en server, men “hver server er pålagt å sette inn en viss sum penger på en spesiell konto for å bli brukt som potensielle bøter eller belønninger for bevis for forsømmelse,” Dai foreslått. Serverne bør også med jevne mellomrom publisere og kryptografisk forplikte seg til eierskapsdatabaser.
“Hver deltaker bør verifisere at hans egen kontosaldo er riktig, og at summen av kontosaldoen ikke er større enn den totale pengebeløpet som er opprettet,” foreslo Dai. “Dette forhindrer serverne, selv i fullstendig samarbeid, fra å utvide pengemengden permanent og kostnadsfritt.”
Hvis dette også høres noe kjent ut, er det ikke rart: Dais andre forslag om b-penger ligner løst det som i dag vil bli kalt et bevis på innsats-system.
For å starte, la Dai til en tidlig versjon av en smart kontraktløsning i sitt forslag. Disse typer smarte kontrakter ligner nærmest en blanding av et bevis på innsats-system og et voldgiftssystem, hvor begge parter i en kontrakt og en voldgiftsdommer alle må sette inn midler på en spesiell konto. Merkelig for moderne standarder, hadde imidlertid ikke disse avtalene kodet om et tvisteløsningssystem: I stedet var det mulig at forskjellige brukere (eller servere) i tilfelle tvister ville justere sine egne reskontorer annerledes, og i virkeligheten la hovedbokstilstanden være på nettverket av konsensus. (Antagelig vil potensielle straffer gjøre kostnadene for juks for høye til å risikere det.)
Pengepolitikk
Likevel, hvor b-penger kanskje hadde skilt seg skarpest fra Bitcoin, var Dais foreslåtte pengepolitikk.
Bitcoins pengepolitikk er selvfølgelig veldig grei. For å bringe mynter i omløp utstedte den opprinnelig 50 nye bitcoins per blokk, et tall som siden har falt til 12,5. Dette tallet vil fortsette å synke over tid til, om noen hundre år fra nå, den totale mengden bitcoin-utstedte kapsler ut på litt under 21 millioner. Hvorvidt en slik pengepolitikk er ideell har vært diskutert, men en ting er klart: Så langt har den ikke produsert en stabil myntverdi..
I kontrast var en stabil myntverdi eksplisitt en del av Dais visjon. For å oppnå dette skulle verdien av b-penger kobles til verdien av en (teoretisk) kurv med varer. For eksempel ville 100 b-penger-enheter være verdt en kurv med varer. Dette skal gi b-penger en stabil verdi, i det minste i forhold til denne kurven med varer: de samme 100 b-pengene enhetene vil kjøpe den samme kurven med varer i fortiden, i nåtiden og i fremtiden.
For å utstede nye mynter skulle brukerne bestemme hva en kurv med varer ville koste i forhold til en løsning på et beregningsproblem: et “bevis på arbeid”. Hvis en kurv med varer for eksempel koster $ 80 på et bestemt tidspunkt, må den matches med et bevis på arbeid som i gjennomsnitt koster $ 80 å produsere. Hvis den samme kurven med varer 10 år senere skulle koste $ 120, ville de samme 100 enhetene måtte matches med et bevis på arbeidet som ville kostet $ 120 å produsere.
Ved å bruke denne indikatoren vil den første personen som produserer et gyldig bevis på arbeidet, bli kreditert 100 nye b-penger av alle brukere eller serverne. Derfor ville ingen bli spesielt stimulert til å produsere bevis på arbeid med mindre de hadde til hensikt å bruke b-penger, og begrense inflasjonen til veksten i “b-penger-økonomien.”
Alternativt, i et vedlegg til forslaget hans, foreslo Dai at pengeskaping kunne realiseres gjennom en auksjon. Enten alle brukere (første protokoll) eller serverne (andre protokoll) må først bestemme en optimal økning i den monetære basen. Så, hvis denne ideelle økningen for eksempel ble etablert på 500 b-penger-enheter, ville en auksjon avgjøre hvem som skulle lage disse 500 enhetene: den som var villig og i stand til å gi mest mulig bevis på arbeidet for det.
Bitcoin
B-penger ble aldri implementert. Det kunne ikke ha vært: “b-money var ikke en komplett praktisk design ennå,” erkjente Dai i en Mindre feil forumtråd for et par år siden. Dessuten forventet Dai ikke at b-penger skulle ta av i stor grad, selv om de ble implementert.
“Jeg tror b-penger på det meste vil være en nisjemekanisme / kontrakthåndteringsmekanisme, som betjener de som ikke vil eller ikke kan bruke statlige sponsede,” forklarte han e-post etter hans kunngjøring på Cypherpunks adresseliste.
Faktisk forble flere av problemene med b-money uløste eller i det minste under-spesifiserte. Kanskje, viktigst av alt, var konsensusmodellen ikke veldig robust, som best fremgår av Dais foreslåtte smarte kontraktløsning. Siden har det også blitt funnet at proof-of-stake-systemene introduserer nye utfordringer som Dai kanskje ikke hadde forutsett; for eksempel er det ikke klart hvordan “misforhold” objektivt kan fastslås. Og det kommer ikke engang inn i de mer nyanserte problemene i forslaget, for eksempel mangel på personvern på grunn av sporbarhet av midler eller potensiell sentralisering av myntutstedelse (“gruvedrift”). Faktisk er noen av disse problemene fortsatt ikke løst for Bitcoin i dag.
Dai – som etter å ha foreslått b-penger fortsatte å jobbe for TerraSciences og Microsoft, og kan ha gått av med pensjon tidlig siden da – ville ikke holde fast ved å løse disse problemene.
“Jeg fortsatte ikke å jobbe med designet fordi jeg faktisk hadde blitt noe desillusjonert av krypto-anarki da jeg var ferdig med å skrive opp b-penger,” Dai senere forklart på LessWrong. Han gjentok: “Jeg forutså ikke at et system som det, en gang implementert, kunne tiltrekke seg så mye oppmerksomhet og bruk utover en liten gruppe hardcore Cypherpunks.”
Likevel ble ikke Dais forslag glemt: b-penger endte som den første referansen i Hvitbok av Bitcoin. Likevel, like likt b-money og Bitcoins design, er det mulig at Satoshi Nakamoto ikke var inspirert av Dais idé i det hele tatt. Dai mener selv at Bitcoins oppfinner kom på ideen uavhengig.
Kort tid før Bitcoin-papiret ble publisert, oppfant Hashcash oppfinner Dr. Adam Back regissert Satoshi Nakamoto til Dais arbeid, noe som gjorde Dai til en av få mennesker som Bitcoin oppfinner personlig nådde ut til før han publiserte sitt papir. Men Dai svarte ikke på Satoshis e-post. I ettertid ønsket han at han hadde gjort det. Ikke overraskende stiller Dai spørsmålstegn ved Bitcoins myntgenereringsmodell.
“Jeg vil anse Bitcoin for å ha sviktet med hensyn til pengepolitikken (fordi politikken forårsaker høy prisvolatilitet som påfører brukerne store kostnader, som enten må ta uønskede risikoer eller delta i kostbar sikring for å kunne bruke valutaen) , ”Han skrev på LessWrong. “[En] mulig innvirkning av Bitcoin kan være at den på grunn av mangelfull pengepolitikk og tilhørende prisvolatilitet ikke kan vokse til veldig store skalaer, og ved å overta kryptovaluta-nisje, har den utelukket en fremtid der en kryptovaluta vokser til veldig store skalaer. ”
Han la til: “Dette kan ha vært delvis min feil, for da Satoshi skrev til meg og ba om kommentarer til utkastet hans, kom jeg aldri tilbake til ham. Ellers kunne jeg kanskje ha frarådet ham (eller dem) fra ideen om ‘fast forsyning av penger’. “
Forfatterens notat: Etter å ha fullført denne artikkelen ble det påpekt at den første versjonen av Nick Szabos Bit Gold går tilbake til begynnelsen av 1998. Enda mer lik Satoshi Nakamotos oppfinnelse enn b-penger, er det sannsynligvis mer nøyaktig å vurdere Bit Gold “Bitcoins første utkast ”.
Dette er den tredje delen i Bitcoin Magazines The Genesis Files-serie. De to første artiklene dekket Dr. David Chaums eCash og Dr. Adam Back’s Hashcash. For mer fra Wei Dai, besøk weidai.com.