use SecureRandom in Key in the browser
...to make sure random numbers are generated securely
This commit is contained in:
parent
4693d5bc41
commit
dbcf270826
@ -1,5 +1,6 @@
|
|||||||
var ECKey = require('../../browser/vendor-bundle.js').ECKey;
|
var ECKey = require('../../browser/vendor-bundle.js').ECKey;
|
||||||
var buffertools = require('buffertools');
|
var buffertools = require('buffertools');
|
||||||
|
var SecureRandom = require('../SecureRandom');
|
||||||
|
|
||||||
var Key = function() {
|
var Key = function() {
|
||||||
this._pub = null;
|
this._pub = null;
|
||||||
@ -33,13 +34,17 @@ Object.defineProperty(Key.prototype, 'public', {
|
|||||||
});
|
});
|
||||||
|
|
||||||
Key.generateSync = function() {
|
Key.generateSync = function() {
|
||||||
var eck = new ECKey();
|
var privbuf = SecureRandom.getRandomBuffer(32);
|
||||||
|
var privhex = privbuf.toString('hex');
|
||||||
|
var eck = new ECKey(privhex);
|
||||||
eck.setCompressed(true);
|
eck.setCompressed(true);
|
||||||
var pub = eck.getPub();
|
var pub = eck.getPub();
|
||||||
|
|
||||||
var ret = new Key();
|
ret = new Key();
|
||||||
ret.private = new Buffer(eck.priv.toByteArrayUnsigned());
|
ret.private = privbuf;
|
||||||
ret.public = new Buffer(pub);
|
ret.compressed = true;
|
||||||
|
ret.public = new Buffer(eck.getPub());
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user