Informationen zu öffentlichen Ethereum-Netzwerken

Abgeschlossen

Das Ethereum-Protokoll besteht aus mehreren öffentlichen Netzwerken. Verschiedene Ethereum-Netzwerke können verschiedene Eigenschaften, Verwendungszwecke, Funktionalitäten und Konsensmechanismen aufweisen. Ethereum umfasst derzeit vier Testnetzwerke, die als Testnets bezeichnet werden. Außerdem umfasst es ein Produktionsnetzwerk, das als Mainnet (Hauptnetzwerk) bezeichnet wird.

Übersicht über das Mainnet

Das Mainnet (kurz für „Hauptnetzwerk“) ist die einzige echte öffentliche Ethereum-Blockchain. Anwendungen, die im Mainnet bereitgestellt werden, können Informationen verwenden, diese untereinander austauschen und miteinander kommunizieren.

Bereitgestellte Anwendungen können den vollen Funktionsumfang der dezentralen Blockchain nutzen. Es gibt keine zentrale Autorität. Das Mainnet ist vollständig dezentralisiert.

Im Mainnet können verschiedene Arten von Tokens und Anwendungen bereitgestellt werden. Nachdem Transaktionen im Mainnet bereitgestellt wurden, sind diese unveränderlich.

Jede Transaktion hat echte Kosten. Diese Kosten erfordern die Kryptowährung „Ether“ (ETH).

Sie können alle Blöcke im Ethereum-Mainnet mit Etherscan anzeigen. Etherscan zeigt die zuletzt berechneten Blöcke und Transaktionen. Alle Blöcke können untersucht werden.

Screenshot: Homepage von Etherscan

Ethereum-Testnets

Ethereum umfasst vier öffentliche Testnets. Jedes Testnet weist eine andere Bereitstellungsmethode und einen anderen Prozess auf. Die Testnets stagen und testen Anwendungen in einer öffentlichen Echtzeitumgebung, bevor die Anwendungen im Mainnet bereitgestellt werden.

Testnets verwenden entweder PoW- (Proof-of-Work) oder PoA-Konsensprotokolle (Proof-of-Authority), um zu ermitteln, wie neue Transaktionsblöcke zum Netzwerk hinzugefügt werden. Im Folgenden finden Sie eine kurze Übersicht über beide Protokolle:

  • PoW: Ein Mining-Rig löst ein kryptografisches Hashingproblem, um einen neuen Block zu berechnen und zu entscheiden, welche Transaktionen teil des Blocks sind.
  • PoA: Blocküberprüfungen überprüfen ihre Identität in einem Netzwerk, um zu entscheiden, welche Transaktionen Teil des nächsten Blocks in der Kette werden.

Testnets erfordern Test-Ether. Test-Ether ist kostenlos, und Sie können über Faucets darauf zugreifen. Sie stellen eine Kontoadresse für Faucets zu Verfügung, um eine gewisse Menge an Test-Ether zu erhalten.

Faucets sind die primäre Methode, um Test-Ether für ein Testnet zu erhalten. Die Community verwaltet öffentliche Testnetzwerke, die von Entwicklern und Tests verwendet werden können. Faucets schützen das Testnet vor Spamangriffen, da Ether von vertrauenswürdigen Parteien kontrolliert wird.

Vergleich von Testnets

Im Folgenden erhalten Sie eine Übersicht über die verschiedenen Ethereum-Testnets und ihre Eigenschaften.

Ropsten

Ropsten ist ein PoW-Konsensprotokoll. Es liegt dem Mainnet hinsichtlich der Funktionalität am nächsten. Ropsten gibt es seit 2016 und ist nach einer schwedischen U-Bahnstation benannt. Einige behaupten, dieses Testnet reproduziert die Bedingungen des Mainnets am besten.

Ausführlichere Informationen:

Kovan

Kovan ist ein PoA-Testnet, das nach einer U-Bahnstation in Singapur benannt wurde. Ether muss vom Faucet angefordert werden und wird von vertrauenswürdigen Parteien kontrolliert. Aufgrund dieser Eigenschaft ist Kovan vor Spamangriffen geschützt.

Ausführlichere Informationen:

Rinkeby

Rinkeby ist ein PoA-Testnet, das im April 2017 vom Ethereum-Team gestartet wurde. Es wurde nach einer U-Bahnstation in Stockholm benannt.

Ausführlichere Informationen:

Goerli

Das clientübergreifende PoA-Testnet Goerli wurde nach einer U-Bahnstation in Berlin benannt. Dieses Testnet soll für möglichst viele verschiedene Clients nutzbar sein. Es ist stabil genug, um konsistente Verfügbarkeit zu garantieren. Es begann mit der Goerli-Initiative 2018.

Ausführlichere Informationen:

Es heißt, dass das Ropsten-Testnet dem Mainnet am ähnlichsten ist. Es war das erste große Testnet. Kovan, Goerli und Rinkeby sind stabil und werden oft verwendet. Vor der Bereitstellung im Mainnet sollten Sie Ihre Bereitstellung in mehreren Testnets testen.

Clients und APIs für die Bereitstellung in Testnets und im Mainnet

Ethereum ist für mehrere Clients konzipiert. Clients können von verschiedenen Teams und in verschiedenen Programmiersprachen entwickelt werden. Dank dieser Vielfalt ist das Netzwerk stärker und vielfältiger. Das Ziel besteht darin, diese Vielfalt zu erreichen, ohne dass ein Client dominiert. Durch diesen Entwurf wird die Wahrscheinlichkeit eines Single Point of Failure (SPOF) reduziert.

Clients

Im Folgenden werden beliebte Ethereum-Clients aufgeführt:

  • Geth-Client

    Go Ethereum (auch Geth genannt) ist eine der ersten Implementierungen des Protokolls. Dieser Client weist die größte Benutzerbasis auf und wird am häufigsten verwendet. Geth bietet eine Vielzahl von Tools sowohl für Blockchainentwickler als auch für Benutzer.

    Der Geth-Client ist in Go geschrieben und ist Open Source. Der Client ist unter Version 3 der GNU Lesser General Public License (LGPL) lizenziert.

  • OpenEthereum

    Der OpenEthereum-Client ist für alle Arbeiten mit dem Protokoll nützlich. Er vereinfacht Aufgaben wie Anpassung, Produktintegration, Datenspeicherung und Speicherverwaltung. Ziel ist es, der schlankeste, schnelle und sicherste aller Ethereum-Clients zu sein.

    OpenEthereum wurde in der Programmiersprache Rust geschrieben. Der Client ist unter Version 3 der GNU General Public License (GPL) lizenziert.

  • Nethermind

    Nethermind bietet den schnellsten .NET Core-Ethereum-Client und P2P-Marketplace für Daten der Welt. Der Client umfasst Beratungsdienste für Entwickler von Ethereum-Blockchainlösungen.

APIs

Im Folgenden werden einige gängige Ethereum-APIs aufgeführt:

  • Infura

    Die Infura-API-Sammlung bietet sofortigen Zugriff auf die Ethereum- und IPFS-Netzwerke über HTTPS und WebSockets. Sie können diese intuitive Benutzeroberfläche des Clients verwenden, um Verbindungen mit den Endpunkten aller Testnets herzustellen. Infura unterstützt sowohl die Truffle-Suite als auch das Blockchain Development Kit für Ethereum von Visual Studio Code.

  • MetaMask

    Wenn Sie die Bereitstellung in einem Testnet oder im Mainnet durchführen, bietet der MetaMask-Client eine stabile Benutzeroberfläche und einen Wallet, der mit Ethereum-Blockchains verbunden ist und mit diesen interagiert.

    Die Verwendung von MetaMask zum Senden von Ether und Tokens in einem Testnet ist einfach. Der Client bietet eine einfach zu verwendende Benutzeroberfläche zum Auswählen und Verwenden verschiedener Ethereum-Netzwerke. Wenn Sie mit Entwicklungsnetzwerken interagieren müssen, vereinfacht MetaMask das Herstellen einer Verbindung mit localhost 8545 oder benutzerdefiniertem Remoteprozeduraufrufe (RPC), damit Sie eine Verbindung mit Ganache und Truffle herstellen können. Ebenso verfügt MetaMask über vordefinierte Verbindungen mit den öffentlichen Testnets und dem Mainnet.

    Wenn Sie eine Verbindung mit dem Mainnet herstellen, wird dringend empfohlen, dass Sie Ihren privaten Schlüssel schützen. Bei dieser Verbindung wird echtes Ether verwendet.