4 <script src=
"../../resources/js-test.js"></script>
5 <script src=
"resources/common.js"></script>
8 <p id=
"description"></p>
9 <div id=
"console"></div>
12 description("Tests that wrapping keys must have the 'wrapKey' usage.");
16 function importWrappingKey()
18 var data
= new Uint8Array(16);
19 var extractable
= true;
20 var keyUsages
= ['encrypt'];
22 return crypto
.subtle
.importKey('raw', data
, {name
: 'AES-CBC'}, extractable
, keyUsages
);
25 function importKeyToWrap()
27 var data
= new Uint8Array(16);
28 var extractable
= true;
29 var keyUsages
= ['sign'];
31 return crypto
.subtle
.importKey('raw', data
, {name
: 'HMAC', hash
: {name
: 'SHA-1'}}, extractable
, keyUsages
);
34 importWrappingKey().then(function(result
) {
36 return importKeyToWrap();
37 }).then(function(result
) {
39 wrapAlgorithm
= {name
: 'aes-cbc', iv
: new Uint8Array(16)};
41 return crypto
.subtle
.wrapKey('raw', key
, wrappingKey
, wrapAlgorithm
);
42 }).then(failAndFinishJSTest
, function(result
) {
44 }).then(finishJSTest
, failAndFinishJSTest
);