什麼是公鑰和私鑰?
本文解析公鑰與私鑰的核心差異(加密/解密、公開性/保密性),詳解其基於RSA/ECC演算法的生成邏輯、在SSL憑證和數位簽章中的實際應用場景,並說明如何透過公開金鑰基礎設施(PKI)保障資料傳輸安全
公鑰概述
公鑰(Public Key),是公開金鑰的簡稱,是一個用於加密資料的大數值,是公開金鑰加密的金鑰對中的一個金鑰。公鑰由軟體程式生成,也可以由受信任的指定機構(比如憑證授權單位(CA))提供,並透過一個可公開存取的儲存庫或目錄提供給所有人使用。公鑰通常對應一個只有公鑰所有者才知道的私鑰。 公鑰主要用於加密資料和驗證數位簽章。
私鑰概述
私鑰(Private Key),是私有金鑰的簡稱,是在密碼學中用於加密和解密資料的變數,是公鑰/私鑰對中的另一個金鑰。私鑰通常是一長串隨機或偽隨機生成的位元序列,只能與金鑰生成者或有權解密資料的各方共享。 私鑰主要用於解密資料和建立數位簽章。
公鑰和私鑰的區別
| 公鑰 | 私鑰 | |
|---|---|---|
| 可存取性 | 公開 任何人都可以取得 | 保密 僅持有者知悉 |
| 金鑰類型 | 非對稱 | 非對稱 |
| 生成 | 與私鑰一起生成 | 與公鑰一起生成 |
| 基於演算法 | 基於RSA、ECC等加密演算法 | 基於與公鑰相同的演算法 |
| 功能作用 | 加密資料,驗證數位簽章 | 解密資料,建立數位簽章 |
| 安全性要求 | 無特別要求 | 必須高度保密,防止外洩 |
| 儲存位置 | 儲存在數位憑證、外寄電子郵件和可執行檔中 | 儲存在授權裝置和非公開伺服器中 |
| 常見用例 | SSL憑證,區塊鏈 | 安全交易,身分驗證 |