PGP工作原理及其安全體制(1)

來源:互聯網
上載者:User
關鍵字 PGP 金鑰環
現代資訊社會裡,當電子郵件廣受歡迎的同時,其安全性問題也很突出。 實際上,電子郵件的傳遞過程是郵件在網路上反復複製的過程,其網路傳輸路徑不確定,很容易遭到不明身份者的竊取、篡改、冒用甚至惡意破壞,給收發雙方帶來麻煩。 進行資訊加密,保障電子郵件的傳輸安全已經成為廣大E-mail使用者的迫切要求。 PGP的出現與應用很好地解決了電子郵件的安全傳輸問題。 將傳統的對稱性加密與公開金鑰方法結合起來,兼備了兩者的優點。 PGP提供了一種機密性和鑒別的服務,支援1024位的公開金鑰與128位的傳統加密演算法,可以用於軍事目的,完全能夠滿足電子郵件對於安全性能的要求。 1 操作描述PGP的實際操作由五種服務組成:鑒別、機密性、電子郵件的相容性、壓縮、分段和重裝。 1.1 鑒別如圖1。 步驟如下:(1)發送者創建報文;(2)發送者使用SHA-1生成報文的160bit散列代碼(郵件文摘);(3)發送者使用自己的私有金鑰,採用RSA演算法對散列代碼進行加密,串接在報文的前面;(4)接收者使用發送者的公開金鑰, 採用RSA解密和恢復散列代碼;(5)接收者為報文生成新的散列代碼,並與被解密的散列代碼相比較。 如果兩者匹配,則報文作為已鑒別的報文而接收。 另外,簽名是可以分離的。 例如法律合同,需要多方簽名,每個人的簽名是獨立的,因而可以僅應用到文檔上。 否則,簽名將只能遞迴使用,第二個簽名對文檔的第一個簽名進行簽名,依此類推。 498)this.width=498;' onmousewheel = 'javascript:return big(this)' src="/files/uploadimg/20051219/0934380.jpg"> 1.2 機密性在PGP中,每個常規金鑰只使用一次,即對每個報文生成新的128bit的亂數。 為了保護金鑰,使用接收者的公開金鑰組它進行加密。 圖2顯示了這一步驟,描述如下:(1)發送者生成報文和用作該報文工作階段金鑰的128bit亂數;(2)發送者採用CAST-128加密演算法,使用會話金鑰組報文進行加密。 也可使用IDEA或3DES;(3)發送者採用RSA演算法,使用接收者的公開金鑰組工作階段金鑰進行加密,並附加到報文前面;(4)接收者採用RSA演算法,使用自己的私有金鑰解密和恢復工作階段金鑰;(5)接收者使用工作階段金鑰解密報文。 除了使用RSA演算法加密外,PGP還提供了DiffieHellman的變體EIGamal演算法。 1.3 常規加密和公開金鑰結合的好處(1)常規加密和公開金鑰加密相結合使用比直接使用RSA或E1Gamal要快得多。 (2)使用公開金鑰演算法解決了工作階段金鑰分配問題。 (3)由於電子郵件的存儲轉發特性,使用握手協定來保證雙方具有相同工作階段金鑰的方法是不現實的,而使用一次性的常規金鑰加強了已經是很強的常規加密方法。 1.4 機密性與鑒別如圖3所示,對報文可以同時使用兩個服務。 首先為明文生成簽名並附加到報文首部;然後使用CAST-128(或IDEA、3DES)對明文報文和簽名進行加密,再使用RSA(或E1Gamal)對工作階段金鑰進行加密。 在這裡要注意次序,如果先加密再簽名的話,別人可以將簽名去掉後簽上自己的簽名,從而篡改簽名。 498)this.width=498;' onmousewheel = 'javascript:return big(this)' src="/files/uploadimg/20051219/0934381.jpg"> 1.5 電子郵件的相容性當使用PGP時,至少傳輸報文的一部分需要加密,因此部分或全部的結果報文由任意8bit位元組流組成。 但由於很多的電子郵件系統只允許使用由ASCII正文組成的塊,所以PGP提供了radix-64(就是MIME的BASE 64格式)轉換方案,將原始二進位流轉化為可列印的ASCII字元。 1.6 壓縮PGP在加密前進行預壓縮處理,PGP內核使用PKZIP演算法壓縮加密前的明文。 一方面對電子郵件而言,壓縮後再經過radix-64編碼有可能比明文更短,這就節省了網路傳輸的時間和存儲空間;另一方面,明文經過壓縮,實際上相當於經過一次變換,對明文攻擊的抵禦能力更強。 1.7 分段和重裝電子郵件設施經常受限於最大報文長度(50000個)八位組的限制。 分段是在所有其他的處理(包括radix-64轉換)完成後才進行的,因此,工作階段金鑰部分和簽名部分只在第一個報文段的開始位置出現一次。 在接收端,PGP必須剝掉所在的電子郵件首部,並且重新裝配成原來的完整的分組。 2 加密金鑰和金鑰環2.1 工作階段金鑰的生成PGP的工作階段金鑰是個亂數,它是基於ANSI X.917的演算法由亂數產生器產生的。 亂數產生器從使用者敲鍵盤的時間間隔上取得亂數種子。 對於磁片上的randseed.bin檔是採用和郵件同樣強度的加密。 這有效地防止了他人從randseed.bin檔中分析出實際加密金鑰的規律。 2.2 金鑰標誌符允許使用者擁有多個公開/私有金鑰組:(1)不時改變金鑰組;(2)同一時刻,多個金鑰組在不同的通信組交互。 所以使用者和他們的金鑰組之間不存在一一對應關係。 假設A給B發信,B就不知道用哪個私密金鑰和哪個公開金鑰認證。 因此,PGP給每個使用者公開金鑰指定一個金鑰ID,這在使用者ID中可能是唯一的。 它由公開金鑰的最低64bit組成(Kua mod 2 64),這個長度足以使金鑰ID重複概率非常小。 2.3 金鑰環金鑰需要以一種系統化的方法來存儲和組織,以便有效和高效地使用。 PGP在每個結點提供一對資料結構,一個是存儲該結點年月的公開/私有金鑰組(私有金鑰環);另一個是存儲該結點知道的其他所有使用者的公開金鑰。 相應地,這些資料結構被稱為私有金鑰環和公開金鑰環。 3 公開金鑰管理3.1 公開金鑰管理機制一個成熟的加密體系必然要有一個成熟的金鑰管理機制配磁。 公開金鑰體制的提出就是為了解決傳統加密體系的金鑰分配過程不安全、不方便的缺點。 例如網路駭客們常用的手段之一就是「監聽」,通過網路傳送的金鑰很容易被截獲。 對PGP來說,公開金鑰本來就是要公開,就沒有防監聽的問題。 但公開金鑰的發佈仍然可能存在安全性問題,例如公開金鑰被篡改(public key tampering),使得使用公開金鑰與公開金鑰持有人的公開金鑰不一致。 這在公開金鑰密碼體系中是很嚴重的安全問題。 因此必須説明使用者確信使用的公開金鑰是與他通信的對方的公開金鑰。 498)this.width=498;' onmousewheel = 'javascript:return big(this)' src="/files/uploadimg/20051219/0934382.jpg"> 1 2 下一頁>> 內容導航 給力(0票)動心(0票)廢話(0票)專業(0票)標題党(0票)路過(0票) 原文:PGP工作原理及其安全體制(1) 返回網路安全首頁
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.