2

キーを AWS Key Management Service にアップロードしました。それを使用して、物事を暗号化し、サービスを使用してそれらを復号化できます。

ただし、KMS に配置したキーを使用して (それが自分のキーであることを証明するため)、バックアップ目的で (KMS が失敗した場合)、Ciphertext blob を復号化できることを保証したいと思います。

KMS が使用する暗号化の形式と方法が見つかりません。

誰でも例を提供できますか (openssl / python など)。

4

1 に答える 1

0

KMS 暗号文ブロブについて私が見つけた唯一の情報は、このドキュメントにあります。23ページの下部から始めて、次のように述べています。

要素が CMK で暗号化されるたびに、結果のオブジェクトは顧客の暗号文になります。暗号文には 2 つのセクションが含まれます。暗号化されていないヘッダー (または平文) 部分は、追加の認証済みデータとして認証済みの暗号化スキームによって保護され、暗号化された部分です。クリアテキスト部分には、HSA バッキング キー識別子 (HBKID) が含まれます。

私はそれ以上のフォーマットの詳細を見つけることができませんでした:

  • 暗号文ブロブのどの部分が暗号化された部分ですか?
  • どの初期化ベクトル (IV) が使用されましたか?
  • 鍵派生関数 (KDF) は使用されましたか?

ただし、KMS が失敗した場合に備えてバックアップする場合は、エンベロープ暗号化を使用すると、データ キーのみをバックアップするだけで十分です。最終的に、これはデータを復号化するために必要な唯一のキーです。もちろん、このようなキー バックアップの保存は、インポートしたキー マテリアルを保存するのと同じように注意して行う必要があります。

于 2016-12-21T13:46:09.100 に答える