CryptoKey:usages 屬性

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

注意:此功能在 Web Workers 中可用。

CryptoKey 介面的只讀屬性 usages 指示了該金鑰可用於執行的操作。

一個 Array,其中包含以下列表中的字串:

  • "encrypt":該金鑰可用於加密訊息。
  • "decrypt":該金鑰可用於解密訊息。
  • "sign":該金鑰可用於簽名訊息。
  • "verify":該金鑰可用於驗證簽名。
  • "deriveKey":該金鑰可用於派生新金鑰
  • "deriveBits":該金鑰可用於派生位
  • "wrapKey":該金鑰可用於包裝金鑰
  • "unwrapKey":該金鑰可用於解包金鑰

示例

js
const rawKey = window.crypto.getRandomValues(new Uint8Array(16));

// Import an AES secret key from an ArrayBuffer containing the raw bytes.
// Takes an ArrayBuffer string containing the bytes, and returns a Promise
// that will resolve to a CryptoKey representing the secret key.
function importSecretKey(rawKey) {
  return window.crypto.subtle.importKey("raw", rawKey, "AES-GCM", true, [
    "encrypt",
    "decrypt",
  ]);
}

const key = importSecretKey(rawKey);
console.log(
  `The following usages are reported for this key: ${key.usages.toString()}`,
);

規範

規範
Web 加密級別 2
# dom-cryptokey-usages

瀏覽器相容性