Bitcoin Forum
November 15, 2024, 07:36:06 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: C#, NBitcoin and XPubkey  (Read 1254 times)
galgitron (OP)
Member
**
Offline Offline

Activity: 63
Merit: 11



View Profile
November 09, 2015, 07:30:10 PM
Merited by ABCbits (1)
 #1

I'm attempting to write an algorithm that generates public bitcoin addresses from a known xpubkey. The key I'm using for testing can be found at blockchain.info at

https://blockchain.info/xpub/xpub6CUGRUonZSQ4TWtTMmzXdrXDtypWKiKrhko4egpiMZbpiaQL2jkwSB1icqYh2cfDfVxdx4df189oLKnC5fSwqPfgyP3hooxujYzAu3fDVmz

I'm trying something like this to generate the address on the path 0,0,0, as below:

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

I'm not fully understanding something because I get a 'Invalid point encoding 103' when trying to instantiate the ExtPubKey.  Does anyone have working sample code?
lontivero
Full Member
***
Offline Offline

Activity: 164
Merit: 128

Amazing times are coming


View Profile
November 15, 2015, 12:23:38 AM
Merited by ABCbits (2)
 #2

Well, there are a couple of things wrong in your code:

  • ASCII encoding: most data in bitcoin is encoded with base58, no ascii.  
  • xpub prefix: it is part of the xPub and you must not remove it.

Now, try this:

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


BTW, I recommed you to try things in testnet first.
galgitron (OP)
Member
**
Offline Offline

Activity: 63
Merit: 11



View Profile
November 17, 2015, 02:54:14 PM
 #3

That was it Smiley  Much appreciated my friend
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!