Verwenden von NBitcoin oder C# zum Ableiten von Litecoin- und Ethereum-Adressen von Master HD Key [geschlossen]

Ich verwende NBitcoin, C# und den Bip44-Standard, um eine hdroot zu erstellen, von der untergeordnete Schlüssel abgeleitet werden können. Dann erstelle ich Schlüssel, die ich für Litecoin- und Ethereum-Adressen verwenden möchte, indem ich den richtigen „coin_type“ in meiner Derive-Anweisung festlege:

var ltcAddress = hdroot.Derive(new KeyPath("m/44'/2'/0'/0/0"));
var ethAddress = hdroot.Derive(new KeyPath("m/44'/60'/0'/0/0"));

Offensichtlich sind dies standardmäßig Bitcoin-Adressen. Wie kann ich sie jetzt in die richtigen Litecoin- und Ethereum-Pendants umwandeln?

Antworten (2)

Ich bin mir nicht sicher, wie NBitcoin funktioniert, aber es sieht so aus, als hätten Sie bisher Ihren privaten und öffentlichen Schlüssel abgeleitet, Sie müssen ihn jetzt mit der Ethereum-Methode statt mit Bitcoin hashen.

Sehen Sie sich Schritt 3 in dieser Antwort an: https://ethereum.stackexchange.com/questions/3542/how-are-ethereum-addresses-generated

Bearbeiten: Nethereum hat es in C# implementiert: https://github.com/Nethereum/Nethereum/blob/master/src/Nethereum.Signer/EthECKey.cs#L115

Wir haben auf https://programmingblockchain.gitbook.io/programmingblockchain/key_generation/bip_32 dokumentiert

Das heißt, zum Verfolgen einer HD-Brieftasche empfehle ich Ihnen, https://github.com/dgarage/NBXplorer/ zu verwenden . Dies ist eine API, die auf einem Bitcoin-Knoten funktioniert, sogar beschnitten, die das schwere Heben erledigt und gut in NBitcoin integriert ist .