From 10e592f95491b3a464bbf2199e7ee5819b537570 Mon Sep 17 00:00:00 2001 From: Divy Srivastava Date: Wed, 13 Mar 2024 20:26:07 -0700 Subject: fix(ext/node): DH (`dhKeyAgreement`) support for `createPrivateKey` (#22891) Ref https://github.com/denoland/deno/pull/22511 --- tests/unit_node/crypto/crypto_key_test.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'tests') diff --git a/tests/unit_node/crypto/crypto_key_test.ts b/tests/unit_node/crypto/crypto_key_test.ts index 9b8224cd1..656c7bb24 100644 --- a/tests/unit_node/crypto/crypto_key_test.ts +++ b/tests/unit_node/crypto/crypto_key_test.ts @@ -229,6 +229,24 @@ Deno.test("createPrivateKey rsa", function () { assertEquals(key.asymmetricKeyDetails?.publicExponent, 65537n); }); +Deno.test("createPrivateKey dh", function () { + // 1.2.840.113549.1.3.1 + const pem = "-----BEGIN PRIVATE KEY-----\n" + + "MIIBoQIBADCB1QYJKoZIhvcNAQMBMIHHAoHBAP//////////yQ/aoiFowjTExmKL\n" + + "gNwc0SkCTgiKZ8x0Agu+pjsTmyJRSgh5jjQE3e+VGbPNOkMbMCsKbfJfFDdP4TVt\n" + + "bVHCReSFtXZiXn7G9ExC6aY37WsL/1y29Aa37e44a/taiZ+lrp8kEXxLH+ZJKGZR\n" + + "7ORbPcIAfLihY78FmNpINhxV05ppFj+o/STPX4NlXSPco62WHGLzViCFUrue1SkH\n" + + "cJaWbWcMNU5KvJgE8XRsCMojcyf//////////wIBAgSBwwKBwHxnT7Zw2Ehh1vyw\n" + + "eolzQFHQzyuT0y+3BF+FxK2Ox7VPguTp57wQfGHbORJ2cwCdLx2mFM7gk4tZ6COS\n" + + "E3Vta85a/PuhKXNLRdP79JgLnNtVtKXB+ePDS5C2GgXH1RHvqEdJh7JYnMy7Zj4P\n" + + "GagGtIy3dV5f4FA0B/2C97jQ1pO16ah8gSLQRKsNpTCw2rqsZusE0rK6RaYAef7H\n" + + "y/0tmLIsHxLIn+WK9CANqMbCWoP4I178BQaqhiOBkNyNZ0ndqA==\n" + + "-----END PRIVATE KEY-----"; + const key = createPrivateKey(pem); + assertEquals(key.type, "private"); + assertEquals(key.asymmetricKeyType, "dh"); +}); + // openssl ecparam -name secp256r1 -genkey -noout -out a.pem // openssl pkcs8 -topk8 -nocrypt -in a.pem -out b.pem const ecPrivateKey = Deno.readTextFileSync( -- cgit v1.2.3