ユース・ケース
IBM Cloud® Hyper Protect Crypto Services は、一般的な暗号操作のためのクラウド HSM として使用できるだけでなく、鍵管理サービスとして使用して、IBM Cloud の広範囲の保存データを保護することができます。
クラウドの保存データを広範囲で保護する
IBM Cloud のセキュリティー・アーキテクチャーに組み込まれているため、Hyper Protect Crypto Services を使用すると、クラウドのデータ・サービスやストレージ・サービスの保存データを自分の鍵で暗号化して最高のセキュリティー・レベルを実現することができます。 このサービスは、Key Protect と同じ鍵プロバイダー API を使用しているので、一貫した方法でエンベロープ暗号化とファイル・システム暗号化を適用して各 IBM Cloud サービスを導入できます。
IBM Cloud の Hyper Protect Crypto Services は Keep Your Own Key (KYOK: 自分の鍵の保持) をサポートしているため、暗号鍵を持ち込んで管理および操作することで、より強力に、データをお客様自身が管理および制御することができます。 さらに、暗号鍵が置かれる HSM もお客様が管理します。 Hyper Protect Crypto Services では、機密性が非常に高いデータを管理するために大企業が共同で開発して運用している、実績のあるテクノロジーをフル活用できます。
Hyper Protect Crypto Services で生成および保護される暗号鍵を使用して、アプリケーションにレコード・レベルまたはフィールド・レベルの暗号化を提供すると、データベース管理者などの内部関係者による脅威からデータを保護することができます。
KYOK による Data at Rest 暗号化
鍵はお客様が管理する専用の HSM によって保護されるので、自分のデータにアクセスできるのは自分だけになります。 Hyper Protect Crypto Services の暗号機能は、FIPS 140-2 レベル 4 認定を受けたハードウェア・セキュリティー・モジュールをベースに構築されています。 この Hyper Protect Crypto Services の暗号機能は、新しいワークロードでも既存のワークロードでも活用できます。 暗号鍵の生成および保護のために、IBM Key Protect for IBM Cloud の API が組み込まれています。
Hyper Protect Crypto Services の鍵管理 API を使用してクラウド・アプリケーションを暗号化する方法を示すチュートリアルについては、クラウド・アプリケーションへのエンドツーエンドのセキュリティーの適用および統合データベースに書き込みを行うマイクロサービスの作成を参照してください。
KYOK による VMware イメージの保護
IBM Cloud の VMware® 環境を使用して個人情報を処理および保管する組織には、最高レベルのセキュリティーが必要になります。 Hyper Protect Crypto Services のユーザーは、専用のスロットを独自にセットアップできるので、他の人は誰もアクセスできないことが保証されます。 Hyper Protect Crypto Services と VMware が同じインターフェースと対話することはないので、VMware コンポーネントの Key Management Interoperability Protocol が仲介役となり、VMware 環境での Hyper Protect Crypto Services の鍵の保管および使用を可能にします。
Hyper Protect Crypto Services は、単一テナントのサービスであるため、VMware イメージ用にお客様ごとに専用のハードウェア・セキュリティー・モジュールを管理することができます。 Hyper Protect Crypto Services を使用すると、IBM Cloud の鍵管理サービスのファミリーを、専用ハードウェアによる機密制御が可能な単一テナントのインスタンスに拡張できます。
詳しくは、IBM Cloud Hyper Protect Crypto Services と VMware on IBM Cloud ソリューションの概要についての動画をご覧ください。詳しい手順を示すチュートリアルについては、鍵の管理と配布のための Hyper Protect Crypto Services での KMIP の構成および デモ動画をご覧ください。
PKCS #11 HSM としての Hyper Protect Crypto Services の使用
IBM Cloud Hyper Protect Crypto Services には、PKCS #11 の API が備えられています。 PKCS #11 は Public-Key Cryptography Standards (PKCS) の 1 つとして規定されています。 暗号操作は、クラウド側にある HSM の内部で実行されます。 これによって、暗号鍵が HSM の外部に平文形式で現れることはなく、対応する機密の暗号操作もすべて HSM 境界の内部で処理されるというスキームが実現します。
PKCS #11 API を使用したアプリケーション・レベルの暗号化
Hyper Protect Crypto Services を使用すると、アプリケーション・プログラマーは、暗号化を要求したりアプリケーションのデータに署名したりするアプリケーションを、標準 PKCS #11 の API を使用して設計および開発できます。 つまり、プログラマーが暗号化のエキスパートにならなくても、セキュリティーを実装できます。デジタル署名によってデータの完全性を、また、データの暗号化によってデータの機密性を確保して強化できます。 アプリケーションでは、Hyper Protect Crypto Services の PKCS #11 ライブラリーを使用して暗号操作を実行できます。 この機能を利用して、プライベート・データを扱うデジタル・ワークフローやデジタルのレビュー、承認、署名を行うセキュアで信頼できるアプリケーションを構築すると、ビジネス・プロセスのモダナイズに役立ちます。
PKCS #11 の API を使用すると、クラウド間でアプリケーションを暗号化できます。 PKCS #11 のサポートによって、署名、署名検証、メッセージ認証コード、その他の高度な暗号スキームを含め、あらゆる種類の高度な暗号操作を利用できます。
PKCS #11 API を使用したデータベースの暗号化
Hyper Protect Crypto Services を使用して、透過的データ暗号化 (TDE) による Oracle® Database の暗号化と、Db2 のデフォルト暗号化による IBM Db2® Database の暗号化を行うことができます。
-
TDE を使用すると、データベース・ストレージ・メディア (表スペースやファイルなど) およびバックアップ・メディアの機密データを暗号化できます。透過的データ暗号化は、機密データの暗号化とコンプライアンスを実現し、暗号操作を合理化する機能を提供します。 許可されたユーザーとアプリケーションがデータを使用するときに、データベース・システムがデータの暗号化と復号を自動的かつ透過的に行います。 データベース・ユーザーが TDE を認識する必要はなく、また、データベース・アプリケーションを TDE のために特に調整する必要もありません。
TDE では、TDE マスター暗号化鍵と TDE データ暗号化鍵という 2 階層で構成される鍵階層が使用されます。 TDE データ暗号化鍵がデータの暗号化と復号に使用され、TDE マスター暗号化鍵が TDE データ暗号化鍵の暗号化と復号に使用されます。
図 4. 標準 PKCS #11 の API を使用した透過的データベース暗号化 -
IBM Db2 のデフォルト暗号化を行うと、外部のストレージ・メディアに保管されている鍵データベースのファイルとデータベース・バックアップ・イメージを不適切なアクセスから保護できます。 許可されたユーザーとアプリケーションがデータを使用するときに、データベース・システムがデータの暗号化と復号を自動的に行います。 通常、データベース・ユーザーがデフォルトの暗号化を認識する必要はなく、また、データベース・クライアント・アプリケーションを特に調整する必要もありません。
Db2 のデフォルト暗号化では、2 階層構造の鍵階層が使用されます。つまり、データは、データ暗号化鍵 (DEK) で暗号化されます。 その DEK は、マスター鍵で暗号化され、暗号化された形式でデータベースまたはバックアップ・イメージと一緒に保管されます。 暗号化データベースごと、暗号化バックアップごとに、Db2 は、固有の DEK を生成します。 マスター鍵は、DEK を暗号化するために使用されます。 暗号化データベースごとに、一度に 1 つのマスター鍵が関連付けられます。
図 5. 標準 PKCS #11 の API を使用した IBM Db2 のデフォルト暗号化
PKCS #11 ライブラリーを組み込むと、Hyper Protect Crypto Services で業界標準 PKCS #11 の API を利用できます。 Hyper Protect Crypto Services の PKCS #11 ライブラリーが、Hyper Protect Crypto Services にデータベースを接続して暗号操作を実行します。 データベース・システムは、Hyper Protect Crypto Services の PKCS #11 ライブラリーで、TDE マスター暗号鍵またはマスター鍵を管理するための操作を呼び出せます。 呼び出された Hyper Protect Crypto Services の PKCS #11 ライブラリーが、Hyper Protect Crypto Services インスタンスと対話し、クラウドで TDE マスター暗号化鍵またはマスター鍵を保管および管理するための最高レベルのセキュリティーを提供します。これによって、データ暗号化鍵とデータに最高レベルのセキュリティーが適用されます。
- Hyper Protect Crypto Services で TDE を使用する方法を示すチュートリアルについては、チュートリアル: Hyper Protect Crypto Services の PKCS #11 による Oracle の透過的データベース暗号化を参照してください。
- Hyper Protect Crypto Services で Db2 のデフォルト暗号化を使用する方法を示すチュートリアルについては、Hyper Protect Crypto Services の PKCS #11 による IBM Db2 のデフォルト暗号化を参照してください。
TLS/SSL オフロードによる転送中のデータの保護
Transport Layer Security (TLS) および Secure Sockets Layer (SSL) は、コンピューター・ネットワークを介した通信のセキュリティーを実現するために設計された暗号プロトコルです。TLS/SSL プロトコルは、通信を行う 2 つ以上のコンピューター・アプリケーションの間でプライバシーとデータの完全性を確保することを主な目的としています。
Web サーバーのコンテキストでは、TLS/SSL プロトコルは、Web サイトの真正性を証明することを可能にします。他の誰かが偽装した Web サイトでないことを Web サイトのユーザーが確認できます。これは、公開鍵と秘密鍵のペアによって実現しています。
Hyper Protect Crypto Services を使用すると、専用の HSM に TLS/SSL の秘密鍵を安全に保管しつつ、Web サーバーに対してセキュアな接続を確立するために TLS ハンドシェーク中に行われる暗号処理の負荷をオフロードすることもできます。このようにして、TLS/SSL 鍵と処理を制御できます。 その結果、セキュリティーが強化され、評判リスクが低下します。
Hyper Protect Crypto Services の HSM に TLS/SSL をオフロードすることで、標準 PKCS #11 の API を使用して、Web、API、モバイルのトランザクションの転送中のデータを保護できます。Hyper Protect Crypto Services によって、他のクラウド・プロキシーと TLS/SSL オフロードを統合できます。
Hyper Protect Crypto Services を使用して鍵を管理しながら SSL ワークロードを NGINX などのロード・バランサーにオフロードする方法のチュートリアルについては、Using IBM Cloud Hyper Protect Crypto Services to offload NGINX TLS を参照してください。
Enterprise PKCS #11 HSM としての Hyper Protect Crypto Services の使用
Hyper Protect Crypto Services には、Enterprise PKCS #11 (EP11) の API が備えられています。 gRPC を使用すると、クラウド・アプリケーションでこの機能を利用することができます。
Enterprise PKCS #11 は、ステートレスな暗号方式のユース・ケースをサポートし、エンタープライズ環境でスケーリングと冗長性を実現します。 資産の保護に関係するユース・ケースでは、機密操作をすべて HSM 境界の内部で実行しながら、暗号サービスの外部で鍵を管理することができます。 Enterprise PKCS #11 は、状態の処理が問題になる場合に使用できます。特に、Enterprise PKCS #11 のステートレスという特性が効果を発揮するエンタープライズ・アプリケーションに使用できます。
クラウド開発者は、アプリケーションから標準インターフェースを使用して暗号操作を行い、データの保全性と機密性を確保できます。 Hyper Protect Crypto Services はクラウド・アプリケーションからクラウド HSM へのセキュア接続をサポートしているので、クラウド HSM を企業が管理してアプリケーション鍵を保護することができます。
ワークロードのクラウドへの移行をサポートするために IBM は一連の新機能の提供を開始しているので、Hyper Protect Crypto Services の暗号機能は、新しいワークロードでも既存のワークロードでも利用できます。Enterprise PKCS#11 over gRPC (GREP11) の導入により、署名、署名検証、メッセージ認証コード、乱数生成など、あらゆる暗号操作を利用できるようになっています。
Golang で GREP11 を使用するためのコード例や JavaScript のコード例が用意されているので、お試しください。
次に行うこと
- Hyper Protect Crypto Services を他の IBM Cloud サービスのルート鍵プロバイダーとして使用できます。 Hyper Protect Crypto Services の統合について詳しくは、サービスの統合を確認してください。
- Hyper Protect Crypto Services を使用して、高度に安全な鍵管理機能で暗号鍵を保護することができます。プログラムで鍵を管理する方法について詳しくは、Hyper Protect Crypto Services 鍵管理 API リファレンス資料を確認してください。
- Hyper Protect Crypto Services のクラウド HSM の関数を使用してデータを暗号化する方法について詳しくは、PKCS #11 の API リファレンスおよび GREP11 の API リファレンス資料を参照してください。