mirror of
https://codeberg.org/keyoxide/doipjs.git
synced 2024-12-22 22:49:28 -07:00
Add tests for signature verification failure
This commit is contained in:
parent
fcaf5215b4
commit
2f28e501ab
1 changed files with 57 additions and 1 deletions
|
@ -39,16 +39,72 @@ YCKJPotiqe50nBijHHbuABtBianiMZOm2BbaPnsmdHIX5ynWhOI8LHR1CVmTI/0o
|
||||||
=2vuM
|
=2vuM
|
||||||
-----END PGP SIGNATURE-----`
|
-----END PGP SIGNATURE-----`
|
||||||
|
|
||||||
|
const invalidSigProfileMessage = `-----BEGIN PGP SIGNED MESSAGE-----
|
||||||
|
Hash: SHA512
|
||||||
|
|
||||||
|
A demo signature profile for testing.
|
||||||
|
|
||||||
|
proof=dns:doip.sucks
|
||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQHEBAEBCgAuFiEENjcgJSPnwTCat56Z7y3FgntEX0sFAmI+LCEQHHRlc3RAZG9p
|
||||||
|
cC5yb2NrcwAKCRDvLcWCe0RfS2KIC/9wGOnntH4jBBO3unLWb0dQLUguo9XilHGp
|
||||||
|
Uh4Huue5/nlbmkCNMJFKkRiohYGaySIN4xBU8R4gWwzA8hbqTj9XII5en5VzHqkt
|
||||||
|
ZONRabicA6rdr4DNzV/UzB0Hz2vdxCLZAICLik6NyScjNE+EybITg/gHjrDrzyEe
|
||||||
|
hmNCSuUo/PA0oGY1ckduhy9hwFULdEWcyDvM4wIaAh5A53UJ+ndZVxlguCixqnQH
|
||||||
|
JBXuDQdDOFJRrT7Objdgd/8CI+NEm0iwIlcsaITwG6Twx0ki5NTWftmIg3DoiTEz
|
||||||
|
svBu6SMrlwbZ7nkRdSZhHp0zrEBOafT1AcFGquF63AlfPuC46rNWTAYvtyU6Cn3P
|
||||||
|
MeErGzZgOkW9vLbFS+GHaX0ODr01xMMCdvdjPc/o+3sBqkw3d2DctSTLKOx7strh
|
||||||
|
YCKJPotiqe50nBijHHbuABtBianiMZOm2BbaPnsmdHIX5ynWhOI8LHR1CVmTI/0o
|
||||||
|
/ilSykmWgvLSdPk5K+i3deQ1wESZeGU=
|
||||||
|
=2vuM
|
||||||
|
-----END PGP SIGNATURE-----`
|
||||||
|
|
||||||
|
const invalidSigProfileHash = `-----BEGIN PGP SIGNED MESSAGE-----
|
||||||
|
Hash: SHA512
|
||||||
|
|
||||||
|
A demo signature profile for testing.
|
||||||
|
|
||||||
|
proof=dns:doip.rocks
|
||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
xQHEBAEBCgAuFiEENjcgJSPnwTCat56Z7y3FgntEX0sFAmI+LCEQHHRlc3RAZG9p
|
||||||
|
cC5yb2NrcwAKCRDvLcWCe0RfS2KIC/9wGOnntH4jBBO3unLWb0dQLUguo9XilHGp
|
||||||
|
Uh4Huue5/nlbmkCNMJFKkRiohYGaySIN4xBU8R4gWwzA8hbqTj9XII5en5VzHqkt
|
||||||
|
ZONRabicA6rdr4DNzV/UzB0Hz2vdxCLZAICLik6NyScjNE+EybITg/gHjrDrzyEe
|
||||||
|
hmNCSuUo/PA0oGY1ckduhy9hwFULdEWcyDvM4wIaAh5A53UJ+ndZVxlguCixqnQH
|
||||||
|
JBXuDQdDOFJRrT7Objdgd/8CI+NEm0iwIlcsaITwG6Twx0ki5NTWftmIg3DoiTEz
|
||||||
|
svBu6SMrlwbZ7nkRdSZhHp0zrEBOafT1AcFGquF63AlfPuC46rNWTAYvtyU6Cn3P
|
||||||
|
MeErGzZgOkW9vLbFS+GHaX0ODr01xMMCdvdjPc/o+3sBqkw3d2DctSTLKOx7strh
|
||||||
|
YCKJPotiqe50nBijHHbuABtBianiMZOm2BbaPnsmdHIX5ynWhOI8LHR1CVmTI/0o
|
||||||
|
/ilSykmWgvLSdPk5K+i3deQ1wESZeGU=
|
||||||
|
=2vuM
|
||||||
|
-----END PGP SIGNATURE-----`
|
||||||
|
|
||||||
describe('signatures.process', () => {
|
describe('signatures.process', () => {
|
||||||
it('should be a function (2 arguments)', () => {
|
it('should be a function (2 arguments)', () => {
|
||||||
expect(doipjs.signatures.process).to.be.a('function')
|
expect(doipjs.signatures.process).to.be.a('function')
|
||||||
expect(doipjs.signatures.process).to.have.length(1)
|
expect(doipjs.signatures.process).to.have.length(1)
|
||||||
})
|
})
|
||||||
it('should verify the demonstration signature', async () => {
|
it('should verify a valid signature', async () => {
|
||||||
const verification = await doipjs.signatures.process(sigProfile)
|
const verification = await doipjs.signatures.process(sigProfile)
|
||||||
expect(verification.fingerprint).to.be.equal(
|
expect(verification.fingerprint).to.be.equal(
|
||||||
'3637202523e7c1309ab79e99ef2dc5827b445f4b'
|
'3637202523e7c1309ab79e99ef2dc5827b445f4b'
|
||||||
)
|
)
|
||||||
expect(verification.users[0].claims).to.be.length(1)
|
expect(verification.users[0].claims).to.be.length(1)
|
||||||
})
|
})
|
||||||
|
it('should reject an invalid signature', async () => {
|
||||||
|
return expect(
|
||||||
|
doipjs.signatures.process(invalidSigProfileMessage)
|
||||||
|
).to.eventually.be.rejectedWith(
|
||||||
|
'Signature could not be verified (Signed digest did not match)'
|
||||||
|
)
|
||||||
|
})
|
||||||
|
it('should reject an invalid signature', async () => {
|
||||||
|
return expect(
|
||||||
|
doipjs.signatures.process(invalidSigProfileHash)
|
||||||
|
).to.eventually.be.rejectedWith(
|
||||||
|
'Signature could not be read (Ascii armor integrity check failed)'
|
||||||
|
)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in a new issue