Ethereum

Ethereum basiert, wie auch Bitcoin, auf der Blockchain-Technologie. Im Unterschied zu Bitcoin ist Ethereum jedoch keine reine Kryptowährung, sondern auch eine Plattform für sogenannte Dapps (Decentralized Apps), die aus Smart Contracts bestehen. Für Smart Contracts gibt es eine Vielzahl von Anwendungen, unter anderem E-Voting-Systeme, virtuelle Organisationen, Identitätsmanagement und Crowdfunding.
Ethereum ist ein verteiltes System, dessen Teilnehmer (Ethereum Accounts oder Contracts) das Ethereum-eigene Peer-to-Peer-Netzwerk nutzen, um Daten ohne einen zentralen Server auszutauschen. Alle Teilnehmer arbeiten mit einer gemeinsamen Datenbasis, der Ethereum-Blockchain. Um teilzunehmen, bedarf es eines Ethereum-Clients, der sich vor der Verwendung mit dem Netzwerk synchronisiert, also jede seit der letzten Synchronisation in der Blockchain dokumentierte Transaktion herunterlädt und überprüft. Für die initiale Synchronisation gibt es bei einigen Clients einen Schnellmodus, bei dem nicht die komplette Blockchain heruntergeladen werden muss. Als Wallets dienen Ethereum Wallet, MyCrypto, MyEtherWallet, HelioWallet, Parity, Freewallet, sowie Exodus (Multi-Asset Wallet für verschiedene Kryptowährungen). Sogenannte „Light Clients“ ermöglichen es, mit wenig Kapazitäten den Status eines Teils der gesamten Ethereum-Plattform zu überwachen oder einzelne Transaktionen zu verifizieren. Diese sind jedoch Stand Oktober 2016 noch in der Entwicklung.
Erstellt wird Ethereum momentan noch durch einen sogenannten Proof-of-Work-Algorithmus, welcher im Laufe der Entwicklungsphasen jedoch durch einen Proof-of-Stake-Algorithmus ersetzt werden soll. Möchte man sich heute (Stand April 2017) also aktiv an der Herstellung von Ethereum beteiligen, dann ist dies über Ethereum-Mining möglich. Dabei wird auf der CPU oder der GPU ein spezieller Algorithmus (Ethash) ausgeführt. Als Belohnung erhalten die Ethereum-Miner im Gegenzug Ether. Um ihre Leistung zu bündeln und so die Chancen auf eine Belohnung zu erhöhen, schließen sich die Ethereum-Miner in Mining Pools zusammen.
Smart Contracts sind Programme, die automatisch ausgeführt werden, sobald eine in dem Contract festgelegte Summe in Ether überwiesen wurde. Damit ist keine (manuelle) Überprüfung eines Zahlungseingangs mehr erforderlich, denn die Überweisung startet direkt die im Programm festgelegte Gegenleistung.Jede Transaktion wird innerhalb der gesamten Blockchain – also auf allen mit dem Netzwerk verbundenen Geräten – gespeichert. Das dezentrale Konzept der Blockchain prüft die Integrität der gesamten Datenbank permanent.
Die Smart Contracts werden meist in der für Ethereum eigens entwickelten Programmiersprache Solidity geschrieben. Sie werden dann in Bytecode übersetzt und auf der Ethereum Virtual Machine (EVM) ausgeführt. Eine virtuelle Maschine kapselt grundsätzlich eine Client-Umgebung von der Host-Umgebung, also den anderen Anwendungen auf einem Computer, ab. Die virtuellen Maschinen von Ethereum wurden in Ruby, Elixier, C ++, C #, Go, Haskell, Java, JavaScript, Python, Rust, Erlang sowie bald auch in WebAssembly implementiert.