Wie kann ich eine private Geth-Instanz in Azure dazu bringen, mit der öffentlichen Blockchain zu interagieren?

Ich beziehe mich also auf die neue Blockchain-as-a-Service- Ubuntu-Geth-Instanz von Microsoft Azure. Ich habe dies ohne Probleme eingerichtet und das Tutorial durchlaufen, aber ich versuche darüber nachzudenken, wie ich dies dazu bringen würde, mit der öffentlichen Blockchain zu interagieren/zu übertragen. Was ist die Brücke? Diese private Instanz wird mit einem eigenen Genesis-Block und einem eigenen privaten Schlüssel und Test-Ether geliefert, aber ich habe Probleme, den nächsten Schritt für die Integration herauszufinden.

Kann mir bitte jemand helfen, in die richtige Richtung zu weisen?

Ich habe mir auch Truffle und Embark angesehen, aber ich denke, meine gleiche Frage würde sich auf die Überbrückung dieser Lücke zwischen dem Privaten und der Öffentlichkeit beziehen.

Antworten (2)

Die Brücke zwischen mehreren Blockchains sind die privaten und öffentlichen Schlüsselpaare. Mit den Schlüsseln können Sie Transaktionen signieren. Im Fall von Ethereum-Blockchains kann derselbe private Schlüssel eine Transaktion sowohl auf einer privaten Blockchain als auch auf einer öffentlichen Blockchain signieren.

Im Beispiel der Azure-Schnellstartvorlage wird der Adresse 7fbe93bc104ac4bcae5d643fd3747e1866f1ece4im Genesis-Block viel Ether zugewiesen. Tatsächlich ist es die einzige Adresse, der Ether zugewiesen wurde. Die priv_genesis.keymit dem Lernprogramm gelieferte Datei enthält den privaten Schlüssel, der der Adresse zugeordnet ist. Im Tutorial importieren Sie den privaten Schlüssel und signieren dann Transaktionen damit.

Wenn Sie im öffentlichen Ethereum-Netzwerk Ether an die Adresse senden würden, 7fbe93bc104ac4bcae5d643fd3747e1866f1ece4könnten Sie Transaktionen mit genau demselben PK signieren, der in priv_genesis.key. Wie im Rundgang erwähnt, möchten Sie keinen Ether an die Adresse 7fbe93bc104ac4bcae5d643fd3747e1866f1ece4im öffentlichen Ethereum-Netzwerk senden, da dieser private Schlüssel der Welt ausgesetzt ist und jeder die Kontrolle über diese Gelder übernehmen könnte. Wie Sie sehen können, hat noch nie jemand Geld an diese Adresse gesendet, da Block-Explorer sie nicht finden können: https://etherchain.org/account/7fbe93bc104ac4bcae5d643fd3747e1866f1ece4

Die Möglichkeit, Transaktionen zwischen zwei separaten Blockchain-Netzwerken zu senden (Blockchain-Interoperabilität), ist eine viel kompliziertere Diskussion. Es gibt Bemühungen wie BTC-Relay ( http://btcrelay.org/ ), die unglaubliche Fortschritte machen, um das Pegging zwischen Blockchains zu lösen.

Hinweis: Diese Antwort wurde vom Autor der Azure-Vorlage geschrieben, auf die sich die Frage bezieht.

Wenn Sie geth ausführen und einen benutzerdefinierten Genesis-Block angeben, können Sie Ihre eigene private Blockchain haben. (Zum Beispiel für eine Testumgebung.) Lassen Sie einfach und weg --genesisund --networkides wird das Live-/Produktions-Ethereum-Netzwerk verwendet.

Embark verwendet standardmäßig einen benutzerdefinierten Genesis-Block zum Testen Ihrer Verträge.