LibWeb: Fix X448 PCKS#8 key export format

The ASN1 structure for PCKS#8 was wrong and missing one wrapping of the
key in a OctetString.

The issue was discovered while implementing `wrapKey` and `unwrapKey` in
the next commits.
This commit is contained in:
devgianlu 2024-12-14 11:19:16 +01:00 committed by Andreas Kling
commit 06733bea48
Notes: github-actions[bot] 2024-12-16 10:36:08 +00:00
2 changed files with 13 additions and 11 deletions

View file

@ -2,8 +2,7 @@ Harness status: OK
Found 54 tests
46 Pass
8 Fail
54 Pass
Pass Good parameters: X448 bits (spki, buffer(68), {name: X448}, true, [])
Pass Good parameters: X448 bits (spki, buffer(68), X448, true, [])
Pass Good parameters: X448 bits (jwk, object(kty, crv, x), {name: X448}, true, [])
@ -12,26 +11,26 @@ Pass Good parameters with ignored JWK alg: X448 (jwk, object(kty, crv, x), {name
Pass Good parameters with ignored JWK alg: X448 (jwk, object(kty, crv, x), X448, true, [])
Pass Good parameters: X448 bits (raw, buffer(56), {name: X448}, true, [])
Pass Good parameters: X448 bits (raw, buffer(56), X448, true, [])
Fail Good parameters: X448 bits (pkcs8, buffer(72), {name: X448}, true, [deriveKey])
Fail Good parameters: X448 bits (pkcs8, buffer(72), X448, true, [deriveKey])
Pass Good parameters: X448 bits (pkcs8, buffer(72), {name: X448}, true, [deriveKey])
Pass Good parameters: X448 bits (pkcs8, buffer(72), X448, true, [deriveKey])
Pass Good parameters: X448 bits (jwk, object(crv, d, x, kty), {name: X448}, true, [deriveKey])
Pass Good parameters: X448 bits (jwk, object(crv, d, x, kty), X448, true, [deriveKey])
Pass Good parameters with ignored JWK alg: X448 (jwk, object(crv, d, x, kty), {name: X448}, true, [deriveKey])
Pass Good parameters with ignored JWK alg: X448 (jwk, object(crv, d, x, kty), X448, true, [deriveKey])
Fail Good parameters: X448 bits (pkcs8, buffer(72), {name: X448}, true, [deriveBits, deriveKey])
Fail Good parameters: X448 bits (pkcs8, buffer(72), X448, true, [deriveBits, deriveKey])
Pass Good parameters: X448 bits (pkcs8, buffer(72), {name: X448}, true, [deriveBits, deriveKey])
Pass Good parameters: X448 bits (pkcs8, buffer(72), X448, true, [deriveBits, deriveKey])
Pass Good parameters: X448 bits (jwk, object(crv, d, x, kty), {name: X448}, true, [deriveBits, deriveKey])
Pass Good parameters: X448 bits (jwk, object(crv, d, x, kty), X448, true, [deriveBits, deriveKey])
Pass Good parameters with ignored JWK alg: X448 (jwk, object(crv, d, x, kty), {name: X448}, true, [deriveBits, deriveKey])
Pass Good parameters with ignored JWK alg: X448 (jwk, object(crv, d, x, kty), X448, true, [deriveBits, deriveKey])
Fail Good parameters: X448 bits (pkcs8, buffer(72), {name: X448}, true, [deriveBits])
Fail Good parameters: X448 bits (pkcs8, buffer(72), X448, true, [deriveBits])
Pass Good parameters: X448 bits (pkcs8, buffer(72), {name: X448}, true, [deriveBits])
Pass Good parameters: X448 bits (pkcs8, buffer(72), X448, true, [deriveBits])
Pass Good parameters: X448 bits (jwk, object(crv, d, x, kty), {name: X448}, true, [deriveBits])
Pass Good parameters: X448 bits (jwk, object(crv, d, x, kty), X448, true, [deriveBits])
Pass Good parameters with ignored JWK alg: X448 (jwk, object(crv, d, x, kty), {name: X448}, true, [deriveBits])
Pass Good parameters with ignored JWK alg: X448 (jwk, object(crv, d, x, kty), X448, true, [deriveBits])
Fail Good parameters: X448 bits (pkcs8, buffer(72), {name: X448}, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Fail Good parameters: X448 bits (pkcs8, buffer(72), X448, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass Good parameters: X448 bits (pkcs8, buffer(72), {name: X448}, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass Good parameters: X448 bits (pkcs8, buffer(72), X448, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass Good parameters: X448 bits (jwk, object(crv, d, x, kty), {name: X448}, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass Good parameters: X448 bits (jwk, object(crv, d, x, kty), X448, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass Good parameters with ignored JWK alg: X448 (jwk, object(crv, d, x, kty), {name: X448}, true, [deriveKey, deriveBits, deriveKey, deriveBits])