web-dev-qa-db-ja.com

HSM間でDUKPT BDKを安全に転送するにはどうすればよいですか?

HSM、たとえばThales Payshield 9000の使用に関するベストプラクティスと機能を理解しようとしています。

具体的には、DUKPTのBDKを1つのHSMから別のHSMに安全に転送したいのですが、それを明確にしたり、解読したりすることはありません。

これを行うことは可能ですか?

  1. HSM B(宛先)に新しいRSAペアを作成する
  2. 公開鍵をエクスポートして転送し、HSM A(ソース)にロードする
  3. 公開鍵を使用してソースでBDKを暗号化し、エクスポートする
  4. その暗号化されたバージョンをHSM Bに転送し、ロードします
  5. 秘密鍵を使用して復号化し、BDKとしてロード

または私は機能を誤解しましたか?

これを行うためのより良い、標準的な方法はありますか?

どうもありがとう

4
Nik

Thalesディストリビューターの営業担当者に話しかけました。

  1. KEKであるゾーンマスターキー(ZMK)を生成します。
  2. 異なるメディアを介して、それを複数のコンポーネントで宛先パーティーに配布します。
  3. そのZMKを宛先HSMにロードします。
  4. ソースHSMは、ZMKを使用して暗号化されたBDKをエクスポートして、宛先に送信できるようになりました。
  5. そして、宛先HSMにロードされ、共有ZMKを使用して復号化されます。

だから私が提案したもののようですが、非対称ではなく対称です。

これは、3つのZMKコンポーネントのカストディアンが共謀することを抑制しません-ZMKをどこかに保持し、後でBDKをエクスポートして復号化できます。しかし、どうやらこれは標準的な方法です。

2
Nik