49

PCI DSSセキュリティ標準に準拠するキー管理スキームを実装するスキームの実践的な経験またはリファレンスを持っている人はいますか?

PCI DSSに準拠している企業の数を考えると、明らかにかなりの数の実装がありますが、それらの詳細を見つけるのは困難です。プライベートデータの保存に取り掛かると、通常、どの暗号化アルゴリズムを使用するかについての議論は停止します。その後、通常、秘密鍵を適切に保存することについての声明がありますが、それを行うための実際的な方法や、定期的に鍵を変更したり、アプリケーションに鍵を提供したりすることなどについての議論はありません。

特に、PCIDSS規格のセクション3.5および3.6の要件に関心があります。

3.5.2暗号化キーを可能な限り少ない場所とフォームに安全に保管します。

3.6.aカード会員データの暗号化に使用されるキーのキー管理手順の存在を確認します。注:キー管理に関する多数の業界標準は、 http://csrc.nist.govにあるNISTを含むさまざまなリソースから入手できます。

3.6.4少なくとも年に一度、定期的な鍵の変更を要求するように鍵管理手順が実装されていることを確認します。

PCI DSS要件ドキュメントが示唆しているように、 NIST暗号化の出版物を見てきましたが、暗号化キー管理ワークショップの最近のメモを除けば、実際に実装可能なスキームや標準の点でそれほど多くはないようです。

私がやろうとしていることに関しては、そうではありません:

  1. パスワードとソルトを認証用の一方向ハッシュとして保存し、
  2. データ暗号化に強力なシンメティックアルゴリズムを選択し、
  3. そもそも個人データを保存する必要はありません。
  4. 物理的セキュリティ、データベースセキュリティ、ドラゴン、ウィザードなど、他のメカニズムによるキー管理の必要性を回避します。

これらはすべて有効な懸念事項ですが、この場合は答えではありません。私の要件の要点は、ユーザーごとの機密データを保存および取得するための別のSO質問.Netデザインパターンにありますが、それはすべてキー管理に帰着するため、このより洗練された質問です。

4

2 に答える 2

36

私はあなたが経験している痛みに精通しています。PCIコンプライアンスに向けて古いEFTシステムを更新するのに苦労しました。キー管理は確かに(私のソフトウェアの観点から)最も困難な部分でした。

また、Martinが投稿したNISTの鍵管理に関する推奨事項に遭遇し、具体的な例がないことに非常に不満を感じたと思います。

ANSI X9.17-金融機関の鍵管理は、PCI-DSSを使用する場合、おそらく最もニーズに関連しています。それを読んで頑張ってください、しかし、ドキュメントは私が確かに読むのに苦労したことを私が知っているTLAの膨大なコレクションです。(X9.17は毎年更新され、最新バージョンは現在:NIST SP800-57Pt。1Rev.4

欲求不満が絶望に変わったとき、私は架空の物語である電子マネーミルに出くわしました。第17章では、X9.17について説明し、理解に役立つ場合があります。

このすべての参考資料から、監査人が満足する鍵管理システムを設計しました。設計ドキュメントはかなり長いですが、要約すると、データ暗号化キーはキー暗号化キーで保護され、キー暗号化キーは物理的に別のボックスに保存され、それ自体がマスターキーで保護されます。

私の実装は、WindowsボックスでKeyServerアプリケーションを実行することでした。このアプリケーションを使用するには、2つの別々の「キーサーバーマスターキー」を入力する必要がありました。これらのキーは、キーサーバーの管理者だけが知っています。これらのキーは一緒に排他的論理和されてマスターキーを生成します。マスターキーは、アプリケーションの実行中は保護されたメモリにのみ保存されます。アプリケーションは、暗号化された強力なキー暗号化キーを自動的に生成できます。これは、マスターキーを使用して暗号化された形式で保存されます。

暗号化が必要なアプリケーションは、キーサーバーにキー暗号化キーを要求します。KEKは、アプリケーションがデータ暗号化キーを暗号化/復号化するために使用します。データ暗号化キーは、アプリケーションデータとともに安全に保存できます。

幸運を。あなたもそれが面白い挑戦だと思うことを願っています!

于 2009-10-18T10:54:00.443 に答える
7

NIST SP 800-57、キー管理の推奨事項を見たことがありますか?

于 2009-10-18T00:26:28.087 に答える