Armory: cleaned up example
This commit is contained in:
parent
468ebddc1e
commit
fa211f98bb
@ -1,42 +1,33 @@
|
|||||||
var Armory = require('../lib/Armory');
|
var Armory = require('../lib/Armory');
|
||||||
var Address = require('../lib/Address');
|
var Address = require('../lib/Address');
|
||||||
var Point = require('../lib/Point');
|
|
||||||
var bignum = require('bignum');
|
|
||||||
var Key = require('../lib/Key');
|
|
||||||
|
|
||||||
// Chain code can be generated from paper backup
|
|
||||||
// on brainwallet.org/#chains
|
|
||||||
//
|
|
||||||
// Paper backup used for testing:
|
|
||||||
//
|
|
||||||
// aagh hjfj sihk ietj giik wwai awtd uodh hnji
|
|
||||||
// soss uaku egod utai itos fijj ihgi jhau jtoo
|
|
||||||
var chaincode = '84ac14bc4b388b33da099a0b4ee3b507284d99e1476639e36e5ca5e6af86481e';
|
|
||||||
|
|
||||||
// Initial public key can be retrieved from paper backup
|
// Initial public key can be retrieved from paper backup
|
||||||
//var PublicX = '9df5 23e7 18b9 1f59 a790 2d46 999f 9357 ccf8 7208 24d4 3076 4516 b809 f7ab ce4e'
|
|
||||||
//var PublicY = '66ba 5d21 4682 0dae 401d 9506 8437 2516 79f9 0c56 4186 cc50 07df c6d0 6989 1ff4';
|
var PublicX = '9df5 23e7 18b9 1f59 a790 2d46 999f 9357 ccf8 7208 24d4 3076 4516 b809 f7ab ce4e';
|
||||||
//var pubkey = '04' + PublicX.split(' ').join('') + PublicY.split(' ').join('');
|
var PublicY = '66ba 5d21 4682 0dae 401d 9506 8437 2516 79f9 0c56 4186 cc50 07df c6d0 6989 1ff4';
|
||||||
//console.log(pubkey);
|
var pubkey = '04' + PublicX.split(' ').join('') + PublicY.split(' ').join('');
|
||||||
|
|
||||||
|
|
||||||
// mmm... can't figure out how to arrive at same pubkey as brainwallet
|
// Chain code can be generated by entering paper backup
|
||||||
var pubkey = '045a09a3286873a72f164476bde9d1d8e5c2bc044e35aa47eb6e798e325a86417f7c35b61d9905053533e0b4f2a26eca0330aadf21c638969e45aaace50e4c0c87';
|
// on brainwallet.org/#chains or by using Armory.fromSeed() below
|
||||||
|
|
||||||
|
var chaincode = '84ac14bc4b388b33da099a0b4ee3b507284d99e1476639e36e5ca5e6af86481e';
|
||||||
|
|
||||||
var armory = new Armory(chaincode, pubkey);
|
var armory = new Armory(chaincode, pubkey);
|
||||||
|
|
||||||
var pubkey;
|
var pubkey;
|
||||||
for (var i = 0; i < 5; i++) {
|
for (var i = 0; i < 5; i++) {
|
||||||
armory = armory.next();
|
|
||||||
console.log(Address.fromPubKey(armory.pubkey).as('base58'));
|
console.log(Address.fromPubKey(armory.pubkey).as('base58'));
|
||||||
|
armory = armory.next();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Derive stuff from root cod
|
// Derive first public key and chain code from seed
|
||||||
var seed = [
|
var seed = [
|
||||||
'aagh hjfj sihk ietj giik wwai awtd uodh hnji',
|
'aagh hjfj sihk ietj giik wwai awtd uodh hnji',
|
||||||
'soss uaku egod utai itos fijj ihgi jhau jtoo'
|
'soss uaku egod utai itos fijj ihgi jhau jtoo'
|
||||||
].join('\n');
|
].join('\n');
|
||||||
|
|
||||||
console.log(seed);
|
|
||||||
|
|
||||||
console.log(Armory.fromSeed(seed));
|
var a = Armory.fromSeed(seed);
|
||||||
|
|
||||||
|
console.log(Address.fromPubKey(a.next().pubkey).as('base58'));
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
var Point = require('./browser/Point'),
|
var Point = require('./browser/Point'),
|
||||||
|
Key = require('./Key'),
|
||||||
buffertools = require('buffertools'),
|
buffertools = require('buffertools'),
|
||||||
sha256 = require('../util').sha256,
|
sha256 = require('../util').sha256,
|
||||||
twoSha256 = require('../util').twoSha256,
|
twoSha256 = require('../util').twoSha256,
|
||||||
@ -73,7 +74,13 @@ Armory.decodeSeed = function (seed) {
|
|||||||
// Derive chain code from root key
|
// Derive chain code from root key
|
||||||
Armory.fromSeed = function (seed) {
|
Armory.fromSeed = function (seed) {
|
||||||
var res = Armory.decodeSeed(seed);
|
var res = Armory.decodeSeed(seed);
|
||||||
return res;
|
// generate first public key
|
||||||
|
var key = new Key();
|
||||||
|
key.private = res.privKey;
|
||||||
|
key.compressed = false;
|
||||||
|
key.regenerateSync();
|
||||||
|
|
||||||
|
return new Armory(res.chainCode, key.public);
|
||||||
};
|
};
|
||||||
|
|
||||||
Armory.deriveChaincode = function (root) {
|
Armory.deriveChaincode = function (root) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user