什麼是PGP?

分享
Copied to clipboard!
什麼是PGP?
欣賞這篇文章
00:00 / 00:00

PGP代表了Pretty Good Privacy。是一種加密軟件,旨在為在線通信系統提供隱私性、安全性和身份驗證保護。 Phil Zimmerman是首個PGP程序背後的開發者,如他所述,現如今對隱私的需求不斷增長,該軟件已供人們免費使用。

自1991年被創建以來,市面上已經出現了許多版本的PGP軟件。 1997年,Phil Zimmerman向互聯網工程任務組(IETF)提出了一項關於創建開源PGP標準的建議。該建議馬上被接受,隨後開創了OpenPGP協議,該協議定義了加密密鑰和消息的標準格式。

雖然PGP最初僅用於保護電子郵件和相關附件,現在已應用於各大領域,包括數字簽名,磁盤加密完整性校驗和網絡防護。

PGP軟件版權最初由PGP公司所擁有,該公司後來被Network Associates收購。 2010年,賽門鐵克公司又以3億美元收購了PGP,該商標一直被用於其OpenPGP兼容產品。


工作原理

PGP是首個實現公鑰密碼學的大範圍應用軟件之一。它使用了混合密碼系統架構,使用對稱加密和非對稱加密來實現高級別的安全性

在對內容進行加密的基本過程中,明文(可以被清楚理解的數據)被轉換成密文(不可讀的數據)。但在進行加密之前,大多數PGP系統都會執行數據壓縮。 PGP軟件在傳輸純文本文件之前對其進行壓縮,可以節省磁盤空間和傳輸時間,同時還能夠提高安全性。

在文件被壓縮之後,接下來開始進行實際的加密。在此階段,被壓縮的明文文件使用一次性密鑰進行加密,稱之為會話密鑰。該密鑰是使用對稱加密隨機生成的,並且每次PGP通信會話都具有唯一的會話密鑰。

接下來,使用非對稱加密對會話密鑰(1)本身進行加密:接收者(Bob)將其公鑰(2)提供給消息的發送者(Alice),以便她可以加密會話密鑰。無論二者所處的安全條件如何,該步驟都能夠讓Alice通過互聯網安全地與Bob共享會話密鑰。

什麼是PGP?

會話密鑰的非對稱加密通常使用RSA算法來完成。許多其他的加密系統都使用RSA進行加密,包括被用於保護大多數互聯網應用的傳輸層安全(TLS)協議。

Bob在接收到消息的密文和加密的會話密鑰後,他就可以使用他的私鑰(3)來解密會話密鑰,然後再使用解密後的會話密鑰解密密文,從而獲得明文。

什麼是PGP?

除了能夠進行加密和解密的基本功能外,PGP還支持數字簽名,它至少具有以下三個功能: 

  • 身份驗證:Bob可以驗證郵件的發件人是否的確為Alice。

  • 完整性:Bob可以確定消息未被更改。

  • 不可否認性:在對郵件進行數字簽名後,Alice不能夠否認她沒有發送郵件。


使用案例

PGP最常見的用途之一就是保護電子郵件。受PGP保護的電子郵件將成為一串不可讀的字符(密文),並且只能使用相應的解密密鑰對其解密。工作機制上,與對文本消息進行加密是相同的,並且還有一些軟件應用支持在其他應用程序之上實現PGP功能,從而有效地在不可靠的安全通信中添加加密功能。

雖然PGP主要被用於保護互聯網通信,但它也可以應用於加密各類設備。在本文中,PGP可用於對計算機或移動設備的磁盤分區進行加密。通過加密硬盤,每次系統啟動時都要求用戶提供密碼。


優缺點

由於結合使用對稱和非對稱加密,PGP支持用戶通過互聯網安全地共享信息和加密密鑰。作為混合系統,PGP受益於非對稱加密的安全性和對稱加密的時效性。除了安全性和時效性之外,PGP還能夠提供數字簽名功能,以確保數據的完整性和發件人的真實性。

OpenPGP協議能夠用於標準化的環境中,PGP解決方案現在可由多家公司和組織提供技術支持。但是,所有符合OpenPGP標準的PGP程序都是相互兼容的。這意味著在一個程序中生成的文件和密鑰可以在另一個程序中使用。

缺點方面,對於PGP系統的使用和理解並非易事,尤其是對於技術知識了解很少的用戶。而且,公共密鑰的長度也被認為是非常不便於用戶使用的。

2018年,電子前沿基金會(EFF)發布了名為EFAIL的關鍵性漏洞。 EFAIL使攻擊者可以利用加密電子郵件中的HTML連接來訪問純文本格式的郵件。

然而,自20世紀90年代末以來,PFA社區已經意識到EFAIL所描述的一系列問題,事實上,這些漏洞的產生與電子郵件客戶端的實現方式有關,而與PGP本身無關。因此,儘管產生了令人震驚和誤導性的爆炸性新聞,但PGP加密功能並沒有被破解,它仍然保持著高度的安全性。


總結思想

自1991年被開發以來,PGP一直被用作數據保護的重要工具,現在也廣泛應用於各個領域,為多數通信系統和數字服務提供商提供隱私,安全和認證保護。

雖然2018年EFAIL漏洞的發現引發了對協議安全性的重大擔憂,但其核心技術仍然是健壯且加密的。值得注意的是,不同的PGP實現方式也能夠提供不同級別的安全性。

Loading