キーリングの互換性 - AWS Encryption SDK

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

キーリングの互換性

異なる言語の実装は、AWS Encryption SDKアーキテクチャの違いと言語による制約はありますが、完全に互換性があります。ある言語の実装によってデータを暗号化し、それを他の言語の実装で復号することができます。ただし、データキーの暗号化と復号には、同じラッピングキーまたは対応するラッピングキーを使用する必要があります。言語による制約については、各言語の実装についてのトピック (AWS Encryption SDK for JavaScript の「AWS Encryption SDK for JavaScript の互換性」のトピックなど) を参照してください。

暗号化キーリングに関するさまざまな要件

In (イン)AWS Encryption SDK言語実装以外の言語実装AWS Encryption SDK for Cでは、暗号化キーリング(またはマルチキーリング)またはマスターキープロバイダのラップキーはすべて、データキーを暗号化できる必要があります。ラッピングキーが暗号化に失敗すると、encrypt メソッドは失敗します。その結果、発信者は必要なアクセス許可キーリングのすべてのキーです。探索キーリングを使用してデータを単独で、またはマルチキーリングで暗号化すると、暗号化操作は失敗します。

例外は、AWS Encryption SDK for Cで、暗号化操作では標準の検出キーリングは無視されますが、マルチリージョン検出キーリングを単独またはマルチキーリングで指定すると失敗します。

互換性があるキーリングおよびマスターキープロバイダー

次の表は、使用するキーリングと互換性があるマスターキーおよびマスターキープロバイダーを示しています。AWS Encryption SDK消耗品。言語の制約によるマイナーな非互換性については、言語実装に関するトピックで説明されています。

キーリング: マスターキープロバイダー:
AWS KMSキーリング

KMsMasterKey (Java)

kmsMasterKeyProvider (Java)

KMsMasterKey (Python)

kmsMasterKeyProvider (Python)

注記

-AWS Encryption SDK for PythonそしてAWS Encryption SDK for Javaと同等のマスターキーまたはマスターキープロバイダーを含めないでください。AWS KMSリージョン検出キーリング

Raw AES キーリング

対称暗号化キーと一緒に使用する場合:

JceMasterKey (Java)

RawMasterKey (Python)

Raw RSA キーリング

非対称暗号化キーと一緒に使用する場合:

JceMasterKey (Java)

RawMasterKey (Python)

注記

-AWS Encryption SDKは非対称をサポートしていませんAWS KMSキー。