From 0743a33266efdbabc7a16d78094a7058b60a2e01 Mon Sep 17 00:00:00 2001 From: Andrew Kaster Date: Thu, 21 Mar 2024 18:54:46 -0600 Subject: [PATCH] LibWeb: Add roundtrip SubtleCrypto import/export test using JWK --- .../SubtleCrypto-import-export-roundtrip.txt | 26 +++++++ .../input/Crypto/SubtleCrypto-exportKey.html | 2 - .../SubtleCrypto-import-export-roundtrip.html | 72 +++++++++++++++++++ 3 files changed, 98 insertions(+), 2 deletions(-) create mode 100644 Tests/LibWeb/Text/expected/Crypto/SubtleCrypto-import-export-roundtrip.txt create mode 100644 Tests/LibWeb/Text/input/Crypto/SubtleCrypto-import-export-roundtrip.html diff --git a/Tests/LibWeb/Text/expected/Crypto/SubtleCrypto-import-export-roundtrip.txt b/Tests/LibWeb/Text/expected/Crypto/SubtleCrypto-import-export-roundtrip.txt new file mode 100644 index 00000000000..64ce0251baa --- /dev/null +++ b/Tests/LibWeb/Text/expected/Crypto/SubtleCrypto-import-export-roundtrip.txt @@ -0,0 +1,26 @@ +Public key: +exported kty: RSA +exported alg: RSA-OAEP-256 +exported ext: true +exported key_ops: encrypt +exported e: AQAB +exported n: xXyO27tsz-XjK5UI3Y_RRo2G23M1miuBgzcqC-0fAMFeEoEyMPlZIuJKnMH4I2AW-MQ-4jGLvajIbIc2knKxwQ +exported d: undefined +exported p: undefined +exported q: undefined +exported dp: undefined +exported dq: undefined +exported qi: undefined +Private key: +exported kty: RSA +exported alg: RSA-OAEP-256 +exported ext: true +exported key_ops: decrypt +exported e: AQAB +exported n: xXyO27tsz-XjK5UI3Y_RRo2G23M1miuBgzcqC-0fAMFeEoEyMPlZIuJKnMH4I2AW-MQ-4jGLvajIbIc2knKxwQ +exported d: vmh-BPYMz9ZC1b54Mcd8a54BLI1EXUUdNjp129HgVoRoaYRgedQ5DXF4D-9i5zGjWjb-ZKlyrArt5z896d0B +exported p: 4tConw6cko5LVskz7POlxGn0nLZdahFBYchQTD6eKwE +exported q: 3uXPp1FGWgdMh7qym7a8C9IrFErhFR_QUwpBr_dyRsE +exported dp: VTarg0aMEIuhRnPFLGrFhquAGThylBzzgXcuo9aKugE +exported dq: aWZmUQo_qCa3a58_Ah7gwP463Lejw6dtjTbWZO0vnoE +exported qi: CjE8i_twYrw9nyR_e-jTcMPVuxpx8N9lxr4ZkTVpSEs diff --git a/Tests/LibWeb/Text/input/Crypto/SubtleCrypto-exportKey.html b/Tests/LibWeb/Text/input/Crypto/SubtleCrypto-exportKey.html index 82d1562731c..d84ef85089c 100644 --- a/Tests/LibWeb/Text/input/Crypto/SubtleCrypto-exportKey.html +++ b/Tests/LibWeb/Text/input/Crypto/SubtleCrypto-exportKey.html @@ -21,8 +21,6 @@ "unwrapKey", ]); - // FIXME: Create a roundtrip test that starts with a key object and imports it, then exports it. - let exportedPublicKey = await window.crypto.subtle.exportKey("jwk", key.publicKey); println(`exportedPublicKey kwt: ${exportedPublicKey.kty}`); println(`exportedPublicKey alg: ${exportedPublicKey.alg}`); diff --git a/Tests/LibWeb/Text/input/Crypto/SubtleCrypto-import-export-roundtrip.html b/Tests/LibWeb/Text/input/Crypto/SubtleCrypto-import-export-roundtrip.html new file mode 100644 index 00000000000..8607b09038d --- /dev/null +++ b/Tests/LibWeb/Text/input/Crypto/SubtleCrypto-import-export-roundtrip.html @@ -0,0 +1,72 @@ + +