クラウド HSM の紹介-標準プラン
IBM Cloud® Hyper Protect Crypto Services は、FIPS 140-2 レベル 4 認定を受けた、クラウド・ベースのハードウェア・セキュリティー・モジュール (HSM) で構成されています。この HSM には、暗号鍵の管理および暗号操作の実行のために、標準化された API が備えられています。
クラウド HSM とは何ですか?
ハードウェア・セキュリティー・モジュール (HSM) とは、強力な認証のためにデジタル鍵を保護および管理し、暗号処理を提供する物理デバイスです。 HSM は、耐タンパー性のある装置の内部で暗号鍵を安全に管理、保管、および保護して暗号インフラストラクチャーを保護します。
Hyper Protect Crypto Services は、暗号鍵の管理および暗号操作の実行のために、クラウド・ベースの専用の HSM で構成されています。 FIPS 140-2 レベル 4 認定を受けた HSM によって、クラウド業界で最高レベルの暗号セキュリティーを実現しています。 Keep Your Own Key (KYOK) 機能を装備しているので、お客様自身がクラウド HSM を管理できます。そのため、クラウドの管理者を含め、誰もお客様の暗号鍵にアクセスできないことが保証されます。 このようにして、ワークステーションやローカル・サーバーに実際に HSM をデプロイすることなく、ハードウェア・ベースの最高レベルの暗号化を利用することができます。
Hyper Protect Crypto Services クラウド HSM を使用して鍵とデータを保護するには、まず マスター鍵An encryption key that is used to protect a crypto unit. The master key provides full control of the hardware security module and ownership of the root of trust that encrypts the chain keys, including the root key and standard key.をロードして HSM を制御します。 マスター鍵は、鍵をラップする鍵であるため、暗号鍵の階層全体を暗号化する Root of Trust (信頼の基点) になります。 詳しくは、サービス・インスタンスの初期設定を参照してください。
クラウド HSM にアクセスして暗号操作を実行する方法
Hyper Protect Crypto Services には、クラウド HSM で実行される一連の暗号関数が用意されています。 鍵の生成、データの暗号化、署名の検証などの暗号操作を実行できます。 これを行うには、PKCS #11 の API または Enterprise PKCS #11 over gRPC (GREP11) の API のどちらかを使用してクラウド HSM にアクセスします。
暗号操作の実行に対する排他制御を確保するために、Certificate Manager CLI プラグインを使用して、GREP11 または PKCS#11 API 接続の第 2 層の認証を有効にすることができます。 この機能を有効にして、Identity and Access Management (IAM) トークンに加えてさらにアクセス権限制御のレイヤーを EP11 アプリケーションに 追加します。 相互 TLS 接続が確立されて、有効なクライアント証明書を持つ EP11 アプリケーションのみが EP11 操作を実行できるようになります。 TLS 認証を有効にする方法について詳しくは、EP11 接続向け認証の第 2 層の有効化を参照してください。
PKCS #11 の API を使用したクラウド HSM へのアクセス
Public-Key Cryptography Standards(PKCS)#11 は、暗号情報を保持し、暗号操作を実行する HSM などのデバイス用に、プラットフォームに依存しない Cryptoki と呼ばれる API を定義する業界標準です。 Hyper Protect Crypto Services では、PKCS #11 ライブラリーを使用して、この標準 PKCS #11 の API でクラウド HSM にアクセスすることができます。 このライブラリーが、アプリケーションをクラウド HSM に接続して暗号操作を実行してくれます。
PKCS #11 の API がサポートされるので、PKCS #11 標準を使用している既存のアプリケーションを変更する必要はありません。 PKCS #11 ライブラリーが、そのアプリケーションからの PKCS #11 API 要求を受け入れ、リモートからクラウド HSM にアクセスして、対応する暗号関数を実行してくれます。 PKCS #11 の API について詳しくは、PKCS #11 の概要を参照してください。
GREP11 の API を使用したクラウド HSM へのアクセス
PKCS #11 の API に加えて、Enterprise PKCS #11 over gRPC (GREP11) の API を使用して Hyper Protect Crypto Services のクラウド HSM にアクセスすることもできます。 Enterprise PKCS #11(EP11) は、 Hyper Protect Crypto Services クラウド HSM で有効になっている IBMサポートの暗号 API です。 EP11 は、オープン・スタンダードのサポートとセキュリティーの向上を必要としているユーザーのために設計されたものです。 EP11 ライブラリー には、さまざまな汎用暗号関数が用意されており、PKCS #11 API に似たインターフェースが用意されています。 PKCS #11 を使用している既存のアプリケーションは、簡単にマイグレーションして EP11 要件を満たすことができるので、高度なセキュリティーを活用することができます。
Hyper Protect Crypto Services は、 gRPC を利用して、クラウド HSM へのリモート・アプリケーション・アクセスを有効にします。 gRPC は、最新のオープン・ソースのハイパフォーマンス・リモート・プロシージャー・コール (RPC) フレームワークであり、ロード・バランシング、トレース、ヘルス・チェック、および認証のために、データ・センター内およびデータ・センター間でサービスを接続することができます。 gRPC を使用すると、アプリケーションはリモートから Hyper Protect Crypto Services のクラウド HSM にアクセスして EP11 暗号関数を呼び出すことができます。 GREP11 の API について詳しくは、EP11 over gRPC の概要を参照してください。
PKCS #11 および GREP11 の API を使用して、リモート暗号プロシージャー呼び出しを実行できます。また、デフォルトでメッセージ・サイズの制限を適用できます。 最大受信メッセージ・サイズは 64 MB で、出力メッセージ・サイズに制限はありません。
PKCS #11 API と GREP11 API の比較
PKCS #11 API と GREP11 API はどちらも、Hyper Protect Crypto Services のクラウド HSM で有効な EP11 ライブラリーにアクセスして暗号関数を実行します。 以下の図は、クラウド HSM と対話するためのこの 2 つの方法を示しています。
{: caption="図 1. PKCS #11 API または GREP11 API を使用した 暗号操作の実行" caption-side="bottom"}
GREP11 の API と比較すると、標準 PKCS #11 の API の実装のほうが、アプリケーションがポータブルになり、利用できる暗号操作の種類が多くなります。 2 つの方法の主な相違点を、以下の表に示します。
パースペクティブ | PKCS #11 API | GREP11 API |
---|---|---|
インターフェースの実装 | ステートフル・インターフェース。 API 要求の結果は、セッション状態やユーザー・ログイン状態などの暗黙的な状態によって異なります。 ステートフルの場合は、データはホストに保管されます。 | ステートレス・インターフェース。 API 要求の結果は常に同じです。 ステートレスの場合は、データはホストに保管されません。 |
以前のインストール | Hyper Protect Crypto Services のクラウド HSM にアクセスするには、まず PKCS #11 ライブラリーをローカル・ワークステーションにインストールする必要があります。 | Hyper Protect Crypto Services のクラウド HSM にアクセスするために追加のインストールは必要ありません。 |
アプリケーションのマイグレーション | 標準 PKCS #11 の API を使用している既存のアプリケーションを、特に EP11 または gRPC のために変更する必要はありません。 | GREP11 API を使用するには、EP11 の要件と gRPC の仕様に基づいて開発されたアプリケーションである必要があります。 |
認証およびアクセス管理 | PKCS #11 ライブラリーには、認証のために標準的なユーザー・タイプが一式用意されています。 それらのユーザー・タイプを、独立した構成ファイルに定義し、各ユーザー・タイプに、対応する IBM Cloud Identity and Access Management (IAM) の役割を割り当ててアクセス管理を行う必要があります。 詳しくは、PKCS #11 のユーザー・タイプをセットアップするためのベスト・プラクティスを参照してください。 | GREP11 API では、標準的な IAM 役割を使用して、対応するアクセス権限を定義します。 詳しくは、ユーザーのアクセス権限の管理を参照してください。 |
追加の構成ファイル | 必須。 PKCS #11 ライブラリーのデプロイメントを成功させるには、ユーザー役割を含め、すべてのパラメーターをこのファイルに構成する必要があります。 詳しくは、構成ファイルのテンプレートを参照してください。 | 必須ではありません。 Hyper Protect Crypto Services のクラウド HSM の接続に必要なパラメーターは、アプリケーションのコードと一緒にセットアップできます。 |
キーストア | Hyper Protect Crypto Services が提供します。 PKCS #11 の API で生成された鍵は、マスター鍵で保護され、クラウド・データベースに保管されます。 | Hyper Protect Crypto Services には用意されていません。 GREP11 の API で生成された鍵は、ローカル・ワークステーションまたはその他のデバイスに保管する必要があります。 |
サポートされる暗号操作 |
PKCS #11 API は、以下を含め、標準 PKCS #11 のほとんどの関数をサポートしています。
|
GREP11 API は、一般関数およびセッション管理関数をサポートしていません。 以下を含め、EP11 のほとんどの暗号関数をサポートしています。
|