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暗号化の出版物を見てきましたが、暗号化キー管理ワークショップの最近のメモを除けば、実際に実装可能なスキームや標準の点でそれほど多くはないようです。
私がやろうとしていることに関しては、そうではありません:
- パスワードとソルトを認証用の一方向ハッシュとして保存し、
- データ暗号化に強力なシンメティックアルゴリズムを選択し、
- そもそも個人データを保存する必要はありません。
- 物理的セキュリティ、データベースセキュリティ、ドラゴン、ウィザードなど、他のメカニズムによるキー管理の必要性を回避します。
これらはすべて有効な懸念事項ですが、この場合は答えではありません。私の要件の要点は、ユーザーごとの機密データを保存および取得するための別のSO質問.Netデザインパターンにありますが、それはすべてキー管理に帰着するため、このより洗練された質問です。