diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2023-11-09 09:56:59 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-09 23:26:59 +0530 |
commit | c4029f6af22b373bf22383453cb4e2159f3b5b72 (patch) | |
tree | 588594d5d5eb98689101565fb76c6a546cc9e78a /cli/tests/unit_node/crypto/crypto_key_test.ts | |
parent | ee7fd0a2127e6a435023bf9a43de60130117697d (diff) |
fix(node): implement createPrivateKey (#20981)
Towards #18455
Diffstat (limited to 'cli/tests/unit_node/crypto/crypto_key_test.ts')
-rw-r--r-- | cli/tests/unit_node/crypto/crypto_key_test.ts | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/cli/tests/unit_node/crypto/crypto_key_test.ts b/cli/tests/unit_node/crypto/crypto_key_test.ts index 672c9fa7f..0e56d8255 100644 --- a/cli/tests/unit_node/crypto/crypto_key_test.ts +++ b/cli/tests/unit_node/crypto/crypto_key_test.ts @@ -2,6 +2,7 @@ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. import { + createPrivateKey, createSecretKey, generateKeyPair, generateKeyPairSync, @@ -202,3 +203,28 @@ for (const primeLength of [1024, 2048, 4096]) { }, }); } + +const rsaPrivateKey = Deno.readTextFileSync( + new URL("../testdata/rsa_private.pem", import.meta.url), +); + +Deno.test("createPrivateKey rsa", function () { + const key = createPrivateKey(rsaPrivateKey); + assertEquals(key.type, "private"); + assertEquals(key.asymmetricKeyType, "rsa"); + assertEquals(key.asymmetricKeyDetails?.modulusLength, 2048); + assertEquals(key.asymmetricKeyDetails?.publicExponent, 65537n); +}); + +// openssl ecparam -name secp256r1 -genkey -noout -out a.pem +// openssl pkcs8 -topk8 -nocrypt -in a.pem -out b.pem +const ecPrivateKey = Deno.readTextFileSync( + new URL("./ec_private_secp256r1.pem", import.meta.url), +); + +Deno.test("createPrivateKey ec", function () { + const key = createPrivateKey(ecPrivateKey); + assertEquals(key.type, "private"); + assertEquals(key.asymmetricKeyType, "ec"); + assertEquals(key.asymmetricKeyDetails?.namedCurve, "p256"); +}); |