2016-11-14 2 views
2

AWS Key Management Serviceにキーをアップロードしました。それを使用して、私は物事を暗号化し、サービスを使用してそれらを解読することができます。AWS KMSから顧客提供キーを使用して暗号文ブロブを解読する

しかし、安心しておきたいのですが、私はKMSに入れた鍵(それが私の鍵であることを証明するため)とバックアップ目的のために(KMSが失敗した場合)暗号文BLOBを復号できます。

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

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

+0

チェック:http://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/example-code.html –

+0

ありがとうございます - これは実際に私が望むものを実際に達成するためのよりよい方法です - AWSを使用して1回、サーバ上の公開鍵を使用して1回、鍵を2回暗号化します。ただし、暗号化KWSがサービスを使用せずにランダム文字列+顧客キーをCipherText BLOB(またはそれを逆にする方法)に変換する方法をまだ説明していません。 –

答えて

0

私がKMS暗号文blobについて見つけた唯一の情報は、this documentです。 23ページの下部から、

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

私はこれ以上のフォーマットの仕様を見つけることができなかったではなく、さらに:暗号文ブロブの

  • 部分が暗号化された部分でしょうか?
  • どの初期化ベクトル(IV)を使用しましたか?
  • キー導出関数(KDF)が使用されましたか?

ただし、KMSが失敗した場合にバックアップする場合は、envelope encryptionを使用する場合は、データキーのみをバックアップすれば十分です。結局、これはデータを解読するのに必要な唯一の鍵です。もちろん、そのような鍵のバックアップを保存するには、インポートした鍵の素材を保管するのと同じように注意しなければなりません。

関連する問題