378 / 736DAI

Wei Dai

Autor b-money a původní autor Crypto++

Wei Dai hledal způsob, jak si mohou lidé posílat peníze přes internet bez společné banky a bez odhalení své totožnosti. Jeho b-money patří k předchůdcům Bitcoinu; knihovna Crypto++ ukazuje jinou část jeho práce: nástroje, s nimiž programátoři chrání data.

Wei Dai je kryptograf a původní autor knihovny Crypto++. V návrhu b-money z roku 1998 popsal, jak by lidé vystupující pod digitálními pseudonymy mohli vést peněžní účty a uzavírat smlouvy. Bitcoin na jeho práci odkazuje, ale používá vlastní uspořádání sítě a pravidla.

Když programátor potřebuje zašifrovat zprávu nebo ověřit digitální podpis, nemusí všechny potřebné postupy psát od začátku. Může využít kryptografickou knihovnu: soubor hotových funkcí pro práci s chráněnými daty. Wei Dai původně napsal právě takovou knihovnu, Crypto++, v jazyce C++. Jde o konkrétní software, který lze zapojit do aplikace. Jeho b-money je jiný druh práce: písemný návrh peněžního systému. Existence fungující knihovny sama nedokládá, že fungovala i síť podle tohoto návrhu. Pro pochopení jeho přínosu potřebujeme sledovat obě tyto větve zvlášť. [3]

V listopadu 1998 Wei Dai položil otázku, která je aktuální i při obyčejném nákupu na internetu: jak mohou spolupracovat lidé, kteří si nechtějí sdělit svou totožnost? V b-money navrhl dva protokoly, tedy dvě sady pravidel pro společné účtování a smlouvy. Pseudonymem měl být veřejný klíč a zprávy měly mít digitální podpis. Síť, která neumožňuje dohledat účastníky, ale byla výchozím předpokladem, nikoli výsledkem, který návrh sám zajišťoval. První variantu autor označil za nepraktickou kvůli náročným požadavkům na společné doručování zpráv. Čteme tedy promyšlený návrh, ne návod k již fungující anonymní službě. [1]

Představme si, že Anna má v b-money zůstatek 5 jednotek a Tomášovi posílá 2. V první variantě vede každý účastník vlastní kopii účtů. Annina podepsaná zpráva dá ostatním pokyn odečíst platbu z jejího účtu a připsat ji Tomášovi; Anně zůstanou 3 jednotky. Zpráva, která by vytvořila záporný zůstatek, se ignoruje. Digitální podpis umožňuje ověřit oprávnění k pokynu, ale společné účtování potřebuje také pravidla pro doručení zpráv. Bitcoin později použil UTXO model: sleduje konkrétní dosud neutracené výstupy transakcí, které lze utratit. Podobný cíl tedy neznamená stejný způsob evidence. [1]

Druhá varianta b-money přesouvá vedení účtů na část účastníků, nazývaných servery. Ostatním tím ubude práce, ale vyvstane otázka, jak správce kontrolovat. Servery mají složit peněžní zálohu, z níž lze hradit sankce, a pravidelně zveřejňovat závazky ke svým databázím: záznamy, k jejichž obsahu se veřejně přihlásí. Uživatel si kontroluje vlastní zůstatek i to, zda součet účtů nepřevyšuje vydané peníze. Příjemce má také ověřovat zpracování platby u náhodně vybraných serverů. Záloha tak není kouzelným odstraněním důvěry. Je součástí navrženého dohledu nad lidmi a stroji, které účty spravují. [1]

V původním b-money vznikají jednotky za vyřešení výpočetního problému. Jejich množství se má odvozovat od nákladů na výpočet, vyjádřených ve standardním koši statků. Tento koš slouží jako společné měřítko nákladů; neurčuje, za kolik si někdo jednotku koupí na trhu. Jenže počítače se zlepšují a jejich skutečné náklady nejsou všem známé. Wei Dai tuto slabinu pojmenoval a v dodatku navrhl aukční postup, v němž se správci dohadují na množství nových peněz a zájemci soutěží výpočetními nabídkami. Není to bitcoinový rozvrh emise BTC. Přínosem textu je i to, že obtížný problém přiznává a zkouší jinou cestu. [1]

Návrh sahá za samotné platby. Představme si zakázku na překlad: podpis může prokázat souhlas se smlouvou, nikoli kvalitu odevzdaného textu. V b-money proto smlouvy počítají se zálohami, předem určenými náhradami při porušení a pomocí rozhodce. Pokud se strany nedohodnou ani s ním, předkládají argumenty a vlastní závěr dělají jednotliví účastníci evidence. To ukazuje, jak náročné je přenést lidské spory do digitálního systému. Bitcoin Script, jazyk podmínek pro utracení výstupu, naproti tomu vyhodnocuje přesně zadané technické podmínky. Sám neposoudí, zda byl slíbený překlad dobrý. [1]

Satoshi Nakamoto uvedl b-money z roku 1998 jako zdroj 1 v bitcoinovém whitepaperu, dokumentu vysvětlujícím návrh Bitcoinu. Čtenář tak může sledovat konkrétní intelektuální návaznost: otázka digitálních peněz bez společného správce měla historii před Bitcoinem. Citace však neříká, že Bitcoin převzal všechny navržené mechanismy. Účty, vznik jednotek i řešení sporů v b-money se od Bitcoinu liší. A samotný odkaz také neodhaluje, kdo se skrýval pod jménem Satoshi Nakamoto. Pro studium historie je užitečnější porovnávat doložené texty než z citace vyvozovat totožnost autora. [2]

Příběh Crypto++ pokračuje opravami, testy a prací dalších vývojářů. Historie projektu zaznamenává, že v červnu 2015 Wei Dai předal každodenní vedení komunitě. Pro uživatele knihovny to připomíná důležitou věc: záleží nejen na původním autorovi, ale také na konkrétní verzi a správném použití jejích funkcí. Knihovna může dodat nástroj pro podpis nebo šifrování, sama však nevyřeší bezpečné uložení klíčů ani celý návrh peněženky. Kdo na ní staví aplikaci, musí číst dokumentaci, sledovat opravy a ověřovat své vlastní použití. Uznání autorova přínosu a kontrola dnešního softwaru patří k sobě. [3]

Pro nejúplnější obraz čtěte toto heslo společně s Adam Back, Nick Szabo, b-money, Satoshi Nakamoto. Opačným směrem na něj odkazují také b-money, Bit Gold, Adam Back, Nick Szabo.

DOC · 001Wei Dai — b-money (November 1998)Dokumentace DOC · 002Satoshi Nakamoto — Bitcoin whitepaper, reference 1Dokumentace DOC · 003Crypto++ Project — author attribution and project historyDokumentace
Revidováno: Primární zdroje · Nejde o investiční doporučení