2つの暗号化キーについて考えてみましょう。
1.Data-Encryption-Key(DEK)
2.Key-Encryption-Key(KEK)
KEKはHSMに安全に保存され、マスターキーを使用して暗号化されます。データ暗号化キーは、KEKを使用して復号化されます。
上記の概念に基づいて、私の疑問は:
暗号化されたDEKを復号化するためにHSMに送信する必要がありますか、またはKEKを復号化してHSMから取得する必要がありますか?
HSMを使用しながら、キーの暗号化と復号化のプロセスフローを知りたいだけです。
役立つリンクも提供します。
HSMでデータの暗号化/復号化が行われている場合、KEKはDEKを復号化して暗号化/復号化操作を実行します。すべてのキー管理、キーストレージ、および暗号化はHSM内で行われます。
データの暗号化/復号化がアプリケーションで行われている場合、HSMとインターフェースしてDEKを抽出し、アプリケーションで暗号化を行うことができます。暗号化操作はアプリケーションサーバーで処理されますが、すべてのキー管理とストレージはHSM内に残ります。
アプリケーションでデータの暗号化/復号化が行われていて、アプリケーションがKEKで保護されたDEKを保持している場合、HSMからKEKを取得し、DEKを復号化して暗号化を行うことができます。すべてのキー管理とストレージはHSMとアプリケーション間で処理され、暗号化操作はアプリケーションサーバーで処理されます。
HSMを使用できますが、要件に最適です。