本頁面說明如何使用Google Cloud 控制台 Cloud KMS「金鑰管理總覽」中的「後量子密碼編譯 (PQC) 深入分析」圖表,評估非對稱金鑰庫存,並為未來的密碼編譯現代化做好準備。
量子運算的出現,可能對廣泛使用的公開金鑰密碼編譯演算法構成威脅。「PQC insights」(PQC 深入分析) 圖表可協助您找出並盤點傳統非對稱金鑰,提供必要的資訊,以便規劃未來的現代化作業,並確保長期韌性。
對稱式金鑰 (例如用於 ENCRYPT_DECRYPT 的金鑰) 通常可抵禦量子電腦攻擊,因此不包含在這個資訊主頁中。如要進一步瞭解 Cloud KMS 支援的演算法,請參閱「金鑰用途和演算法」。
Wiz 現已加入 Google Cloud,提供密碼編譯資產清單和風險評估,協助您瞭解密碼編譯準備情況,並規劃遷移至後量子演算法。這些功能包含在 Wiz 的雲端和 AI 安全平台中,可與 Cloud KMS 的金鑰管理功能相輔相成。
事前準備
如要取得查看 PQC 洞察資料所需的權限,請要求管理員授予您專案的「Cloud KMS 檢視者」 (roles/cloudkms.viewer) IAM 角色。
- 您也可以直接查詢 Cloud Asset 檢視器。 如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
查看 PQC 洞察
「Asymmetric PQC insights」(非對稱式 PQC 洞察) 圖表會依據非對稱式金鑰使用的演算法類別,提供高階視覺化細目。
前往 Google Cloud 控制台的「Key Management」(金鑰管理) 頁面。
按一下「總覽」分頁標籤,然後前往「非對稱式 PQC 洞察」圖表。
選用步驟:按一下圖表的區隔,即可查看該區隔代表的索引鍵數量。您也可以點選區隔的「查看」,查看「非對稱式 PQC 洞察詳細資料」表格。
這張圖表將鍵分為兩大類:
- 後量子:這類金鑰採用的加密編譯演算法,是專為抵禦未來量子電腦攻擊而打造。
- 傳統:這類金鑰採用傳統非對稱式演算法 (如 RSA 或 ECC),目前可防範傳統攻擊,但容易受到未來量子電腦的攻擊。
圖表進一步依密碼編譯用途和密碼編譯類型細分這些金鑰。
瞭解詳細資料表
本頁表格會列出目前專案中的非對稱金鑰,並提供下列資訊:
- 金鑰名稱:金鑰名稱。按一下名稱,前往該金鑰的「Key Details」(金鑰詳細資料) 頁面。
- 位置:金鑰所在位置。
- 防護等級:金鑰的防護等級。
- 用途:金鑰的加密編譯用途,例如:
ASYMMETRIC_SIGN。 - 密碼編譯類型:指出金鑰使用的演算法是 PQC 還是傳統演算法。
您可以使用表格上方的篩選列,根據上述任一屬性縮小金鑰清單範圍。
評估傳統金鑰,以便日後翻新
您應檢查現有的非對稱金鑰,找出可轉換為後量子替代方案的傳統非對稱演算法。這類金鑰仍可有效防範傳統攻擊。不過,採用後量子演算法有助於確保長期抵禦未來潛在量子威脅的能力。下表列出金鑰用途和演算法,以及各項是否屬於後量子安全。
| 目的 | 演算法 | 密碼學類型 | 後量子替代方案 |
|---|---|---|---|
ASYMMETRIC_SIGN |
EC_SIGN_* |
古典樂 | ASYMMETRIC_SIGN與 PQ_SIGN_* 演算法 |
ASYMMETRIC_SIGN |
RSA_SIGN_* |
古典樂 | ASYMMETRIC_SIGN與 PQ_SIGN_* 演算法 |
ASYMMETRIC_SIGN |
PQ_SIGN_* |
PQC | 後量子安全 |
ASYMMETRIC_DECRYPT |
RSA_DECRYPT_* |
古典樂 | KEY_ENCAPSULATION 演算法 |
KEY_ENCAPSULATION |
全部 | PQC | 後量子安全 |
盡早採用 PQC 標準可帶來下列好處:
- 將
ASYMMETRIC_DECRYPT金鑰替換為KEY_ENCAPSULATION金鑰,有助於保護加密資料,防範「先儲存,後解密」(SNDL) 攻擊。在這類攻擊中,惡意行為人會攔截密文,但無法解密,因此會儲存密文,希望有朝一日能破解加密。 - 將使用
EC_SIGN_*或RSA_SIGN_*演算法的ASYMMETRIC_SIGN金鑰替換為PQ_SIGN_*演算法,可為簽章提供長期不可否認性。
使用 Cloud Asset Inventory 找出金鑰
您可以使用 Cloud Asset Inventory,以程式輔助方式依演算法類型列出及篩選 Cloud KMS 資產。
搜尋整個機構
如要列出使用後量子演算法 (例如
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)'如要列出未使用後量子演算法的非對稱金鑰 (也就是使用傳統演算法的非對稱金鑰),請執行下列指令:
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)'
在專案中搜尋
確認 Google Cloud CLI 指向正確的專案:
gcloud config set project PROJECT_ID如要列出使用後量子演算法 (例如
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)'如要列出未使用後量子演算法的非對稱金鑰 (也就是使用傳統演算法的非對稱金鑰),請執行下列指令:
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 金鑰是例外狀況。如要進一步瞭解不同演算法,請參閱「主要用途和演算法」。