CryptoKey: usages プロパティ

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

usagesCryptoKey インターフェイスの読み取り専用プロパティで、そのキーで何ができるかを示します。

以下のリストにある文字列の配列 (Array) です。

  • "encrypt": このキーはメッセージの暗号化に使うことができます。
  • "decrypt": このキーはメッセージの復号に使うことができます。
  • "sign": このキーはメッセージの署名に使うことができます。
  • "verify": このキーは署名の検証に使うことができます。
  • "deriveKey": このキーは新しいキーの導出に使うことができます。
  • "deriveBits": このキーはビット列の導出に使うことができます。
  • "wrapKey": このキーはキーのラップに使うことができます。
  • "unwrapKey": このキーはキーのアンラップに使うことができます。

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

// 生のバイト列を格納する ArrayBuffer から AES 秘密鍵をインポートする
// バイト列を格納する ArrayBuffer 文字列を引数にとり、
// 秘密鍵を表す CryptoKey に解決するプロミスを返す
function importSecretKey(rawKey) {
  return window.crypto.subtle.importKey("raw", rawKey, "AES-GCM", true, [
    "encrypt",
    "decrypt",
  ]);
}

const key = importSecretKey(rawKey);
console.log(`このキーの使い方は ${key.usages.toString()} です。`);

仕様書

Specification
Web Cryptography API
# dom-cryptokey-usages

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
usages

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support