diff --git a/src/message.js b/src/message.js index 943d82ba9..88b5d21a8 100644 --- a/src/message.js +++ b/src/message.js @@ -50,8 +50,13 @@ function verify(address, signatureBuffer, message, network) { return pubKey.getAddress(network).toString() === address } +function verifyBase64(address, signatureBase64, message, network) { + return verify(address, new Buffer(signatureBase64, 'base64'), message, network) +} + module.exports = { magicHash: magicHash, sign: sign, - verify: verify + verify: verify, + verifyBase64: verifyBase64 } diff --git a/test/browser/bitcoinlib-test.js b/test/browser/bitcoinlib-test.js new file mode 100644 index 000000000..9a0a5409f --- /dev/null +++ b/test/browser/bitcoinlib-test.js @@ -0,0 +1,13 @@ +$(document).ready(function(){ + + function testSignatureVerifyBitcoin(){ + var address = "1H7RFM1C5UCPSyoNwimhMa9Ntz82iib8uY"; + var signature = "HGMEQWMZFL7O1D14YejfMSQPe8iEJs9mlYiKLhT+0cjQs1wWKYd9CdSLh1Pc/fcKkDV0Kmk7mLoVfYnQ0vbiDrA="; + var message = "00000000000000000a94cd53c34e2cdfd2b7eab95e7b2d948e5ad200d863bcd4|Airbex Btc Asset"; + var res = Bitcoin.Message.verifyBase64(address, signature, message); + $('#testVerifySignatureBitcoin').text(res ? "OK": "KO") + } + + testSignatureVerifyBitcoin(); + +}) diff --git a/test/browser/index.html b/test/browser/index.html new file mode 100644 index 000000000..267f25143 --- /dev/null +++ b/test/browser/index.html @@ -0,0 +1,25 @@ + + +