鍵カプセル化メカニズム(KEM)は、信頼できないチャネルを介して 2 つのパーティ間で共有シークレットを確立するために使用される暗号プロセスです。鍵カプセル化メカニズムには、次の 3 つの主要なアルゴリズムが含まれます。
- 鍵の生成: 公開鍵と秘密鍵で構成される鍵ペアが生成されます。
- カプセル化: 公開鍵を使用して、共有シークレットと一致する暗号テキストを生成します。
- デカプセル化: 秘密鍵を使用して、暗号テキストから共有シークレットを復元します。
鍵カプセル化メカニズムは、鍵交換プロトコルとハイブリッド公開鍵暗号化(HPKE)の基本的なビルディング ブロックです。
カプセル化とカプセル化解除のワークフロー
KEM 鍵ペアを使用してデータのカプセル化とカプセル化解除を行うプロセスは次のとおりです。このワークフローは、送信者と受信者で構成されます。送信者は受信者の公開鍵を使用して暗号テキストと共有シークレットを作成し、受信者は自分の秘密鍵を使用して暗号テキストを復号して共有シークレットを取得します。秘密鍵を知っている人だけが暗号テキストをカプセル化解除して、元の共有シークレットを取得できます。
送信者が受信者の公開鍵を取得します。
送信者は公開鍵を使用してカプセル化ステップを実行し、共有シークレットと対応する暗号テキストを生成します。
送信者はその暗号テキストを受信者に送信します。
受信者は自分の秘密鍵を使用して暗号テキストをカプセル化解除します。これで、受信者と送信者が同じ共有シークレットを持つことになります。
ポスト量子鍵カプセル化メカニズム(PQ-KEM)
量子コンピュータは、広く使用されている RSA や ECDSA などの従来の暗号アルゴリズムで暗号化されたデータを復号できる可能性があるため、このような暗号化されたデータは「今すぐ収集して後で復号する」攻撃に対して脆弱になる可能性があります。このような攻撃では、攻撃者は従来の暗号アルゴリズムを使用する今日の暗号化されたデータを収集して保存し、強力な量子コンピュータが利用可能になった後に復号することを目的としています。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 には、鍵カプセル化メカニズムに関連する次の機能が用意されています。
鍵の目的が
KEY_ENCAPSULATION
で、鍵カプセル化アルゴリズムを使用する KEM 鍵の作成。KEM 鍵の公開鍵の取得。
Cloud KMS 鍵を使用してカプセル化するには、公開鍵を使用して一般公開されている SDK とツールを使用する必要があります。Cloud KMS にはカプセル化機能はありません。