C#-NBitcoin并从xpub密钥生成地址

我正在尝试编写一种从已知的xpubkey生成公共比特币地址的算法.我用于测试的密钥可以在blockchain.info找到

https://blockchain.info/xpub/xpub6CUGRUonZSQ4TWtTMmzXdrXDtypWKiKrhko4egpiMZbpiaQL2jkwSB1icqYh2cfDfVxdx4df189oLKnC5fSwqPfgyP3hooxujYzAu3fDVmz

我正在尝试像这样的事情来生成路径0,0,0上的地址,如下所示:

        var pubkey = new ExtPubKey(Encoding.ASCII.GetBytes("6CUGRUonZSQ4TWtTMmzXdrXDtypWKiKrhko4egpiMZbpiaQL2jkwSB1icqYh2cfDfVxdx4df189oLKnC5fSwqPfgyP3hooxujYzAu3fDVmz"));
        Console.Writeline(pubkey.Derive(0).Derive(0).Derive(0).PubKey.GetAddress(Network.Main));

但是我不完全了解某些内容,因为在尝试实例化ExtPubKey时收到“无效点编码103”.

解决方法:

通过https://bitcointalk.org/index.php?topic=1242247.0

var pubkey = ExtPubKey.Parse("xpub6CUGRUonZSQ4TWtTMmzXdrXDtypWKiKrhko4egpiMZbpiaQL2jkwSB1icqYh2cfDfVxdx4df189oLKnC5fSwqPfgyP3hooxujYzAu3fDVmz");
var newAddress = pubkey.Derive(0).Derive(0).PubKey.GetAddress(Network.Main);
Console.WriteLine(newAddress);

经过测试,生成预期的第一个地址.

上一篇:JavaScript的前世今生


下一篇:javascript – 需要比特币checkaddress和json帮助