電子郵件安全及PGP課件_第1頁
電子郵件安全及PGP課件_第2頁
電子郵件安全及PGP課件_第3頁
電子郵件安全及PGP課件_第4頁
電子郵件安全及PGP課件_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第11章電子郵件安全及PGP

11.1電子郵件安全概述11.2PGP11.3PGP軟件的使用11.4S/MIME11.5垃圾郵件小結(jié)NetworkandInformationSecurity導(dǎo)引信息加密是每一個(gè)普通用戶都有權(quán)利和有能力使用的一種安全的通信技術(shù)。PGP(PrettyGoodPrivacy)是一個(gè)強(qiáng)有力的電子郵件加密系統(tǒng)。它是由許多人開發(fā),在國際互聯(lián)網(wǎng)上廣為傳播的免費(fèi)軟件。我們應(yīng)該了解PGP系統(tǒng)的功能,研究它的可行性、方便性、安全性和認(rèn)證的可操作性。使用PGP加密系統(tǒng)可以保證信息在計(jì)算機(jī)上的安全存儲(chǔ)和在網(wǎng)絡(luò)上的安全傳輸。NetworkandInformationSecurity11.1電子郵件安全概述

電子郵件中主要存在的問題如下:1.詐騙郵件:通常指那些帶有惡意的欺詐性郵件。2.郵件炸彈:指在短時(shí)間內(nèi)向同一信箱發(fā)送大量電子郵件的行為。3.傳播病毒:通過電子郵件傳播的病毒通常用VBScript編寫,且大多數(shù)采用附件的形式夾帶在電子郵件中。4.郵件的安全問題:未加密的信息可能在傳輸中被截獲、偷看或篡改;如果郵件未經(jīng)數(shù)字簽名,用戶就無法肯定郵件是從哪里來的。NetworkandInformationSecuritySSLSMTP和SSLPOP是在SSL所建立的安全傳輸通道上運(yùn)行SMTP和POP協(xié)議。同時(shí)又對(duì)這兩種協(xié)議做了一定的擴(kuò)展,以更好地支持加密的認(rèn)證和傳輸。這種模式要求客戶端的電子郵件軟件和服務(wù)器端的郵件服務(wù)器都支持,而且都必須安裝SSL證書?;赩PN和其他IP安全通道技術(shù),封裝所有的TCP/IP服務(wù),也是實(shí)現(xiàn)安全電子郵件傳輸?shù)囊环N方法,這種模式往往是整體網(wǎng)絡(luò)安全機(jī)制的一部分。對(duì)于網(wǎng)絡(luò)入侵的防范,主要依賴于軟件編程時(shí)的嚴(yán)謹(jǐn)程度,在選擇時(shí)很難從外部衡量。對(duì)于拒絕服務(wù)攻擊的防范,則可以分成以下幾個(gè)方面:防止來自外部網(wǎng)絡(luò)的攻擊,包括拒絕來自指定地址和域名的郵件服務(wù)連接請(qǐng)求,拒絕單個(gè)用戶數(shù)量大于預(yù)定上限的郵件,限制單個(gè)IP地址的連接數(shù)量,暫時(shí)擱置可疑的信件等;防止來自內(nèi)部網(wǎng)絡(luò)的攻擊,包括拒絕來自指定用戶、IP地址和域名的郵件服務(wù)請(qǐng)求,強(qiáng)制實(shí)施SMTP認(rèn)證,實(shí)現(xiàn)SSLPOP和SSLSMTP以確認(rèn)用戶身份,防止中繼攻擊,包括完全關(guān)閉中繼功能、按照發(fā)信和收信的IP地址和域名靈活地限制中繼、按照收信人數(shù)限制中繼等。NetworkandInformationSecurity11.2PGP

11.2.1PGP的歷史及概述

PGP是PrettyGoodPrivacy的縮寫,是一種長期在學(xué)術(shù)界和技術(shù)界都得到廣泛使用的安全郵件標(biāo)準(zhǔn)。PGP的特點(diǎn)是使用單向散列算法和公開密鑰技術(shù)對(duì)郵件內(nèi)容進(jìn)行簽名,以保證信件內(nèi)容無法被篡改且不可否認(rèn);使用對(duì)稱和非對(duì)稱加密技術(shù)保證郵件內(nèi)容保密。發(fā)信人與收信人的公鑰都存放在公開的地方,如某個(gè)公認(rèn)的FTP站點(diǎn)。而公鑰本身的權(quán)威性(也就是說這把公鑰是否代表發(fā)信人)則可以由第三方(特別是收信人所熟悉或信任的第三方)進(jìn)行簽名認(rèn)證,沒有統(tǒng)一的集中的機(jī)構(gòu)進(jìn)行公鑰/私鑰對(duì)的簽發(fā)。在PGP體系中,“信任”或是雙方之間的直接關(guān)系,或是通過第三者、第四者的間接關(guān)系。但無論哪種,任意兩方之間都是對(duì)等的,整個(gè)信任關(guān)系構(gòu)成網(wǎng)狀結(jié)構(gòu),這就是所謂的信任網(wǎng)(WebofTrust)。1992年9月,PGP2.0在歐洲發(fā)布。2.0版本中還用國際數(shù)據(jù)加密算法IDEA(InternationalDataEncryptionAlgorithm)替換了原有的Bass-O-Matic加密算法,IDEA是一個(gè)專門開發(fā)的密碼算法,與DES一樣,都是分組密碼,但是它的密鑰較長,因此被認(rèn)為更安全。NetworkandInformationSecurity11.2.2PGP的功能

PGP軟件有3個(gè)主要功能:(1)對(duì)存儲(chǔ)在計(jì)算機(jī)上的文件加密。加密的文件只能由知道密鑰的人解密閱讀。(2)對(duì)電子郵件進(jìn)行加密。經(jīng)加密的電子郵件只有收信人本人才能解密閱讀。(3)對(duì)文件或電子郵件作數(shù)字簽名。收件人可以用簽名人的公開密鑰簽別真?zhèn)?。此外,為了方便使用,PGP軟件還可以:(1)對(duì)文件或電子郵件既加密又簽名,這是PGP提供的最安全的通信方式。(2)為用戶生成公/私鑰對(duì)。(3)為用戶管理密鑰。用戶可以把通信人的公開密鑰穿在自己的公鑰環(huán)上,取用時(shí)提供通信人地址即可。(4)允許用戶把所知的公開密鑰簽名并發(fā)給朋友。(5)在得知密鑰失效或泄密后,能夠?qū)υ撁荑€取消或停用。為了防止遺忘或意外,用戶還可以對(duì)密鑰做備份。(6)允許用戶根據(jù)個(gè)人喜好和使用環(huán)境設(shè)置PGP。(7)允許用戶與國際互聯(lián)網(wǎng)上的公開密鑰服務(wù)器打交道。NetworkandInformationSecurity那么又如何能安全地得到小趙的公鑰呢?這似乎是一個(gè)先有雞還是先有蛋的問題。的確小張拿到的小趙的公鑰也有可能是假的,但這就要求這個(gè)作假者參與整個(gè)過程,他必須對(duì)小王、小張和小趙這三人都很熟悉,而且還要策劃很久,這一般很困難。當(dāng)然,PGP對(duì)這種可能也有預(yù)防的建議,那就是由一個(gè)大家普遍信任的人或機(jī)構(gòu)擔(dān)當(dāng)小趙這樣的角色,他被稱為密鑰侍者或認(rèn)證權(quán)威,每個(gè)由他簽名的公鑰都被認(rèn)為是真的,這樣大家只要有一份他的公鑰就行了。而認(rèn)證這個(gè)人的公鑰是方便的,因?yàn)樗麖V泛提供這種服務(wù),所以他的公鑰流傳廣泛,要假冒他的公鑰很困難。這樣的“權(quán)威”適合由非個(gè)人控制的組織或政府機(jī)構(gòu)充當(dāng)??傊粭l必須遵循的規(guī)則是:在使用任何一個(gè)公鑰之前,一定要首先認(rèn)證它!無論受到什么誘惑,都絕對(duì)不能直接信任一個(gè)從公共渠道(尤其是那些看起來保密的渠道)得來的公鑰,要用經(jīng)過熟人介紹的公鑰,或者自己與對(duì)方親自認(rèn)證。同樣也不要隨便為別人簽名認(rèn)證他們的公鑰,就和現(xiàn)實(shí)生活中一樣,家里的房門鑰匙只交給信任的人。和傳統(tǒng)的單密鑰體系類似,私鑰的保密也是至關(guān)重要的。PGP把壓縮同簽名和加密組合到一起,壓縮發(fā)生在創(chuàng)建簽名之后,但是在進(jìn)行加密之前。PGP內(nèi)核使用Pkzip算法來壓縮加密前的明文。Pkzip算法是公認(rèn)的壓縮率和壓縮速度都相當(dāng)好的壓縮算法。NetworkandInformationSecurity11.2.4PGP對(duì)文件加解密的過程

1.PGP對(duì)文件的加密過程

PGP在接受用戶輸入的加密口令以后,并沒有直接把它用于加密文件。這與許多流行軟件是不同的,許多流行軟件通常把口令直接用來加密文件。PGP系統(tǒng)讓用戶口令通過它的MD5單向函數(shù),產(chǎn)生了一個(gè)128位的密鑰。進(jìn)而用該密鑰和IDEA加密算法對(duì)文件進(jìn)行加密,產(chǎn)生加密后的密文文件。加密完成后,PGP不會(huì)在任何地方存儲(chǔ)用戶口令和中間過程所產(chǎn)生的密鑰。MD5函數(shù)是一個(gè)單向散列函數(shù),它把任意長度的報(bào)文內(nèi)容用一個(gè)128位的數(shù)值來概括。即使是兩個(gè)僅有一字之差的報(bào)文,它們的MD5函數(shù)輸出也會(huì)截然不同。其加密過程如圖11-1。NetworkandInformationSecurity圖11-1PGP文件加密過程N(yùn)etworkandInformationSecurity11.2.5PGP公/私鑰對(duì)生成過程

生成公/私鑰對(duì)時(shí),用戶要經(jīng)過如下四個(gè)步驟。1.密鑰長度的選擇:首先考慮的是安全因素,其次是速度。選1024位的密鑰應(yīng)該是足夠安全的,密鑰的長度并不影響加密和解密郵件或文件內(nèi)容的速度,只影響加密和解密128位會(huì)話密鑰的速度以及簽名的速度。2.提供用戶標(biāo)識(shí)信息:純粹是為了標(biāo)識(shí)生成的公開密鑰。3.確定口令:是用戶保護(hù)私鑰和向PGP系統(tǒng)證明自己是私鑰主人的唯一依據(jù)。4.做些隨機(jī)的擊鍵動(dòng)作:是為了生成一個(gè)536位的偽隨機(jī)數(shù)發(fā)生器種子,它與PGP加密系統(tǒng)的安全性有關(guān)。將每個(gè)人完成隨機(jī)擊鍵的時(shí)間差異放大來產(chǎn)生隨機(jī)數(shù)種子,比其它很多方式都安全有效。NetworkandInformationSecurity圖11-3PGP公/私鑰對(duì)的生成過程N(yùn)etworkandInformationSecurity11.2.6PGP的數(shù)字簽名技術(shù)

與加密不同,數(shù)字簽名系統(tǒng)的目的是保證信息的完整性、真實(shí)性和不可否認(rèn)性。這和使用手寫簽名和印章的文件相似。數(shù)字簽名系統(tǒng)是公開密鑰技術(shù)與單向散列函數(shù)相結(jié)合的產(chǎn)物。單向散列函數(shù)能把信息集合提煉為一個(gè)很長的數(shù)字。PGP中簽名的過程如下:簽名時(shí),用戶提供口令,經(jīng)MD5單向散列函數(shù)輸出加密自己RSA私鑰的IDEA密鑰。密鑰管理模塊取出加密的RSA私鑰,經(jīng)過IDEA解密算法和IDEA密鑰,恢復(fù)出明文的RSA私鑰。另一方面,PGP讀出要被簽名的文件內(nèi)容,計(jì)算其MD5函數(shù)摘要值。該值經(jīng)過RSA私鑰和RSA加密算法加密以后,變成了被加密的MD5值,形成數(shù)字簽名。然后再附加到原文件之后,合并為可以向外發(fā)送的傳輸文件。NetworkandInformationSecurity11.2.7PGP公開密鑰所使用的認(rèn)證方式

對(duì)于擬使用的任何公開密鑰,原則上都應(yīng)當(dāng)進(jìn)行鑒定。其實(shí),怎樣鑒定某人或某物的真實(shí)身份,決非公開密鑰加密系統(tǒng)的特有問題。人們之所以能夠建立某種互相信任的關(guān)系,歸納起來,不外有三種方式:中心控制式、金字塔式和網(wǎng)絡(luò)式。目前切實(shí)可行的公開密鑰認(rèn)證方案,也不外乎有以上幾種。社會(huì)中每個(gè)人都有一張這樣無形的信任網(wǎng)。他們互相交織、相互依賴,而且不斷變化。隨著時(shí)間的推移,有些信任關(guān)系會(huì)逐漸陳舊、最終斷裂,另一些信任關(guān)系又在生長、發(fā)展。由于國際互聯(lián)網(wǎng)跨越任何國界和組織機(jī)構(gòu)的界限,若要鑒別用戶的真實(shí)身份沒有任何有效而可靠的辦法,無論中心控制式還是金字塔式,都不可能實(shí)現(xiàn)。NetworkandInformationSecurityPGP在鑒別公開密鑰真?zhèn)螘r(shí),所使用的就是網(wǎng)絡(luò)式。PGP一般使用私人方式的公鑰介紹機(jī)制,因?yàn)檫@樣的非官方方式更能反映出人們自然的社會(huì)交往,而且人們也能自由地選擇信任的人來介紹。用網(wǎng)絡(luò)式的方法來認(rèn)證公開密鑰,可以模仿人們?cè)谧匀唤煌薪⑾嗷バ湃蔚倪^程。每一個(gè)公鑰都用兩個(gè)參數(shù)來描述:真實(shí)性(Validity)和信任度(Trust)。真實(shí)性表明該公開密鑰的真實(shí)程度;信任度則表明對(duì)密鑰主人的信任程度。信任度可以分成若干級(jí)別:絕對(duì)信任、完全信任、勉強(qiáng)信任、不肯定、不信任。隨著通信量的增加,信任度既可以增加,也可以降低。對(duì)于重要機(jī)密,只有當(dāng)信任度為“絕對(duì)信任”時(shí),才能進(jìn)行加密通信;對(duì)于不是特別重要的信息,則可以適當(dāng)?shù)剡x擇信任度。用網(wǎng)絡(luò)式的方法來認(rèn)證公開密鑰也有它自身不可克服的缺陷,認(rèn)證過程煩瑣,有時(shí)在信任度的設(shè)置方面也會(huì)出現(xiàn)偏差。NetworkandInformationSecurity11.2.8PGP的安全性

從加密的理論基礎(chǔ)和實(shí)際運(yùn)用的可靠性分析來看,PGP加密系統(tǒng)屬于較強(qiáng)的加密系統(tǒng)。一個(gè)好的加密系統(tǒng)在技術(shù)上至少需要滿足如下三個(gè)條件:(1)核心的加密算法必須是公認(rèn)可靠的;(2)加密系統(tǒng)的具體實(shí)現(xiàn)應(yīng)當(dāng)是可靠的;(3)加密系統(tǒng)應(yīng)能支持足夠長的密鑰。NetworkandInformationSecurity

PGP程序產(chǎn)生隨機(jī)數(shù)的方法類似RSA密鑰的產(chǎn)生,它是從用戶敲擊鍵盤的時(shí)間間隔上取得其隨機(jī)數(shù)種子的。同時(shí)對(duì)于硬盤上的隨機(jī)數(shù)文件采用了和郵件同樣強(qiáng)度的加密,這有效地防止了他人從該文件中分析出加密密鑰的規(guī)律來。然而,PGP程序的使用并不能完全保證用戶的通信就是安全的,用戶的計(jì)算機(jī)也仍可能很脆弱。就像在房子前門安裝一個(gè)最安全的鎖,小偷仍然可以從開著的窗戶爬進(jìn)來一樣。存在許多著名的對(duì)PGP的攻擊,主要有蠻力攻擊、對(duì)私鑰環(huán)的攻擊和對(duì)公鑰環(huán)的攻擊等。對(duì)PGP最直接的攻擊是蠻力攻擊其所使用的密鑰。這種情況下,PGP的安全性就取決于它所使用的RSA和IDEA這兩個(gè)算法的安全性。對(duì)于RSA密鑰,已知最好的蠻力攻擊是分解公鑰n。但PGP所使用的密鑰非常長,理論上說,一個(gè)512位的密鑰能夠有大約1年左右時(shí)間的安全性。當(dāng)然,如果技術(shù)上有所提高,需要的時(shí)間可能會(huì)少些。至于對(duì)IDEA密鑰的蠻力攻擊目前為止還沒聽說有人嘗試過,據(jù)估計(jì)破譯IDEA的困難同分解3000位長的RSA密鑰的困難程度相當(dāng)。所以,嘗試破譯PGP中用于加密IDEA密鑰的RSA密鑰相對(duì)更容易些。NetworkandInformationSecurityPGP私鑰環(huán)的安全性基于以下兩點(diǎn):對(duì)私鑰環(huán)數(shù)據(jù)的訪問和對(duì)用于加密每個(gè)私鑰的口令的了解。使用私鑰需要擁有這兩部分,對(duì)私鑰環(huán)的攻擊也立足于這兩部分。1首先,如果PGP在多用戶系統(tǒng)中使用,就可能被他人訪問到自己的私鑰環(huán)。通過讀取緩存文件、網(wǎng)絡(luò)窺視或者許多其他的攻擊方法,攻擊者可以得到他人的私鑰環(huán)。這樣就只剩下口令可以保護(hù)私鑰環(huán)中的數(shù)據(jù)了,也就是說攻擊者只要能獲得口令就能攻破PGP。2其次,還是在一個(gè)多用戶系統(tǒng)中,鍵盤和CPU之間的鏈路很可能是不安全的。如果有人能夠訪問連接用戶鍵盤和主機(jī)的網(wǎng)絡(luò),監(jiān)視用戶鍵盤的輸入是很容易做到的。NetworkandInformationSecurity攻擊攻擊者可以從一個(gè)公共的終端上登錄,然后窺探共享的連接網(wǎng)絡(luò)得到他人的口令。由于公鑰環(huán)的重要性和對(duì)它的依賴性,PGP也受到許多針對(duì)公鑰環(huán)的。因?yàn)镻GP的公鑰環(huán)只有在改變時(shí)才被檢查,當(dāng)添加新的密鑰或簽名時(shí),PGP驗(yàn)證它們,然后標(biāo)記它們?yōu)楣€環(huán)中已檢查過的簽名,以后不再去重復(fù)驗(yàn)證它們。所以,有一種對(duì)PGP公鑰環(huán)的攻擊是修改公鑰環(huán)中的簽名,并且標(biāo)記它為公鑰環(huán)中已檢查過的簽名,使得系統(tǒng)不會(huì)再去檢查它。對(duì)PGP公鑰環(huán)的另一種攻擊是針對(duì)PGP的使用過程。PGP對(duì)密鑰設(shè)置一個(gè)有效位,當(dāng)?shù)竭_(dá)一個(gè)密鑰的新簽名時(shí),PGP計(jì)算該密鑰的有效位,然后在公鑰環(huán)中緩存這個(gè)有效位。還有一種對(duì)PGP公鑰環(huán)的攻擊,利用了作為介紹人的密鑰信任也緩存在公鑰環(huán)中這個(gè)特點(diǎn)。密鑰信任定義密鑰的簽名有多少信任度,所以如果使用帶有特定參數(shù)的密鑰為一個(gè)無效密鑰簽名就可能使PGP把這個(gè)無效密鑰作為有效密鑰接受。而且,如果一個(gè)密鑰被修改為完全受托的介紹人,那么用這個(gè)密鑰簽名的任何密鑰都將被信任為有效的。NetworkandInformationSecurityPGP的每一個(gè)密鑰還包括另一個(gè)用戶無法控制的名字:keyid。密鑰的keyid是一個(gè)數(shù)字串,這個(gè)數(shù)字串通過密鑰參數(shù)自動(dòng)生成,由PGP內(nèi)部使用,以便訪問處理中的密鑰。根據(jù)設(shè)計(jì),想要讓keyid一定程度上模仿實(shí)際的密鑰,每個(gè)密鑰的keyid都不同。keyid有64位,但是只給用戶用十六進(jìn)制格式打印出32位。要向PGP標(biāo)識(shí)一個(gè)串為keyid,必須在它的前面放字符串“0x”,表示這是一個(gè)十六進(jìn)制串。PGP要求用戶保持一個(gè)密鑰的本地緩存。這個(gè)緩存被稱為用戶的密鑰環(huán)。每個(gè)用戶至少有兩個(gè)密鑰環(huán):公鑰環(huán)和私鑰環(huán)。每個(gè)密鑰環(huán)都用來存放用于特定目標(biāo)的一套密鑰。保持這兩個(gè)密鑰環(huán)的安全很重要,公鑰環(huán)存放所有與用戶通信的人或單位的公鑰、UserID、簽名和信任參數(shù)等。

NetworkandInformationSecurity在設(shè)計(jì)公鑰環(huán)的時(shí)候,只是想用它保存一些比較親密的朋友和同事的公鑰。私鑰環(huán)是PGP中存放個(gè)人私鑰的地方。當(dāng)用戶產(chǎn)生一個(gè)密鑰時(shí),不能泄露的私鑰部分就存放在私鑰環(huán)中。這些數(shù)據(jù)在私鑰環(huán)中被加密保存,因此對(duì)私鑰環(huán)的訪問不會(huì)自動(dòng)允許對(duì)其私鑰的使用。當(dāng)然,如果一個(gè)攻擊者能夠訪問私鑰環(huán),那么他偽造簽名解密消息的障礙就小多了。

PGP不推薦多方共享一個(gè)私鑰,盡管有時(shí)可能有這種需要。例如,當(dāng)用戶擁有代表一個(gè)組織的私鑰時(shí),可能有必要讓這個(gè)組織的多個(gè)成員都能訪問這個(gè)私鑰。這意味著任何個(gè)人都可以完全代表那個(gè)組織行動(dòng),但知道和使用的人越多越容易泄密。有時(shí)可能會(huì)使用一個(gè)不帶口令的私鑰,例如,建立一個(gè)帶有私鑰的服務(wù)器以代表一群人。在某些情況下,一個(gè)私鑰環(huán)中可能有多個(gè)私鑰,PGP可以通過私鑰的UserID來指定用戶想要使用的私鑰。缺省情況下,每當(dāng)PGP需要使用一個(gè)私鑰時(shí),它都會(huì)選擇私鑰環(huán)中的第一個(gè)私鑰,這個(gè)私鑰通常是最近創(chuàng)建的。但用戶可以使用-u選項(xiàng)向PGP提供UserID來修改它,這樣PGP就會(huì)使用相應(yīng)UserID的私鑰。NetworkandInformationSecurityPGP的常規(guī)加密方法的命令為:

pgp-cmessage使用常規(guī)加密方法時(shí),PGP會(huì)兩次詢問口令。第二次詢問是為了保證用戶正確鍵入了口令,然后使用這個(gè)口令加密消息。要為一個(gè)消息簽名,用戶可以使用他的私鑰加密這個(gè)消息的摘要。簽名附加到消息之后,其他用戶可以驗(yàn)證這個(gè)簽名。為消息簽名的命令為pgp-smessage當(dāng)用戶收到一個(gè)PGP消息時(shí),使用PGP解密以得到數(shù)據(jù),這就涉及到消息的解密以及對(duì)消息中簽名的驗(yàn)證,這是PGP的缺省操作。使用“pgpmessage”命令,PGP就會(huì)試著解碼PGP消息,而且根據(jù)需要解密和/或驗(yàn)證消息。當(dāng)解密需要用戶的私鑰時(shí),PGP會(huì)提示用戶輸入該私鑰的口令,以便使用該私鑰。在成功解密并經(jīng)過驗(yàn)證后,PGP將解碼得到的消息存儲(chǔ)到一個(gè)輸出文件中,用戶就可以讀取、處理或使用這個(gè)文件。當(dāng)一個(gè)消息因?yàn)楸挥脩羲鶝]有的一個(gè)或一組密鑰加密而無法讀取時(shí),PGP會(huì)告訴用戶誰能解密這個(gè)消息。如果與為消息簽名的私鑰相對(duì)應(yīng)的公鑰不在當(dāng)前密鑰環(huán)中,PGP會(huì)要求用戶給出另一個(gè)密鑰環(huán),如果提供不了的話,PGP就無法驗(yàn)證簽名。不過,如果有可能,它仍然會(huì)試圖輸出一部分消息。NetworkandInformationSecurityPGP允許每個(gè)用戶有一個(gè)配置文件,對(duì)PGP使用的各種值指定選項(xiàng),而不必使用缺省選項(xiàng)。PGP在啟動(dòng)時(shí)讀取這個(gè)文件,以確定如何為用戶服務(wù)。這個(gè)配置文件指定這樣一些選項(xiàng),例如,防護(hù)層的缺省行或使用的缺省密鑰。PGP還支持全系統(tǒng)的配置文件,這個(gè)配置文件可以為系統(tǒng)的所有用戶設(shè)置缺省值。用戶自己的局部配置文件的選項(xiàng)設(shè)置優(yōu)先于系統(tǒng)配置文件的選項(xiàng)設(shè)置。系統(tǒng)配置文件的位置在編譯時(shí)設(shè)置。感興趣的讀者可以訪問PGP作者Zimmermann的個(gè)人網(wǎng)站,下面的鏈接是其中的中文部分:http:///ZH/background/index.html。NetworkandInformationSecurity11.4S/MIME

S/MIME是SecureMultipurposeInternetMailExtensions的簡稱,它是從PEM(PrivacyEnhancedMail)和MIME發(fā)展而來的。最初由RSA公司開發(fā),目的是為了使不同產(chǎn)品的開發(fā)者能使用兼容的加密技術(shù)創(chuàng)建能互通的消息傳輸代理。同PGP一樣,S/MIME也利用單向散列算法和非對(duì)稱的加密體系。NetworkandInformationSecurityS/MIME與PGP的不同之處主要有兩點(diǎn):首先,它的認(rèn)證機(jī)制依賴于層次結(jié)構(gòu)的證書認(rèn)證機(jī)構(gòu),所有下一級(jí)的組織和個(gè)人的證書由上一級(jí)的組織負(fù)責(zé)認(rèn)證,最上一級(jí)的組織的證書(根證書)則依靠組織之間相互認(rèn)證,整個(gè)信任關(guān)系基本是樹狀結(jié)構(gòu),就是所謂的TreeofTrust;其次,S/MIME將信件內(nèi)容加密簽名后作為特殊的附件傳送,其證書格式采用X.509規(guī)范,但與一般網(wǎng)上購物所使用的SSL證書還有一定差異,支持的廠商也相對(duì)比較少。在國外,有VeriSign公司免費(fèi)向個(gè)人提供S/MIME電子郵件證書;在國內(nèi),也有公司提供支持該標(biāo)準(zhǔn)的產(chǎn)品。在客戶端,NetscapeMessenger和MicrosoftOutlook等都支持S/MIME。NetworkandInformationSecurityS/MIME不只是用于Internet的標(biāo)準(zhǔn),它還能用在專用網(wǎng)絡(luò)上(例如AOL),但是它對(duì)Internet電子郵件最有效。因?yàn)椋趯S镁W(wǎng)絡(luò)上發(fā)信人發(fā)信直接連到電子郵件服務(wù)器,相對(duì)比較安全。Internet電子郵件在到達(dá)目的地之前,可能要經(jīng)過多個(gè)服務(wù)器,要實(shí)現(xiàn)安全的通道是不可能的。所以,要實(shí)現(xiàn)Internet電子郵件的安全,就必須保證消息本身是安全的。

NetworkandInformationSecurity所以S/MIME采用了一種混合方法,叫做數(shù)字信封。消息本身仍使用對(duì)稱密碼進(jìn)行加密,然后用非對(duì)稱密碼加密所使用的對(duì)稱密鑰,加密后的對(duì)稱密鑰和經(jīng)對(duì)稱加密的消息一起發(fā)送。因?yàn)閷?duì)稱密碼相對(duì)比較簡單,所以加解密的速度要比用非對(duì)稱方法加密整個(gè)消息快得多。S/MIME能夠防止篡改,方法類似于校驗(yàn)和。它使用單向散列算法把消息的內(nèi)容濃縮成一個(gè)惟一的摘要,然后把這個(gè)摘要加密后和消息一起發(fā)送。收信人的S/MIME程序解密消息,根據(jù)消息內(nèi)容采用同樣的單向散列算法在本地再次計(jì)算該消息的摘要。然后解密發(fā)送來的電子郵件摘要,把它的內(nèi)容和自己算出來的摘要進(jìn)行比較。如果彼此匹配,則說明消息沒有被篡改;如果不匹配,則說明在傳輸過程中消息內(nèi)容已經(jīng)被人篡改,S/MIME程序會(huì)報(bào)警提示收信人。NetworkandInformationSecurityS/MIME還能夠防止仿造,方法是通過數(shù)字簽名,或者說使用私鑰進(jìn)行加密。簽過名的公鑰叫做證書,隨消息一起發(fā)送。更安全的證書是由第三方簽署的證書。但是,任何人都能簽署公鑰,所以如果僅僅由某個(gè)第三方簽署證書,還無法證實(shí)身份,除非該簽署者是眾所周知的、可以信任的。但是這些自己設(shè)置的權(quán)威證書機(jī)構(gòu),不一定能被他人所認(rèn)可,所以,S/MIME采用信任等級(jí)體系來解決這個(gè)問題。信任等級(jí)體系也叫做信任鏈。為了讓小王相信自己,小趙在電子郵件里除了提供小趙自己的證書,還提供了簽發(fā)其證書的證書簽署機(jī)構(gòu)的證書。如果這個(gè)證書簽署機(jī)構(gòu)是小王所知道而且信任的機(jī)構(gòu),那么他就能用它的公鑰來驗(yàn)證小趙的證書和公鑰,最終也能接受小張的證書,承認(rèn)他的證書有效。如果信任鏈的最高一級(jí)是眾所周知、可以信任的,那么信任鏈里的證書最終也都可以得到信任。NetworkandInformationSecurity當(dāng)今最權(quán)威的證書簽署機(jī)構(gòu)是VeriSign公司。VeriSign公司的公鑰隨處可得,實(shí)際上它已經(jīng)預(yù)置在多數(shù)S/MIME程序里,所以驗(yàn)證VeriSign的簽名實(shí)際上很容易做到。如果用戶相信VeriSign在確認(rèn)人們身份上做的工作不錯(cuò),那么當(dāng)他看到證書上有VeriSign簽名時(shí),就可以確信它是有效的。VeriSign提供兩類個(gè)人證書。第一類成本較低,只驗(yàn)證申請(qǐng)人的電子郵件地址。第二類成本較高,要驗(yàn)證申請(qǐng)人的通信地址和電子郵件地址。申請(qǐng)人必須輸入私人信息,使得VeriSign能夠確認(rèn)申請(qǐng)人的身份,所以申請(qǐng)信息必須通過安全通道傳遞,而不能通過未加安全保護(hù)的電子郵件發(fā)送。

NetworkandInformationSecurityS/MIME簽名主要由這幾部分組成:加密的摘要、生成摘要使用的算法、解密摘要使用的算法以及證書列表(用于消息的信任等級(jí))。S/MIME用戶不用加密消息就能給消息簽名,實(shí)際上這也是S/MIME一般的使用方法。如果用戶缺省地把簽名功能打開,那么運(yùn)行S/MIME電子郵件程序的收信人就能檢驗(yàn)收到的電子郵件,檢查它是否被篡改過,并驗(yàn)證發(fā)信人的身份。還能接收發(fā)信人的公鑰,以后利用該公鑰給發(fā)信人發(fā)送加密的消息。由于收信人運(yùn)行的電子郵件程序可能不支持S/MIME,S/MIME提供兩種簽名方式:清晰簽名(Clear,又叫做分離簽名)和模糊簽名(Opaque)。使用帶有清晰簽名的消息時(shí),消息本身以正常方式發(fā)送,簽名作為一個(gè)小的文件以附件方式隨信發(fā)送,不支持S/MIME的客戶端可以忽略該簽名。這種方法的弊端是:某些郵件服務(wù)器可能會(huì)對(duì)消息做少許修改(例如,重新折行,或者去掉尾部的空格等),而這種處理會(huì)造成接收方的S/MIME程序錯(cuò)誤地認(rèn)為消息被修改過并報(bào)警。NetworkandInformationSecurity但是,S/MIME仍然存在一些問題。同一個(gè)電子郵件地址擁有多個(gè)別名是很常見的,例如,和。但是多數(shù)S/MIME程序,在證書里都只認(rèn)為其中的一個(gè)電子郵件地址有效。雖然,當(dāng)名稱不匹配造成證書無效時(shí),用戶可以顯式地接受這個(gè)證書,但是,用戶還是無法解密收到的消息,也無法回復(fù)該消息,除非對(duì)地址進(jìn)行編輯,以使其和證書匹配。S/MIME規(guī)范的設(shè)計(jì)者正在設(shè)計(jì)一個(gè)解決方案,這個(gè)方案允許多個(gè)電子郵件地址同時(shí)和一個(gè)證書關(guān)聯(lián)。要使用S/MIME加密,發(fā)信人需要收信人的公鑰。有兩種方法可以得到公鑰:從VeriSign站點(diǎn)手工

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論