使用公鑰加密或 (PKC) 也被稱為不對稱加密,它使用公鑰和私鑰,而不是對稱加密中使用的單一密鑰。使用 PKC 的鑰匙對提供了一組獨特的特性和能力,可以用來解決其他加密技術中的挑戰。這種類型的加密已成為現代計算機安全的重要組成部分,也是新興數字貨幣生態系統中的關鍵元素。


公鑰加密是如何工作的?

在公鑰加密系統中,發送者使用公鑰來加密資訊,而接收者則使用私鑰來解密。由於這兩把鑰匙彼此完全不同,因此可以安全地共享公鑰,而不會影響私鑰的安全性。每一對不對稱鑰匙都是獨一無二的,這確保了使用公鑰加密的訊息只能由擁有相應私鑰的人閱讀。

由於不對稱加密算法生成的鑰匙對與數學有關,因此其主鍵的長度遠長於對稱加密中使用的長度。這個長度通常在 1,024 和 2,048 位之間。這使得通過其公鑰計算私鑰變得極其困難。現今最常用的不對稱加密算法之一被稱為 RSA。在 RSA 計劃中,密鑰是通過乘以兩個數字(通常是兩個大的質數)來生成的。換句話說,標準生成兩把鑰匙(可以共享的公鑰和必須保密的私鑰)。RSA 算法首次於 1977 年由 Rivest、Shamir 和 Adleman 描述(因此,RSA 是每個參與者名字的首字母),並且至今仍是公鑰加密系統的主要組成部分。


PKC 作為加密工具

公鑰加密解決了對稱算法的一個長期問題,即用於加密和解密的密鑰的傳遞。通過不安全的連接傳送此密鑰會使其暴露於外部人員,從而可以閱讀使用共享密鑰加密的任何消息。儘管存在加密技術(如 Diffie-Hellman-Merkle 鑰匙交換協議)來解決這一問題,但它們仍然容易受到攻擊。相反,在公鑰加密中,可以通過任何連接安全地共享用於加密的密鑰。因此,不對稱算法相較於對稱算法提供了更高的保護級別。


在數字簽名中的使用

不對稱加密算法的另一個應用是通過使用數字簽名對數據進行驗證。簡單來說,數字簽名是使用消息中的數據生成的哈希。發送此消息時,接收者可以使用發送者的公鑰驗證簽名,以確保消息的來源並確認其未被篡改。在某些情況下,數字簽名和加密一起使用,因為哈希本身可以作為消息的一部分進行加密。然而,並非所有的數字簽名方案都使用加密技術。


限制

儘管可以用來增強計算機安全性並提供消息完整性的驗證,公鑰加密仍然有一些限制。由於加密和解密所涉及的複雜數學運算,不對稱算法在處理大量數據時可能會相對緩慢。這種類型的加密也在很大程度上依賴於私鑰將保持秘密。如果私鑰不小心被共享或暴露,則使用相應公鑰加密的所有消息的安全性將被破壞。用戶也可能意外丟失其私鑰,這種情況下將無法訪問加密數據。


公鑰加密的應用。

這種類型的加密在許多現代計算機系統中用於保護敏感信息。例如,可以使用公鑰加密技術對電子郵件進行加密,以保持其內容的機密性。安全套接字層協議(SSL)也使用不對稱加密來確保與網站的安全通信。甚至還探索了使用 PKC 系統來提供安全的電子投票環境,允許選民從自己的家用計算機參加選舉。

公鑰加密在區塊鏈和數字貨幣技術中也顯著地發揮作用。當設置新的數字貨幣錢包時,會生成一對密鑰(公鑰和私鑰)。公鑰用於生成地址,並可以安全地與他人共享。另一方面,私鑰用於生成數字簽名並驗證交易,因此必須保密。一旦通過確認數字簽名中的哈希來驗證交易,該交易就可以添加到公共區塊鏈中。這種驗證數字簽名的系統確保只有擁有與數字貨幣錢包相關聯的私鑰的人才能從中提取資金。值得注意的是,用於數字貨幣應用的不對稱零與用於計算機安全目的的不同。例如,比特幣和以太坊使用一種專門的加密技術,稱為橢圓曲線數字簽名算法(ECDSA)來驗證交易。

從計算機安全到加密交易的驗證,公鑰加密在保護現代數字系統中發揮了重要作用。通過配對的公鑰和私鑰,不對稱加密算法解決了對稱零所帶來的基本安全問題。儘管公鑰加密已經使用多年,但仍然不斷發展新的使用和應用,尤其是在區塊鏈和數字貨幣領域。