| Index: LayoutTests/crypto/rsa-oaep-generate-non-extractable-key.html
|
| diff --git a/LayoutTests/crypto/rsassa-pkcs1-v1_5-generate-key.html b/LayoutTests/crypto/rsa-oaep-generate-non-extractable-key.html
|
| similarity index 57%
|
| copy from LayoutTests/crypto/rsassa-pkcs1-v1_5-generate-key.html
|
| copy to LayoutTests/crypto/rsa-oaep-generate-non-extractable-key.html
|
| index 648bdde8be234ea1b926813768fc7faea0024427..493d4acb785145cbe330852d900418ced18f1b39 100644
|
| --- a/LayoutTests/crypto/rsassa-pkcs1-v1_5-generate-key.html
|
| +++ b/LayoutTests/crypto/rsa-oaep-generate-non-extractable-key.html
|
| @@ -9,47 +9,36 @@
|
| <div id="console"></div>
|
|
|
| <script>
|
| -description("Test generating an RSA key pair for RSASSA-PKCS1-v1_5.");
|
| +description("Test that even when non-extractability is requested, the public key is still extractable.");
|
|
|
| jsTestIsAsync = true;
|
|
|
| var algorithmKeyGen = {
|
| - name: "RSASSA-PKCS1-v1_5",
|
| + name: "RSA-OAEP",
|
| hash: {name: "sha-256"},
|
| // RsaKeyGenParams
|
| modulusLength: 2048,
|
| publicExponent: new Uint8Array([0x01, 0x00, 0x01]), // Equivalent to 65537
|
| };
|
| -var extractable = true;
|
| +var nonExtractable = false;
|
|
|
| debug("Generating a key pair...");
|
| -crypto.subtle.generateKey(algorithmKeyGen, extractable, ["sign", "verify"]).then(function(result) {
|
| +crypto.subtle.generateKey(algorithmKeyGen, nonExtractable, []).then(function(result) {
|
| keyPair = result;
|
| shouldBe("keyPair.toString()", "'[object KeyPair]'");
|
| shouldBe("keyPair.publicKey.type", "'public'");
|
| - shouldBe("keyPair.publicKey.algorithm.name", "'RSASSA-PKCS1-v1_5'");
|
| - shouldBe("keyPair.publicKey.algorithm.hash.name", "'SHA-256'");
|
| + shouldBe("keyPair.publicKey.extractable", "true");
|
| + shouldBe("keyPair.publicKey.algorithm.name", "'RSA-OAEP'");
|
| shouldBe("keyPair.publicKey.algorithm.modulusLength", "2048");
|
| shouldBe("bytesToHexString(keyPair.publicKey.algorithm.publicExponent)", "'010001'");
|
| - shouldBe("keyPair.publicKey.usages", '["verify"]');
|
| + shouldBe("keyPair.publicKey.algorithm.hash.name", "'SHA-256'");
|
| shouldBe("keyPair.privateKey.type", "'private'");
|
| - shouldBe("keyPair.privateKey.algorithm.name", "'RSASSA-PKCS1-v1_5'");
|
| - shouldBe("keyPair.privateKey.algorithm.hash.name", "'SHA-256'");
|
| + shouldBe("keyPair.privateKey.extractable", "false");
|
| + shouldBe("keyPair.privateKey.algorithm.name", "'RSA-OAEP'");
|
| shouldBe("keyPair.privateKey.algorithm.modulusLength", "2048");
|
| shouldBe("bytesToHexString(keyPair.privateKey.algorithm.publicExponent)", "'010001'");
|
| - shouldBe("keyPair.privateKey.usages", '["sign"]');
|
| -
|
| - debug("\nTesting that custom attributes on keys survive garbage collection...");
|
| - keyPair.publicKey.foo = "bar";
|
| - gc();
|
| - setTimeout(function() {
|
| - gc();
|
| - setTimeout(function() {
|
| - shouldBe("keyPair.publicKey.foo", "'bar'");
|
| - finishJSTest();
|
| - }, 0);
|
| - }, 0);
|
| -}).catch(failAndFinishJSTest);
|
| + shouldBe("keyPair.privateKey.algorithm.hash.name", "'SHA-256'");
|
| +}).then(finishJSTest, failAndFinishJSTest);
|
|
|
| </script>
|
|
|
|
|