OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <script src="../../resources/js-test.js"></script> | 4 <script src="../../../resources/js-test.js"></script> |
5 <script src="resources/common.js"></script> | 5 <script src="../resources/common.js"></script> |
6 </head> | 6 </head> |
7 <body> | 7 <body> |
8 <p id="description"></p> | 8 <p id="description"></p> |
9 <div id="console"></div> | 9 <div id="console"></div> |
10 | 10 |
11 <script> | 11 <script> |
12 description("Tests structured de-cloning of empty HMAC keys"); | 12 description("Tests structured de-cloning of empty HMAC keys"); |
13 | 13 |
14 jsTestIsAsync = true; | 14 jsTestIsAsync = true; |
15 | 15 |
(...skipping 30 matching lines...) Expand all Loading... |
46 shouldEvaluateAs("key.algorithm.name", "HMAC"); | 46 shouldEvaluateAs("key.algorithm.name", "HMAC"); |
47 shouldEvaluateAs("key.algorithm.length", 0); | 47 shouldEvaluateAs("key.algorithm.length", 0); |
48 shouldEvaluateAs("key.algorithm.hash.name", "SHA-256"); | 48 shouldEvaluateAs("key.algorithm.hash.name", "SHA-256"); |
49 shouldBe("key.usages", '["sign", "verify"]'); | 49 shouldBe("key.usages", '["sign", "verify"]'); |
50 | 50 |
51 return { | 51 return { |
52 sha1: sha1Key, | 52 sha1: sha1Key, |
53 sha256: sha256Key | 53 sha256: sha256Key |
54 }; | 54 }; |
55 } | 55 } |
56 | 56 |
57 | 57 |
58 Promise.resolve(deserializeTestKeys()).then(function(result) { | 58 Promise.resolve(deserializeTestKeys()).then(function(result) { |
59 keys = result; | 59 keys = result; |
60 | 60 |
61 debug("\ncalling verify() with a valid signature (SHA-1) ..."); | 61 debug("\ncalling verify() with a valid signature (SHA-1) ..."); |
62 return crypto.subtle.verify("HMAC", keys.sha1, hexStringToUint8Array("fbdb1d
1b18aa6c08324b7d64b71fb76370690e1d"), hexStringToUint8Array("")); | 62 return crypto.subtle.verify("HMAC", keys.sha1, hexStringToUint8Array("fbdb1d
1b18aa6c08324b7d64b71fb76370690e1d"), hexStringToUint8Array("")); |
63 }).then(function(result) { | 63 }).then(function(result) { |
64 verifyResult = result; | 64 verifyResult = result; |
65 shouldEvaluateAs("verifyResult", true); | 65 shouldEvaluateAs("verifyResult", true); |
66 | 66 |
(...skipping 23 matching lines...) Expand all Loading... |
90 debug("\ncalling sign() (SHA-256) over empty input..."); | 90 debug("\ncalling sign() (SHA-256) over empty input..."); |
91 return crypto.subtle.sign("HMAC", keys.sha256, hexStringToUint8Array("")); | 91 return crypto.subtle.sign("HMAC", keys.sha256, hexStringToUint8Array("")); |
92 }).then(function(result) { | 92 }).then(function(result) { |
93 bytesShouldMatchHexString("signature", "b613679a0814d9ec772f95d778c35fc5ff16
97c493715653c6c712144292c5ad", result); | 93 bytesShouldMatchHexString("signature", "b613679a0814d9ec772f95d778c35fc5ff16
97c493715653c6c712144292c5ad", result); |
94 }).then(finishJSTest, failAndFinishJSTest); | 94 }).then(finishJSTest, failAndFinishJSTest); |
95 | 95 |
96 </script> | 96 </script> |
97 | 97 |
98 </body> | 98 </body> |
99 </html> | 99 </html> |
OLD | NEW |