mirror of
https://github.com/denoland/deno.git
synced 2024-11-21 15:04:11 -05:00
fix(ext/crypto): ecdh spki key import/export roundtrip (#16152)
This commit is contained in:
parent
fd08b13dff
commit
aa710aac98
3 changed files with 11 additions and 5 deletions
|
@ -1919,3 +1919,13 @@ Deno.test(async function testImportLeadingZeroesKey() {
|
|||
assert(key instanceof CryptoKey);
|
||||
assertEquals(key.type, "private");
|
||||
});
|
||||
|
||||
// https://github.com/denoland/deno/issues/15523
|
||||
Deno.test(async function testECspkiRoundTrip() {
|
||||
const alg = { name: "ECDH", namedCurve: "P-256" };
|
||||
const { publicKey } = await crypto.subtle.generateKey(alg, true, [
|
||||
"deriveBits",
|
||||
]);
|
||||
const spki = await crypto.subtle.exportKey("spki", publicKey);
|
||||
await crypto.subtle.importKey("spki", spki, alg, true, []);
|
||||
});
|
||||
|
|
|
@ -281,7 +281,7 @@ fn export_key_ec(
|
|||
|
||||
let alg_id = match algorithm {
|
||||
ExportKeyAlgorithm::Ecdh { .. } => AlgorithmIdentifier {
|
||||
oid: ObjectIdentifier::new_unwrap("1.3.132.1.12"),
|
||||
oid: ObjectIdentifier::new_unwrap("1.2.840.10045.2.1"),
|
||||
parameters: alg_id.parameters,
|
||||
},
|
||||
_ => alg_id,
|
||||
|
|
|
@ -728,8 +728,6 @@
|
|||
"Good parameters: P-521 bits (jwk, object(kty, crv, x, y), {name: ECDSA, namedCurve: P-521}, false, [])",
|
||||
"Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDSA, namedCurve: P-521}, false, [sign])",
|
||||
"Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDSA, namedCurve: P-521}, false, [sign])",
|
||||
"Good parameters: P-256 bits (spki, buffer(91), {name: ECDH, namedCurve: P-256}, true, [])",
|
||||
"Good parameters: P-384 bits (spki, buffer(120), {name: ECDH, namedCurve: P-384}, true, [])",
|
||||
"Good parameters: P-521 bits (spki, buffer(158), {name: ECDH, namedCurve: P-521}, true, [])",
|
||||
"Good parameters: P-521 bits (jwk, object(kty, crv, x, y), {name: ECDH, namedCurve: P-521}, true, [])",
|
||||
"Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDH, namedCurve: P-521}, true, [deriveKey])",
|
||||
|
@ -756,8 +754,6 @@
|
|||
"Good parameters: P-521 bits (jwk, object(kty, crv, x, y), {name: ECDSA, namedCurve: P-521}, false, [])",
|
||||
"Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDSA, namedCurve: P-521}, false, [sign])",
|
||||
"Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDSA, namedCurve: P-521}, false, [sign])",
|
||||
"Good parameters: P-256 bits (spki, buffer(91), {name: ECDH, namedCurve: P-256}, true, [])",
|
||||
"Good parameters: P-384 bits (spki, buffer(120), {name: ECDH, namedCurve: P-384}, true, [])",
|
||||
"Good parameters: P-521 bits (spki, buffer(158), {name: ECDH, namedCurve: P-521}, true, [])",
|
||||
"Good parameters: P-521 bits (jwk, object(kty, crv, x, y), {name: ECDH, namedCurve: P-521}, true, [])",
|
||||
"Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDH, namedCurve: P-521}, true, [deriveKey])",
|
||||
|
|
Loading…
Reference in a new issue