[ANNOUNCE] Einführung von Hash-Cash-Post
Es ist der 28. März 1997, als die rund 2.000 Abonnenten der Cypherpunks-Mailingliste eine E-Mail mit der obigen Überschrift in ihrem Posteingang erhalten. Der Absender ist ein 26-jähriger britischer Postdoktorand an der Universität von Exeter, ein junger Kryptograph und produktiver Mitwirkender auf der Mailingliste namens Dr. Adam Back. Die E-Mail enthält eine Beschreibung und frühe Implementierung dessen, was er als „partielles, auf Hash-Kollisionen basierendes Portosystem“ beschreibt – eine Art Briefmarkenäquivalent für E-Mails, das auf einem raffinierten kryptografischen Trick beruht.
„Die Idee, partielle Hashes zu verwenden, ist, dass man ihre Berechnung beliebig teuer machen kann“, erklärte Back den Vorteil seines Systems, „und sie dennoch sofort verifiziert werden können.“
Dieser Vorschlag des Kryptographen, der später der aktuelle CEO von Blockstream werden sollte, erregte nicht sofort viel Aufmerksamkeit auf der E-Mail-Liste; nur ein Leser antwortete mit einer technischen Anfrage über den Hash-Algorithmus der Wahl. Doch die Technologie, die Hashcash zugrunde liegt – Proof of Work– die Forschung zu digitalem Geld für mehr als ein Jahrzehnt prägen würde.
„Preisgestaltung durch Verarbeitung oder Bekämpfung von Junk-Mail“
Backs Hashcash war eigentlich nicht die erste Lösung dieser Art.
In den frühen 1990er Jahren waren die Verheißungen des Internets und insbesondere die Vorteile eines elektronischen Postversandsystems für aufmerksame Techniker offensichtlich geworden. Dennoch erkannten die damaligen Internetpioniere, dass die E-Mail, wie dieses elektronische Versandsystem genannt wurde, ihre eigenen Herausforderungen mit sich brachte.
„Insbesondere der einfache und kostengünstige Versand von elektronischer Post und vor allem die Einfachheit, dieselbe Nachricht an viele Parteien zu senden, laden geradezu zum Missbrauch ein“, so IBM-Forscher Dr. Cynthia Dwork und Dr. Moni Naor erklärt in ihrem 1992 erschienenen White Paper mit dem Namen „Pricing via Processing or Combatting Junk Mail.“
Mit der zunehmenden Beliebtheit von E-Mails stieg auch die Zahl der Spam-Mails.
Eine Lösung musste her, darin waren sich die frühen Internetnutzer einig – und eine Lösung bot das Papier von Dwork und Naor.
Das Duo schlug ein System vor, bei dem die Absender jeder E-Mail, die sie verschicken, einige Daten beifügen müssen. Diese Daten wären die Lösung für ein mathematisches Problem, das nur für die fragliche E-Mail gilt. Konkret schlugen Dwork und Naor drei mögliche Puzzles vor, die alle auf Public-Key-Kryptografie und Signaturverfahren basieren.
Das Hinzufügen einer Lösung zu einer E-Mail wäre nicht allzu schwierig und würde im Idealfall nur ein paar Sekunden Rechenleistung von einem normalen Computer erfordern, während die Gültigkeit vom Empfänger leicht überprüft werden könnte. Aber, und das ist der Trick, selbst eine triviale Menge an Rechenleistung pro E-Mail summiert sich für Werbetreibende, Betrüger und Hacker, die versuchen, Tausende oder sogar Millionen von Nachrichten auf einmal zu versenden. Spamming, so die Theorie, könnte teuer und damit unrentabel gemacht werden.
„Die Hauptidee besteht darin, dass ein Benutzer eine mäßig schwierige, aber nicht unlösbare Funktion berechnen muss, um Zugang zur Ressource zu erhalten, um so eine leichtfertige Nutzung zu verhindern“, erklärten Dwork und Naor.
Obwohl Dwork und Naor den Begriff nicht vorschlugen, wurde die von ihnen vorgestellte Lösung als „proof of work“-System bekannt. Die Benutzer müssten buchstäblich zeigen, dass ihr Computer Arbeit verrichtet, um zu beweisen, dass sie echte Ressourcen verbraucht haben.
Eine raffinierte Lösung, aber vielleicht ihrer Zeit zu weit voraus. Der Vorschlag kam nie sehr weit über einen relativ kleinen Kreis von Informatikern hinaus.
Adam Back und die Cypherpunks
Etwa zur gleichen Zeit, als Dwork und Naor ihr Weißbuch veröffentlichten, erkannte auch eine Gruppe liberal gesinnter Datenschutzaktivisten das enorme Potenzial des Internets. Die ideologisch motivierte Gruppe begann, sich über eine Mailingliste zu organisieren, die sich auf Technologien zur Verbesserung der Privatsphäre konzentrierte. Wie Dwork und Naor nutzten auch diese „Cypherpunks“ – wie sie später genannt werden sollten – die relativ neue Wissenschaft der Kryptografie, um ihre Ziele zu erreichen.
Im Laufe der Jahre hat Adam Back – der seinen Doktortitel in Informatik erworben hat – die Liste erweitert.D. 1996 – etablierte sich als einer der aktiveren Teilnehmer auf dieser Liste, der manchmal Dutzende von E-Mails in einem einzigen Monat verfasste. Wie die meisten Cypherpunks engagierte sich der Kryptograph leidenschaftlich für Themen wie Datenschutz, Meinungsfreiheit und Libertarismus und beteiligte sich an technischen Diskussionen über anonyme Remailer, verschlüsselte Dateisysteme und elektronisches Bargeld, wie es von Dr. Peter Back eingeführt wurde. David Chaum, und mehr.
Aber eine Zeit lang war Back vielleicht am besten dafür bekannt, „Munitions“-Shirts zu drucken und zu verkaufen: T-Shirts mit einem aufgedruckten Verschlüsselungsprotokoll, das auf die absurde Entscheidung der US-Regierung hinweisen sollte.S. die Regierung, Phil Zimmermanns Verschlüsselungsprogramm PGP (Pretty Good Privacy) als „Munition“ im Sinne des US-Gesetzes zu regulieren.S. Ausfuhrbestimmungen. Das Tragen von Backs Hemd beim Überschreiten der Grenze zur Ausreise aus den Vereinigten Staaten machte einen technisch gesehen zu einem „Munitionsexporteur.“
Wie viele andere kannte auch Back den Proof-of-Work-Vorschlag von Dwork und Naor nicht. Aber schon Mitte der 1990er Jahre hatte er ähnliche Ideen zur Bekämpfung von Spam, die er manchmal „laut“ auf der Cypherpunks-Mailingliste äußerte.
„Ein Nebeneffekt der Verwendung von PGP ist, dass die PGP-Verschlüsselung dem Spammer einen gewissen Mehraufwand beschert – er kann wahrscheinlich weniger Nachrichten pro Sekunde verschlüsseln als er über einen T3-Link spammen kann“, kommentierte Back zum Beispiel im Zusammenhang mit der Verbesserung der Privatsphäre bei Remailern; eine Idee, die der von Dwork und Naor ähnelt.
Die Cypherpunks-Mailingliste wuchs in etwa einem halben Jahrzehnt beträchtlich. Was als Online-Diskussionsplattform für eine Gruppe von Leuten begann, die sich zunächst bei einem ihrer Start-ups in der Bay Area trafen, wurde zu einem kleinen Internet-Phänomen mit Tausenden von Abonnenten – und oft mehr E-Mails an einem einzigen Tag, als irgendjemand vernünftigerweise verfolgen konnte.
Etwa zu dieser Zeit – 1997, kurz vor dem Höhepunkt der Popularität der Liste – legte Back seinen Hashcash-Vorschlag vor.
Hashcash
Hashcah ähnelt dem Anti-Spam-Vorschlag von Dwork und Naor und verfolgt den gleichen Zweck, obwohl Back einige zusätzliche Anwendungsfälle vorschlug, wie z.B. die Bekämpfung des Missbrauchs durch anonyme Remailer. Aber wie der Name schon sagt, basierte Hashcash nicht auf kryptographischen Puzzles wie Dwork und Naor, sondern auf Hashing.
Hashing ist ein kryptografischer Trick, bei dem beliebige Daten – sei es ein einzelner Buchstabe oder ein ganzes Buch – in eine scheinbar zufällige Zahl mit vorgegebener Länge verwandelt werden.
Zum Beispiel, ein SHA-256 Hash des Satzes Dies ist ein Satz und erzeugt diese hexadezimale Zahl:
Das kann in eine normale Dezimalzahl „übersetzt“ werden:
Oder in Binärform:
Inzwischen ergibt ein SHA-256-Hash des Satzes Dies ist ein Satz diese hexadezimale Zahl erzeugt:
Wie Sie sehen können, wird der Hashwert durch das Einfügen eines Kommas in den Satz vollständig verändert. Und, was noch wichtiger ist, der Hashwert der beiden Sätze war völlig unvorhersehbar; selbst nachdem der erste Satz gehasht war, gab es keine Möglichkeit, den zweiten Hashwert daraus zu berechnen. Die einzige Möglichkeit, das herauszufinden, bestand darin, beide Sätze tatsächlich zu hashen.
Hashcash wendet diesen mathematischen Trick auf clevere Weise an.
Mit Hashcash werden die Metadaten einer E-Mail (die „Absender“-Adresse, die „Empfänger“-Adresse, die Uhrzeit, usw.) in eine Binärdatei umgewandelt.) ist als Protokoll formalisiert. Zusätzlich muss der Absender einer E-Mail eine Zufallszahl zu diesen Metadaten hinzufügen: eine „nonce.“All diese Metadaten, einschließlich der Nonce, werden dann gehasht, so dass der resultierende Hashwert ein wenig wie eine der oben genannten Zufallszahlen aussieht.
Der Trick dabei ist, dass nicht jeder Hash als „gültig“ angesehen wird.“Stattdessen muss die binäre Version des Hashes mit einer vorgegebenen Anzahl von Nullen beginnen. Zum Beispiel: 20 Nullen. Der Absender kann einen Hash generieren, der mit 20 Nullen beginnt, indem er ein Nonce einfügt, das sich zufällig korrekt addiert … aber der Absender kann nicht im Voraus wissen, wie dieses Nonce aussehen wird.
Um einen gültigen Hash zu generieren, hat der Absender also nur eine Möglichkeit: Versuch und Irrtum („brute force“). Er muss so lange verschiedene Nonces ausprobieren, bis er eine gültige Kombination gefunden hat; andernfalls wird seine E-Mail vom E-Mail-Programm des Empfängers zurückgewiesen. Wie die Lösung von Dwork und Naor erfordert auch dieses Verfahren Rechenressourcen: Es handelt sich um ein Proof-of-Work-System.
„[I]m Falle eines fehlenden 20-Bit-Hashes […] gibt es ein Programm, das ihn mit einem Hinweis zurückschickt, in dem erklärt wird, wie viel Porto erforderlich ist und wo man die Software herbekommt“, erklärte Back auf der Cypherpunks-Mailingliste. „Dies würde Spammer über Nacht aus dem Geschäft bringen, da 1.000.000 x 20 = 100 MIP Jahre, was mehr Rechenleistung bedeutet, als sie benötigen've bekommen.“
Insbesondere ist Backs Proof-of-Work-System zufälliger als das von Dwork und Naor. Die Lösung des Duos erforderte das Lösen eines Rätsels, was bedeutet, dass ein schnellerer Computer es jedes Mal schneller lösen würde als ein langsamer Computer. Aber statistisch gesehen würde Hashcash immer noch dem langsameren Computer erlauben, eine korrekte Lösung schneller zu finden.
(Zum Vergleich: Wenn eine Person schneller läuft als eine andere, wird die erstere einen Sprint zwischen ihnen jedes Mal gewinnen. Aber wenn eine Person mehr Lotterielose kauft als eine andere Person, wird letztere statistisch gesehen trotzdem manchmal gewinnen – nur nicht so oft.)
Digitale Knappheit
Wie der Vorschlag von Dwork und Naor wurde auch Hashcash – das Back 2002 in einem White Paper näher erläuterte – nie in großem Stil eingeführt. Es wurde in die Open-Source-Plattform SpamAssassin von Apache implementiert, und Microsoft hat die Proof-of-Work-Idee in das inkompatible „E-Mail-Poststempel“-Format übertragen. Back und andere Wissenschaftler haben im Laufe der Jahre verschiedene alternative Anwendungen für diese Lösung entwickelt, von denen sich die meisten jedoch nie durchgesetzt haben. Für die meisten potenziellen Anwendungen war das Fehlen eines Netzwerkeffekts wahrscheinlich zu groß, um es zu überwinden.
Dennoch haben Dwork und Naor sowie Back (unabhängig voneinander) etwas Neues eingeführt. Während eine der stärksten Eigenschaften digitaler Produkte die Leichtigkeit ist, mit der sie kopiert werden können, war der Proof of Work im Grunde das erste Konzept, das mit virtueller Knappheit vergleichbar ist und sich nicht auf eine zentrale Partei verlässt: Es bindet digitale Daten an die reale, begrenzte Ressource der Rechenleistung.
Und Knappheit ist natürlich eine Voraussetzung für Geld. Tatsächlich ordnete insbesondere Back in seinen Beiträgen auf der Cypherpunks-Mailingliste und in seinem Whitepaper Hashcash ausdrücklich in die Kategorie Geld ein und verglich es mit dem einzigen digitalen Bargeld, das die Welt zu diesem Zeitpunkt gesehen hatte: DigiCash’s Ecash von Chaum.
„Hashcash kann eine Überbrückungsmaßnahme sein, bis Digicash breiter eingesetzt wird“, argumentierte Back auf der Mailingliste. „Hashcash ist kostenlos, alles, was Sie tun müssen, ist, ein paar Zyklen auf Ihrem PC zu verbrennen. Es steht im Einklang mit der Netzkultur des freien Diskurses, in der sich die finanziell Herausgeforderten mit Millionären, pensionierten Regierungsbeamten usw. auf gleicher Augenhöhe duellieren können. [Und] Hashcash könnte uns eine Ausweichmethode zur Kontrolle von Spam bieten, falls Digicash scheitert (verboten wird oder die Identitäten der Nutzer hinterlegt werden müssen).“
Trotz des Namens könnte Hashcash jedoch nicht als vollwertiges Bargeld funktionieren (ebenso wenig wie der Vorschlag von Dwork und Naor). Am wichtigsten ist vielleicht, dass jeder „erhaltene“ Arbeitsnachweis für den Empfänger nutzlos ist. Anders als Geld kann es nicht an anderer Stelle wieder ausgegeben werden. Da die Computer zudem jedes Jahr schneller wurden, konnten sie mit der Zeit immer mehr Beweise zu geringeren Kosten produzieren: Hashcash wäre einer (Hyper-)Inflation unterworfen gewesen.
Was Proof of Work mehr als alles andere bot, war eine neue Grundlage für die Forschung im Bereich des digitalen Geldes. Einige der bemerkenswertesten Vorschläge für digitales Geld, die folgten, bauten auf Hashcash auf, typischerweise indem sie die Wiederverwendung der Arbeitsnachweise erlaubten. (Mit Hal Finneys Reusable Proof of Work – RPOW – als dem offensichtlichsten Beispiel.)
Bitcoin
Letztendlich wurde der Proof of Work natürlich zu einem Eckpfeiler von Bitcoin, mit Hashcash als einem der wenigen Zitate im Bitcoin White Paper.
In Bitcoin wird Hashcash (oder besser gesagt, eine Version davon) jedoch ganz anders genutzt, als viele vorher vermutet hätten. Im Gegensatz zu Hashcash und anderen Vorschlägen, die auf Hashcash basieren, wird die Knappheit, die es bietet, selbst nicht als Geld verwendet. Stattdessen ermöglicht Hashcash ein Rennen. Der Miner, der als erster einen gültigen Arbeitsnachweis – einen Hash eines Bitcoin-Blocks – erstellt, darf entscheiden, welche Transaktionen durchgeführt werden. Zumindest in der Theorie kann jeder gleichberechtigt konkurrieren: ähnlich wie bei einer Lotterie würden selbst kleine Miner statistisch gesehen immer wieder als erste einen gültigen Arbeitsnachweis erbringen.
Außerdem ist es unwahrscheinlich, dass ein neuer Block, der eine Reihe von Transaktionen bestätigt, wieder rückgängig gemacht werden kann, wenn er einmal geschürft wurde. Ein Angreifer müsste mindestens so viel Arbeit nachweisen, wie nötig ist, um den Block überhaupt zu finden, was sich für jeden weiteren Block, der gefunden wird, addiert, was unter normalen Umständen mit der Zeit exponentiell schwieriger wird. Die realen Ressourcen, die aufgewendet werden müssen, um zu betrügen, überwiegen in der Regel den potenziellen Gewinn, der durch Betrug erzielt werden kann, und geben den Empfängern von Bitcoin-Transaktionen das Vertrauen, dass diese Transaktionen endgültig sind.
In Bitcoin hat Hashcash auf diese Weise zwei Fliegen mit einer Klappe geschlagen. Es löste das Problem des doppelten Geldausgebens auf dezentrale Weise und bot gleichzeitig einen Trick, um neue Münzen in Umlauf zu bringen, ohne einen zentralen Emittenten.
Hashcash hat nicht das erste elektronische Geldsystem realisiert – Ecash nimmt diese Krone ein, und Proof-of-Work könnte nicht wirklich als Geld funktionieren. Aber ein dezentral Ein elektronisches Bargeldsystem wäre ohne sie vielleicht unmöglich gewesen.
Dies ist die zweite Ausgabe des Bitcoin Magazine's Serie The Genesis Files. Der erste Artikel behandelte Dr. David Chaum's eCash