生活随笔
收集整理的這篇文章主要介紹了
网络安全概论 第四章 电子邮件安全加密(PGP)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
第四章 電子郵件安全加密
PGP滿足了安全電子郵件的三個(gè)安全需求:
保密性:通過對(duì)稱加密和不對(duì)稱加密結(jié)合實(shí)現(xiàn)了保密性,實(shí)現(xiàn)了一種安全的一次性會(huì)話密鑰的交換方法完整性:PGP采用數(shù)字簽名和公鑰身份認(rèn)證實(shí)現(xiàn)完整性,其中PGP提出了一種去中心化網(wǎng)絡(luò)的方式來實(shí)現(xiàn)公鑰的認(rèn)證,保證了分布式環(huán)境下的發(fā)件人、收件人的身份認(rèn)證可用性:PGP基于Base64轉(zhuǎn)換將壓縮后的密文轉(zhuǎn)換的ASCII碼,從而支持SMTP協(xié)議,實(shí)現(xiàn)了可用性 PGP針對(duì)不同的需求,支持僅認(rèn)證、僅加密、加密且認(rèn)證三種工作方式
PGP使用的各種符號(hào)
PGP僅認(rèn)證流程
工作流程圖
流程說明
源A,即為發(fā)送方,創(chuàng)建電子郵件消息使用SHA-1算法生成消息驗(yàn)證碼(即為Hash散列函數(shù)生成固定長度的字符)使用發(fā)送方A的RSA私鑰類將消息驗(yàn)證碼加密生成數(shù)字簽名(MAC)將MAC附在消息上,一并壓縮,將壓縮后的消息進(jìn)行base64轉(zhuǎn)換接收方將收到的消息進(jìn)行逆base64轉(zhuǎn)換并解壓縮接收方將數(shù)字簽名(MAC)和消息分離將MAC使用A的公鑰解密將消息使用SHA-1算法解密,生成的散列值與上一步解密出的消息認(rèn)證碼相比較,如果符合,則表明郵件是A發(fā)送的,且沒有被篡改 PGP加密流程
加密前首先解決密鑰分發(fā)的問題(因?yàn)榘l(fā)送方和接收方一般都不會(huì)同時(shí)在線,無法在線協(xié)商密鑰):接收方接受到發(fā)送方隨機(jī)生成的密鑰,從而解決了密鑰的安全分發(fā)的問題
加密流程圖
流程說明
源A,即發(fā)送方,創(chuàng)建電子郵件,并對(duì)其進(jìn)行壓縮發(fā)送方生成一個(gè)適用于當(dāng)前郵件的128位隨機(jī)密鑰Ks(會(huì)話密鑰),使用該密鑰采用CAST-128(或IDEA、TDEA)加密壓縮后的電子郵件使用接收方B的RSA公鑰加密Ks,即為加密后的會(huì)話密鑰發(fā)送方將上一步得到的加密后的會(huì)話密鑰附在壓縮加密后的消息上,并使用Base64轉(zhuǎn)換接收方對(duì)收到的消息進(jìn)行Base64逆變換接收方提取其中的加密后的會(huì)話密鑰,使用自己的RSA私鑰解密,獲得Ks接受方使用一次性會(huì)話密鑰Ks解密消息,再進(jìn)行解壓縮,從而得到郵件的明文 PGP認(rèn)證并加密
認(rèn)證并加密的流程圖
流程說明
發(fā)送方A創(chuàng)建電子郵件使用SHA-1算法生成散列值,即為消息驗(yàn)證碼使用發(fā)送方A的RSA私鑰加密消息驗(yàn)證碼,生成數(shù)字簽名(MAC)將MAC附在消息上,并一起壓縮發(fā)送方生成一個(gè)隨機(jī)128位密鑰Ks,采用CAST-128(或IDEA、TDEA)加密上一步壓縮后的內(nèi)容(其中包含MAC和電子郵件)以接收方B的RSA公鑰加密Ks,并將結(jié)果附在壓縮內(nèi)容上,一并進(jìn)行Base64轉(zhuǎn)換接收方進(jìn)行base64逆變換,提取加密后的Ks,使用自己的RSA私鑰進(jìn)行解密,得到Ks接收方使用Ks解密消息,并進(jìn)行解壓縮,獲得明文郵件和MAC值接收方將MAC值解密(使用發(fā)送方A的RSA公鑰),生成消息驗(yàn)證碼接收方將明文郵件進(jìn)行SHA-1算法生成的結(jié)果和上一步得到的消息驗(yàn)證碼進(jìn)行比對(duì),符合則表明是A發(fā)送的,且沒有別篡改 PGP再發(fā)送方簽名后,加密前再進(jìn)行壓縮,原因是
發(fā)生再簽名后的原因:對(duì)未壓縮的郵件有利于實(shí)施不可否認(rèn)性,或便于事后驗(yàn)證。發(fā)正在壓縮前的原因:對(duì)壓縮后的消息進(jìn)行加密可以增強(qiáng)加密的安全性,如壓縮后的相關(guān)內(nèi)容可能會(huì)變?yōu)閬y碼,增加了密文的分析難度 上面的步驟先生成數(shù)字簽名,再加密,如果反過來,是否可行?如果可行,相比于之前的步驟有什么優(yōu)缺點(diǎn)?
PGP公鑰信任模型
A收到一個(gè)公鑰,將其加入到公鑰環(huán)中,PGP要求A必須給“擁有者信任”字段賦值。PGP中規(guī)定“擁有者信任”字段的取值為:未定義信任,未知用戶,一般信任,一般信任,總是信任,完全信任。當(dāng)這個(gè)公鑰同時(shí)出現(xiàn)在私鑰環(huán)中,“擁有者信任”字段幅值為完全信任A收到一個(gè)新公鑰時(shí),可能會(huì)有其他用戶已經(jīng)為此公鑰進(jìn)行了簽名。如果簽名者在公鑰環(huán)內(nèi),就將簽名者的”擁有者信任“值分配給此簽名的”簽名信任“字段;如果不在公鑰環(huán)內(nèi),此簽名的”簽名信任“字段賦值為”未知用戶“。”簽名信任”字段的取值范圍與“擁有者信任”字段的取值范圍相同。公鑰的“密鑰合理性”字段的賦值以該公鑰的“簽名信任”字段為基礎(chǔ)。當(dāng)簽名中至少一個(gè)簽名的“簽名信任”的值是“完全信任(ultimate trusted) ”, 這個(gè)公鑰的“密鑰合理性”字段就被賦值為“complete”,即密鑰是有效的。否 則,該字段由PGP計(jì)算“簽名信任”字段的加權(quán)和獲得。如果收到是一個(gè)“簽名 信任”字段為“總是信任(alwaystrusted)",則定義此簽名的權(quán)值為“1/X” ; 如果收到是一個(gè)“簽名信任”字段為“一般信任(usuallytrusted)",則定義此 簽名的權(quán)值為“1/Y” o (X和Y是用戶可配置的參數(shù))。當(dāng)收集到的公鑰簽名 加權(quán)和達(dá)到1時(shí),就可以將該公鑰的“密鑰合理性”字段的賦值為“complete”。 例如當(dāng)X=3, Y=6時(shí),如果收到該公鑰2個(gè)“簽名信任”字段為一般信任的簽 名、2個(gè)“簽名信任”字段為總是信任的簽名,就可以將該公鑰的“密鑰合理性” 字段的賦值為“complete”。這樣,即使一個(gè)公鑰收到“完全信任”簽名,只要 收集到足夠多的部分信任簽名,一樣可以達(dá)到完全信任,成為有效的公鑰
總結(jié)
以上是生活随笔為你收集整理的网络安全概论 第四章 电子邮件安全加密(PGP)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。