《網(wǎng)絡(luò)空間安全導(dǎo)論》 課件 13-密碼學(xué)基礎(chǔ)06-哈希算法;07-數(shù)字簽名與電子證書(shū)_第1頁(yè)
《網(wǎng)絡(luò)空間安全導(dǎo)論》 課件 13-密碼學(xué)基礎(chǔ)06-哈希算法;07-數(shù)字簽名與電子證書(shū)_第2頁(yè)
《網(wǎng)絡(luò)空間安全導(dǎo)論》 課件 13-密碼學(xué)基礎(chǔ)06-哈希算法;07-數(shù)字簽名與電子證書(shū)_第3頁(yè)
《網(wǎng)絡(luò)空間安全導(dǎo)論》 課件 13-密碼學(xué)基礎(chǔ)06-哈希算法;07-數(shù)字簽名與電子證書(shū)_第4頁(yè)
《網(wǎng)絡(luò)空間安全導(dǎo)論》 課件 13-密碼學(xué)基礎(chǔ)06-哈希算法;07-數(shù)字簽名與電子證書(shū)_第5頁(yè)
已閱讀5頁(yè),還剩43頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

密碼學(xué)基礎(chǔ)06

哈希算法理解哈希算法作用理解哈希算法的應(yīng)用場(chǎng)景教學(xué)目標(biāo)哈希函數(shù)概念哈希算法MD5SHAHMAC介紹目錄哈希函數(shù)也可以稱(chēng)為雜湊函數(shù)哈希函數(shù)H是公開(kāi)函數(shù),用于將任意長(zhǎng)的消息M映射為較短的、固定長(zhǎng)度的一個(gè)值H(M),稱(chēng)函數(shù)值H(M)為雜湊值、哈希值或消息摘要。哈希函數(shù)哈希函數(shù)的條件哈希函數(shù)的目的是為需認(rèn)證的數(shù)據(jù)產(chǎn)生一個(gè)“指紋”。為了能夠?qū)崿F(xiàn)對(duì)數(shù)據(jù)的認(rèn)證,哈希函數(shù)應(yīng)滿(mǎn)足以下條件:①函數(shù)的輸入可以是任意長(zhǎng)。②函數(shù)的輸出是固定長(zhǎng)。③已知x,求H(x)較為容易,可用硬件或軟件實(shí)現(xiàn)。④已知h,求使得H(x)=h的x在計(jì)算上是不可行的,這一性質(zhì)稱(chēng)為函數(shù)的單向性,稱(chēng)H(x)為單向雜湊函數(shù)。哈希函數(shù)⑤已知x,找出y(y≠x)使得H(y)=H(x)在計(jì)算上是不可行的。如果單向雜湊函數(shù)滿(mǎn)足這一性質(zhì),則稱(chēng)其為弱單向雜湊函數(shù)。⑥找出任意兩個(gè)不同的輸入x、y,使得H(y)=H(x)在計(jì)算上是不可行的。如果單向雜湊函數(shù)滿(mǎn)足這一性質(zhì),則稱(chēng)其為強(qiáng)單向雜湊函數(shù)。第⑤和第⑥個(gè)條件給出了雜湊函數(shù)無(wú)碰撞性的概念,如果雜湊函數(shù)對(duì)不同的輸入可產(chǎn)生相同的輸出,則稱(chēng)該函數(shù)具有碰撞性。哈希函數(shù)生日悖論

在k人中,有兩人生日相同的概率為0.5時(shí),k有多大?定義:設(shè)有k個(gè)整數(shù)項(xiàng),每項(xiàng)在1到n之間等可能取值。則k個(gè)整數(shù)項(xiàng)中至少有兩個(gè)取值相同的概率為P(n,k);k個(gè)數(shù)據(jù)項(xiàng)中任意兩個(gè)取值都不同的概率,記為Q(n,k)生日悖論求P(365,k)≥0.5的最小k哈希函數(shù)生日悖論常規(guī)理解是k≥365/2時(shí),P(365,k)≥0.5實(shí)際上k≤365,k個(gè)數(shù)據(jù)項(xiàng)中任意兩個(gè)都不相同的所有取值方式數(shù)為經(jīng)測(cè)算 P(365,23)=0.5073 P(365,100)=0.9999997哈希函數(shù)將生日悖論推廣為下述問(wèn)題:已知一個(gè)在1到n之間均勻分布的整數(shù)型隨機(jī)變量,若該變量的k個(gè)取值中至少有兩個(gè)取值相同的概率大于0.5,則k至少多大?與上類(lèi)似,

令P(n,k)>0.5,可得若取n=365,則

哈希函數(shù)生日悖論的本質(zhì)就是隨著元素的增多,出現(xiàn)重復(fù)元素的概率會(huì)以驚人速度增長(zhǎng),而并非我們認(rèn)為的線(xiàn)性增長(zhǎng)。哈希函數(shù)的碰撞性,就是我們所提到的生日攻擊。隨著k值增長(zhǎng),哈希函數(shù)發(fā)生碰撞的概率是否會(huì)極速增大?哈希函數(shù)

哈希函數(shù)MD4是MD5雜湊算法的前身,由RonRivest于1990年10月作為RFC提出,1992年4月公布的MD4的改進(jìn)(RFC1320,1321)稱(chēng)為MD5。MD5算法采用迭代型雜湊函數(shù)的一般結(jié)構(gòu)。算法的輸入為任意長(zhǎng)的消息,分為512比特長(zhǎng)的分組,輸出為128比特的消息摘要。MD5算法MD5算法MD5處理步驟對(duì)消息填充,使得其比特長(zhǎng)在模512下為448。附加消息的長(zhǎng)度用步驟①留出的64比特以little-endian方式來(lái)表示消息被填充前的長(zhǎng)度。如果消息長(zhǎng)度大于264,則以264為模數(shù)取模。對(duì)MD緩沖區(qū)初始化算法使用128比特長(zhǎng)的緩沖區(qū)以存儲(chǔ)中間結(jié)果和最終雜湊值,緩沖區(qū)可表示為4個(gè)32比特長(zhǎng)的寄存器(A,B,C,D)以分組為單位對(duì)消息進(jìn)行處理每一分組都經(jīng)一壓縮函數(shù)HMD5處理。HMD5是算法的核心。MD5算法MD5算法HMD5的4輪處理過(guò)程結(jié)構(gòu)一樣,但所用的邏輯函數(shù)不同,分別表示為F、G、H、I。輸入:當(dāng)前處理的消息分組Yq和緩沖區(qū)的當(dāng)前值輸出:第4輪的輸出與第1輪的輸入CVq相加MD5的安全性目前對(duì)MD5的攻擊已取得以下結(jié)果對(duì)單輪MD5使用差分密碼分析,可在合理的時(shí)間內(nèi)找出具有相同雜湊值的兩個(gè)消息??烧页鲆粋€(gè)消息分組和兩個(gè)相關(guān)的鏈接變量(即緩沖區(qū)變量ABCD),使得算法產(chǎn)生出相同的輸出。對(duì)單個(gè)512比特長(zhǎng)的消息分組已成功地找出了碰撞,即可找出另一個(gè)消息分組,使得算法對(duì)兩個(gè)消息分組的128比特長(zhǎng)的輸出相同。MD5算法SHA家族的五個(gè)算法:分別是SHA-1、SHA-224、SHA-256、SHA-384,和SHA-512,后四者可并稱(chēng)為SHA-2,而SHA-2是組合值,有不同的位數(shù),其中最受歡迎的是256位。SHA-1和SHA-2是該算法不同的兩個(gè)版本,它們的構(gòu)造和簽名的長(zhǎng)度都有所不一樣,但可以把SHA-2理解為SHA-1的繼承者。SHA1和SHA2由于SHA與MD5都是由MD4演化而來(lái),所以?xún)蓚€(gè)算法極為相似??箵舾F搜索攻擊的強(qiáng)度高于MD5抗擊窮搜索攻擊的強(qiáng)度。由于SHA的設(shè)計(jì)準(zhǔn)則未被公開(kāi),所以它抗擊密碼分析攻擊的強(qiáng)度較難判斷,似乎高于MD5的強(qiáng)度。SHA的速度要比MD5的速度慢。兩個(gè)算法描述起來(lái)都較為簡(jiǎn)單,實(shí)現(xiàn)起來(lái)也較為簡(jiǎn)單,都不需要大的程序和代換表。MD5使用little-endian方式,SHA使用big-endian方式。SHA1和SHA2在密碼學(xué)中,消息認(rèn)證碼(Messageauthenticationcode)被簡(jiǎn)稱(chēng)為MAC。又稱(chēng)消息鑒別碼,文件消息認(rèn)證碼,信息認(rèn)證碼。MAC是經(jīng)過(guò)特定算法后產(chǎn)生的一小段信息,檢查某段消息的完整性,以及作身份驗(yàn)證。MAC算法與哈希函數(shù)最大區(qū)別在于,MAC加入了密鑰到運(yùn)算中。MACMAC眾多MAC算法里面,HMAC是最流行的之一RFC2104公布HMAC,并在IPSec和其他網(wǎng)絡(luò)協(xié)議(如SSL)中廣泛應(yīng)用。RFC2104列舉了HMAC的以下設(shè)計(jì)目標(biāo):可不經(jīng)修改而使用現(xiàn)有的雜湊函數(shù)鑲嵌的雜湊函數(shù)可易于替換為更快或更安全的雜湊函數(shù)。保持鑲嵌的雜湊函數(shù)的最初性能,不因用于HMAC而使其性能降低以簡(jiǎn)單方式使用和處理密鑰易于分析HMAC用于認(rèn)證時(shí)的密碼強(qiáng)度MAC算法的輸出可如下表示:MAC算法的運(yùn)行過(guò)程可描述如下:K的左邊填充0以產(chǎn)生一個(gè)b比特長(zhǎng)的K+(例如K的長(zhǎng)為160比特,b=512,則需填充44個(gè)零字節(jié)0x00)。K+與ipad逐比特異或以產(chǎn)生b比特的分組Si。將M鏈接到Si后。將H作用于步驟3產(chǎn)生的數(shù)據(jù)流。K+與opad逐比特異或,以產(chǎn)生b比特長(zhǎng)的分組S0。將步驟4得到的雜湊值鏈接在S0后。將H作用于步驟6產(chǎn)生的數(shù)據(jù)流并輸出最終結(jié)果。MAC理解哈希算法作用理解MAC與哈希的應(yīng)用關(guān)系想一下,在哪里見(jiàn)到過(guò)哈希值?總結(jié)密碼學(xué)基礎(chǔ)07

數(shù)字簽名與電子證書(shū)學(xué)習(xí)數(shù)字簽名及應(yīng)用教學(xué)目標(biāo)數(shù)字簽名的基本概念數(shù)字簽名標(biāo)準(zhǔn)x.509認(rèn)證SSL/TLS介紹目錄在收發(fā)雙方未建立起完全的信任關(guān)系且存在利害沖突的情況下,僅僅使用MAC就可能仍然不夠安全。數(shù)字簽名技術(shù)用于解決此類(lèi)問(wèn)題。數(shù)字簽名具有以下性質(zhì):能夠驗(yàn)證簽字產(chǎn)生者的身份,以及產(chǎn)生簽字的日期和時(shí)間。能用于證實(shí)被簽消息的內(nèi)容。數(shù)字簽字可由第三方驗(yàn)證,從而能夠解決通信雙方的爭(zhēng)議。數(shù)字簽名基本概念為實(shí)現(xiàn)上述3條性質(zhì),數(shù)字簽字應(yīng)滿(mǎn)足以下要求:簽字的產(chǎn)生必須使用發(fā)方獨(dú)有的一些信息以防偽造和否認(rèn)。簽字的產(chǎn)生應(yīng)較為容易。簽字的識(shí)別和驗(yàn)證應(yīng)較為容易。對(duì)已知的數(shù)字簽字構(gòu)造一新的消息或?qū)σ阎南?gòu)造一假冒的數(shù)字簽字在計(jì)算上都是不可行的。數(shù)字簽名基本概念數(shù)字簽字標(biāo)準(zhǔn)DSS(DigitalSignatureStandard)是由美國(guó)NIST公布的聯(lián)邦信息處理標(biāo)準(zhǔn)FIPSPUB186,其中采用了上一章介紹的SHA和一種新的簽字技術(shù),稱(chēng)為DSA(DigitalSignatureAlgorithm)。DSS最初于1991年公布,在考慮了公眾對(duì)其安全性的反饋意見(jiàn)后,于1993年公布了其修改版。數(shù)字簽名標(biāo)準(zhǔn)DSS與RSA比較RSA算法既能用于加密和簽名,又能用于密鑰交換。DSS使用的算法只能提供數(shù)字簽字功能數(shù)字簽名標(biāo)準(zhǔn)DSA的步驟數(shù)字簽名標(biāo)準(zhǔn)DSA的步驟,上圖中pgq為全局公開(kāi)鑰x為用戶(hù)私鑰y為用戶(hù)公鑰k為用戶(hù)秘密選取的隨機(jī)數(shù)最終簽名為(r,s)r由一系列公鑰算出,s由消息原文算出。r可用于第三方驗(yàn)證s用于完整性與真實(shí)性數(shù)字簽名標(biāo)準(zhǔn)X.509是密碼學(xué)里公鑰證書(shū)的格式標(biāo)準(zhǔn)

X.509證書(shū)己應(yīng)用在包括TLS/SSL在內(nèi)的眾多Intenet協(xié)議里X.509證書(shū)里含有公鑰、身份信息(比如網(wǎng)絡(luò)主機(jī)名,組織的名稱(chēng)或個(gè)體名稱(chēng)等)和簽名信息x.509證書(shū)X.509的格式x.509證書(shū)X.509有多種常用的擴(kuò)展名。但具有這個(gè)擴(kuò)展名的文件可能并不是證書(shū),比如說(shuō)可能只是保存了私鑰.pem–DER編碼的證書(shū)再進(jìn)行Base64編碼后存放在"-----BEGINCERTIFICATE-----"和"-----ENDCERTIFICATE-----"之中.cer,.crt,.der–通常是DER二進(jìn)制格式的,也可Base64編碼。.p7b,.p7c–PKCS#7是簽名或加密數(shù)據(jù)的格式標(biāo)準(zhǔn),不包含數(shù)據(jù).p12–PKCS#12格式,包含證書(shū)的同時(shí)可能還有帶密碼保護(hù)的私鑰.pfx–PFX,PKCS#12之前的格式(通常用PKCS#12格式,比如那些由IIS產(chǎn)生的PFX文件)x.509證書(shū)x.509證書(shū)申請(qǐng)過(guò)程組織機(jī)構(gòu)通過(guò)發(fā)起證書(shū)簽名請(qǐng)求(CSR)來(lái)得到一份簽名的證書(shū)。CSR包含有請(qǐng)求發(fā)起者的身份信息,用來(lái)對(duì)此請(qǐng)求進(jìn)行驗(yàn)真的的公鑰以及所請(qǐng)求證書(shū)專(zhuān)有名稱(chēng)。CA對(duì)這個(gè)專(zhuān)有名稱(chēng)發(fā)布一份證書(shū),并綁定一個(gè)公鑰。組織機(jī)構(gòu)可以把受信的根證書(shū)分發(fā)給所有的成員(現(xiàn)在操作系統(tǒng)、瀏覽器都已內(nèi)置了知名的CA根證書(shū))x.509證書(shū)CA為用戶(hù)產(chǎn)生的證書(shū)應(yīng)有以下特性:其他任一用戶(hù)只要得到CA的公開(kāi)鑰,就能由此得到CA為用戶(hù)簽署的公開(kāi)鑰;除CA以外,任何其他人都不能以不被察覺(jué)的方式修改證書(shū)的內(nèi)容。x.509證書(shū)證書(shū)鏈?zhǔn)菑慕K端用戶(hù)證書(shū)后跟著一系列的CA證書(shū),直到一個(gè)受信任的CA根證書(shū)證書(shū)鏈用于檢查目標(biāo)證書(shū)(證書(shū)鏈里的用戶(hù)證書(shū))里的公鑰及其它數(shù)據(jù)是否屬于其主體。x.509證書(shū)交叉認(rèn)證讓PKI2的用戶(hù)證書(shū)也得到用戶(hù)User1信任CA1生成一包含CA2公鑰的證書(shū)cert2.1(User2)就有了兩條合法的證書(shū)鏈:cert2.2→cert2"cert2.2→cert2.1→cert1

x.509證書(shū)X.509證書(shū)廣泛應(yīng)用在SSL/TLS協(xié)議中,即我們常見(jiàn)的HTTPS站點(diǎn)SSL/TLS介紹(1).client_hello

客戶(hù)端發(fā)起請(qǐng)求,以明文傳輸請(qǐng)求信息,包含版本信息,加密套件候選列表,壓縮算法候選列表,隨機(jī)數(shù),擴(kuò)展字段等信息,相關(guān)信息如下:

支持的最高TSL協(xié)議版本version,從低到高依次SSLv2SSLv3TLSv1TLSv1.1TLSv1.2

客戶(hù)端支持的加密套件ciphersuites列表,每個(gè)加密套件對(duì)應(yīng)四個(gè)功能的組合:認(rèn)證算法Au(身份驗(yàn)證)、密鑰交換算法KeyExchange、對(duì)稱(chēng)加密算法

和信息摘要Mac?隨機(jī)數(shù)random_C,用于后續(xù)的密鑰的生成;SSL/TLS介紹

(2).server_hello+server_certificate+sever_hello_doneserver_hello,服務(wù)端返回協(xié)商的信息結(jié)果server_certificates,服務(wù)器端配置對(duì)應(yīng)的證書(shū)鏈,用于身份驗(yàn)證與密鑰交換;server_hello_done,通知客戶(hù)端server_hello信息發(fā)送結(jié)束;SSL/TLS介紹(3).證書(shū)校驗(yàn)

客戶(hù)端驗(yàn)證證書(shū)的合法性,如果驗(yàn)證通過(guò)才會(huì)進(jìn)行后續(xù)通信,否則根據(jù)錯(cuò)誤情況不同做出提示和操作,合法性驗(yàn)證包括如下:[證書(shū)鏈]的可信性trustedcertificatepath,方法如前文所述;

證書(shū)是否吊銷(xiāo)revocation,有兩類(lèi)方式離線(xiàn)CRL與在線(xiàn)OCSP,不同的客戶(hù)端行為會(huì)不同;

有效期expirydate,證書(shū)是否在有效時(shí)間范圍;

域名domain,核查證書(shū)域名是否與當(dāng)前的訪問(wèn)域名匹配;SSL/TLS介紹

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論