Newsticker

Cashu: Blinde Treuhänder für den Datenschutz!

Schwerpunkt Privacy

Ein deutscher Entwickler bildet Cashu, eine Bitcoin-Version von David Chaums legendärem eCash. Das Protokoll soll Mittelsmänner „blind“ machen, so dass Treuhand nicht länger bedeutet, seine Privatsphäre aufzugeben.

Calle verrät ungern viel über sich. Er erzählt nur, dass er als Physiker an einer Universität forscht und vor etwa eineinhalb Jahren in den Bitcoin-Space „reingefallen“ ist.

Aber mehr ist auch nicht relevant. Es geht nicht um seine Person, sondern um sein Wirken; nicht darum, wer er ist, sondern was er macht. Und in der Hinsicht glänzt er als Co-Entwickler von LNbits und Entwickler von Cashu, einer Anwendung von David Chaums eCash.

Das Lightning-Rabbithole

„Ich entwickle Software, seit ich ein Kind bin,“ erzählt er, „es hat gedauert, bis ich Bitcoin ganz verstanden habe, ich habe mir einzelne Teile Schritt für Schritt erschlossen.“ Ein Knackpunkt war für ihn Lightning. Es wurde möglich, mit kleinen Beträgen zu experimentieren. ohne viel zu riskieren.

Calle fiel ins „Lightning-Rabbithole.“ Er begann, auf Lightning zu entwickeln, und als große Hilfe erwies sich dabei LNbits. „Ich wollte Apps bilden, aber keinen Doktortitel für Bitcoin erwerben – keinen Node verwalten, keine Blockchain, keine Payment-Channels. Sondern einfach nur eine App bauen. Dafür war LNbits perfekt.“

LNbits ist zugleich eine Online-Wallet als auch eine Software. Calle beschreibt sie als „Abstraktionsebene zwischen Lightning und Entwicklern“. Sie macht es einfach, Apps für Lightning zu entwickeln, ohne sich allzu tief mit dem Drumherum zu beschäftigen.

Calle fand Bugs in der Software. Er meldete sie, und bald darauf fragte ihn Ben Arc, der LNbits-Chefentwickler, ob er mitentwickeln möchte. Wenn man aufmerksam ist, fällt der Einstieg in die Open-Source-Entwicklung leicht.

Software, die die User schützt

Calles wichtigstes Projekt wurde Cashu. Dabei geht es um eine Sache, die ihm wichtig ist: Privatsphäre.

„Ich halte Privatsphäre für ein Menschenrecht. Ich habe den Eindruck, die Masse der normalen Menschen gibt derzeit sehr viel Privatsphäre auf, damit einige wenige Kriminelle bekämpft werden.“

Das Verhältnis ist aus dem Gleichgewicht geraten, und Calle hofft, es durch Cashu wieder ein Stück geradezurücken. „Niemand wird uns schützen außer wir selbst. Entwickler bauen die Software, die wir dafür brauchen.“

Cashu baut auf eCash von David Chaum auf. Und an der Stelle wird es etwas kompliziert.

Digitales Bargeld durch blinde Signaturen

David Chaum war ein legendärer früher Kryptograph. In einem wegweisenden Paper entwickelte er 1982 das Konzept der Blinden Signaturen.

Chaum erklärte es durch eine Analogie: Man nehme einen Wahlzettel, fülle diesen aus und stecke ihn in einen Umschlag aus Kohlepapier. Dann gebe man diesem dem Wahlleiter. Dieser unterschreibt auf dem Kohlepapier. Wenn man danach den Wahlzettel auspackt, wurde er vom Wahlleiter unterschrieben, ohne dass dieser weiß, was man gewählt hat. Seine Unterschrift ist „blind.“

Mithilfe dieser blinden Signaturen bildete David Chaum eCash – ein Verfahren, um ein digitales Bargeld herauszugeben. In Amsterdam gründete er in den frühen 90ern DigiCash. Banken sollten digitale Token herausgeben, ohne zu wissen, wem sie was gegeben haben.

DigiCash scheiterte. Calle meint, „weil wir noch kein Geld für das Internet hatten. Die größte Schwäche an DigiCash war, dass man eine Bank brauchte. Bitcoin kann das ändern. Daher reden die Leute im Bitcoin-Space seit Jahren immer wieder über eCash.“

Calle hat das Glück, sich auf die Schultern einiger Riesen stellen zu können, die wichtige Vorarbeiten geleistet haben: David Wagner hat etwa den Prozess von der klassischen RSA-Kryptographie auf die von Bitcoin verwendete Kryptographie auf Basis von elliptischen Kurven übertragen. Ruben Somsen, ein Kryptograph, hat diese Methode aus der Cypherpunk Mailingliste ausfindig gemacht.

Das fand zunächst wenig Beachtung. Dann hat jemand mit Python einen Prototypen gebaut. Doch auch dies fand erneut wenig Beachtung. „Dann komme ich ins Spiel,“ erzählt Calle.

Geheimnis + Unterschrift = Token

Calle schaute sich den Prototypen in Python an. „Ich erkannte, dass alle grundlegenden Operationen bereits umgesetzt sind, so dass man eine Wallet und eine Mint bauen kann. Es brauchte nur noch jemanden, der sich die Mühe machte.“

Er setzte sich an seinen Computer und schrieb fünf Tage lang wie ein Besessener das Programm – programmierte eine Mint und eine Wallet.

Das ganze funktioniert so: Man hat Bob, einen Herausgeber, Calle nennt ihn die „Mint“, und Alice, einen User. Zuerst produziert Alice ein Geheimnis, was einfach nur eine zufällige Zeichenkette meint. Das Zeichen verschlüsselt sie – man nennt das Blinding – und sendet es an Bob, der es unterschreibt und zurückschickt.

Alice hat nun ein unterschriebenes verschlüsseltes Geheimnis. Quasi den unterschriebenen Kohlepapier-Umschlag mit dem Wahlzettel. Nun wird die Mathematik magisch: Alice kann das unterschriebene Geheimnis so entschlüsseln, dass es auch in Reinform unterschrieben ist, und dass Alice beweisen kann, dass Bob es unterschrieben hat. Sie öffnet den Umschlag.

„Damit wird ein Token erzeugt,“ erklärt Calle. „Unterschrift und Geheimnis bildet das Token, das einen bestimmten Betrag repräsentiert, etwa einen Dollar.“

Diesen Dollar muss Alice durch Lightning an Bob überweisen. Im Gegenzug gibt Bob ihr das Token.

Token einlösen, Token überweisen

Wenn Alice das Token einlösen will, um dafür, etwa per Lightning, Bitcoins im Wert eines Dollars zu bekommen, sendet sie Geheimnis und Unterschrift zurück an Bob. Bob verifiziert die Unterschrift, Alice enthüllt das Geheimnis, Bob zahlt den Dollar aus.

Bei Cashu entspricht ein Token einem Satoshi. Das ist die kleinste Einheit von Bitcoin, 0,00000001 Bitcoin, derzeit etwa 0,02 Euro-Cent. Weil die Einheit so klein ist, hat Calle ein System von Token eingeführt: 1 Satoshi, 2 Satoshi, 4 Satoshi, 8 Satoshi, bis 2⁶⁴ Satoshi. Man kann sich das wie ein System Münzen vorstellen, durch die man jeden Betrag zusammensetzen kann.

Wenn Alice nun aber die Token an Carol, eine andere Userin, sendet, stoßen wir auf ein weiteres Problem. Zunächst schickt sie ihr einfach das Geheimnis – im Klartext – sowie die Unterschrift. So weit so klar.

Aber wie verhindert man Double Spending? Woher weiß Carol, dass Alice dieses Token nicht zuvor schon an Dave gesendet hat? Wie kann sie ausschließen, dass Alice es kurz nach der Transaktion selbst bei Bob einlösen wird?

Carol kann das nicht wissen. Daher sendet sie das Token an Bob. Der bestätigt es, verbrennt es, und gibt Carol ein neues Token aus, also ein weiteres blind signiertes Geheimnis, das nur Carol kennt. Und damit wäre der Token-Transfer abgeschlossen: Das Token wird bei jeder Transaktion durch ein neues ersetzt.

Wenn schon Treuhänder, dann bitte in blind

Im Prinzip funktioniert Cashu unabhängig von Bitcoin. „Man braucht nur eine Transaktion für das Minting, danach weder die Blockchain noch Lightning.“

Man sollte sich aber bewusst bleiben, räumt Calle ein, „dass man einem Treuhänder vertraut. Er ist blind, aber dennoch ein Treuhänder.“ Er hofft darauf, dass Cashu dort glänzt, wo es bereits Treuhänder gibt, etwa bei manchen Lightning-Wallets, wie LNbits oder BlueWallet. „Das ist meine Vision: Wenn schon Treuhänder, dann mit erhöhter Privatsphäre. Wenn die Technik verfügbar ist, können User das auch verlangen.“

Derzeit integriert Calle Cashu in LNbits. „Wir haben das Ziel, es lächerlich einfach zu machen, eine Mint zu betreiben und Token zu überweisen.“ Für den User, der einfach nur Geld überweist, soll es so einfach wie eine normale Lightning-Transaktion sein; von der Technik sollen die User so wenig wie möglich mitbekommen.

Derzeit jedoch steckt Cashu noch in den Kinderschuhen. Es wäre wünschenswert, wenn man in Zukunft blinde Mittelsmänner und Treuhänder hätte. Ohne Zweifel. Doch kann Calle gelingen, woran David Chaum vor rund 30 Jahren gescheitert ist? Können er uns seine Mitentwickler den Markt überzeugen, dass er eCash braucht?

Diese Frage kann nur die Zeit beantworten.

Über Christoph Bergmann (2639 Artikel)
Das Bitcoinblog wird von Bitcoin.de gesponsort, ist inhaltlich aber unabhängig und gibt die Meinung des Redakteurs Christoph Bergmann wieder ---

Kommentar verfassen

%d Bloggern gefällt das: