Browse Source

Use Node.js crypto ripemd160 hash if available.

patch-2
Braydon Fuller 10 years ago
parent
commit
55afeb3eaf
  1. 9
      lib/crypto/hash.js

9
lib/crypto/hash.js

@ -27,11 +27,20 @@ Hash.sha256sha256 = function(buf) {
return Hash.sha256(Hash.sha256(buf));
};
Hash.ripemd160 = function(buf) {
$.checkArgument(BufferUtil.isBuffer(buf));
return crypto.createHash('ripemd160').update(buf).digest();
};
// Node.js crypto ripemd160 hashes are not supported in a browser
// We'll replace with a (slower) version that does.
if (global.window) {
Hash.ripemd160 = function(buf) {
$.checkArgument(BufferUtil.isBuffer(buf));
var hash = (new hashjs.ripemd160()).update(buf).digest();
return new Buffer(hash);
};
}
Hash.sha256ripemd160 = function(buf) {
$.checkArgument(BufferUtil.isBuffer(buf));

Loading…
Cancel
Save