
Für wen ist dieser Artikel geeignet?
Hier stelle ich euch kurz und bündig meinen Testnet-Validator vor. Dazu benötigt ihr einige Vorkenntnisse zum Thema Blockchain und Ethereum. Daher kann es vorkommen das Ihr einige Fragen zum Text habt oder Fragen unbeantwortet bleiben. Für diesen Zweck werde ich euch einige nützliche Links zum Thema Blockchain und Ethereum bereitstellen in denen Ihr euer Wissen auffrischen könnt.
Vorwort
In den letzten Jahren ist das Blockchain-Business und damit die „on-chain transaktionen“ stetig gewachsen. Ein immer wichtigeres Thema ist die Skalierbarkeit der dezentralen Blockchains. Bis dato werden die meisten Blockchains durch Miner abgesichert, welche mit teurer Hardware und hohem Stromverbauch die Transaktionen des Netzwerkes validieren. Dieses Verfahren wird als „Proof of Work“ bezeichnet. Dabei besteht die Gefahr das die eigentlich dezentralen Netzwerke durch große Firmen mit vielen Minern dominiert werden könnten. Um die Skalierbarkeit und die Netzwerksicherheit zu verbessern wird auf ein alternative Validierungstechnik gesetzt. Dieses Verfahren wird auch als „Proof of Stake“ bezeichnet.
Ethereum, die zweitgrößte Cryptowährung versucht nun den Sprung von Proof of Work zu Proof Stake und will damit die Führungsrolle in der großen Welt der Blockchains erringen.
Proof of what?
Mit Proof of Stake wird eine neue Validierungstechnik in das Netzwerk eingeführt. Dabei muss ein Nutzer einen gewissen Betrag an Ether in einem Smartcontract einschließen bevor sein Node zum Validator werden kann. Der Betrag liegt bei 32ETH ~11500€. Durch den Verschluss einer solchen Summe wird vorrausgesetzt, dass der Validator ein gewisses Grundinterresse daran hat dass das Netzwerk stets korrekt arbeitet und er keine Transaktionen manipuliert. Etherum wird noch weitere Möglichkeiten zur Skalierung einführen, diese sind jedoch hier noch nicht von Interesse, da ich hier Hauptsächlich auf den Vorgang von Proof of Stake eingehen möchte. Wie beim Mining bekommt der Validator durch seine Arbeit eine Belohnung in Form von ETH2.
Was macht ein Testnet-Validator?
Ein Ethereum Validator, egal ob Testnet oder produktiv validiert immer Transaktionen. Das bedeuted es wird überprüft ob die Transaktionen der Nutzer rechtens sind. Anschließend werden die Transaktionen durch ein Hashwertverfahren zu einem Block zusammen gepackt. Es entsteht ein Block der Blockchain.
Mein Testnet-Validator
Gute Software sollte immer ausführlich auf Fehler geprüft werden. Indem man seinen eignen Testnet-Validator aufsetzt kann man bereits jetzt einen Einblick in Ethereum 2.0 bekommen und dabei helfen die Software zu testen.
Nach dem der Validator korrekt aufgesetzt wurde müsst Ihr 32 Testnet Ether zu einem Smartcontract schicken, welcher im nachhinein euer Ether 1.0 zu Ether 2.0 wandelt und euch berechtigt Transaktionen zu verarbeiten. Euer Validator beginnt nun Transaktionen mittels des Stakingprozesses zu bearbeiten. Ähnlich wie beim Mining bekommt ihr dafür eine kleine Entlohnung in Form von ETH2.0. Zudem gibt es mehrere zentrale Webfrontends auf dem Ihr die Leistung und Statistiken zu eurem Validator einsehen könnt.

Wie auf dem obigen Screenshot zu erkennen arbeitet der Validator korrekt und zu euren ursprünglichen 32 ETH gesellen sich langsam mehr und mehr Ether. Im Terminal sieht das ganze wie folgt aus.

Systemvorraussetzungen
Damit ETH 2.0 dezentraler wird muss die Software entsprechend geringe Systemvorraussetzungen mit sich bringen. Derweil ist es möglich die benötigten Softwarebestandteile, Validator und Beaconchain-node auf einem kleinem Raspberry PI zum laufen zu bringen. Aufgrund des Betastatusses lassen sich derzeit noch keine finalen Systemanforderungen definieren. Jedoch scheinen sich einige Hardwareeckpunkte herraus zu kristalisieren.
CPU: min 1. Core
RAM: min 4GB
Ethernetspeed: fast as possible < ISDN 16.000
Harddrive: HDD rw speed~100 MB/s
!Achtung! ETH 2.0 soll in mehreren Schritten ausgerollt werden. Ein weiterer wichtiger Punkt zur Verbesserung der Skalierbarkeit ist das sog. ETH Sharding. Hier möchte ich nicht auf diese Thematik eingehen. Wichtig ist jedoch zu wissen das dieses Verfahren wahrscheinlich die Schreiblese sowie die CPU-Auslastung erhöhen wird. Dementsprechend können die Hardware angaben durchaus nach oben korrigiert werden.
Meine Hardware
Wie immer setzte ich hier auf einen LXC-Container, um die Systemauslastung so gering wie möglich zu halten. Folgende Hardwareresourcen habe ich dem Container zugeordnet:
CPU: 2-KVM Cores
RAM: 8GB
HDD: 50GB
Network: Gigabitethernet connection
Wie Ihr euch selber einen Ethereum Testnet-Validator einrichtet erfahrt Ihr hier. ->