tests extended - armor checksum validation | #563
This commit is contained in:
parent
c27725782c
commit
80742bdfbe
|
@ -131,7 +131,7 @@ describe("ASCII armor", function() {
|
|||
expect(msg).to.throw(Error, /Unknown ASCII armor type/);
|
||||
});
|
||||
|
||||
it('Armor checksum validation', function () {
|
||||
it('Armor checksum validation - mismatch', function () {
|
||||
var privKey =
|
||||
['-----BEGIN PGP PRIVATE KEY BLOCK-----',
|
||||
'Version: OpenPGP.js v0.3.0',
|
||||
|
@ -152,9 +152,96 @@ describe("ASCII armor", function() {
|
|||
'=wJN@',
|
||||
'-----END PGP PRIVATE KEY BLOCK-----'].join('\n');
|
||||
|
||||
var result = openpgp.key.readArmored(privKey);
|
||||
expect(result.err).to.exist;
|
||||
expect(result.err[0].message).to.match(/Ascii armor integrity check on message failed/);
|
||||
// try with default config
|
||||
var result_1 = openpgp.key.readArmored(privKey);
|
||||
expect(result_1.err).to.exist;
|
||||
expect(result_1.err[0].message).to.match(/Ascii armor integrity check on message failed/);
|
||||
|
||||
// try opposite config
|
||||
openpgp.config.checksum_required = !openpgp.config.checksum_required;
|
||||
var result_2 = openpgp.key.readArmored(privKey);
|
||||
expect(result_2.err).to.exist;
|
||||
expect(result_2.err[0].message).to.match(/Ascii armor integrity check on message failed/);
|
||||
|
||||
// back to default
|
||||
openpgp.config.checksum_required = !openpgp.config.checksum_required;
|
||||
});
|
||||
|
||||
it('Armor checksum validation - valid', function () {
|
||||
var privKey =
|
||||
['-----BEGIN PGP PRIVATE KEY BLOCK-----',
|
||||
'Version: OpenPGP.js v0.3.0',
|
||||
'Comment: http://openpgpjs.org',
|
||||
'',
|
||||
'xbYEUubX7gEBANDWhzoP+Tr/IyRSv++vl5jBesQIPTYGQBdzF4YDnGEBABEB',
|
||||
'AAH+CQMIfzdw4/PKNl5gVXdtfDFdSIN8yJT2rbeg3+SsWexXZNNdRaONWaiB',
|
||||
'Z5cG9Q6+BoXKsEshIdcYOgwsAgRxlPpRA34Vvmg2QBk7PhdrkbK7aqENsJ1w',
|
||||
'dIlLD6p9GmLE20yVff58/fMiUtPRgsD83SpKTAX6EM1ulpkuQQNjmrVc5qc8',
|
||||
'7AMdF80JdW5kZWZpbmVkwj8EEAEIABMFAlLm1+4JEBD8MASZrpALAhsDAAAs',
|
||||
'QgD8CUrwv7Hrp/INR0/UvAvzS52VztREQwQWTJMrgTNHBGjHtgRS5tfuAQEA',
|
||||
'nys9SaSgR+l6iZc/M8hGIUmbuahE2/+mtw+/l0RO+WcAEQEAAf4JAwjr39Yi',
|
||||
'FzjxImDN1IoYVsonA9M+BtIIJHafuQUHjyEr1paJJK5xS6KlyGgpMTXTD6y/',
|
||||
'qxS3ZSPPzHGRrs2CmkVEiPmurn9Ed05tb0y9OnJkWtuh3z9VVq9d8zHzuENa',
|
||||
'bUfli+P/v+dRaZ+1rSOxUFbFYbFB5XK/A9b/OPFrv+mb4KrtLxugwj8EGAEI',
|
||||
'ABMFAlLm1+4JEBD8MASZrpALAhsMAAC3IgD8DnLGbMnpLtrX72RCkPW1ffLq',
|
||||
'71vlXMJNXvoCeuejiRw=',
|
||||
'=wJNM',
|
||||
'-----END PGP PRIVATE KEY BLOCK-----'].join('\n');
|
||||
|
||||
// try with default config
|
||||
var result_1 = openpgp.key.readArmored(privKey);
|
||||
expect(result_1.err).to.not.exist;
|
||||
|
||||
// try opposite config
|
||||
openpgp.config.checksum_required = !openpgp.config.checksum_required;
|
||||
var result_2 = openpgp.key.readArmored(privKey);
|
||||
expect(result_2.err).to.not.exist;
|
||||
|
||||
// back to default
|
||||
openpgp.config.checksum_required = !openpgp.config.checksum_required;
|
||||
});
|
||||
|
||||
it('Armor checksum validation - missing', function () {
|
||||
var privKeyNoCheckSum =
|
||||
['-----BEGIN PGP PRIVATE KEY BLOCK-----',
|
||||
'Version: OpenPGP.js v0.3.0',
|
||||
'Comment: http://openpgpjs.org',
|
||||
'',
|
||||
'xbYEUubX7gEBANDWhzoP+Tr/IyRSv++vl5jBesQIPTYGQBdzF4YDnGEBABEB',
|
||||
'AAH+CQMIfzdw4/PKNl5gVXdtfDFdSIN8yJT2rbeg3+SsWexXZNNdRaONWaiB',
|
||||
'Z5cG9Q6+BoXKsEshIdcYOgwsAgRxlPpRA34Vvmg2QBk7PhdrkbK7aqENsJ1w',
|
||||
'dIlLD6p9GmLE20yVff58/fMiUtPRgsD83SpKTAX6EM1ulpkuQQNjmrVc5qc8',
|
||||
'7AMdF80JdW5kZWZpbmVkwj8EEAEIABMFAlLm1+4JEBD8MASZrpALAhsDAAAs',
|
||||
'QgD8CUrwv7Hrp/INR0/UvAvzS52VztREQwQWTJMrgTNHBGjHtgRS5tfuAQEA',
|
||||
'nys9SaSgR+l6iZc/M8hGIUmbuahE2/+mtw+/l0RO+WcAEQEAAf4JAwjr39Yi',
|
||||
'FzjxImDN1IoYVsonA9M+BtIIJHafuQUHjyEr1paJJK5xS6KlyGgpMTXTD6y/',
|
||||
'qxS3ZSPPzHGRrs2CmkVEiPmurn9Ed05tb0y9OnJkWtuh3z9VVq9d8zHzuENa',
|
||||
'bUfli+P/v+dRaZ+1rSOxUFbFYbFB5XK/A9b/OPFrv+mb4KrtLxugwj8EGAEI',
|
||||
'ABMFAlLm1+4JEBD8MASZrpALAhsMAAC3IgD8DnLGbMnpLtrX72RCkPW1ffLq',
|
||||
'71vlXMJNXvoCeuejiRw=',
|
||||
'-----END PGP PRIVATE KEY BLOCK-----'].join('\n');
|
||||
|
||||
// try with default config
|
||||
var result_1 = openpgp.key.readArmored(privKeyNoCheckSum);
|
||||
if(openpgp.config.checksum_required) {
|
||||
expect(result_1.err).to.exist;
|
||||
expect(result_1.err[0].message).to.match(/Ascii armor integrity check on message failed/);
|
||||
} else {
|
||||
expect(result_1.err).to.not.exist;
|
||||
}
|
||||
|
||||
// try opposite config
|
||||
openpgp.config.checksum_required = !openpgp.config.checksum_required;
|
||||
var result_2 = openpgp.key.readArmored(privKeyNoCheckSum);
|
||||
if(openpgp.config.checksum_required) {
|
||||
expect(result_2.err).to.exist;
|
||||
expect(result_2.err[0].message).to.match(/Ascii armor integrity check on message failed/);
|
||||
} else {
|
||||
expect(result_2.err).to.not.exist;
|
||||
}
|
||||
|
||||
// back to default
|
||||
openpgp.config.checksum_required = !openpgp.config.checksum_required;
|
||||
});
|
||||
|
||||
it('Accept header with trailing whitespace', function () {
|
||||
|
|
Loading…
Reference in New Issue
Block a user