查看非对称后量子加密 (PQC) 分析洞见

本页介绍了如何在 Google Cloud 控制台的 Cloud KMS 密钥管理概览 中使用后量子加密 (PQC) 分析洞见 图表,以帮助评估非对称密钥清单并为未来的加密现代化改造做好准备。

量子计算的出现对广泛使用的公钥加密算法构成了潜在威胁。PQC 分析洞见 图表可帮助您识别和清点传统非对称密钥,从而提供规划未来现代化改造和确保长期恢复能力所需的可见性。

对称密钥(例如用于 ENCRYPT_DECRYPT 的密钥)通常被认为能够抵御量子计算机攻击,因此不包含在此信息中心内。如需详细了解 Cloud KMS 支持的算法,请参阅 密钥用途和算法

准备工作

如需获得查看 PQC 分析洞见所需的权限,请让您的管理员为您授予项目的Cloud KMS Viewer (roles/cloudkms.viewer) IAM 角色

查看 PQC 分析洞见

非对称 PQC 分析洞见 图表根据非对称密钥使用的算法的分类,以直观的方式呈现非对称密钥的概览。

  1. 在 Google Cloud 控制台中,前往 密钥管理 页面。

    前往 Key Management

  2. 点击概览 标签页,然后前往非对称 PQC 分析洞见 图表。

  3. 可选:点击图表的某个部分,查看其代表的密钥数量。您还可以点击某个部分的查看 ,查看非对称 PQC 分析洞见详情 表。

此图表将密钥分为两个主要组:

  • 后量子 :使用加密算法的密钥,这些算法专为抵御未来的量子计算机攻击而设计。
  • 传统 :使用传统非对称算法(例如 RSA 或 ECC)的密钥,这些算法目前能抵御传统攻击,但容易受到未来量子计算机的攻击。

该图表还会根据密钥的加密用途和加密类型进一步细分这些密钥。

了解详情表

此页面上的表格列出了当前项目中的非对称密钥,并提供以下信息:

  • 密钥名称 :密钥的名称。点击该名称可前往该特定密钥的密钥详情 页面。
  • 位置 :密钥所在的位置。
  • 保护级别 :密钥的保护级别。
  • 用途 :密钥的加密用途,例如 ASYMMETRIC_SIGN
  • 加密类型 :指明密钥使用的是 PQC 算法还是传统算法。

您可以使用表格上方的过滤条件栏,根据这些属性中的任何一个来优化密钥列表。

评估传统密钥以进行未来的现代化改造

您应该检查现有的非对称密钥,找出可以转换为后量子替代方案的传统非对称算法。这些密钥仍然可以有效抵御传统攻击。但是,采用后量子算法有助于确保长期抵御未来潜在的量子威胁。下表列出了密钥用途和算法,以及每种用途和算法是否被认为是后量子安全的。

用途 算法 加密类型 后量子替代方案
ASYMMETRIC_SIGN EC_SIGN_* 传统 使用 PQ_SIGN_* 算法的 ASYMMETRIC_SIGN
ASYMMETRIC_SIGN RSA_SIGN_* 传统 使用 PQ_SIGN_* 算法的 ASYMMETRIC_SIGN
ASYMMETRIC_SIGN PQ_SIGN_* PQC 后量子安全
ASYMMETRIC_DECRYPT RSA_DECRYPT_* 传统 KEY_ENCAPSULATION 算法
KEY_ENCAPSULATION 全部 PQC 后量子安全

尽早采用 PQC 标准而非稍后采用具有以下优势:

  • ASYMMETRIC_DECRYPT 密钥替换为 KEY_ENCAPSULATION 密钥有助于保护加密数据免受“现在收集,日后解密”(HNDL) 攻击,在这种攻击中,作恶方会拦截您的密文,但无法解密,而是存储密文,希望有一天能够破解加密。
  • 将使用 EC_SIGN_*RSA_SIGN_* 算法的 ASYMMETRIC_SIGN 密钥替换为 PQ_SIGN_* 算法,可为您的签名提供长期的不可否认性。

使用 Cloud Asset Inventory 识别密钥

您可以使用 Cloud Asset Inventory 以编程方式按算法类型列出和过滤 Cloud KMS 资产。

在整个组织中搜索

  1. 如需列出使用后量子算法(例如 PQ_SIGN_*ML_KEM_*KEM_XWING)的密钥,请运行以下命令:

    gcloud asset list \
      --organization=ORGANIZATION_ID \
      --asset-types="cloudkms.googleapis.com/CryptoKey" \
      --content-type=resource \
      --filter='(resource.data.purpose = "ASYMMETRIC_SIGN" OR resource.data.purpose = "ASYMMETRIC_DECRYPT" OR resource.data.purpose = "KEY_ENCAPSULATION") AND (resource.data.versionTemplate.algorithm:PQ_SIGN* OR resource.data.versionTemplate.algorithm:ML_KEM* OR resource.data.versionTemplate.algorithm = "KEM_XWING")' \
      --format='table(name.segment(1):label=PROJECT, name.segment(-3):label=KEY_RING, name.segment(-1):label=CRYPTO_KEY, resource.data.purpose:label=PURPOSE, resource.data.versionTemplate.algorithm:label=ALGORITHM)'
    
  2. 如需列出不使用后量子算法的非对称密钥(即使用传统算法的非对称密钥),请运行以下命令:

    gcloud asset list \
      --organization=ORGANIZATION_ID \
      --asset-types="cloudkms.googleapis.com/CryptoKey" \
      --content-type=resource \
      --filter='(resource.data.purpose = "ASYMMETRIC_SIGN" OR resource.data.purpose = "ASYMMETRIC_DECRYPT" OR resource.data.purpose = "KEY_ENCAPSULATION") AND NOT (resource.data.versionTemplate.algorithm:PQ_SIGN* OR resource.data.versionTemplate.algorithm:ML_KEM* OR resource.data.versionTemplate.algorithm = "KEM_XWING")' \
      --format='table(name.segment(1):label=PROJECT, name.segment(-3):label=KEY_RING, name.segment(-1):label=CRYPTO_KEY, resource.data.purpose:label=PURPOSE, resource.data.versionTemplate.algorithm:label=ALGORITHM)'
    

在整个项目中搜索

  1. 确保 Google Cloud CLI 指向正确的项目:

    gcloud config set project PROJECT_ID
    
  2. 如需列出使用后量子算法(例如 PQ_SIGN_*ML_KEM_*KEM_XWING)的密钥,请运行以下命令:

    gcloud asset list \
      --project="$(gcloud config get-value project)" \
      --asset-types="cloudkms.googleapis.com/CryptoKey" \
      --content-type=resource \
      --filter='(resource.data.purpose = "ASYMMETRIC_SIGN" OR resource.data.purpose = "ASYMMETRIC_DECRYPT" OR resource.data.purpose = "KEY_ENCAPSULATION") AND (resource.data.versionTemplate.algorithm:PQ_SIGN* OR resource.data.versionTemplate.algorithm:ML_KEM* OR resource.data.versionTemplate.algorithm = "KEM_XWING")' \
      --format='table(name.segment(-3):label=KEY_RING, name.segment(-1):label=CRYPTO_KEY, resource.data.purpose:label=PURPOSE, resource.data.versionTemplate.algorithm:label=ALGORITHM)'
    
  3. 如需列出不使用后量子算法的非对称密钥(即使用传统算法的非对称密钥),请运行以下命令:

    gcloud asset list \
      --project="$(gcloud config get-value project)" \
      --asset-types="cloudkms.googleapis.com/CryptoKey" \
      --content-type=resource \
      --filter='(resource.data.purpose = "ASYMMETRIC_SIGN" OR resource.data.purpose = "ASYMMETRIC_DECRYPT" OR resource.data.purpose = "KEY_ENCAPSULATION") AND NOT (resource.data.versionTemplate.algorithm:PQ_SIGN* OR resource.data.versionTemplate.algorithm:ML_KEM* OR resource.data.versionTemplate.algorithm = "KEM_XWING")' \
      --format='table(name.segment(-3):label=KEY_RING, name.segment(-1):label=CRYPTO_KEY, resource.data.purpose:label=PURPOSE, resource.data.versionTemplate.algorithm:label=ALGORITHM)'
    

如需降低量子攻击带来的风险,请停用使用传统算法的非对称密钥。

  • 对于非对称解密密钥 :对于用于非对称解密的密钥,您可以通过将非对称加密替换为混合公钥加密 (HPKE) 来实现清单的现代化改造。在 HPKE 中,您可以使用用途为 KEY_ENCAPSULATION 且使用后量子算法(例如 ML_KEM_768)的密钥来共享密钥。如需了解详情,请参阅密钥 封装机制
  • 对于非对称签名密钥 :对于数字签名,您可以通过创建用途为 ASYMMETRIC_SIGN 且使用后量子算法(例如 PQ_SIGN_ML_DSA_65)的新密钥来实现清单的现代化改造。

对称密钥的后量子恢复能力

非对称 PQC 分析洞见 图表重点关注的非对称密钥不同,对称密钥通常被认为能够抵御量子计算机攻击。值得注意的例外是使用 HMAC-SHA1 算法的 MAC 密钥。 如需详细了解不同的算法,请参阅密钥用途和 算法

后续步骤