首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證
華為認證 | Java認證
公務員 | 報關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導游資格
報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護士
會計從業(yè)資格考試會計證) | 經(jīng)濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師
注冊資產(chǎn)評估師 | 高級會計師 | ACCA | 統(tǒng)計師 | 精算師 | 理財規(guī)劃師 | 國際內(nèi)審師
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價師 | 土地估價師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀人 | 投資項目管理師 | 土地登記代理人 | 環(huán)境影響評價師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲
您現(xiàn)在的位置: 考試吧(Exam8.com) > 軟件水平考試 > 復習資料 > 網(wǎng)絡工程師 > 正文

軟件水平考試網(wǎng)絡工程師復習指導:PGP簡介

來源:考試吧Exam8.com) 2006-9-20 13:05:34 考試吧:中國教育培訓第一門戶 模擬考場

  PGP——Pretty Good Privacy, 是一個基于RSA公匙加密體系的郵件加密 軟件,它可以用來對你的郵件加密以防止非授權(quán)者閱讀,還能對你的郵件加上 數(shù)字簽名而使收信人可以確信郵件是你發(fā)來的。它讓你可以安全地和你從未見 過的人們通訊,事先并不需要任何保密的渠道用來傳遞密匙。它采用了審慎的 密匙管理, 一種RSA和傳統(tǒng)加密的雜合算法,用于數(shù)字簽名的郵件文摘算法, 加密前壓縮等,還有一個良好的人機工程設(shè)計。它的功能強大有很快的速度, 而且它的源代碼是免費的。 實際上PGP的功能還不止上面說的:PGP可以用來加密文件,還可以用PGP UUencode 生成 RADIX 64 格式(就是MIME BASE 64格式)的編碼文件。

  PGP 的創(chuàng)始人是美國的 Phil Zimmermann。他的創(chuàng)造性在于他把RSA公匙體 系的方便和傳統(tǒng)加密體系的高速度結(jié)合起來,并且在數(shù)字簽名和密匙認證管理 機制上有巧妙的設(shè)計。因此PGP成為幾乎最流行的公匙加密軟件包。

  PGP是一種供大眾使用的加密軟件。加密是為了安全,隱私權(quán)是一種基本人 權(quán)。在現(xiàn)代社會里,電子郵件和網(wǎng)絡上的文件傳輸已經(jīng)成為生活的一部分,郵 件的安全問題日益突出,大家都知道在Internet上傳輸?shù)臄?shù)據(jù)是不加密的,如 果你自己不保護自己的信息,第三者就會輕易獲得你的隱私。還有一個問題就 是信息認證,要讓收信人確信郵件沒有被第三者篡改,就需要使用數(shù)字簽名技 術(shù)。RSA公匙體系的特點使它非常適合用來滿足上述要求:保密性(Privacy 和認證性(Authentication)。

  RSARivest-Shamir-Adleman)算法是一種基于大數(shù)不可能質(zhì)因數(shù)分解假 設(shè)的公匙體系。簡單地說,其原理就是找兩個很大的質(zhì)數(shù),其中一個向外界公 開(公匙),另一個不告訴任何人(私匙)。這兩個密匙是互補的,用公匙加 密的密文可以用私匙解密,反過來也一樣。假設(shè)甲要寄信給乙,他們互相知道 對方的公匙。甲就用乙的公匙加密郵件寄出,乙收到后就可以用自己的私匙解密出甲的原文。由于沒別人知道乙的私匙所以即使是甲本人也無法解密那封信, 這就解決了信件保密的問題。另一方面由于每個人都知道乙的公匙,他們都可 以給乙發(fā)信,那么乙就無法確信是不是甲的來信。認證的問題就出現(xiàn)了,這時候數(shù)字簽名就有用了。

  在說明數(shù)字簽名前先要解釋一下什么是郵件文摘message digest), 簡單地說就是對一封郵件用某種算法算出一個能體現(xiàn)這封郵件精華的數(shù)來, 一旦郵件有任何改變這個數(shù)都會變化,那么這個數(shù)加上作者的名字(實際上在 作者的密匙里)還有日期等等,就可以作為一個簽名了。 確切地說,PGP是用 一個128位的二進制數(shù)作為郵件文摘的,用來產(chǎn)生它的算法叫MD5message digest 5),MD5的提出者是Ron Rivest,PGP中使用的代碼是由Colin Plumb 編寫的,MD5本身是公用軟件。所以PGP的法律條款中沒有提到它。

  MD5是一種 單向散列算法, 它不像CRC校驗碼,很難找到一份替代的郵件而與原件具有一 樣的精華。 回到數(shù)字簽名上來,甲用自己的私匙將上述的128位的精華加密, 加在郵件上,再用乙的公匙將整個郵件加密。這樣這份密文被乙收到以后,乙 用自己的私匙將郵件解密,得到甲的原文和簽名, 乙的PGP也從原文計算出一 128位的精華來再用甲的公匙解密簽名得到的數(shù)比較, 如果符合就說明 這份郵件確實是甲寄來的。這樣兩個要求都得到了滿足。

[NextPage]
  PGP還可以只簽名而不加密,這適用于公開發(fā)表聲明時, 聲明人為了證實 自己的身份(在網(wǎng)絡上只能如此了),可以用自己的私匙簽名。這樣就可以讓 收件人能確認發(fā)信人的身份,也可以防止發(fā)信人抵賴自己的聲明。這一點在商 業(yè)領(lǐng)域有很大的應用前途,它可以防止發(fā)信人抵賴和信件被途中篡改。 那么為什么說PGP用的是RSA和傳統(tǒng)加密的雜合算法呢? 因為RSA算法計算 量極大,在速度上不適合加密大量數(shù)據(jù),所以PGP實際上用來加密的不是RSA 身,而是采用了一種叫IDEA的傳統(tǒng)加密算法。我先解釋一下什么叫傳統(tǒng)加密, 簡單地說就是用一個密匙加密明文,然后用同樣的密匙解密。這種方法的代表 DESUS Federal Data Encryption Standard),也就是乘法加密,它的主 要缺點就是密匙的傳遞渠道解決不了安全性問題,不適合網(wǎng)絡環(huán)境郵件加密需 要。IDEA是一個有專利的算法, 專利持有者是ETH和一個瑞士公司Ascom-Tech AG。非商業(yè)用途的IDEA實現(xiàn)不用向他們交納費用。IDEA的加(解)密速度比RSA 快得多, 所以實際上PGP是用一個隨機生成密匙(每次加密不同)用IDEA算法 對明文加密,然后用RSA算法對該密匙加密。這樣收件人同樣是用RSA解密出這 個隨機密匙,再用IDEA解密郵件本身。 這樣的鏈式加密就做到了既有RSA體系 的保密性,又有IDEA算法的快捷性。 RSA體系70年代就已提出,但由于速度問 題一直沒有推廣應用,PGP的正好解決了這個問題,PGP的創(chuàng)意有一半就在這一點上了。那么PGP創(chuàng)意的另一半在哪兒呢?下面我再談PGP的密匙管理。

  一個成熟的加密體系必然要有一個成熟的密匙管理機制配套。公匙體制的 提出就是為了解決傳統(tǒng)加密體系的密匙分配難保密的缺點。比如網(wǎng)絡hacker 常用的手段之一就是監(jiān)聽,如果密匙是通過網(wǎng)絡傳送就太危險了。舉個例 子:Novell Netware 的老版本中,用戶的密碼是以明文在線路中傳輸?shù)模?/SPAN> 樣監(jiān)聽者輕易就獲得了他人的密碼。當然 Netware 4.1中數(shù)據(jù)包頭的用戶密碼 現(xiàn)在是加密的了。對PGP來說公匙本來就要公開,就沒有防監(jiān)聽的問題。 但公 匙的發(fā)布中仍然存在安全性問題,例如公匙的被篡改(Public Key Tampering), 這可能是公匙密碼體系中最大的漏洞,因為大多數(shù)新手不能很快發(fā)現(xiàn)這一點。 你必須確信你拿到的公匙屬于它看上去屬于的那個人。為了把這個問題說清楚, 我舉個例子,然后再說如何正確地用PGP堵住這個漏洞。 以你和Alice的通信為例,假設(shè)你想給Alice發(fā)封信,那你必須有Alice的公 匙, 你從BBS上下載了Alice的公匙,并用它加密了信件用BBSEmail功能發(fā)給 Alice。不幸地,你和Alice都不知道,另一個用戶叫Charlie的用戶潛入BBS, 把他自己用Alice的名字生成的密匙對中的公匙替換了Alice的公匙。 那你用來 發(fā)信的公匙就不是Alice的而是Charlie的, 一切看來都很正常,因為你拿到的 公匙的用戶名是“Alice”。于是Charlie就可以用他手中的私匙來解密你給Alice 的信, 甚至他還可以用Alice真正的公匙來轉(zhuǎn)發(fā)你給Alice的信,這樣誰都不會 起疑心,他如果想改動你給Alice的信也沒問題。更有甚者,他還可以偽造Alice 的簽名給你或其他人發(fā)信,因為你們手中的公匙是偽造的,你們會以為真是Alice 的來信。 防止這種情況出現(xiàn)的最好辦法是避免讓任何其他人有機會篡改公匙,比如 直接從Alice手中得到她的公匙,然而當她在千里之外或無法見到時, 這是很 困難的。PGP發(fā)展了一種公匙介紹機制來解決這個問題。 舉例來說:如果你和 Alice有一個共同的朋友David,而David知道他手中Alice的公匙是正確的(關(guān) 于如何認證公匙,PGP還有一種方法,后面會談到,這里假設(shè)David已經(jīng)和Alice 認證過她的公匙)。這樣David可以用他自己的私匙在Alice的公匙上簽名(就 是用上面講的簽名方法),表示他擔保這個公匙屬于Alice。當然你需要用David 的公匙來校驗他給你的Alice的公匙,同樣David也可以向Alice認證你的公匙, 這樣David就成為你和Alice之間的介紹人。這樣AliceDavid就可以放心 地把David簽過字的Alice的公匙上載到BBS上讓你去拿, 沒人可能去篡改它而 不被你發(fā)現(xiàn),即使是BBS的管理員。這就是從公共渠道傳遞公匙的安全手段。

  有人會問:那你怎么安全地得到David的公匙呢, 這不是個先有雞還是先 有蛋的問題嗎?確實有可能你拿到的David的公匙也是假的, 但這就要求這個 搗蛋者參與這整個過程,他必須對你們?nèi)硕己苁煜,還要策劃很久,這一般 不可能。 當然,PGP對這種可能也有預防的建議,那就是由一個大家普遍信任 的人或機構(gòu)擔當這個角色。他被稱為密匙侍者認證權(quán)威,每個由他 簽字的公匙都被認為是真的,這樣大家只要有一份他的公匙就行了,認證這個 人的公匙是方便的,因為他廣泛提供這個服務,假冒他的公匙是很極困難的, 因為他的公匙流傳廣泛。這樣的權(quán)威適合由非個人控制組織或政府機構(gòu)充 當,現(xiàn)在已經(jīng)有等級認證制度的機構(gòu)存在。 對于那些非常分散的人們,PGP更贊成使用私人方式的密匙轉(zhuǎn)介方式, 為這樣有機的非官方更能反映出人們自然的社會交往,而且人們也能自由地選 擇信任的人來介紹?傊筒徽J識的人們見面一樣。每個公匙有至少一個 戶名”(User ID),請盡量用自己的全名,最好再加上本人的Email地址,以免 混淆。 注意!你所必須遵循的一條規(guī)則是:在你使用任何一個公匙之前,一定要 首先認證它。。o論你受到什么誘惑,當然會有這種誘惑,你都不要,絕對 不要,直接信任一個從公共渠道(由其是那些看起來保密的)得來的公匙,記 得要用熟人介紹的公匙,或者自己與對方親自認證。同樣你也不要隨便為別人 簽字認證他們的公匙,就和你在現(xiàn)實生活中一樣,家里的房門鑰匙你是只會交 給信任的人的。 下面,我講講如何通過電話認證密匙。


  PGP還可以只簽名而不加密,這適用于公開發(fā)表聲明時, 聲明人為了證實 自己的身份(在網(wǎng)絡上只能如此了),可以用自己的私匙簽名。這樣就可以讓 收件人能確認發(fā)信人的身份,也可以防止發(fā)信人抵賴自己的聲明。這一點在商 業(yè)領(lǐng)域有很大的應用前途,它可以防止發(fā)信人抵賴和信件被途中篡改。 那么為什么說PGP用的是RSA和傳統(tǒng)加密的雜合算法呢? 因為RSA算法計算 量極大,在速度上不適合加密大量數(shù)據(jù),所以PGP實際上用來加密的不是RSA 身,而是采用了一種叫IDEA的傳統(tǒng)加密算法。我先解釋一下什么叫傳統(tǒng)加密, 簡單地說就是用一個密匙加密明文,然后用同樣的密匙解密。這種方法的代表 DESUS Federal Data Encryption Standard),也就是乘法加密,它的主 要缺點就是密匙的傳遞渠道解決不了安全性問題,不適合網(wǎng)絡環(huán)境郵件加密需 要。IDEA是一個有專利的算法, 專利持有者是ETH和一個瑞士公司Ascom-Tech AG。非商業(yè)用途的IDEA實現(xiàn)不用向他們交納費用。IDEA的加(解)密速度比RSA 快得多, 所以實際上PGP是用一個隨機生成密匙(每次加密不同)用IDEA算法 對明文加密,然后用RSA算法對該密匙加密。這樣收件人同樣是用RSA解密出這 個隨機密匙,再用IDEA解密郵件本身。 這樣的鏈式加密就做到了既有RSA體系 的保密性,又有IDEA算法的快捷性。 RSA體系70年代就已提出,但由于速度問 題一直沒有推廣應用,PGP的正好解決了這個問題,PGP的創(chuàng)意有一半就在這一點上了。那么PGP創(chuàng)意的另一半在哪兒呢?下面我再談PGP的密匙管理。

  一個成熟的加密體系必然要有一個成熟的密匙管理機制配套。公匙體制的 提出就是為了解決傳統(tǒng)加密體系的密匙分配難保密的缺點。比如網(wǎng)絡hacker 常用的手段之一就是監(jiān)聽,如果密匙是通過網(wǎng)絡傳送就太危險了。舉個例 子:Novell Netware 的老版本中,用戶的密碼是以明文在線路中傳輸?shù)模?/SPAN> 樣監(jiān)聽者輕易就獲得了他人的密碼。當然 Netware 4.1中數(shù)據(jù)包頭的用戶密碼 現(xiàn)在是加密的了。對PGP來說公匙本來就要公開,就沒有防監(jiān)聽的問題。 但公 匙的發(fā)布中仍然存在安全性問題,例如公匙的被篡改(Public Key Tampering), 這可能是公匙密碼體系中最大的漏洞,因為大多數(shù)新手不能很快發(fā)現(xiàn)這一點。 你必須確信你拿到的公匙屬于它看上去屬于的那個人。為了把這個問題說清楚, 我舉個例子,然后再說如何正確地用PGP堵住這個漏洞。 以你和Alice的通信為例,假設(shè)你想給Alice發(fā)封信,那你必須有Alice的公 匙, 你從BBS上下載了Alice的公匙,并用它加密了信件用BBSEmail功能發(fā)給 Alice。不幸地,你和Alice都不知道,另一個用戶叫Charlie的用戶潛入BBS 把他自己用Alice的名字生成的密匙對中的公匙替換了Alice的公匙。 那你用來 發(fā)信的公匙就不是Alice的而是Charlie的, 一切看來都很正常,因為你拿到的 公匙的用戶名是“Alice”。于是Charlie就可以用他手中的私匙來解密你給Alice 的信, 甚至他還可以用Alice真正的公匙來轉(zhuǎn)發(fā)你給Alice的信,這樣誰都不會 起疑心,他如果想改動你給Alice的信也沒問題。更有甚者,他還可以偽造Alice 的簽名給你或其他人發(fā)信,因為你們手中的公匙是偽造的,你們會以為真是Alice 的來信。 防止這種情況出現(xiàn)的最好辦法是避免讓任何其他人有機會篡改公匙,比如 直接從Alice手中得到她的公匙,然而當她在千里之外或無法見到時, 這是很 困難的。PGP發(fā)展了一種公匙介紹機制來解決這個問題。 舉例來說:如果你和 Alice有一個共同的朋友David,而David知道他手中Alice的公匙是正確的(關(guān) 于如何認證公匙,PGP還有一種方法,后面會談到,這里假設(shè)David已經(jīng)和Alice 認證過她的公匙)。這樣David可以用他自己的私匙在Alice的公匙上簽名(就 是用上面講的簽名方法),表示他擔保這個公匙屬于Alice。當然你需要用David 的公匙來校驗他給你的Alice的公匙,同樣David也可以向Alice認證你的公匙, 這樣David就成為你和Alice之間的介紹人。這樣AliceDavid就可以放心 地把David簽過字的Alice的公匙上載到BBS上讓你去拿, 沒人可能去篡改它而 不被你發(fā)現(xiàn),即使是BBS的管理員。這就是從公共渠道傳遞公匙的安全手段。

  有人會問:那你怎么安全地得到David的公匙呢, 這不是個先有雞還是先 有蛋的問題嗎?確實有可能你拿到的David的公匙也是假的, 但這就要求這個 搗蛋者參與這整個過程,他必須對你們?nèi)硕己苁煜ぃ要策劃很久,這一般 不可能。 當然,PGP對這種可能也有預防的建議,那就是由一個大家普遍信任 的人或機構(gòu)擔當這個角色。他被稱為密匙侍者認證權(quán)威,每個由他 簽字的公匙都被認為是真的,這樣大家只要有一份他的公匙就行了,認證這個 人的公匙是方便的,因為他廣泛提供這個服務,假冒他的公匙是很極困難的, 因為他的公匙流傳廣泛。這樣的權(quán)威適合由非個人控制組織或政府機構(gòu)充 當,現(xiàn)在已經(jīng)有等級認證制度的機構(gòu)存在。 對于那些非常分散的人們,PGP更贊成使用私人方式的密匙轉(zhuǎn)介方式, 為這樣有機的非官方更能反映出人們自然的社會交往,而且人們也能自由地選 擇信任的人來介紹?傊筒徽J識的人們見面一樣。每個公匙有至少一個 戶名”(User ID),請盡量用自己的全名,最好再加上本人的Email地址,以免 混淆。 注意!你所必須遵循的一條規(guī)則是:在你使用任何一個公匙之前,一定要 首先認證它。。o論你受到什么誘惑,當然會有這種誘惑,你都不要,絕對 不要,直接信任一個從公共渠道(由其是那些看起來保密的)得來的公匙,記 得要用熟人介紹的公匙,或者自己與對方親自認證。同樣你也不要隨便為別人 簽字認證他們的公匙,就和你在現(xiàn)實生活中一樣,家里的房門鑰匙你是只會交 給信任的人的。 下面,我講講如何通過電話認證密匙。

上一頁  1 2 3 4 下一頁
文章搜索
軟件水平考試欄目導航
版權(quán)聲明:如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請注明出處。