Den Äther programmieren
Smart Contracts für die Ethereum-Blockchain schreiben
Bei Ethereum denken viele an eine Kryptowährung, dabei handelt es sich eigentlich um ein weltweit verteiltes Rechenzentrum, das Programme – sogenannte Smart Contracts – auf einer Blockchain ausführt. Wir zeigen Ihnen, wie Sie einen solchen Smart Contract programmieren, um „Schere, Stein, Papier“ auf der Ethereum-Blockchain zu spielen.
Ethereum und seine Währung Ether sind zwar das zweitgrößte Kryptogeldsystem nach Bitcoin, aber der eigentliche Clou von Ethereum sind Smart Contracts. Das sind Programme auf der Blockchain, die global verteilt, manipulationssicher und allgemein überprüfbar ausgeführt werden. Im Prinzip schreibt man einen Smart Contract wie jedes andere Programm auch. Das geschieht üblicherweise in einer Hochsprache, die zu Bytecode für die Ethereum Virtual Machine (EVM) kompiliert wird. Anschließend muss man den Vertrag ausrollen, also auf der Blockchain platzieren. Dazu benötigt man ein Ethereum-Konto und eine (mit dem Browser verknüpfte) Wallet-Applikation.
Nachdem ein Vertrag ausgerollt wurde, können Blockchain-Nutzer mit ihm interagieren. Das geschieht über Transaktionen wie beim reinen Verschieben von Geld, allerdings ist das Zielkonto der Smart Contract. Transaktionen können auch 0 Ether überweisen, eine Vertragsinteraktion muss also nicht unbedingt auch Geld an den Vertrag senden. Transaktionskosten entstehen aber in jedem Fall. Weil der Zustand der Blockchain und auch alle Transaktionen öffentlich sind und die EVM rein deterministisch arbeitet, ist jederzeit klar, wann welcher Vertrag aufgerufen wurde und welches Ergebnis der Aufruf hatte.