Skip to content

Commit

Permalink
P-521 PEM key tests
Browse files Browse the repository at this point in the history
  • Loading branch information
cplussharp committed Nov 27, 2021
1 parent ec35054 commit 5234f9f
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 0 deletions.
36 changes: 36 additions & 0 deletions test/qunit-do-keyutil-ec.html
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,24 @@
-----END EC PRIVATE KEY-----
*/}).toString().match(/\/\*([^]*)\*\//)[1];

var k5PrvP8PPem = "" +
"-----BEGIN PRIVATE KEY-----\n" +
"MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBRNEQ8Y1gwDMH8pne\n" +
"z9uq4ODLE/KTx7eCzMNKlGRIhx/8Mo2+B9ORKPMFk4on0wFW7T+rp7NpXm1wxTOY\n" +
"HSTf7mWhgYkDgYYABADSmlI0TDURn/W+oZrgkPgC0F/56jGtzDFSTQEodep5E0Sw\n" +
"KvBrWN48PSbxukE9JdXPm2soe1yc9BC/Km6nrQJhnQDeIhUCoVSA8GTZ0EwL1AcT\n" +
"5YfKcvwwCdM4lHRU1jYXti4IpC/pggFT3N+IRFmS6M8gTYzvxCZMDUnYHimDB+1p\n" +
"jw==\n" +
"-----END PRIVATE KEY-----\n";

var k5PubP8Pem = "" +
"-----BEGIN PUBLIC KEY-----\n" +
"MIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQA0ppSNEw1EZ/1vqGa4JD4AtBf+eox\n" +
"rcwxUk0BKHXqeRNEsCrwa1jePD0m8bpBPSXVz5trKHtcnPQQvypup60CYZ0A3iIV\n" +
"AqFUgPBk2dBMC9QHE+WHynL8MAnTOJR0VNY2F7YuCKQv6YIBU9zfiERZkujPIE2M\n" +
"78QmTA1J2B4pgwftaY8=\n" +
"-----END PUBLIC KEY-----\n";

test("KEYUTIL.getKeyFromPlainPrivatePKCS8Hex(K1PRVP8HEX) k1.prv.p8p.der", function() {
var key = KEYUTIL.getKeyFromPlainPrivatePKCS8Hex(K1PRVP8HEX);
equal(key.isPublic, false, "isPublic");
Expand Down Expand Up @@ -137,6 +155,24 @@
equal(key.pubKeyHex, K1PUBRAWHEX, "pubKeyHex");
});

test("KEYUTIL.getKey(PEM) Private P-521 PKCS8", function() {
var key = KEYUTIL.getKey(k5PrvP8PPem);
equal(key.isPrivate, true, "is private key");
equal(key.isPublic, false, "is public key");
equal(key.type, "EC", "type");
equal(key.curveName, "secp521r1", "curveName");
equal(key.prvKeyHex, "0144d110f18d60c03307f299decfdbaae0e0cb13f293c7b782ccc34a946448871ffc328dbe07d39128f305938a27d30156ed3faba7b3695e6d70c533981d24dfee65", "prvKeyHex");
});

test("KEYUTIL.getKey(PEM) Public P-521 PKCS8", function() {
var key = KEYUTIL.getKey(k5PubP8Pem);
equal(key.isPrivate, false, "is private key");
equal(key.isPublic, true, "is public key");
equal(key.type, "EC", "type");
equal(key.curveName, "secp521r1", "curveName");
equal(key.pubKeyHex, "0400d29a52344c35119ff5bea19ae090f802d05ff9ea31adcc31524d012875ea791344b02af06b58de3c3d26f1ba413d25d5cf9b6b287b5c9cf410bf2a6ea7ad02619d00de221502a15480f064d9d04c0bd40713e587ca72fc3009d338947454d63617b62e08a42fe9820153dcdf88445992e8cf204d8cefc4264c0d49d81e298307ed698f", "pubKeyHex");
});

});
-->
</script>
Expand Down
24 changes: 24 additions & 0 deletions test/qunit-do-x509-key.html
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,22 @@
"HRMEBTADAQH/MAoGCCqGSM49BAMCA0kAMEYCIQDfAcS/WKBrP6JBgksQVpp4jdq4\n" +
"C53Yu4F5NkaMgthAHgIhANGRdWAP1QdW9l6tiglQwdqJs4T0e8+NYv+RcAb3VYwn\n" +
"-----END CERTIFICATE-----\n";

var k5CertPem = "" +
"-----BEGIN CERTIFICATE-----\n" +
"MIICETCCAXKgAwIBAgIUYcEvdqjSYTHDXGJJMmK76h+q/bYwCgYIKoZIzj0EAwQw\n" +
"GjELMAkGA1UEBhMCVVMxCzAJBgNVBAoMAks1MB4XDTIxMTEyNzEwMzgyMFoXDTQx\n" +
"MTEyMjEwMzgyMFowGjELMAkGA1UEBhMCVVMxCzAJBgNVBAoMAks1MIGbMBAGByqG\n" +
"SM49AgEGBSuBBAAjA4GGAAQA0ppSNEw1EZ/1vqGa4JD4AtBf+eoxrcwxUk0BKHXq\n" +
"eRNEsCrwa1jePD0m8bpBPSXVz5trKHtcnPQQvypup60CYZ0A3iIVAqFUgPBk2dBM\n" +
"C9QHE+WHynL8MAnTOJR0VNY2F7YuCKQv6YIBU9zfiERZkujPIE2M78QmTA1J2B4p\n" +
"gwftaY+jUzBRMB0GA1UdDgQWBBRlDRyXy9CrDdTZW7gEIWipef3DhzAfBgNVHSME\n" +
"GDAWgBRlDRyXy9CrDdTZW7gEIWipef3DhzAPBgNVHRMBAf8EBTADAQH/MAoGCCqG\n" +
"SM49BAMEA4GMADCBiAJCAV4C6IirulahutoguAzYfHsFZieP6Z5tqm0ql/bXsDgd\n" +
"ZqxlrvTrpbHjSZr8vROiDPWaj9umJz2R8EOGk36vTY0MAkIAo2TRkneSYP3ZDjSh\n" +
"+29UnKQBS2/JazRBJ5ztk58L+4UkPInmj4lWXk3Rzhi8h2lKWVPK/5oq1KcvvHpd\n" +
"JPZcEXw=\n" +
"-----END CERTIFICATE-----\n";

test("getPublicKeyFromCertPEM z1CertPEM(RSA)", function() {
var key = X509.getPublicKeyFromCertPEM(z1CertPEM);
Expand All @@ -82,9 +98,17 @@
test("getPublicKeyFromCertPEM k1CertPEM(ECC)", function() {
var key = X509.getPublicKeyFromCertPEM(k1CertPEM);
equal(key.type, "EC", "type");
equal(key.curveName, "secp256r1", "curveName");
equal(key.pubKeyHex, "04a01532a3c0900053de60fbefefcca58793301598d308b41e6f4e364e388c2711bef432c599148c94143d4ff46c2cb73e3e6a41d7eef23c047ea11e60667de425", "pubKeyHex");
});

test("getPublicKeyFromCertPEM(ECC P-521)", function() {
var key = X509.getPublicKeyFromCertPEM(k5CertPem);
equal(key.type, "EC", "type");
equal(key.curveName, "secp521r1", "curveName");
equal(key.pubKeyHex, "0400d29a52344c35119ff5bea19ae090f802d05ff9ea31adcc31524d012875ea791344b02af06b58de3c3d26f1ba413d25d5cf9b6b287b5c9cf410bf2a6ea7ad02619d00de221502a15480f064d9d04c0bd40713e587ca72fc3009d338947454d63617b62e08a42fe9820153dcdf88445992e8cf204d8cefc4264c0d49d81e298307ed698f", "pubKeyHex");
});


});
</script>
Expand Down

0 comments on commit 5234f9f

Please sign in to comment.