AWS Encryption SDK的內文額外的驗證資料 (AAD) 參考 - AWS Encryption SDK

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Encryption SDK的內文額外的驗證資料 (AAD) 參考

本頁面上提供的參考可讓您建置自己的並與 AWS Encryption SDK 相容的加密儲存庫。如果您不是自己建置相容的加密儲存庫,可能不需要此資訊。

若要在其中一個支援的程式設計語言AWS Encryption SDK中使用 ,請參閱 程式設計語言

如需定義適當AWS Encryption SDK實作元素的規格,請參閱 GitHub 中的AWS Encryption SDK規格

您必須為每個密碼編譯操作,將額外的驗證資料 (AAD) 提供給 AES-GCM 演算法。對於具框架和無框架內文資料都是如此。如需有關 AAD 及其在 Galois/計數器模式 (GCM) 中的用法的詳細資訊,請參閱區塊加密操作模式的建議:Galois/計數器模式 (GCM) 和 GMAC

下表說明內文 AAD 的組成欄位。位元組依顯示順序附加。

內文 AAD 結構
欄位 長度 (以位元組為單位)
Message ID 16
Body AAD Content 變數. 請參閱下列清單中的內文 AAD 內容
Sequence Number 4
Content Length 8
訊息 ID

在訊息標頭中設定的相同 Message ID 值。

內文 AAD 內容

由所使用內文資料類型決定的 UTF-8 編碼值。

對於無框架資料,請使用值 AWSKMSEncryptionClient Single Block

對於具框架資料中的一般框架,請使用值 AWSKMSEncryptionClient Frame

對於具框架資料中的最終框架,請使用值 AWSKMSEncryptionClient Final Frame

序號

4 位元組值,解譯為 32 位元的無正負號整數。

對於具框架資料,這是框架序號。

對於無框架資料,請使用值 1,在十六進位表示法中編碼為 4 位元組 00 00 00 01

內容長度

提供給演算法進行加密的純文字資料長度,以位元組為單位。它是 8 位元組值,並解譯為 64 位元的無正負號整數。