語言

什麼是公開金鑰密碼學?

公開金鑰密碼學是支撐當代數位安全大部分領域的技術支柱之一。每當人們使用 HTTPS 存取網站、以電子方式簽署文件、交換受保護的資訊,或使用某些基於區塊鏈的系統時,背後都會涉及密碼學機制,使人們能夠驗證身分並保護通訊,而不要求雙方事先共享一把秘密金鑰。它的主要特徵,是使用一組在數學上彼此相關的金鑰,一把公開金鑰與一把私有金鑰,在同一系統中分別執行不同功能。

共享金鑰的難題

促成這種方法的需求,與密碼學中的一個經典問題密切相關。在對稱金鑰系統中,傳送者與接收者使用同一把秘密金鑰加密及解密資訊。這種方法可以非常有效率,而且至今仍是電腦安全的基礎,但當兩個人沒有安全通道可以交換最初的金鑰時,就會產生重大困難。公開金鑰密碼學改變了這種模式,使一方可以公開一把金鑰,同時不揭露用於解密特定資訊或產生簽章的秘密。

這個系統依賴某些數學性質,使人能生成彼此相關的一對金鑰。公開金鑰可以公開分享,而私有金鑰則必須由其所有者獨家控制。雖然兩者屬於同一個密碼學系統,但知道公開金鑰不應該讓人能在實務上重建私有金鑰。這種不對稱性正是該模型的基本優勢之一,也使人在網際網路這類開放網路上設計安全通訊機制成為可能。

私鑰 保密:絕不分享 單向推導 公鑰 可以公開 單向推導 地址 用於接收資金 數位簽章 用私鑰產生 任何人都能用公鑰驗證
金鑰只能單向推導:由私鑰得到公鑰,再由公鑰得到地址,反之則不行。

加密

當公開金鑰密碼學用於加密時,其一般原則可以簡單說明。某人可以使用接收者的公開金鑰保護要傳給對方的訊息;之後,這些資訊可以透過相應的私有金鑰還原。不過,在某些現代方案中,實際流程更複雜,而且不一定會直接使用非對稱演算法來加密全部內容。常見做法是把公開金鑰密碼學與對大量資料處理效率更高的對稱式演算法結合。此時,非對稱技術用於建立或保護工作階段金鑰,而對稱密碼學則負責加密通訊內容。

這種組合對 TLS 等協定十分重要,而 TLS 正是 HTTPS 連線的技術基礎。當瀏覽器與伺服器建立安全連線時,不需要在整個工作階段中只依賴非對稱密碼學。相反地,在初始協商期間會使用公開金鑰機制來驗證伺服器身分,並建立之後保護通訊所需的密碼學元素,再利用對稱演算法處理實際加密。這樣便能在安全性、身分驗證與計算效率之間取得平衡。

數位簽章

公開金鑰密碼學同樣在數位簽章中發揮決定性作用。在此情況下,其目的不一定是隱藏訊息內容,而是提供有關真實性與完整性的保證。數位簽章由簽署者的私有金鑰產生,第三方則可以使用對應的公開金鑰進行驗證。如果驗證成功,系統便提供密碼學證據,證明該簽章與這把金鑰相關,而且簽署的內容之後沒有遭到修改。這也解釋了它為何在電子交易、數位憑證、簽署軟體以及眾多識別系統中如此重要。

理解這些技術時,一個最重要的面向是:僅有公開金鑰,並不能證明誰真正擁有它。如果某人收到一把金鑰,卻沒有額外機制驗證其來源,就存在攻擊者冒充另一個實體、提供不同金鑰的風險。為了解決這個問題,出現了公開金鑰基礎建設(PKI)。這種模型利用數位憑證與憑證授權機構,透過可驗證的信任結構,把身分與特定公開金鑰建立關聯。

數位憑證在網頁瀏覽中尤其常見。當瀏覽器與受 HTTPS 保護的網域建立連線時,它可以驗證伺服器提供的憑證,並檢查該憑證是否是在系統認可的信任鏈中簽發。這個流程無法消除所有網際網路風險,但提供了一套標準化機制,把數位身分與密碼學材料建立連結。安全性還取決於私有金鑰是否受到保護,以及參與信任鏈的授權機構與裝置是否正常運作等因素。

演算法

過去幾十年間,人們針對不同的數學問題發展出許多演算法。RSA 長期以來都是最知名且部署最廣泛的系統之一,尤其用於簽章與加密。之後,橢圓曲線密碼學變得十分重要,因為它能以較小的金鑰達到很高的安全性。現代建構也包括用於金鑰交換的 X25519,以及專門用於數位簽章的 Ed25519。每個演算法家族都處理特定目的,而且必須放在其所使用的協定中分析,因為安全性並不只取決於單一演算法本身。

在加密貨幣中的應用

在加密貨幣與區塊鏈網路領域,公開金鑰密碼學又增加了一層意義。地址與帳戶通常與成對的密碼學金鑰關聯,而交易則透過數位簽章獲得授權。從操作層面來說,私有金鑰代表產生與特定資金或資產相關的有效簽章之能力。因此,保護私有金鑰是任何數位資產系統中最關鍵的環節之一。遺失私有金鑰可能導致無法存取與其相關的資源,而金鑰洩漏則可能讓其他人產生系統會視為合法的授權。

局限與量子運算

儘管功能強大,公開金鑰密碼學並不是能解決所有威脅的萬靈丹。演算法本身可以安全可靠,但系統仍可能因實作不佳、不適當的金鑰管理、設定錯誤,或針對儲存秘密的裝置發動攻擊而變得脆弱。安全性也取決於正確的亂數產生、憑證更新、防止資訊洩漏,以及使用設計正確的協定等因素。

此外,量子計算的發展也為某些現行密碼學技術帶來新的挑戰。量子演算法中的秀爾演算法,如果未來能在足夠強大且具容錯能力的量子電腦上執行,可能會危及 RSA 以及某些橢圓曲線方案所依賴的部分數學問題。這種可能性推動了後量子密碼學的發展,其目的在於建立能抵抗此類威脅的公開金鑰機制。這項轉換相當複雜,因為它涉及全球大規模使用的數位基礎設施,而且需要提前多年規劃。

公開金鑰密碼學的重要性,最終在於它使人在本質上不安全的網路上建立信任關係成為可能。網際網路讓資訊得以以前所未有的規模交換,但也需要能驗證參與者、保護通訊並證明訊息完整性的機制。非對稱密碼學提供了處理其中大部分問題的數學基礎,此後便成為數位社會中不可見卻不可或缺的基礎設施。

理解它如何運作,也有助於說明電腦安全中的一個基本問題。數位信任不只是把密碼保密,而是建立一套數學與操作系統,用來證明誰能授權某項行動、保護通訊,以及偵測未經授權的修改。公開金鑰可以被分享,但私有金鑰必須維持在控制之下。現今保護通訊、數位服務、電子身分,以及大量金融與技術系統的安全架構,其中相當重要的一部分,都建立在這項區分之上。

參考資料