From ccaa0be5dc1983b34df641661fe6256236daded6 Mon Sep 17 00:00:00 2001 From: jjz Date: Sat, 27 May 2017 11:03:41 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=20`hmac-drbg`=20=20is=20npm=20library=20?= =?UTF-8?q?=EF=BC=8C=20It=20is=20not=20in=20=20the=20=E2=80=9Celliptic/lib?= =?UTF-8?q?/elliptic=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/crypto/schnorr.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/crypto/schnorr.js b/lib/crypto/schnorr.js index a745b48d..d69bd0ef 100644 --- a/lib/crypto/schnorr.js +++ b/lib/crypto/schnorr.js @@ -9,7 +9,7 @@ var BN = require('bn.js'); var elliptic = require('elliptic'); var Signature = require('elliptic/lib/elliptic/ec/signature'); -var hmacDRBG = require('elliptic/lib/elliptic/hmac-drbg'); +var hmacDRBG = require('hmac-drbg'); var sha256 = require('./backend').sha256; var secp256k1 = elliptic.ec('secp256k1'); var curve = secp256k1.curve; From 46edf8c591f3ff147da7a7fca292056dac073a91 Mon Sep 17 00:00:00 2001 From: jjz Date: Sat, 27 May 2017 15:06:10 +0800 Subject: [PATCH 2/2] 1. add scripts of test single file 2. add key-address-test.js --- package.json | 1 + test/key-address-test.js | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 test/key-address-test.js diff --git a/package.json b/package.json index 14992868..850cab54 100644 --- a/package.json +++ b/package.json @@ -56,6 +56,7 @@ }, "scripts": { "test": "mocha --reporter spec test/*-test.js", + "test-file": "mocha --reporter spec ", "test-browser": "BCOIN_NO_NATIVE=1 BCOIN_USE_ELLIPTIC=1 mocha --reporter spec test/*-test.js", "browserify": "browserify --im -o browser/bcoin.js lib/bcoin.js && browserify --im -o browser/bcoin-master.js lib/workers/master.js", "uglify": "uglifyjs -m -o browser/bcoin.min.js browser/bcoin.js && uglifyjs -m -o browser/bcoin-master.min.js browser/bcoin-master.js", diff --git a/test/key-address-test.js b/test/key-address-test.js new file mode 100644 index 00000000..c6508f48 --- /dev/null +++ b/test/key-address-test.js @@ -0,0 +1,32 @@ +`use strict`; +var assert = require('assert'); +var keyring = require('../lib/primitives/keyring'); + +describe('Keyring Address', function () { + let uncompressedlKey = keyring.fromSecret('5KYZdUEo39z3FPrtuX2QbbwGnNP5zTd7yyr2SC1j299sBCnWjss'); + it('check uncompressed public key', function () { + assert.equal('04a34b99f22c790c4e36b2b3c2c35a36db06226e41c692fc82b8b56ac1c540c5bd5b8dec5235a0fa8722476c7709c02559e3aa73aa03918ba2d492eea75abea235', uncompressedlKey.getPublicKey('hex')); + }); + it('ckeck uncompressed public key to address', function () { + assert.equal('1HZwkjkeaoZfTSaJxDw6aKkxp45agDiEzN', uncompressedlKey.getKeyAddress("base58")); + }); + it('check uncompressed secret', function () { + assert.equal('5KYZdUEo39z3FPrtuX2QbbwGnNP5zTd7yyr2SC1j299sBCnWjss', uncompressedlKey.toSecret()); + }); + + let compressedKey = keyring.fromSecret('L4rK1yDtCWekvXuE6oXD9jCYfFNV2cWRpVuPLBcCU2z8TrisoyY1'); + it('check compressed public key', function () { + assert.equal('03a34b99f22c790c4e36b2b3c2c35a36db06226e41c692fc82b8b56ac1c540c5bd', compressedKey.getPublicKey('hex')); + + }); + it('check compressed public key to address', function () { + assert.equal('1F3sAm6ZtwLAUnj7d38pGFxtP3RVEvtsbV', compressedKey.getKeyAddress("base58")); + }); + it('check compressed secret', function () { + assert.equal('L4rK1yDtCWekvXuE6oXD9jCYfFNV2cWRpVuPLBcCU2z8TrisoyY1', compressedKey.toSecret()); + }); + + +}); + +