| 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 cloning of AES keys"); | 12 description("Tests structured cloning of AES keys"); |
| 13 | 13 |
| 14 jsTestIsAsync = true; | 14 jsTestIsAsync = true; |
| 15 | 15 |
| 16 // Tests the 48 permutations of keys generated by: | 16 // Tests the 32 permutations of keys generated by: |
| 17 // kPossibleAlgorithms x kPossibleExtractable x kPossibleKeyUsages x kPossible
KeyData | 17 // kPossibleAlgorithms x kPossibleExtractable x kPossibleKeyUsages x kPossible
KeyData |
| 18 // | 18 // |
| 19 // For practical reasons these tests are not exhaustive. | 19 // For practical reasons these tests are not exhaustive. |
| 20 | 20 |
| 21 var k128BitData = "30112233445566778899aabbccddeeff" | 21 var k128BitData = "30112233445566778899aabbccddeeff" |
| 22 var k192BitData = "800102030405060708090a0b0c0d0e0f1011121314151617"; | |
| 23 var k256BitData = "00112233445546778899aabbccddeeff000102030405060708090a0b0c0d0
e0f"; | 22 var k256BitData = "00112233445546778899aabbccddeeff000102030405060708090a0b0c0d0
e0f"; |
| 24 | 23 |
| 25 var kPossibleAlgorithms = ['AES-CBC', 'AES-GCM']; | 24 var kPossibleAlgorithms = ['AES-CBC', 'AES-GCM']; |
| 26 var kPossibleExtractable = [true, false]; | 25 var kPossibleExtractable = [true, false]; |
| 27 var kPossibleKeyUsages = [[], ['encrypt'], ['decrypt', 'wrapKey'], ['encrypt', '
wrapKey', 'unwrapKey']]; | 26 var kPossibleKeyUsages = [[], ['encrypt'], ['decrypt', 'wrapKey'], ['encrypt', '
wrapKey', 'unwrapKey']]; |
| 28 var kPossibleKeyData = [k128BitData, k192BitData, k256BitData]; | 27 var kPossibleKeyData = [k128BitData, k256BitData]; |
| 29 | 28 |
| 30 function runTest(algorithmName, extractable, keyUsages, keyData) | 29 function runTest(algorithmName, extractable, keyUsages, keyData) |
| 31 { | 30 { |
| 32 var importData = hexStringToUint8Array(keyData); | 31 var importData = hexStringToUint8Array(keyData); |
| 33 var importAlgorithm = { name: algorithmName }; | 32 var importAlgorithm = { name: algorithmName }; |
| 34 | 33 |
| 35 var results = {}; | 34 var results = {}; |
| 36 | 35 |
| 37 return crypto.subtle.importKey('raw', importData, importAlgorithm, extractab
le, keyUsages).then(function(importedKey) { | 36 return crypto.subtle.importKey('raw', importData, importAlgorithm, extractab
le, keyUsages).then(function(importedKey) { |
| 38 results.importedKey = importedKey; | 37 results.importedKey = importedKey; |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 83 }); | 82 }); |
| 84 }); | 83 }); |
| 85 }); | 84 }); |
| 86 | 85 |
| 87 lastPromise.then(finishJSTest, failAndFinishJSTest); | 86 lastPromise.then(finishJSTest, failAndFinishJSTest); |
| 88 | 87 |
| 89 </script> | 88 </script> |
| 90 | 89 |
| 91 </body> | 90 </body> |
| 92 </html> | 91 </html> |
| OLD | NEW |