crypto: use packages directly
This commit is contained in:
parent
03f3ccf06e
commit
b5c42303ff
5 changed files with 23 additions and 20 deletions
|
@ -46,8 +46,11 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"bigi": "^1.4.0",
|
||||
"bs58check": "^1.0.4",
|
||||
"bs58check": "^1.0.5",
|
||||
"create-hash": "^1.1.0",
|
||||
"create-hmac": "^1.1.3",
|
||||
"ecurve": "^1.0.0",
|
||||
"randombytes": "^2.0.1",
|
||||
"typeforce": "^1.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
var crypto = require('crypto')
|
||||
var createHash = require('create-hash')
|
||||
|
||||
function hash160 (buffer) {
|
||||
return ripemd160(sha256(buffer))
|
||||
|
@ -9,15 +9,15 @@ function hash256 (buffer) {
|
|||
}
|
||||
|
||||
function ripemd160 (buffer) {
|
||||
return crypto.createHash('rmd160').update(buffer).digest()
|
||||
return createHash('rmd160').update(buffer).digest()
|
||||
}
|
||||
|
||||
function sha1 (buffer) {
|
||||
return crypto.createHash('sha1').update(buffer).digest()
|
||||
return createHash('sha1').update(buffer).digest()
|
||||
}
|
||||
|
||||
function sha256 (buffer) {
|
||||
return crypto.createHash('sha256').update(buffer).digest()
|
||||
return createHash('sha256').update(buffer).digest()
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
|
|
18
src/ecdsa.js
18
src/ecdsa.js
|
@ -1,5 +1,5 @@
|
|||
var assert = require('assert')
|
||||
var crypto = require('crypto')
|
||||
var createHmac = require('create-hmac')
|
||||
var typeForce = require('typeforce')
|
||||
|
||||
var BigInteger = require('bigi')
|
||||
|
@ -29,7 +29,7 @@ function deterministicGenerateK (curve, hash, d, checkSig) {
|
|||
k.fill(0)
|
||||
|
||||
// Step D
|
||||
k = crypto.createHmac('sha256', k)
|
||||
k = createHmac('sha256', k)
|
||||
.update(v)
|
||||
.update(ZERO)
|
||||
.update(x)
|
||||
|
@ -37,10 +37,10 @@ function deterministicGenerateK (curve, hash, d, checkSig) {
|
|||
.digest()
|
||||
|
||||
// Step E
|
||||
v = crypto.createHmac('sha256', k).update(v).digest()
|
||||
v = createHmac('sha256', k).update(v).digest()
|
||||
|
||||
// Step F
|
||||
k = crypto.createHmac('sha256', k)
|
||||
k = createHmac('sha256', k)
|
||||
.update(v)
|
||||
.update(ONE)
|
||||
.update(x)
|
||||
|
@ -48,26 +48,26 @@ function deterministicGenerateK (curve, hash, d, checkSig) {
|
|||
.digest()
|
||||
|
||||
// Step G
|
||||
v = crypto.createHmac('sha256', k).update(v).digest()
|
||||
v = createHmac('sha256', k).update(v).digest()
|
||||
|
||||
// Step H1/H2a, ignored as tlen === qlen (256 bit)
|
||||
// Step H2b
|
||||
v = crypto.createHmac('sha256', k).update(v).digest()
|
||||
v = createHmac('sha256', k).update(v).digest()
|
||||
|
||||
var T = BigInteger.fromBuffer(v)
|
||||
|
||||
// Step H3, repeat until T is within the interval [1, n - 1] and is suitable for ECDSA
|
||||
while ((T.signum() <= 0) || (T.compareTo(curve.n) >= 0) || !checkSig(T)) {
|
||||
k = crypto.createHmac('sha256', k)
|
||||
k = createHmac('sha256', k)
|
||||
.update(v)
|
||||
.update(ZERO)
|
||||
.digest()
|
||||
|
||||
v = crypto.createHmac('sha256', k).update(v).digest()
|
||||
v = createHmac('sha256', k).update(v).digest()
|
||||
|
||||
// Step H1/H2a, again, ignored as tlen === qlen (256 bit)
|
||||
// Step H2b again
|
||||
v = crypto.createHmac('sha256', k).update(v).digest()
|
||||
v = createHmac('sha256', k).update(v).digest()
|
||||
T = BigInteger.fromBuffer(v)
|
||||
}
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
var assert = require('assert')
|
||||
var base58check = require('bs58check')
|
||||
var crypto = require('crypto')
|
||||
var ecdsa = require('./ecdsa')
|
||||
var typeForce = require('typeforce')
|
||||
var networks = require('./networks')
|
||||
var randomBytes = require('randombytes')
|
||||
var typeForce = require('typeforce')
|
||||
|
||||
var BigInteger = require('bigi')
|
||||
var ECPubKey = require('./ecpubkey')
|
||||
|
@ -47,7 +47,7 @@ ECKey.fromWIF = function (string) {
|
|||
}
|
||||
|
||||
ECKey.makeRandom = function (compressed, rng) {
|
||||
rng = rng || crypto.randomBytes
|
||||
rng = rng || randomBytes
|
||||
|
||||
var buffer = rng(32)
|
||||
typeForce('Buffer', buffer)
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
var assert = require('assert')
|
||||
var base58check = require('bs58check')
|
||||
var bcrypto = require('./crypto')
|
||||
var crypto = require('crypto')
|
||||
var createHmac = require('create-hmac')
|
||||
var typeForce = require('typeforce')
|
||||
var networks = require('./networks')
|
||||
|
||||
|
@ -62,7 +62,7 @@ HDNode.fromSeedBuffer = function (seed, network) {
|
|||
assert(seed.length >= 16, 'Seed should be at least 128 bits')
|
||||
assert(seed.length <= 64, 'Seed should be at most 512 bits')
|
||||
|
||||
var I = crypto.createHmac('sha512', HDNode.MASTER_SECRET).update(seed).digest()
|
||||
var I = createHmac('sha512', HDNode.MASTER_SECRET).update(seed).digest()
|
||||
var IL = I.slice(0, 32)
|
||||
var IR = I.slice(32)
|
||||
|
||||
|
@ -225,7 +225,7 @@ HDNode.prototype.derive = function (index) {
|
|||
])
|
||||
}
|
||||
|
||||
var I = crypto.createHmac('sha512', this.chainCode).update(data).digest()
|
||||
var I = createHmac('sha512', this.chainCode).update(data).digest()
|
||||
var IL = I.slice(0, 32)
|
||||
var IR = I.slice(32)
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue