AWS CloudHSM で実現する専用鍵管理 - FIPS 140-2 Level 3 準拠の暗号化

専有の HSM インスタンスで FIPS 140-2 Level 3 準拠の鍵管理を実現する。KMS との使い分けと、KMS カスタムキーストアによる両者の統合を紹介します。

CloudHSM の概要

CloudHSM は専用のハードウェアセキュリティモジュール (HSM) で暗号鍵を管理するサービスです。KMS がマルチテナントの共有 HSM を使用するのに対し、CloudHSM は専有の HSM インスタンスを提供します。FIPS 140-2 Level 3 認証を取得しており、金融、医療、政府機関のコンプライアンス要件に対応します。

KMS との使い分け

KMS は大半のユースケースに適しており、運用負荷が低く、AWS サービスとの統合が豊富です。CloudHSM は FIPS 140-2 Level 3 が必須の場合、鍵を専有 HSM で管理する必要がある場合、PKCS#11 や JCE インターフェースが必要な場合に選択します。KMS カスタムキーストアは両者の利点を組み合わせ、KMS の API と統合性を維持しながら、鍵の保管先を CloudHSM にします。

クラスター設計と高可用性

CloudHSM クラスターは複数の AZ に HSM インスタンスを配置し、鍵の自動同期で高可用性を確保します。最低 2 つの AZ に HSM を配置する構成が推奨され、 1 つの HSM が障害を起こしても別の AZ の HSM で処理を継続します。クライアント SDK はクラスター内の HSM にラウンドロビンでリクエストを分散し、障害時は自動的にフェイルオーバーします。 HSM のバックアップは自動的に暗号化されて S3 に保存され、クラスターの復元やリージョン間のコピーに使用します。 PKCS#11 、 JCE 、 OpenSSL の標準インターフェースでアプリケーションから暗号化操作を実行でき、既存のアプリケーションコードの変更を最小限に抑えられます。 暗号鍵管理のベストプラクティスを網羅的に学ぶなら、技術書 (Amazon)を参照してください。

CloudHSM の料金

CloudHSM は HSM インスタンスの時間課金で、1 インスタンスあたり約 1.60 ドル/時 (約 1,152 ドル/月) です。高可用性構成で 2 AZ に配置すると月額約 2,304 ドルになります。KMS (月額 1 ドル/キー) と比較して大幅に高コストのため、FIPS 140-2 Level 3 の要件や専有 HSM の要件がある場合に限定して使用します。KMS カスタムキーストアで CloudHSM をバックエンドとして使用すると、KMS の API で CloudHSM の鍵を操作でき、既存の KMS 統合を維持しながらコンプライアンス要件を満たせます。

まとめ

CloudHSM は専有のハードウェアセキュリティモジュールで暗号鍵を管理し、FIPS 140-2 Level 3 の厳格なコンプライアンス要件に対応するサービスです。KMS カスタムキーストアで KMS API から CloudHSM の鍵を操作でき、PKCS#11 や JCE の標準インターフェースで既存アプリケーションとの統合も容易です。