Bitcoin weitergedacht: Die Ethereum-Grundlagen im Überblick

(Grafik: Shutterstock/ Wit Olszewski)
Der Hype um digitale Währungen wie Bitcoin oder Ether speist sich in erster Linie aus beeindruckenden Wertsteigerungen. Der Kurs für einen Ether beispielsweise lag Anfang 2015 noch unter einem US-Dollar und kletterte zwischenzeitlich auf über 650 US-Dollar. Doch ist die schlichte Wertsteigerung eher einer der langweiligen Aspekte von Ethereum, wenn man sich das Potenzial hinter der Technologie anschaut. Denn die Kombination aus „programmierbarem“ Geld und einem globalen Computer in Form der Ethereum Virtual Machine ist der viel weitreichendere Aspekt und gleichzeitig auch das wichtigste Unterscheidungsmerkmal der Ethereum-Blockchain zu Bitcoin.
Ethereum bietet nämlich nicht nur eine Möglichkeit, Werte digital aufzubewahren, sondern auch ganz andere Dinge mit den digitalen Werten auf einem globalen Computer in Form der Ethereum Virtual Machine anzustellen. Es lassen sich Anwendungen für jede nur denkbare Finanzdienstleistung programmieren – von Kauf und Verkauf über Kredite und Crowdfunding bis hin zu Auktionen und sogar Glücksspiel. Dabei ist die Nutzung der Ethereum Virtual Machine nicht auf Menschen beschränkt, denn auch Computer können mit ihr interagieren. So ist es beispielsweise denkbar, dass selbstfahrende Autos vollautomatisch Strom aufladen und dafür eine Zahlung auslösen.
Was steckt technisch hinter Ethereum?
Die Ethereum Virtual Machine besteht aus Tausenden von Computern, die alle miteinander verbunden sind und zusammen als ein großer, weltumfassender Computer funktionieren. Dabei beherbergt jeder dieser einzelnen Rechner eine Kopie aller vorhandenen Informationen. Fällt also ein einzelner Computer aus, ist das überhaupt kein Problem. Wer Programme auf dem globalen Computer laufen lassen will, muss sich die benötigte Rechenzeit kaufen. Die Währung dafür ist das bereits angesprochene Ether. Damit hat Ether im Gegensatz zu reinen Kryptowährungen einen inhärenten Wert. Während Bitcoin als digitale Währung konzipiert wurde, fungiert Ethereum als Plattform für das Ausführen von Verträgen – sogenannter Smart Contracts – zwischen zwei Parteien mit Hilfe von verteilten Apps – sogenannter Distributed Apps (Dapps).
Die Transaktion eines Werts auf der Ethereum-Blockchain eignet sich am besten für eine verständliche Erklärung der grundlegenden Technologie. Wer Geld transferieren will, dem wird der entsprechende Betrag vom eigenen Konto abgezogen und dem Konto des Gegenübers gutgeschrieben. Im herkömmlichen Finanzsystem erfassen die Banken alle Transaktionen und bestimmen anhand dieser den Kontostand – klassische Buchhaltung also. Auf der Blockchain funktioniert das ähnlich, sodass sich die Technologie auch als digitales Hauptbuch beschreiben lässt. Im englischen Sprachraum spricht man von einem „Ledger“.
Die Blockchain besteht aus einzelnen Blöcken, die Informationen enthalten und in einer Art Kette aneinandergereiht werden. Daher kommt auch der Name „Blockchain“. Jeder Block der Blockchain beinhaltet eine bestimmte Zahl von Transaktionen sowie einige Informationen über den Block selbst. Diese Informationen werden in den „Header“ geschrieben und enthalten unter anderem die Blocknummer, wer den Block erstellt hat, sowie – und das ist besonders wichtig – eine Referenz auf den vorangehenden Block. Dazu kommen zusätzliche technische Informationen wie Hashes.
Aus der letztgenannten Information im Block-Header ergibt sich die Natur der Blockchain als Kette von aneinandergereihten und miteinander verbundenen Blöcken. Die Kette aller Blöcke lässt sich bis zum sogenannten Genesis-Block – also dem allerersten Block der Blockchain – zurückverfolgen. Jeder Computer, der zum Netzwerk gehört, speichert lokal eine Kopie der kompletten Blockchain und aktualisiert diese Kopie jedes Mal via Peer-to-Peer-Filesharing, wenn ein neuer Block dazukommt.
Wo ist der Unterschied zu Bitcoin?
Im Gegensatz zu Bitcoin lassen sich bei Ethereum nicht nur Transaktionen in Blöcke schreiben, sondern auch Zustände. Ein „Zustand“ beschreibt in diesem Zusammenhang eine Eigenschaft oder ein Attribut eines Objekts, das verändert werden kann. Ein Beispiel dafür wäre das zu Beginn dieses Artikels erwähnte selbstfahrende Elektroauto. Eines der Attribute des Fahrzeugs wäre der „Ladestand“. Der veränderbare Zustand von „Tankfüllung“ könnte zum Beispiel entweder „voll geladen“ oder „halb voll“ lauten. Mit einer Transaktion lässt sich auf der Ethereum-Blockchain jede Art von Zustand verändern. Das Ethereum-Protokoll legt allerdings fest, dass ein Nutzer nicht einfach wahllos den Zustand anderer verändern kann.
Jede Veränderung des Zustands wird im digitalen Hauptbuch festgehalten, sodass sich jeder Zustand von der Transaktion, die eine Änderung herbeigeführt hat, ableiten lässt. Eine Analogie aus dem traditionellen Finanzsystem: Das Guthaben, das sich auf einem Konto befindet, lässt sich ableiten, indem man alle ein- und ausgehenden Überweisungen zusammengenommen betrachtet.
Was macht Ethereum so sicher?
Ethereum wird häufig mit Kryptowährung gleichgesetzt. Zutreffender ist es aber, Ether – als Teil von Ethereum – als Kryptowährung zu bezeichnen. Das „Krypto“ in Kryptowährung jedenfalls bezieht sich auf Kryptografie als Methode, um Protokolle zu definieren, die eine sichere Kommunikation ermöglichen, ohne dass Dritte den Inhalt dieser Kommunikation lesen oder ändern können. Das ist wichtig, weil auf der Blockchain auch Parteien miteinander interagieren, die sich überhaupt nicht kennen und daher nicht wissen, ob sie sich gegenseitig vertrauen können.

Die einzelnen Blöcke in der Blockchain sind wie Kettenglieder einer Kette aneinandergereiht. Anatomie eines Blocks: Jeder Block in der Blockchain beinhaltet unter anderem Informationen zu auf der Blockchain getätigten Transaktionen und eine Referenz auf den vorangehenden Block. (Grafik: t3n)
Ethereum setzt in Bezug auf Sicherheit unter anderem auf SHA (Secure Hashing Algorithm), einen sicheren Hashing-Algorithmus, der Daten auf eine bestimmte Art und Weise ändert. Jeder Block auf der Blockchain beinhaltet den Hash jeder vorangehenden Transaktion und jeder vorangehenden Änderung eines Zustands. Jeder Versuch der Manipulation würde sofort auffallen, weil der resultierende Hash komplett anders aussehen würde als er sollte.
Wenn man beispielsweise den Hash der t3n-Postanschrift mittels SHA-1-Algorithmus generiert, wird aus
t3n Kriegerstr. 40 30161 Hannover
der folgende Hash:
8395e134ec9a9186442b5af46e541f3b214b3e52
Wichtig bei diesem Vorgang sind zwei Dinge. Zum einen führt der Hashing-Algorithmus beim selben Input immer zum selben Output. Die kleinste Änderung beim Input führt allerdings zu einem völlig anderen Ergebnis. Lassen wir in unserem Beispiel den Punkt bei „Kriegerstr. 40“ weg, sieht der Hash der gesamten Postanschrift wie folgt aus:
394adbe8d181113821481b92f7d22dcd024f62ba
Wichtig ist zum anderen, dass das Ganze nur in eine Richtung funktioniert. Hat man also den Kauderwelsch aus dem beispielhaften Hash oben, lässt sich die Postanschrift nicht – oder nur unter sehr großem Aufwand – zusammensetzen.
Wie wächst Ethereum?
Man kann jedoch versuchen, den Input zu erraten und das Ergebnis dann mit dem richtigen Hash zu vergleichen. Bei Ethereum nennt sich dieser Vorgang „Mining“. Mining ist integraler Bestandteil der Ethereum-Blockchain, denn auf diese Weise werden neue Blöcke erstellt, in die ja wie bereits erwähnt die anfallenden Transaktionen geschrieben werden. Anreiz und Entschädigung für die Mühen der „Miner“, neue Blöcke zu erschaffen, sind Belohnungen in Form der digitalen Währung Ether.
Hätte man im Rahmen des Minings beim Erraten eines Hashes keinerlei Anhaltspunkte bezüglich des Inputs, dann würde man eine unvorstellbar riesige Anzahl an Möglichkeiten haben.
Es wurde bereits erwähnt, dass jeder Block der Ethereum-Blockchain die Hashes aller früheren Transaktionen und Zustandsänderungen enthält. Beim Mining muss der Hash aller Informationen bis zum aktuellen Block plus einer unbekannten Zahl erraten werden. Demnach kennen Miner fast den kompletten Input schon und haben nur eine kleine Unbekannte als Variable.
Zur Verdeutlichung nehmen wir an, dass uns jemand einen Hash mitteilt und verrät, dass dieser Hash dem kompletten Inhalt des Klassikers „Die Reise zum Mittelpunkt der Erde“ von Jules Verne plus einem zusätzlichen Wort entspricht. Der Hash der englischen Version des Buches auf Projekt Gutenberg (t3n.me/jules_verne) lautet 18d4a2189990cbc0a017bba1d5fb3866e66e1f75. Der uns mitgeteilte Hash, der sich auf den kompletten Text plus ein unbekanntes Wort bezieht, lautet a70af4388a9df67b2108d 302b62958774a3adcc2. Nun müsste man also nur noch alle möglichen Wörter durchprobieren und schauen, ob man auf den zweiten Hash kommt und so das Rätsel gelöst hätte.
Dadurch, dass Miner bei Ethereum immer nur den Input auf Basis des aktuellen Blocks erraten können, wird die Sache durch eine Art Zeitlimit erschwert. Sobald ein neuer Block generiert wurde und ein Miner das „Rätsel“ noch nicht gelöst hat, war alle Arbeit umsonst. Das Erraten des vollständigen Inputs würde Hunderttausende von Jahren dauern, wenn man nicht den aktuellen Block als Basis nehmen würde. Miner, die jedoch den aktuellen Block als Basis nehmen, können das Rätsel in einigen Monaten lösen.

Das Schaubild zeigt, wie neue Blöcke auf der Blockchain mittels Proof-of- Work entstehen. Sogenannte Miner müssen kryptografische Rätsel binnen einer bestimmten Zeit lösen. Wer das Rätsel als Erstes gelöst hat, generiert nicht nur den neuesten Block, sondern wird mit einem Betrag der digitalen Währung Ether belohnt. (Grafik: t3n)
Erhöht man die Zahl an Computern, die an der Lösung des Problems arbeiten, verkürzt sich diese Zeit weiter. Die aktuelle Block-Zeit – also die Zeit, die es dauert, um einen Block zu minen – beträgt bei Ethereum rund 20 Sekunden. Das ist auch genau so gewollt, denn bei diesem Intervall gibt man allen Beteiligten die Möglichkeit, den neuesten Block herunterzuladen und zu validieren. Erhöht sich die Zahl der Computer, die an der Lösung des Rätsels arbeiten, erhält die unbekannte Zahl mehr Stellen, um die Lösung zu erschweren und das Intervall von 20 Sekunden beizubehalten.
Der Rechner, der das Rätsel löst und damit einen neuen Block generiert, erhält Ether als Belohnung. Das Ergebnis muss zuvor aber von der Mehrheit des ganzen Netzwerks validiert werden. Das ganze System, auf das im Übrigen auch andere Blockchains setzen, nennt sich Proof-of-Work. Aktuell wird allerdings daran gearbeitet, Ethereum von Proof-of-Work auf das Proof-of-Stake-Modell umzustellen. Mit Proof-of-Stake können Nutzer auf Basis der von ihnen gehaltenen Coins neue Blöcke minen oder Transaktionen validieren. Je mehr Ether also ein Miner sein Eigen nennt, desto mehr Mining-Power hätte er dann.
Mit Proof-of-Stake müssen also für das Erschaffen neuer Blöcke keine kryptografischen Rätsel mehr gelöst werden. Ein Miner muss also nicht mehr mittels möglichst viel Rechenleistung und Energie unter Beweis stellen, wie schnell er einen Hash errechnen kann, sondern neue Blöcke werden mittels des Nachweises, wieviel Ether er besitzt, generiert. Dafür muss der Miner einen sogenannten Master Node im Netzwerk betreiben und einen Teil seines Ethers quasi für den zu erbringenden Nachweis einfrieren. Es gibt einige Vorteile von Proof-of-Stake gegenüber dem aktuell zum Einsatz kommenden Proof-of-Work-Modell. Dazu gehören eine bessere Skalierbarkeit, höhere Geschwindigkeit des Netzwerks, mehr Sicherheit vor Angriffen und eine dramatisch verbesserte Energie-Effizienz, darüber hinaus wird das im Umlauf befindliche Ether durch die von Minern eingefrorenen Coins verringert, was sich in einer Wertsteigerung auswirken könnte.
Das Proof-of-Stake-Modell wird bereits von anderen Blockchains erfolgreich eingesetzt. PIVX und Bitshares etwa sind Vertreter dieses Modells, während die ebenfalls geläufige digitale Währung Dash auf eine Mischung aus Proof-of-Work und Proof- of-Stake – jeweils zur Hälfte – setzt. Auch wenn Proof-of-Work bei Ethereum im Vergleich zu anderen Blockchains mit diesem Modell relativ schnell ist, wird es in Sachen Geschwindigkeit von Vertretern des Proof-of-Stake-Lagers locker abgehängt. Aus diesem Grund spricht viel dafür, dass die Entwickler-Community das Ziel verfolgt, Ethereum auf die schnellere Lösung umzustellen.
Wie sieht die Zukunft von Ethereum aus?
Generell arbeitet die Community von Ethereum an vielen technischen Neuerungen. Bereits 2015 wurde eine vierphasige Roadmap vorgestellt, von der die ersten beiden Phasen bereits umgesetzt wurden. Dabei handelt es sich um ein bedeutendes Upgrade von Ethereum. Es soll die Blockchain noch sicherer machen, sich besser skalieren lassen und auch für nicht versierte Nutzer einfacher in der Handhabung sein. Der Rollout findet in zwei Schritten statt: Ein erstes Teilupdate, das seit Mitte September getestet wird, verdoppelt unter anderem die Block-Zeit und ermöglicht komplett anonyme Transaktionen zwischen zwei Parteien, die theoretisch so sicher sind, dass sie noch nicht mal mit Quantencomputern gehackt werden können. Das zweite Teilupdate ist für Anfang 2018 geplant. Der Umstieg auf Proof-of-Stake soll dann mit einem darauffolgenden Update – der vierten Phase der 2015 vorgestellten Roadmap – umgesetzt werden.
Die kontinuierliche Verbesserung der Ethereum-Blockchain ist sicher mitverantwortlich für die Beliebtheit sowohl bei Entwicklern als auch Organisationen, Nationalbanken, Regierungen und Unternehmen. Schon jetzt fällt es dem Netzwerk schwer, der Nachfrage gerecht zu werden. Das Upgrade dürfte eine wichtige Rolle dabei spielen, Ethereum robuster zu machen und besser skalieren zu lassen. Ob das dann allerdings ausreicht, damit Ethereum seinen Status als Platzhirsch bei Blockchain-Technologie und -Verbreitung verteidigen kann, lässt sich noch nicht absehen. Projekte wie EOS, Cosmos Hub, Steem oder das in Deutschland beliebte IOTA stehen in den Startlöchern und werden von manchen Beobachtern in einer Welt, in der Bitcoin ein Vertreter der Blockchain 1.0 und Ethereum als Vertreter der Blockchain 2.0 gehandelt werden, als die Zukunft in Form der Blockchain 3.0 gehandelt.