Cloud Key Management Service の概要

Cloud Key Management Service(Cloud KMS)を使用すると、互換性のある Google Cloud サービスと独自のアプリケーションで使用する暗号鍵を作成し、管理できます。Cloud KMS を使用すると、次のことができます。

  • ソフトウェアまたはハードウェアの鍵を生成するか、既存の鍵を Cloud KMS にインポートします。または、互換性のある外部鍵管理(EKM)システムで外部鍵をリンクします。

  • Google Cloud プロダクトで CMEK 統合を使用して、顧客管理の暗号鍵(CMEK)を使用します。CMEK 統合では、CMEK 鍵を使用してデータ暗号鍵(DEK)を暗号化または「ラップ」します。DEK を鍵暗号鍵(KEK)でラップすることは、エンベロープ暗号化と呼ばれます。

  • 暗号化と復号のオペレーションには Cloud KMS 鍵を使用します。たとえば、Cloud KMS API またはクライアント ライブラリを使用してクライアント側の暗号化で Cloud KMS 鍵を使用できます。

  • Cloud KMS 鍵を使用して、デジタル署名またはメッセージ認証コード(MAC)署名を作成または検証します。

ニーズに合った暗号化を選択する

次の表で、各ユースケースのニーズに最適な暗号化タイプを特定できます。ニーズに最適なソリューションは、複数の暗号化方法の組み合わせである場合があります。たとえば、最も機密性の低いデータにはソフトウェア鍵を使用し、最も機密性の高いデータにはハードウェア鍵または外部鍵を使用することが考えられます。このセクションで説明する暗号化オプションの詳細については、このページの Google Cloud でのデータの保護をご覧ください。

暗号化のタイプ コスト 互換性のあるサービス 機能
Google Cloud のデフォルトの暗号化 含まれています 顧客データを保存するすべての Google Cloud サービス
  • 設定は必要ありません。
  • Google Cloud サービスに保存されている顧客データを自動的に暗号化します。
  • 鍵を自動ローテーションしデータを再暗号化します。
  • AES-256 を使用する暗号化をサポートします。
  • FIPS 140-2 レベル 1 検証済み。
顧客管理の暗号鍵 - ソフトウェア
(Cloud KMS 鍵)
低 - 鍵バージョンあたり $0.06 30 種類以上のサービス
顧客管理の暗号鍵 - ハードウェア
(Cloud HSM 鍵)
中: 鍵バージョンあたり月額 $1.00~$2.50 30 種類以上のサービス
顧客管理の暗号鍵 - 外部
(Cloud EKM 鍵)
高 - 鍵バージョンごとに月額 $3.00 20 種類以上のサービス
  • IAM のロールと権限は、ユーザーが管理します。鍵バージョンの有効化、無効化、破棄を行います。
  • 鍵が Google に送信されることはありません。
  • 鍵マテリアルは、互換性のある外部鍵管理(EKM)プロバイダにあります。
  • 互換性のある Google Cloud サービスは、インターネットまたは Virtual Private Cloud(VPC)を介して EKM プロバイダに接続します。
  • 暗号化と復号に対して対称鍵をサポートします。
  • 鍵は、Cloud EKM や EKM プロバイダと連携して手動でローテーションしてください。
  • EKM に応じて、FIPS 140-2 レベル 2 または FIPS 140-2 レベル 3 について検証済みです。
Cloud KMS 鍵を使用したクライアントサイド暗号化 アクティブな鍵バージョンのコストは、鍵の保護レベルによって異なります。 アプリケーションでクライアント ライブラリを使用する
  • 鍵の自動ローテーションのスケジュールを制御します。IAM のロールと権限。鍵バージョンの有効化、無効化、破棄を行います。
  • 暗号化、復号、署名、署名の検証に対称鍵と非対称鍵をサポートします。
  • 機能は鍵の保護レベルによって異なります。
顧客指定の暗号鍵 Compute Engine または Cloud Storage に関連する費用が増える場合があります
  • 必要に応じて鍵マテリアルを指定します。
  • 鍵マテリアルはメモリ内に存在します。Google が鍵をサーバー上に永続的に保存することはありません。
Confidential Computing Confidential VMs ごとの追加費用。ログ使用量と関連費用が増加する可能性があります
  • 機密データやワークロードを処理する VM に対して、使用中データの暗号化を実施します。
  • 鍵には Google はアクセスできません。

Google Cloud でのデータの保護

Google Cloud のデフォルトの暗号化

デフォルトでは、Google Cloud の保存データは、Google の内部鍵管理サービスであるキーストアの鍵によって保護されます。キーストアの鍵は Google によって自動的に管理されるため、ユーザーによる構成は不要です。ほとんどのサービスでは、鍵は自動的にローテーションされます。キーストアは、メインの鍵バージョンと一部の古い鍵バージョンをサポートしています。メインの鍵バージョンは、新しいデータ暗号鍵の暗号化に使用されます。古い鍵バージョンを使用して、既存のデータ暗号鍵を復号することもできます。

このデフォルトの暗号化では、FIPS 140-2 レベル 1 に準拠していることが検証された暗号モジュールが使用されます。より高いレベルの保護に関する特定の要件がない場合、デフォルトの暗号化を使用すると、追加コストなしでニーズに対応できます。

顧客管理の暗号鍵(CMEK)

より高いレベルの制御または保護が必要なユースケースでは、互換性のあるサービスで顧客管理の暗号鍵を使用できます。CMEK 統合で Cloud KMS 鍵を使用する場合、組織のポリシーを使用して、ポリシーの指定に従って CMEK 鍵が使用されるようにできます。たとえば、互換性のある Google Cloud リソースが Cloud KMS 鍵を暗号化に使用するように組織のポリシーを設定できます。組織のポリシーでは、鍵リソースが存在するプロジェクトを指定することもできます。

提供される機能と保護レベルは、鍵の保護レベルによって異なります。

  • ソフトウェア鍵 - Cloud KMS でソフトウェア鍵を生成し、すべての Google Cloud のロケーションで使用できます。自動ローテーションでは対称鍵、手動ローテーションでは非対称鍵を作成できます。顧客管理のソフトウェア鍵は、FIPS 140-2 レベル 1 検証済みのソフトウェア暗号モジュールを使用します。また、ローテーション期間、Identity and Access Management(IAM)のロールと権限、鍵を管理する組織のポリシーも制御できます。30 個を超える互換性のある Google Cloud リソースでソフトウェア鍵を使用できます。

  • インポートされたソフトウェア鍵 - Cloud KMS で使用するために別の場所で作成したソフトウェア鍵をインポートできます。新しい鍵バージョンをインポートして、インポートした鍵を手動でローテーションできます。IAM のロールと権限、組織のポリシーを使用して、インポートした鍵の使用を管理できます。

  • ハードウェア鍵と Cloud HSM - FIPS 140-2 レベル 3 ハードウェア セキュリティ モジュール(HSM)のクラスタでハードウェア鍵を生成できます。ユーザーは、ローテーション期間、IAM のロールと権限、鍵を管理する組織のポリシーを制御できます。Cloud HSM を使用して HSM 鍵を作成すると、HSM クラスタが Google によって管理されるため、ユーザーが管理する必要はありません。HSM 鍵は、30 を超える互換性のある Google Cloud リソース(ソフトウェア鍵をサポートする同じサービス)で使用できます。最高レベルのセキュリティ コンプライアンスを実現するには、ハードウェア鍵を使用します。

  • 外部鍵と Cloud EKM - 外部鍵マネージャー(EKM)にある鍵を使用できます。Cloud EKM では、サポートされる鍵マネージャー内の鍵を使用して、Google Cloud リソースを保護できます。EKM には、インターネット経由または Virtual Private Cloud(VPC)経由で接続できます。ソフトウェア鍵またはハードウェア鍵をサポートする一部の Google Cloud サービスは、Cloud EKM 鍵をサポートしていません。

Cloud KMS キー

カスタム アプリケーションでは、Cloud KMS クライアント ライブラリまたは Cloud KMS API を使用して Cloud KMS 鍵を使用できます。クライアント ライブラリと API を使用すると、データの暗号化と復号、データの署名、署名の検証を行うことができます。

顧客指定の暗号鍵(CSEK)

Cloud StorageCompute Engine は、顧客指定の暗号鍵(CSEK)を使用できます。顧客指定の暗号鍵を使用して、鍵マテリアルを保存し、必要に応じて Cloud Storage または Compute Engine に提供します。Google では、CSEK を保存することはありません。

Confidential Computing

Compute Engine、GKE、Dataproc では、Confidential Computing プラットフォームを使用して使用中のデータを暗号化できます。Confidential Computing により、処理中であっても、データの機密性と暗号化が確保されます。