AesGcmParams
AesGcmParams:
object
Web Crypto APIのAesGcmParamsディクショナリーは、AES-GCMアルゴリズムを使用する場合に、アルゴリズムパラメーターとしてSubtleCrypto.encrypt、SubtleCrypto.decrypt、SubtleCrypto.wrapKey、SubtleCrypto.unwrapKeyのいずれかに渡す必要のあるオブジェクトを表します。このパラメーターに適切な値を指定する方法の詳細については、AES-GCMの仕様を参照してください。 NIST SP800-38D、特に入力データに関するセクション5.2.1.1を参照してください。
型宣言
additionalData?
optionaladditionalData:BufferSource
ArrayBuffer、TypedArray、DataViewのいずれか。これには、暗号化されないものの、暗号化されたデータとともに認証される追加データが含まれます。ここでadditionalDataを指定した場合は、対応するSubtleCrypto.decryptの呼び出しで同じデータを指定する必要があります。SubtleCrypto.decrypt呼び出しで指定されたデータが元のデータと一致しない場合、復号化によって例外がスローされます。これにより、関連データを暗号化せずに認証できます。
additionalDataのビット長は2^64-1より小さくなければなりません。
additionalDataプロパティは任意であり、暗号化操作のセキュリティを損なうことなく省略できます。
iv
iv:
BufferSource
初期化ベクトルを持つArrayBuffer、TypedArray、DataViewのいずれか。これは、特定のキーを使用して実行されるすべての暗号化操作に対して一意である必要があります。言い換えると、同じキーを持つIVを再利用してはなりません。AES-GCM仕様では、IVの長さは96ビットにすることが推奨されており、通常は乱数ジェネレーターのビットが含まれています。仕様のセクション8.2には、IVを構築する方法の概要が記載されています。IVは秘密である必要はなく、ただ一意のものであればよいことに注意してください。そのため、たとえば、暗号化されたメッセージと一緒に平文で送信しても問題ありません。
name
name:
string
文字列。これはAES-GCMに設定する必要があります。
tagLength?
optionaltagLength:number
数値。これは、暗号化操作で生成され、対応する復号化での認証に使用される認証タグのビットサイズを決定します。
Web Crypto API仕様では、これには以下のいずれかの値が必要です。 32、64、96、104、112、120、128。一方、AES-GCM仕様では、96、104、112、120、128ビットのいずれかにすることが推奨されていますが、アプリケーションによっては32または64ビットでも許容される場合があります。その他のガイダンスについては、NIST出版の「ブロック暗号運用モードに関する推奨事項」の付録Cを参照してください。
tagLengthは任意であり、指定されていない場合はデフォルトで128になります。
Last updated: 2025年10月2日

