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

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

的內文其他驗證資料 (AAD) 參考 AWS Encryption SDK

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

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

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

您必須為每個密碼編譯操作提供其他已驗證的資料 (AAD) 給 AES- GCM演算法。對於具框架和無框架內文資料都是如此。如需 Galois/Counter 模式 (GCM) 及其使用AAD方式的詳細資訊,請參閱 Block Cipher 模式的操作建議:Galois/Counter 模式 (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 位元的無正負號整數。