ecdsa: add invalid tests for verifyRaw

This commit is contained in:
Daniel Cousens 2014-05-24 13:40:20 +10:00
parent 1d6b1fe58b
commit 37d5147cac
2 changed files with 61 additions and 2 deletions

View file

@ -62,7 +62,7 @@ describe('ecdsa', function() {
})
describe('verifyRaw', function() {
it('matches the test vectors', function() {
it('verifies valid signatures', function() {
fixtures.valid.forEach(function(f) {
var D = BigInteger.fromHex(f.D)
var Q = ecparams.getG().multiply(D)
@ -74,6 +74,18 @@ describe('ecdsa', function() {
assert(ecdsa.verifyRaw(ecparams, e, r, s, Q))
})
})
fixtures.invalid.verifyRaw.forEach(function(f) {
it('fails to verify with ' + f.description, function() {
var D = BigInteger.fromHex(f.D)
var e = BigInteger.fromHex(f.e)
var r = new BigInteger(f.signature.r)
var s = new BigInteger(f.signature.s)
var Q = ecparams.getG().multiply(D)
assert.equal(ecdsa.verifyRaw(ecparams, e, r, s, Q), false)
})
})
})
describe('serializeSig', function() {