鍵カプセル化メカニズム

鍵カプセル化メカニズム(KEM)は、信頼できないチャネルを介して 2 つのパーティ間で共有シークレットを確立するために使用される暗号プロセスです。鍵カプセル化メカニズムには、次の 3 つの主要なアルゴリズムが含まれます。

  • 鍵の生成: 公開鍵と秘密鍵で構成される鍵ペアが生成されます。
  • カプセル化: 公開鍵を使用して、共有シークレットと一致する暗号文を生成します。
  • カプセル化解除: 秘密鍵を使用して、暗号文から共有シークレットを復元します。

鍵カプセル化メカニズムは、鍵交換プロトコルとハイブリッド公開鍵暗号化(HPKE)の基本的な構成要素です。

カプセル化とカプセル化解除のワークフロー

以下では、KEM 鍵ペアを使用してデータをカプセル化およびカプセル化解除するプロセスについて説明します。このワークフローの 2 つの参加者は、送信者と受信者です。送信者は、受信者の公開鍵を使用して暗号テキストと共有シークレットを作成します。受信者は、受信者の秘密鍵を使用して暗号テキストを復号し、共有シークレットを取得します。秘密鍵を知っているユーザーのみが、暗号文をカプセル化解除して元の共有シークレットを取得できます。

  1. 送信者が受信者の公開鍵を取得します。

  2. 送信者は公開鍵を使用してカプセル化ステップを実行し、共有シークレットと対応する暗号テキストを生成します。

  3. 送信者はその暗号テキストを受信者に送信します。

  4. 受信者は、受信者の秘密鍵を使用して暗号テキストをカプセル化解除します。これで、受信者と送信者は同じ共有シークレットを持つことになります。

ポスト量子鍵カプセル化メカニズム(PQ-KEM)

量子コンピュータは、広く使用されている RSA や ECDSA アルゴリズムなどの従来の暗号化アルゴリズムで暗号化されたデータを復号できる可能性があります。これにより、暗号化されたデータが「Store Now, Decrypt Later」(SNDL)攻撃に対して脆弱になる可能性があります。このような攻撃では、攻撃者は従来の暗号化アルゴリズムを使用する現在の暗号化データを収集して保存し、強力な量子コンピュータが利用可能になった後に復号することを目的としています。PQ-KEM は量子攻撃に耐性があるように設計されているため、現在 PQ-KEM で暗号化されたデータは量子時代でも安全に保たれ、現在保存されている情報の将来の復号を防ぐことができます。

Cloud Key Management Service は、NIST が FIPS-203 で標準化した ML-KEM-768 と ML-KEM-1024、および ML-KEM-768 と X25519 を組み合わせたハイブリッド KEM である X-Wing をサポートしています。これらのアルゴリズムのサイズ値(バイト単位)は次のとおりです。

アルゴリズム 公開鍵 暗号テキスト Shared Secret
ML_KEM_768 1184 1088 32
ML_KEM_1024 1568 1568 32
KEM_XWING 1216 1120 32

Cloud KMS KEM の機能

Cloud KMS には、鍵カプセル化メカニズムに関連する次の機能が用意されています。

Cloud KMS 鍵を使用してカプセル化するには、公開鍵を使用して一般公開されている SDK とツールを使用する必要があります。Cloud KMS にはカプセル化機能がありません。