Lines Matching refs:usages

25         {name: "AES-CTR",  resultType: CryptoKey, usages: ["encrypt", "decrypt", "wrapKey", "unwrapKey"], mandatoryUsages: []},
26 {name: "AES-CBC", resultType: CryptoKey, usages: ["encrypt", "decrypt", "wrapKey", "unwrapKey"], mandatoryUsages: []},
27 {name: "AES-GCM", resultType: CryptoKey, usages: ["encrypt", "decrypt", "wrapKey", "unwrapKey"], mandatoryUsages: []},
28 {name: "AES-KW", resultType: CryptoKey, usages: ["wrapKey", "unwrapKey"], mandatoryUsages: []},
29 {name: "HMAC", resultType: CryptoKey, usages: ["sign", "verify"], mandatoryUsages: []},
30 {name: "RSASSA-PKCS1-v1_5", resultType: "CryptoKeyPair", usages: ["sign", "verify"], mandatoryUsages: ["sign"]},
31 {name: "RSA-PSS", resultType: "CryptoKeyPair", usages: ["sign", "verify"], mandatoryUsages: ["sign"]},
32 {name: "RSA-OAEP", resultType: "CryptoKeyPair", usages: ["encrypt", "decrypt", "wrapKey", "unwrapKey"], mandatoryUsages: ["decrypt", "unwrapKey"]},
33 {name: "ECDSA", resultType: "CryptoKeyPair", usages: ["sign", "verify"], mandatoryUsages: ["sign"]},
34 {name: "ECDH", resultType: "CryptoKeyPair", usages: ["deriveKey", "deriveBits"], mandatoryUsages: ["deriveKey", "deriveBits"]},
35 {name: "Ed25519", resultType: "CryptoKeyPair", usages: ["sign", "verify"], mandatoryUsages: ["sign"]},
36 {name: "Ed448", resultType: "CryptoKeyPair", usages: ["sign", "verify"], mandatoryUsages: ["sign"]},
37 {name: "X25519", resultType: "CryptoKeyPair", usages: ["deriveKey", "deriveBits"], mandatoryUsages: ["deriveKey", "deriveBits"]},
38 {name: "X448", resultType: "CryptoKeyPair", usages: ["deriveKey", "deriveBits"], mandatoryUsages: ["deriveKey", "deriveBits"]},
52 function parameterString(algorithm, extractable, usages) {
60 objectToString(usages) +
71 function testError(algorithm, extractable, usages, expectedError, testTag) {
73 return crypto.subtle.generateKey(algorithm, extractable, usages)
83 }, testTag + ": generateKey" + parameterString(algorithm, extractable, usages));
110 // Don't create an exhaustive list of all invalid usages,
140 // - Bad usages for algorithm
162 .forEach(function(usages) {
164 testError(algorithm, extractable, usages, "NotSupportedError", "Bad algorithm");
170 // Algorithms normalize okay, but usages bad (though not empty).
177 invalidUsages(vector.usages, vector.mandatoryUsages).forEach(function(usages) {
179 testError(algorithm, extractable, usages, "SyntaxError", "Bad usages");
187 // algorithm names and usages, but bad algorithm properties next.
193 allValidUsages(vector.usages, true, vector.mandatoryUsages)
194 .forEach(function(usages) {
197 testError(algorithm, extractable, usages, "NotSupportedError", "Bad algorithm property");
199 testError(algorithm, extractable, usages, "OperationError", "Bad algorithm property");
207 // The last thing that should be checked is empty usages (disallowed for secret and private keys).
212 var usages = [];
214 testError(algorithm, extractable, usages, "SyntaxError", "Empty usages");