本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Keyring 相容性
雖然 的不同語言實作 AWS Encryption SDK 有一些架構差異,但它們完全相容,但受限於語言限制。您可以使用一種語言實作來加密資料,並使用任何其他語言實作來解密資料。不過,您必須使用相同或對應的包裝金鑰來加密和解密資料金鑰。如需有關語言限制的資訊,請參閱有關每種語言實作的主題,例如 適用於 JavaScript 的 AWS Encryption SDK 主題適用於 JavaScript 的 AWS Encryption SDK 的相容性。
加密金鑰環的不同需求
在 以外的 AWS Encryption SDK 語言實作中 適用於 C 的 AWS Encryption SDK,加密金鑰 (或多金鑰) 或主要金鑰提供者中的所有包裝金鑰都必須能夠加密資料金鑰。如果任何包裝金鑰無法加密,則加密方法會失敗。因此,呼叫者必須具有金鑰環中所有金鑰的必要許可。如果您使用探索金鑰來加密資料,無論是單獨使用或在多金鑰中,加密操作都會失敗。
例外是 適用於 C 的 AWS Encryption SDK,其中加密操作會忽略標準探索金鑰集,但如果您單獨或在多區域探索金鑰集中指定多區域探索金鑰集,則會失敗。
相容 Keyring 和主金鑰提供者
下表顯示哪些主金鑰和主金鑰提供者與 AWS Encryption SDK 供應的金鑰環相容。任何由於語言限制而導致的輕微不相容,將在語言實作的相關主題中說明。
鍵控: | 主要金鑰提供者: |
---|---|
AWS KMS 鍵控 |
注意適用於 Python 的 AWS Encryption SDK 和 適用於 JAVA 的 AWS Encryption SDK 不包含等同於AWS KMS 區域探索金鑰環 的主金鑰或主金鑰提供者。 |
AWS KMS 階層式鍵控 | 受下列程式設計語言和版本支援:
|
AWS KMS ECDH 鍵控 | 受下列程式設計語言和版本支援:
|
原始AES鍵控 | 搭配對稱加密金鑰使用時: JceMasterKeyRawMasterKey |
原始RSA鍵控 | 搭配非對稱加密金鑰使用時: JceMasterKeyRawMasterKey 注意原始RSA金鑰環不支援非對稱KMS金鑰。如果您想要使用非對稱RSAKMS金鑰, AWS Encryption SDK 適用於 的 4.NETx 版。 支援使用對稱加密 ( |
原始ECDH鍵控 | 受下列程式設計語言和版本支援:
|