すべてのプロダクト
Search
ドキュメントセンター

Key Management Service:キー管理の概要

最終更新日:Jan 17, 2025

キー管理は、キー管理サービス (KMS) のコア機能です。 この機能により、ソフトウェアで保護されたキー、ハードウェアで保護されたキー、およびデフォルトのキーをライフサイクル全体で管理および保存できます。 この機能では、クラウドネイティブAPI操作に基づいてデータを暗号化および署名することもできます。 このトピックでは、KMSでサポートされているキータイプと暗号化API操作について説明します。

キータイプ

KMSは、ソフトウェアで保護されたキー、ハードウェアで保護されたキー、デフォルトキー、外部キーを提供し、ビジネス、セキュリティ、コンプライアンスの要件を満たします。 次の表に、キーの種類を示します。

説明

デフォルトキーを使用する場合、KMSインスタンスを購入する必要はありません。 ただし、ソフトウェア保護キー、ハードウェア保護キー、または外部キーを使用する場合は、KMSインスタンスの購入が必要です。 インスタンスの機能の違いについては、「インスタンスの選択」をご参照ください。

キータイプ

シナリオ

サポートされる操作

アルゴリズム

キー仕様

説明

デフォルトキー

デフォルトキーは、KMSと統合されているAlibaba Cloudサービスのサーバー側暗号化に使用されます。 詳細については、「KMSとの統合」をご参照ください。

データ暗号化とデータ解読のみがサポートされています。

AES

Aliyun_AES_256

デフォルトキーには、次のいずれかのキーを指定できます。

  • サービスキー: サービスキーはAlibaba Cloudサービスによって作成および管理されます。

  • CMK: カスタマーマスターキー (CMK) タイプのデフォルトキーは、KMSで作成および管理するキーです。 各リージョンでCMKタイプのデフォルトキーを1つだけ作成できます。 キーマテリアルをインポートするか、KMSによって生成されたキーマテリアルを使用して、CMKタイプのデフォルトキーを作成できます。

ソフトウェア保護されたキー

  • ソフトウェアで保護されたキーは、自己管理アプリケーションの暗号ソリューションに使用されます。

    たとえば、データを暗号化または復号化するためのAES (Advanced Encryption Standard) キーを作成できます。 Rivest-Shamir-Adleman (RSA) キーを作成して、デジタル署名を計算および検証することもできます。

  • ソフトウェアで保護された鍵は、KMSと統合されたAlibaba Cloudサービスのサーバー側暗号化に使用されます。 詳細については、「KMSとの統合」をご参照ください。

データ暗号化、データ復号化、署名と検証がサポートされています。

AES、RSA、および楕円曲線暗号 (ECC)

  • 対称キー仕様: Aliyun_AES_256

  • 非対称キーの仕様: RSA_2048、RSA_3072、EC_P256、およびEC_P256K

詳細については、「キータイプとキー仕様」をご参照ください。

KMSによって生成されたキーマテリアルのみを使用して、ソフトウェアで保護されたキーを作成できます。

説明

KMSによって生成されたキーマテリアルをインポートして、ソフトウェアで保護されたキーを作成することはできません。

ハードウェア保護キー

  • ハードウェアで保護されたキーは、自己管理アプリケーションの暗号化ソリューションに使用されます。

    たとえば、

    AESキーを作成してデータを暗号化または復号化する、または RSAまたはECCキーを作成してデジタル署名を計算および検証します。

  • ハードウェアで保護された鍵は、KMSと統合されたAlibaba Cloudサービスのサーバー側暗号化に使用されます。 詳細については、「KMSとの統合」をご参照ください。

データ暗号化、データ復号化、署名と検証がサポートされています。

AES、RSA、およびECC

  • 対称キー仕様: Aliyun_AES_256、Aliyun_AES_192、およびAliyun_AES_128

  • 非対称キー仕様: RSA_2048、RSA_3072、RSA_4096、EC_P256、およびEC_P256K

詳細については、「キータイプとキー仕様」をご参照ください。

KMSによって生成されたキーマテリアルを使用するか、キーマテリアルをインポートして、ハードウェアで保護されたキーを作成し、そのライフサイクル全体を通してキーを管理できます。

重要

ハードウェアで保護されたキーを使用する前に、ハードウェアセキュリティモジュール (HSM) を購入し、クラウドハードウェアセキュリティモジュールでHSMクラスターを設定する必要があります。

HSMがに準拠していることを確認してください 連邦情報処理規格 (FIPS) 140-2レベル3

外部キー

  • 外部キーは、自己管理アプリケーションの暗号化ソリューションに使用されます。

    たとえば、AESキーを作成して

    データを暗号化および復号化します。

  • 外部キーは、KMSと統合されているAlibaba Cloudサービスのサーバー側暗号化に使用されます。 詳細については、「KMSとの統合」をご参照ください。

データ暗号化とデータ解読がサポートされています。

AES

Aliyun_AES_256

キー管理インフラストラクチャ (KMI) でキーを作成し、そのキーをKMSにインポートできます。 KMIで作成されたキーのライフサイクルを管理します。

暗号化API操作

KMSは、従来のHSMや暗号化ソフトウェアライブラリのAPI操作よりも使いやすいクラウドネイティブの暗号化API操作をサポートしています。 さらに、KMSは開発プロセスを加速するために複数のSDKを提供します。 キーを使用してデータを暗号化および復号化する方法の詳細については、「SDKリファレンス」をご参照ください。

キー関連の操作を呼び出す前に、次の情報に注意してください。

  • AdvanceEncrypt、AdvanceDecrypt、AdvanceGenerateDataKey、およびGenerateDataKey: これらの操作を呼び出すには、対称キーを使用する必要があります。

  • 暗号化と復号化: これらの操作を呼び出すには、対称キーまたは非対称キーを使用する必要があります。

  • Sign、Verify、およびGetPublicKey: これらの操作を呼び出すには、非対称キーを使用する必要があります。

API 操作

説明

AdvanceEncrypt

平文を暗号文に暗号化します。

重要
  • 自動キーローテーションが有効になっている場合は、AdvanceEncrypt、AdvanceDecrypt、またはAdvanceGenerateDataKey操作を呼び出して、キーローテーション機能が無効にならないようにします。 自動キーローテーションの詳細については、「キーローテーションの設定」をご参照ください。

  • AdvanceDecrypt操作を呼び出す前に、AdvanceEncrypt操作によって返される暗号文 (CiphertextBlob) と認証データ (Aad) を保存する必要があります。

AdvanceDecrypt

暗号文を平文に復号化します。

AdvanceGenerateDataKey

データキーを生成し、KMSのエンベロープ暗号化を使用してデータを暗号化します。

重要

AdvanceDecrypt操作を呼び出す前に、AdvanceGenerateDataKey操作によって返される暗号文 (CiphertextBlob) と認証データ (Aad) を保存する必要があります。

暗号化

平文を暗号文に暗号化します。

重要

DecryptまたはAdvanceDecrypt操作を呼び出す前に、暗号化操作によって返されるキーID (KeyId) 、暗号文 (CiphertextBlob) 、暗号化アルゴリズム (algorithm) 、初期ベクトル (Iv) 、パディングモード (PaddingMode) 、および認証データ (Aad) を保存する必要があります。

解読

暗号文を平文に復号化します。

GenerateDataKey

データキーを生成し、KMSのエンベロープ暗号化を使用してデータを暗号化します。

サイン

非対称キーを使用して署名を生成します。

重要

署名を検証するには、Verify操作を呼び出します。 また、公開鍵 (GetPublicKey) を取得して、コンピューター上の署名を検証することもできます。

検証

非対称キーを使用して署名を検証します。

GetPublicKey

指定された非対称キーの公開キーを照会します。