金鑰封裝機制

金鑰封裝機制 (KEM) 是一種密碼編譯程序,用於在不受信任的管道上,於兩方之間建立共用密鑰。 金鑰封裝機制包含三種主要演算法:

  • 金鑰產生:產生一組金鑰組,包含公開金鑰和私密金鑰。
  • 封裝:使用公開金鑰產生共用密鑰和相符的密文。
  • 解封裝:使用私密金鑰從密文復原共用密鑰。

金鑰封裝機制是金鑰交換通訊協定和混合式公開金鑰加密 (HPKE) 的基本建構區塊。

封裝和解封裝工作流程

以下說明如何使用 KEM 金鑰組封裝及解封裝資料。這個工作流程有兩位參與者:傳送者和接收者。傳送者會使用接收者的公開金鑰建立密文和共用密鑰,然後接收者會使用自己的私密金鑰解密密文,擷取共用密鑰。只有知道私密金鑰的人,才能解封密文,擷取原始共用密鑰。

  1. 傳送者擷取接收者的公開金鑰。

  2. 傳送者會使用公開金鑰執行封裝步驟,產生共用密鑰和對應的密文。

  3. 傳送者將密文傳送至接收者。

  4. 接收者使用自己的私密金鑰解封密文。收件者和寄件者現在擁有相同的共用密鑰。

後量子金鑰封裝機制 (PQ-KEM)

量子電腦有可能解密由傳統加密演算法 (例如廣泛使用的 RSA 和 ECDSA 演算法) 加密的資料,這類加密資料容易受到「先儲存,後解密」(SNDL) 攻擊。在這種攻擊中,攻擊者會收集目前使用傳統加密演算法的加密資料並儲存,打算在強大的量子電腦問世後解密。PQ-KEM 的設計可抵禦量子攻擊,確保以這類演算法加密的資料即使在量子時代仍安全無虞,防止日後解密目前儲存的資訊。

Cloud Key Management Service 支援 ML-KEM-768 和 ML-KEM-1024 (由 NIST 在 FIPS-203 標準化),以及 X-Wing (結合 ML-KEM-768 和 X25519 的混合 KEM)。這些演算法的大小值 (以位元組為單位) 如下:

演算法 公開金鑰 密文 共用密鑰
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 不提供封裝功能。