|
|
@ -26,7 +26,7 @@ Message.getHash = function (message) { |
|
|
|
return convert.wordArrayToBytes(SHA256(SHA256(convert.bytesToWordArray(buffer)))); |
|
|
|
}; |
|
|
|
|
|
|
|
Message.signMessage = function (key, message, compressed) { |
|
|
|
Message.signMessage = function (key, message) { |
|
|
|
var hash = Message.getHash(message); |
|
|
|
|
|
|
|
var sig = key.sign(hash); |
|
|
@ -36,7 +36,7 @@ Message.signMessage = function (key, message, compressed) { |
|
|
|
var i = ecdsa.calcPubkeyRecoveryParam(key, obj.r, obj.s, hash); |
|
|
|
|
|
|
|
i += 27; |
|
|
|
if (compressed) i += 4; |
|
|
|
if (key.compressed) i += 4; |
|
|
|
|
|
|
|
var rBa = obj.r.toByteArrayUnsigned(); |
|
|
|
var sBa = obj.s.toByteArrayUnsigned(); |
|
|
@ -58,6 +58,7 @@ Message.verifyMessage = function (address, sig, message) { |
|
|
|
|
|
|
|
var isCompressed = !!(sig.i & 4); |
|
|
|
var pubKey = ecdsa.recoverPubKey(sig.r, sig.s, hash, sig.i); |
|
|
|
pubKey.compressed = isCompressed; |
|
|
|
|
|
|
|
var expectedAddress = pubKey.getBitcoinAddress().toString(); |
|
|
|
|
|
|
|