From bd16eddf54bfd6730296f8997444cf5db036b58f Mon Sep 17 00:00:00 2001 From: "Ryan X. Charles" Date: Wed, 17 Sep 2014 15:13:57 -0700 Subject: [PATCH] Key -> Keypair --- lib/bip32.js | 56 ++++++++++++++++++++++++++-------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/lib/bip32.js b/lib/bip32.js index 1046317..86497bb 100644 --- a/lib/bip32.js +++ b/lib/bip32.js @@ -25,7 +25,7 @@ BIP32.prototype.set = function(obj) { this.parentFingerprint = obj.parentFingerprint || this.parentFingerprint; this.childIndex = obj.childIndex || this.childIndex; this.chainCode = obj.chainCode || this.chainCode; - this.key = obj.key || this.key; + this.keypair = obj.keypair || this.keypair; this.hasPrivateKey = typeof obj.hasPrivateKey !== 'undefined' ? obj.hasPrivateKey : this.hasPrivateKey; this.pubKeyHash = obj.pubKeyHash || this.pubKeyHash; this.extendedPublicKey = obj.extendedPublicKey || this.extendedPublicKey; @@ -41,9 +41,9 @@ BIP32.prototype.fromRandom = function(networkstr) { this.parentFingerprint = new Buffer([0, 0, 0, 0]); this.childIndex = new Buffer([0, 0, 0, 0]); this.chainCode = Random.getRandomBuffer(32); - this.key = (new Keypair()).fromRandom(); + this.keypair = (new Keypair()).fromRandom(); this.hasPrivateKey = true; - this.pubKeyHash = Hash.sha256ripemd160(this.key.pubkey.toBuffer()); + this.pubKeyHash = Hash.sha256ripemd160(this.keypair.pubkey.toBuffer()); this.buildExtendedPublicKey(); this.buildExtendedPrivateKey(); }; @@ -71,11 +71,11 @@ BIP32.prototype.fromSeed = function(bytes, networkstr) { this.childIndex = new Buffer([0, 0, 0, 0]); this.chainCode = hash.slice(32, 64); this.version = constants[networkstr].bip32privkey; - this.key = new Keypair(); - this.key.privkey = new Privkey({bn: bn.fromBuffer(hash.slice(0, 32))}); - this.key.privkey2pubkey(); + this.keypair = new Keypair(); + this.keypair.privkey = new Privkey({bn: bn.fromBuffer(hash.slice(0, 32))}); + this.keypair.privkey2pubkey(); this.hasPrivateKey = true; - this.pubKeyHash = Hash.sha256ripemd160(this.key.pubkey.toBuffer()); + this.pubKeyHash = Hash.sha256ripemd160(this.keypair.pubkey.toBuffer()); this.buildExtendedPublicKey(); this.buildExtendedPrivateKey(); @@ -105,15 +105,15 @@ BIP32.prototype.initFromBytes = function(bytes) { this.version == constants.testnet.bip32pubkey); if (isPrivate && keyBytes[0] == 0) { - this.key = new Keypair(); - this.key.privkey = new Privkey({bn: bn.fromBuffer(keyBytes.slice(1, 33))}); - this.key.privkey2pubkey(); - this.pubKeyHash = Hash.sha256ripemd160(this.key.pubkey.toBuffer()); + this.keypair = new Keypair(); + this.keypair.privkey = new Privkey({bn: bn.fromBuffer(keyBytes.slice(1, 33))}); + this.keypair.privkey2pubkey(); + this.pubKeyHash = Hash.sha256ripemd160(this.keypair.pubkey.toBuffer()); this.hasPrivateKey = true; } else if (isPublic && (keyBytes[0] == 0x02 || keyBytes[0] == 0x03)) { - this.key = new Keypair(); - this.key.pubkey = (new Pubkey()).fromDER(keyBytes); - this.pubKeyHash = Hash.sha256ripemd160(this.key.pubkey.toBuffer()); + this.keypair = new Keypair(); + this.keypair.pubkey = (new Pubkey()).fromDER(keyBytes); + this.pubKeyHash = Hash.sha256ripemd160(this.keypair.pubkey.toBuffer()); this.hasPrivateKey = false; } else { throw new Error('Invalid key'); @@ -153,7 +153,7 @@ BIP32.prototype.buildExtendedPublicKey = function() { new Buffer([(this.childIndex >>> 8) & 0xff]), new Buffer([this.childIndex & 0xff]), this.chainCode, - this.key.pubkey.toBuffer() + this.keypair.pubkey.toBuffer() ]); } @@ -186,7 +186,7 @@ BIP32.prototype.buildExtendedPrivateKey = function() { new Buffer([this.childIndex & 0xff]), this.chainCode, new Buffer([0]), - this.key.privkey.bn.toBuffer({size: 32}) + this.keypair.privkey.bn.toBuffer({size: 32}) ]); } @@ -257,9 +257,9 @@ BIP32.prototype.deriveChild = function(i) { var data = null; if (usePrivate) { - data = Buffer.concat([new Buffer([0]), this.key.privkey.bn.toBuffer({size: 32}), ib]); + data = Buffer.concat([new Buffer([0]), this.keypair.privkey.bn.toBuffer({size: 32}), ib]); } else { - data = Buffer.concat([this.key.pubkey.toBuffer({size: 32}), ib]); + data = Buffer.concat([this.keypair.pubkey.toBuffer({size: 32}), ib]); } var hash = Hash.sha512hmac(data, this.chainCode); @@ -267,25 +267,25 @@ BIP32.prototype.deriveChild = function(i) { var ir = hash.slice(32, 64); // ki = IL + kpar (mod n). - var k = il.add(this.key.privkey.bn).mod(Point.getN()); + var k = il.add(this.keypair.privkey.bn).mod(Point.getN()); ret = new BIP32(); ret.chainCode = ir; - ret.key = new Keypair(); - ret.key.privkey = new Privkey({bn: k}); - ret.key.privkey2pubkey(); + ret.keypair = new Keypair(); + ret.keypair.privkey = new Privkey({bn: k}); + ret.keypair.privkey2pubkey(); ret.hasPrivateKey = true; } else { - var data = Buffer.concat([this.key.pubkey.toBuffer(), ib]); + var data = Buffer.concat([this.keypair.pubkey.toBuffer(), ib]); var hash = Hash.sha512hmac(data, this.chainCode); var il = bn(hash.slice(0, 32)); var ir = hash.slice(32, 64); // Ki = (IL + kpar)*G = IL*G + Kpar var ilG = Point.getG().mul(il); - var Kpar = this.key.pubkey.point; + var Kpar = this.keypair.pubkey.point; var Ki = ilG.add(Kpar); var newpub = new Pubkey(); newpub.point = Ki; @@ -293,9 +293,9 @@ BIP32.prototype.deriveChild = function(i) { ret = new BIP32(); ret.chainCode = ir; - var key = new Keypair(); - key.pubkey = newpub; - ret.key = key; + var keypair = new Keypair(); + keypair.pubkey = newpub; + ret.keypair = keypair; ret.hasPrivateKey = false; } @@ -304,7 +304,7 @@ BIP32.prototype.deriveChild = function(i) { ret.version = this.version; ret.depth = this.depth + 1; - ret.pubKeyHash = Hash.sha256ripemd160(ret.key.pubkey.toBuffer()); + ret.pubKeyHash = Hash.sha256ripemd160(ret.keypair.pubkey.toBuffer()); ret.buildExtendedPublicKey(); ret.buildExtendedPrivateKey();