TPM、HSM、安全元件的差異:配置位置、用途、金鑰保護、認證比較
三者都是在專用硬體內產生並保管密碼金鑰,不讓私密金鑰離開,而在內部進行簽章與解密的元件。差異在於保護的對象與配置的位置。TPM 在每台個人電腦或伺服器上各有一個,記錄並證明該裝置的開機狀態,保護與裝置綁定的金鑰。HSM 是集中保管組織重要金鑰的專用裝置,位於憑證機構、支付系統與雲端金鑰管理服務的核心,處理大量的簽章與解密。安全元件是放在 IC 卡或智慧型手機中的小型抗竄改晶片,在隨身攜帶的裝置中保護支付與身分驗證的憑證資料。
| 項目 | TPM | HSM | 安全元件 |
|---|---|---|---|
| 配置的位置與形式 | 裝在個人電腦或伺服器主機板上的獨立晶片。也有以 CPU 或 SoC 內的韌體實現者(fTPM) | PCIe 卡、連接網路的專用裝置。也以雲端服務的形式提供 | IC 卡、SIM 卡、裝在智慧型手機或 IoT 裝置電路板上的小型晶片。也有整合進 SoC 的形式 |
| 主要目的 | 記錄並證明該裝置的開機狀態,保護與裝置綁定的金鑰 | 集中保護組織的重要金鑰,受理並處理來自許多系統的簽章與解密請求 | 在隨身攜帶的裝置中,保護支付、身分驗證、電信業者用戶驗證等的憑證資料 |
| 主要使用的裝置與使用者 | 個人電腦、伺服器 | 憑證機構、銀行與支付業者、資料中心與雲端的金鑰管理服務(KMS) | 信用卡、員工證等 IC 卡,SIM、智慧型手機、IoT 裝置 |
| 金鑰的保護方式 | 在 TPM 內部產生金鑰,私密金鑰的部分不以明文離開。也能綁定 PCR 的值,只在開機狀態正確時才交出金鑰(封存) | 在裝置內產生並保管金鑰,應用程式只提出「用這把金鑰簽章」的請求並取得結果。管理使用者的權限與操作記錄 | 將金鑰與憑證資料保管在晶片內,由晶片內的應用程式(applet)進行驗證與簽章 |
| 密碼運算的效能 | 低。大量資料的加密,由 CPU 使用 TPM 交出的金鑰進行 | 高。設計成能連續處理大量的簽章與金鑰操作 | 低。適合短資料的驗證與簽章 |
| 抗竄改性與認證 | 獨立晶片具備抗竄改性。fTPM 依賴主處理器的保護。依產品不同,取得共同準則或 FIPS 140 的認證 | 偵測到有人試圖打開裝置時會清除金鑰。許多產品取得 FIPS 140-3 等標準的認證 | 具備智慧卡等級的抗竄改性,對旁路攻擊與故障注入攻擊的對策也會受到評估。許多產品經過共同準則(ISO/IEC 15408)的評估 |
| 遠端證明 | 核心功能。以無法離開 TPM 的金鑰簽署 PCR 的值(quote),用於遠端證明 | 不是核心功能。部分產品能出具證明,表示金鑰在裝置內產生且無法匯出 | 用來證明金鑰是在晶片內產生,以及晶片是真品 |
| 成本與大小 | 便宜。是個人電腦的零件之一,fTPM 則不需要額外的零件 | 最昂貴也最大。不能停止的用途會使用多台以達成備援 | 最小,可放進卡片與小型裝置。因大量生產,單價便宜 |
| 代表性用法 | 磁碟加密金鑰的封存、量測開機、連上網路前的裝置健康狀態確認 | 憑證機構的簽章金鑰、支付用的金鑰、KMS 的最上層金鑰、軟體程式碼簽章的金鑰 | 非接觸式支付、SIM 與 eSIM 的用戶驗證、電子護照與身分證、IoT 裝置的裝置驗證 |
數值為具代表性的大致參考值,會因世代或產品而異。