Pages:
Author

Topic: . - page 2. (Read 4243 times)

legendary
Activity: 3766
Merit: 1364
Armory Developer
July 03, 2014, 04:09:20 PM
#3
You're on the right track so far.

There isn't a public seed per say. Address N+1 public and private components are derived from address N and a scalar which is created by hashing address N's public key and the chaincode.

The chaincode is an HMAC of the root key:

https://github.com/etotheipi/BitcoinArmory/blob/master/armoryengine/ArmoryUtils.py#L2941

You can read the derivation code here:

https://github.com/etotheipi/BitcoinArmory/blob/master/cppForSwig/EncryptionUtils.cpp#L681
https://github.com/etotheipi/BitcoinArmory/blob/master/cppForSwig/EncryptionUtils.cpp#L757
legendary
Activity: 3766
Merit: 1364
Armory Developer
July 03, 2014, 01:14:39 PM
#2
Original seed is 256bits. If you know some Python it's rather easy:

https://github.com/etotheipi/BitcoinArmory/blob/master/armoryengine/ArmoryUtils.py#L1914

You can use that call to convert 128bits of entropy to an Armory backup string. Do it twice and you have created you own root key that you can then plug in the restore wallet function to create a wallet file out of it.
newbie
Activity: 3
Merit: 0
July 01, 2014, 09:24:25 AM
#1
.
Pages:
Jump to: