diff --git a/lib/crypto.js b/lib/crypto.js index 08fa9ef..8e8c78e 100644 --- a/lib/crypto.js +++ b/lib/crypto.js @@ -27,7 +27,7 @@ var sha1 = exports.sha1 = platform.sha1; * @return {Buffer} Resulting hash. * @function */ -exports.sha256 = platform.sha256; +var sha256 = exports.sha256 = platform.sha256; /** * Calculate SHA-512 hash. @@ -91,7 +91,11 @@ exports.sign = function(privateKey, msg) { */ exports.verify = function(publicKey, msg, sig) { var hash = sha1(msg); - return eccrypto.verify(publicKey, hash, sig); + var result = eccrypto.verify(publicKey, hash, sig).catch(function() { + hash = sha256(msg); + return eccrypto.verify(publicKey, hash, sig); + }); + return result; }; var SECP256K1_TYPE = 714;