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

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

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

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

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

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

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

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

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

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

內文 AAD 內容

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

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

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

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

序號

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

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

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

內容長度

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