網(wǎng)絡(luò)安全17:Web安全性課件_第1頁
網(wǎng)絡(luò)安全17:Web安全性課件_第2頁
網(wǎng)絡(luò)安全17:Web安全性課件_第3頁
網(wǎng)絡(luò)安全17:Web安全性課件_第4頁
網(wǎng)絡(luò)安全17:Web安全性課件_第5頁
已閱讀5頁,還剩133頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

Chapter16

Web安全性《密碼編碼學(xué)與網(wǎng)絡(luò)安全》

.2022/10/311西安電子科技大學(xué)計(jì)算機(jī)學(xué)院

Chapter16

第一部分SSL/TLS協(xié)議SSL(SecureSocketLayer)是一種在兩個(gè)端實(shí)體(EndEntity)之間提供安全通道的協(xié)議。它具有保護(hù)傳輸數(shù)據(jù)以及識(shí)別通信實(shí)體的功能。安全通道是透明的IETF制定的TLS(TransportLayerSecurity)版本是對(duì)Nescape公司的SSL和Microsoft公司的PCT(PrivateCommunicationTechnology)兩個(gè)協(xié)議的綜合和兼容。重點(diǎn)討論SSL協(xié)議.2022/10/312西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第一部分SSL/TLS協(xié)議SSL(SecureSSSL/TLS協(xié)議設(shè)計(jì)目標(biāo)SSLV2設(shè)計(jì)目標(biāo)為滿足WEB安全通信而設(shè)計(jì)提供客戶和服務(wù)器之間傳輸數(shù)據(jù)的保密性服務(wù)器認(rèn)證(客戶端認(rèn)證可選)SSLV3設(shè)計(jì)目標(biāo)修正SSLV2中存在的多處安全問題設(shè)計(jì)一種安全磋商多種加密算法的機(jī)制.2022/10/313西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL/TLS協(xié)議設(shè)計(jì)目標(biāo)SSLV2設(shè)計(jì)目標(biāo).2022/SSL提供了什么SSL提供了通道級(jí)別的安全:連接的兩端知道所傳輸?shù)臄?shù)據(jù)是保密的,而且沒有被篡改幾乎總是要對(duì)服務(wù)器進(jìn)行認(rèn)證可選的客戶端認(rèn)證針對(duì)異常情況的安全通知錯(cuò)誤警示關(guān)閉連接所有這些依賴于某些對(duì)系統(tǒng)的假定假定已經(jīng)正確產(chǎn)生了密鑰數(shù)據(jù)并且該密鑰已被安全地保管.2022/10/314西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL提供了什么SSL提供了通道級(jí)別的安全:連接的兩端知道SSL與TCP/IPSSL連接非常類似于“保密的”的TCP連接位于TCP之上,應(yīng)用層之下幾乎只能在TCP上運(yùn)行,而不能在UDP或IP上運(yùn)行,因而它依賴于可靠的傳輸協(xié)議微軟的STLP和無線應(yīng)用論壇的WTLS均為意圖在數(shù)據(jù)報(bào)傳輸層(如UDP)上正確工作的變種。.2022/10/315西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL與TCP/IPSSL連接非常類似于“保密的”的TCP連SSL變種譜系樹SSLV1(1994)未發(fā)布SSLV2(1994)第一版SSLV3(1995)TLS(1997-1999)PCT(1995)STLP(1996)WTLS(1998).2022/10/316西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL變種譜系樹SSLV1(1994)SSLV2(199用于WEB的SSL保護(hù)使用HTTP的WEB通信新的URLhttps://在瀏覽器中的表現(xiàn)NETSCAPE:工具條上會(huì)顯示一把鑰匙IE:右下角顯示一把鎖幾乎所有的商業(yè)WEB服務(wù)器和瀏覽器都實(shí)現(xiàn)了內(nèi)置的SSL協(xié)議,通過配置即可使用.2022/10/317西安電子科技大學(xué)計(jì)算機(jī)學(xué)院用于WEB的SSL保護(hù)使用HTTP的WEB通信.2022/1在SSL上構(gòu)建一切除了HTTP和NNTP(SNEWS)外,還可以用于SMTP、Telnet、FTP等,也可用于保護(hù)專有協(xié)議。協(xié)議端口標(biāo)準(zhǔn)化協(xié)議實(shí)現(xiàn)OPENSSL(C語言實(shí)現(xiàn))pureTLS(java實(shí)現(xiàn))ApacheSSL(針對(duì)Apache服務(wù)器的實(shí)現(xiàn))Mod_ssl.2022/10/318西安電子科技大學(xué)計(jì)算機(jī)學(xué)院在SSL上構(gòu)建一切除了HTTP和NNTP(SNEWS)外,兩個(gè)主要的協(xié)議SSL記錄協(xié)議建立在可靠的傳輸協(xié)議(如TCP)之上它提供連接安全性,有兩個(gè)特點(diǎn)保密性,使用了對(duì)稱加密算法完整性,使用HMAC算法用來封裝高層的協(xié)議SSL握手協(xié)議客戶和服務(wù)器之間相互鑒別協(xié)商加密算法和密鑰它提供連接安全性,有三個(gè)特點(diǎn)身份鑒別,至少對(duì)一方實(shí)現(xiàn)鑒別,也可以是雙向鑒別協(xié)商得到的共享密鑰是安全的,中間人不能夠知道協(xié)商過程是可靠的.2022/10/319西安電子科技大學(xué)計(jì)算機(jī)學(xué)院兩個(gè)主要的協(xié)議SSL記錄協(xié)議.2022/10/239西安電子SSL的兩個(gè)重要概念SSL連接(connection)一個(gè)連接是一個(gè)提供一種合適類型服務(wù)的傳輸(OSI分層的定義)。SSL的連接是點(diǎn)對(duì)點(diǎn)的關(guān)系。連接是暫時(shí)的,每一個(gè)連接和一個(gè)會(huì)話關(guān)聯(lián)。SSL會(huì)話(session)一個(gè)SSL會(huì)話是在客戶與服務(wù)器之間的一個(gè)關(guān)聯(lián)。會(huì)話由HandshakeProtocol創(chuàng)建。會(huì)話定義了一組可供多個(gè)連接共享的密碼安全參數(shù)。會(huì)話用以避免為每一個(gè)連接提供新的安全參數(shù)所需昂貴的協(xié)商代價(jià)。.2022/10/3110西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL的兩個(gè)重要概念SSL連接(connection).20SSL基礎(chǔ)-針對(duì)RSA服務(wù)器認(rèn)證的SSLSSL靈活性:單向認(rèn)證和雙向認(rèn)證認(rèn)證+加密和認(rèn)證加密算法:RSADSSDHFORTEZZA……連接分為兩個(gè)節(jié)段:握手階段完成對(duì)服務(wù)器認(rèn)證并建立加密密鑰數(shù)據(jù)傳輸階段加密數(shù)據(jù)傳輸.2022/10/3111西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL基礎(chǔ)-針對(duì)RSA服務(wù)器認(rèn)證的SSLSSL靈活性:.2握手協(xié)議握手階段的目的客戶和服務(wù)器協(xié)商保護(hù)數(shù)據(jù)的算法(及其具體參數(shù))確立在協(xié)商好的算法上使用的加密密鑰可選擇對(duì)客戶端進(jìn)行認(rèn)證

clientserver----------------------------------------------------------------------------所支持的加密算法,隨機(jī)數(shù)選中的加密算法,隨機(jī)數(shù),服務(wù)器證書加密后的pre_master_secret

計(jì)算相關(guān)演化密鑰計(jì)算相關(guān)演化密鑰握手消息的MAC值握手消息的MAC值注:1.pre_master_secret可以由KDF(keyderivationfunction)演化出master_secret,最后再通過master_secret演化出系列加密密鑰。

2.最后兩步防止握手本身遭受篡改(如低強(qiáng)度密碼算法替換等).3.客戶端和服務(wù)器端隨機(jī)數(shù)的傳輸,防止重放攻擊。.2022/10/3112西安電子科技大學(xué)計(jì)算機(jī)學(xué)院握手協(xié)議握手階段的目的.2022/10/2312西安電子科技握手消息

clientserver----------------------------------------------------------------------------握手:ClientHello

握手:ServerHelloCertificate……ServerHelloDoneClientKeyExchange……(ChangeCipherSpec)Finished

……(ChangeCipherSpec)Finished.2022/10/3113西安電子科技大學(xué)計(jì)算機(jī)學(xué)院握手消息clientSSL記錄協(xié)議實(shí)際的數(shù)據(jù)傳輸是使用SSL記錄協(xié)議實(shí)現(xiàn)的數(shù)據(jù)流分割成一系列片段并加以傳輸,每個(gè)片斷單獨(dú)保護(hù)和傳輸為實(shí)現(xiàn)完整性保護(hù),對(duì)片段進(jìn)行MAC保護(hù)為實(shí)現(xiàn)機(jī)密性保護(hù),對(duì)片段進(jìn)行加密保護(hù)傳輸?shù)氖前踩涗?2022/10/3114西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL記錄協(xié)議實(shí)際的數(shù)據(jù)傳輸是使用SSL記錄協(xié)議實(shí)現(xiàn)的.2記錄頭(Head)ContentType;——8位,上層協(xié)議類型Majorversion;Minnorversion——16位,主次版本CompressedLength:16位—加密后數(shù)據(jù)的長度,不超過214+2048字節(jié)(SSL幾乎不用壓縮,雖然支持)EncryptedDatafragment;——密文數(shù)據(jù).2022/10/3115西安電子科技大學(xué)計(jì)算機(jī)學(xué)院記錄頭(Head)ContentType;——8位,上層記錄負(fù)荷(Payload)支持4種協(xié)議消息:application_data、alert、handshake、change_cipher_spec.Alert協(xié)議消息:報(bào)警等級(jí)(warning/fatal)+具體報(bào)警編碼2字節(jié)change_cipher_spec協(xié)議消息:1字節(jié),將掛起狀態(tài)變成當(dāng)前狀態(tài),指示在此之后的所有消息都將使用剛剛商定的密碼進(jìn)行加密。handshake協(xié)議消息:類型(1字節(jié))+長度(3字節(jié))+消息,類型共10種.2022/10/3116西安電子科技大學(xué)計(jì)算機(jī)學(xué)院記錄負(fù)荷(Payload)支持4種協(xié)議消息:appli記錄負(fù)荷(Payload).2022/10/3117西安電子科技大學(xué)計(jì)算機(jī)學(xué)院記錄負(fù)荷(Payload).2022/10/2317西安電子完整SSL會(huì)話握手協(xié)議交換Hello消息,對(duì)于算法、交換隨機(jī)值等協(xié)商一致交換必要的密碼參數(shù),以便雙方得到統(tǒng)一的premastersecret交換證書和相應(yīng)的密碼信息,以便進(jìn)行身份認(rèn)證產(chǎn)生mastersecret把安全參數(shù)提供給SSL記錄層檢驗(yàn)雙方是否已經(jīng)獲得同樣的安全參數(shù).2022/10/3118西安電子科技大學(xué)計(jì)算機(jī)學(xué)院完整SSL會(huì)話握手協(xié)議交換Hello消息,對(duì)于算法、交換隨機(jī).2022/10/3119西安電子科技大學(xué)計(jì)算機(jī)學(xué)院.2022/10/2319西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第一階段:建立起安全協(xié)商客戶發(fā)送一個(gè)client_hello消息,包括以下參數(shù):版本、隨機(jī)數(shù)(32位時(shí)間戳+28字節(jié)隨機(jī)序列)、會(huì)話ID、客戶支持的密碼算法列表(CipherSuite)、客戶支持的壓縮方法列表.然后,客戶等待服務(wù)器的server_hello消息服務(wù)器發(fā)送server_hello消息,參數(shù):客戶建議的低版本以及服務(wù)器支持的最高版本、服務(wù)器產(chǎn)生的隨機(jī)數(shù)、會(huì)話ID、服務(wù)器從客戶建議的密碼算法和壓縮方法中確定一套本次連接使用的確定方法..2022/10/3120西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第一階段:建立起安全協(xié)商客戶發(fā)送一個(gè)client_helloCipherSuite指定了密鑰交換的方法,SSL支持以下一些方法:RSA,要求服務(wù)器提供一個(gè)RSA證書DH(Diffie-Hellman),要求服務(wù)器的證書中包含了由CA簽名的DH公開參數(shù)。客戶或者在證書中提供DH公開參數(shù),或者在密鑰交換消息中提供此參數(shù)EDH(EphemeralDiffie-Hellman),產(chǎn)生臨時(shí)的密鑰,DH公開參數(shù)由發(fā)送者的私鑰進(jìn)行簽名,接收者用對(duì)應(yīng)的公鑰進(jìn)行驗(yàn)證

匿名的DH,不加鑒別。會(huì)受到中間人攻擊然后,指定以下信息加密算法和類型(流還是分組密碼算法)HMAC、MD5還是SHA-1是否可出口HashSizeKeyMaterialIVSize.2022/10/3121西安電子科技大學(xué)計(jì)算機(jī)學(xué)院CipherSuite指定了密鑰交換的方法,SSL支持以下一第二階段:服務(wù)器鑒別和密鑰交換服務(wù)器發(fā)送certificate消息,消息包含一個(gè)X.509證書,或者一條證書鏈除了匿名DH之外的密鑰交換方法都需要服務(wù)器發(fā)送server_key_exchange消息可選的,有些情況下可以不需要。只有當(dāng)certificate消息沒有包含必需的數(shù)據(jù)的時(shí)候才發(fā)送此消息消息包含簽名,被簽名的內(nèi)容包括兩個(gè)隨機(jī)數(shù)以及服務(wù)器參數(shù)服務(wù)器發(fā)送certificate_request消息(可選)非匿名server可以向客戶請(qǐng)求一個(gè)證書包含證書類型和CAs服務(wù)器發(fā)送server_hello_done,然后等待應(yīng)答.2022/10/3122西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第二階段:服務(wù)器鑒別和密鑰交換服務(wù)器發(fā)送certificat第二階段:服務(wù)器鑒別和密鑰交換.2022/10/3123西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第二階段:服務(wù)器鑒別和密鑰交換.2022/10/2323西安第三階段:客戶鑒別和密鑰交換客戶收到server_done消息后,它根據(jù)需要檢查服務(wù)器提供的證書,并判斷server_hello的參數(shù)是否可以接受,如果都沒有問題的話,發(fā)送一個(gè)或多個(gè)消息給服務(wù)器。如果服務(wù)器請(qǐng)求證書的話,則客戶首先發(fā)送一個(gè)certificate消息,若客戶沒有證書,則發(fā)送一個(gè)no_certificate警告。然后客戶發(fā)送client_key_exchange消息,消息的內(nèi)容取決于密鑰交換的類型(如果是RSA,則含加密的PreMasterSecret)。最后,客戶發(fā)送一個(gè)certificate_verify消息(可選),其中包含一個(gè)簽名,對(duì)從第一條消息以來的所有握手消息的HMAC值(用master_secret)進(jìn)行簽名.2022/10/3124西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第三階段:客戶鑒別和密鑰交換客戶收到server_done消第三階段:客戶鑒別和密鑰交換.2022/10/3125西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第三階段:客戶鑒別和密鑰交換.2022/10/2325西安電第四階段:結(jié)束第四階段建立起一個(gè)安全的連接客戶發(fā)送一個(gè)change_cipher_spec消息,并且把協(xié)商得到的CipherSuite拷貝到當(dāng)前連接的狀態(tài)之中然后,客戶用本次連接協(xié)商的算法、密鑰參數(shù)發(fā)送一個(gè)finished消息,這條消息可以檢查密鑰交換和鑒別過程是否已經(jīng)成功。其中包括一個(gè)校驗(yàn)值,對(duì)所有以來的消息進(jìn)行校驗(yàn)。服務(wù)器同樣發(fā)送change_cipher_spec消息和finished消息。握手過程完成,客戶和服務(wù)器可以交換應(yīng)用層數(shù)據(jù)。.2022/10/3126西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第四階段:結(jié)束第四階段建立起一個(gè)安全的連接.2022/10/第四階段:結(jié)束.2022/10/3127西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第四階段:結(jié)束.2022/10/2327西安電子科技大學(xué)計(jì)算密鑰交換算法SSL記錄協(xié)議需要:CipherSuite,mastersecret,theclient&serverrandomvalues在hello消息中,交換隨機(jī)數(shù)以及各種算法兩類密鑰交換算法:RSA,客戶產(chǎn)生一個(gè)48字節(jié)的pre_master_secret,然后通過服務(wù)器的公鑰傳遞給服務(wù)器Diffie-Hellman,雙方協(xié)商得到的密鑰被用作pre_master_secret對(duì)于各種密鑰交換算法,從pre_master_secret計(jì)算得到Master_secret,然后從內(nèi)存中刪除Master_secret總是48字節(jié)長,而pre_master_secret長度不定,取決于密鑰交換算法.2022/10/3128西安電子科技大學(xué)計(jì)算機(jī)學(xué)院密鑰交換算法SSL記錄協(xié)議需要:CipherSuite,m密鑰導(dǎo)出.2022/10/3129西安電子科技大學(xué)計(jì)算機(jī)學(xué)院密鑰導(dǎo)出.2022/10/2329西安電子科技大學(xué)計(jì)算機(jī)學(xué)院Master_secret的產(chǎn)生SSL3.0Master_secret=MD5(pre_master_secret‖SHA-1(‘A’‖pre_master_secret||ClientHello.random‖ServerHello.random))‖MD5(pre_master_secret‖SHA-1(‘BB’‖pre_master_secret||ClientHello.random‖ServerHello.random))‖MD5(pre_master_secret‖SHA-1(‘CCC’‖pre_master_secret||ClientHello.random‖ServerHello.random))

TLS1.0master_secret=PRF(pre_master_secret,“mastersecret”, ClientHello.random,+ServerHello.random)[0..47]*PRF(secret,label,seed)為偽隨機(jī)函數(shù).2022/10/3130西安電子科技大學(xué)計(jì)算機(jī)學(xué)院Master_secret的產(chǎn)生SSL3.0.2022/1偽隨機(jī)函數(shù)PRF(secret,label,seed)P_hash(secret,seed)=+HMAC_hash(secret,A(1)+seed)+HMAC_hash(secret,A(2)+seed)+HMAC_hash(secret,A(3)+seed)+...這里A()定義如下:

A(0)=seedA(i)=HMAC_hash(secret,A(i-1))偽隨機(jī)函數(shù)PRF(secret,label,seed)=P_MD5(S1,label+seed)XORP_SHA-1(S2,label+seed);

這里,S1和S2為secret的各一半,如果secret為奇數(shù)個(gè)字節(jié),則S1和S2共享一個(gè)字節(jié).2022/10/3131西安電子科技大學(xué)計(jì)算機(jī)學(xué)院偽隨機(jī)函數(shù)PRF(secret,label,seed)P最終需要的密鑰導(dǎo)出.2022/10/3132西安電子科技大學(xué)計(jì)算機(jī)學(xué)院最終需要的密鑰導(dǎo)出.2022/10/2332西安電子科技大學(xué)密鑰導(dǎo)出公式Key_block=MD5(master_secret||SHA-1(‘A’+master_secret+server_random+client_random))||MD5(master_secret||SHA-1(‘BB’+master_secret+server_random+client_random))||MD5(master_secret||SHA-1(‘CCC’+master_secret+server_random+client_random))||MD5(master_secret||SHA-1(‘DDDD’+master_secret+server_random+client_random))||…….2022/10/3133西安電子科技大學(xué)計(jì)算機(jī)學(xué)院密鑰導(dǎo)出公式Key_block=.2022/10/2333西MAC計(jì)算使用共享的密鑰MAC_write_secrethash(MAC_write_seret||pad_2||hash(MAC_write_secret||pad_1||seq_num||SSLCompressed.type||SSLCompressed.length||SSLCompressed.fragment)其中:MAC_write_secret:共享的保密密鑰hash:密碼散列函數(shù)(MD5或SHA-1)pad_1:0x36重復(fù)48次(MD5);或40次(SHA-1)pad_2:0x5C重復(fù)48次(MD5);或40次(SHA-1)seq_num:該消息的序列號(hào)SSLCompressed.type:更高層協(xié)議用于處理本分段SSLCompressed.length:壓縮分段的長度SSLCompressed.fragment:壓縮的分段(無壓縮時(shí)為明文段)注:非常類似HMAC.2022/10/3134西安電子科技大學(xué)計(jì)算機(jī)學(xué)院MAC計(jì)算使用共享的密鑰MAC_write_secret.2報(bào)警(Alert)協(xié)議用來一方向另一方報(bào)告例外情況,兩個(gè)級(jí)別:warning/fatal如果是Fatal級(jí)別的報(bào)警,則應(yīng)終止連接.報(bào)警種類:

unexpected_messagebad_record_macdecryption_failedrecord_overflowdecompression_failurehandshake_failureno_certificatebad_certificateunsupported_certificatecertificate_revokedcertificate_expiredcertificate_unknownillegal_parameterunknown_caaccess_denieddecode_errordecrypt_errorexport_restrictionprotocol_versioninsufficient_securityinternal_erroruser_cancelledno_renegotiation.2022/10/3135西安電子科技大學(xué)計(jì)算機(jī)學(xué)院報(bào)警(Alert)協(xié)議用來一方向另一方報(bào)告例外情況,兩個(gè)級(jí)別會(huì)話恢復(fù)整個(gè)握手協(xié)議開銷巨大,如果集成會(huì)話恢復(fù)機(jī)制,則可以在客戶和服務(wù)器通信過一次的情況下,可以跳過握手階段而直接進(jìn)行數(shù)據(jù)傳輸.通過使用上一次握手中確立的pre_master_secret,則可以避免許多計(jì)算開銷。恢復(fù)允許根據(jù)共同的master_secret,來產(chǎn)生新的密鑰。通過客戶使用ClientHello中的Session_id,申請(qǐng)會(huì)話恢復(fù),服務(wù)器通過使用ServerHello中相同的Session_id,來同意會(huì)話恢復(fù),接下來就會(huì)跳過其余步驟而使用保存的master_secret來產(chǎn)生新的所有的加密密鑰(由于新的隨機(jī)數(shù)不同,而使得新產(chǎn)生的加密密鑰與以前不同)。

.2022/10/3136西安電子科技大學(xué)計(jì)算機(jī)學(xué)院會(huì)話恢復(fù)整個(gè)握手協(xié)議開銷巨大,如果集成會(huì)話恢復(fù)機(jī)制,則可以在客戶端認(rèn)證實(shí)現(xiàn)服務(wù)器對(duì)客戶端的認(rèn)證服務(wù)器通過向客戶端發(fā)送CertificateRequest消息,客戶端通過Certificate和CertificateVerify消息予以應(yīng)答CertificateVerify消息是一個(gè)使用與其傳輸?shù)淖C書關(guān)聯(lián)的私鑰簽名的消息。.2022/10/3137西安電子科技大學(xué)計(jì)算機(jī)學(xué)院客戶端認(rèn)證實(shí)現(xiàn)服務(wù)器對(duì)客戶端的認(rèn)證.2022/10/2337臨時(shí)RSA因受出口限制,為配合客戶端,服務(wù)器會(huì)產(chǎn)生一個(gè)臨時(shí)的低強(qiáng)度密鑰,并用高強(qiáng)度密鑰簽名,客戶端將驗(yàn)證臨時(shí)密鑰上的服務(wù)器簽名,并使用它來打包pre_master_Secret.服務(wù)器向客戶端發(fā)送消息ServerKeyExchange.2022/10/3138西安電子科技大學(xué)計(jì)算機(jī)學(xué)院臨時(shí)RSA因受出口限制,為配合客戶端,服務(wù)器會(huì)產(chǎn)生一個(gè)臨時(shí)的再握手是在當(dāng)前受保護(hù)的連接上進(jìn)行的一次新的SSL握手,因而傳輸過程中的握手消息是經(jīng)過加密的一旦新的握手完成,將使用新的會(huì)話狀態(tài)來保護(hù)數(shù)據(jù)客戶端可以簡單的通過發(fā)送一條ClientHello消息來初始化一次新的握手服務(wù)器端可以通過HelloRequest消息來初始化一次新的握手.2022/10/3139西安電子科技大學(xué)計(jì)算機(jī)學(xué)院再握手是在當(dāng)前受保護(hù)的連接上進(jìn)行的一次新的SSL握手,因而傳SSL的安全性保護(hù)master_secret保護(hù)服務(wù)器的私鑰使用良好的隨機(jī)數(shù)證書鏈檢查算法選擇(強(qiáng)度).2022/10/3140西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL的安全性保護(hù)master_secret.2022/10SSL實(shí)現(xiàn)OpenSSL,最新0.9.8,實(shí)現(xiàn)了SSLv2,SSLv3,TLSv1.0Openssl——acommandlinetool.ssl(3)——theOpenSSLSSL/TLSlibrary.crypto(3)——theOpenSSLCryptolibrary.URL:SSLeay.au/~ftp/Crypto/Internet號(hào)碼分配當(dāng)局已經(jīng)為具備SSL功能的應(yīng)用分配了固定的端口號(hào)例如帶SSL的HTTP(https)被分配以端口號(hào)443帶SSL的SMTP(ssmtp)被分配以端口號(hào)465帶SSL的NNTP(snntp)被分配以端口號(hào)563.2022/10/3141西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL實(shí)現(xiàn)OpenSSL,最新0.9.8,實(shí)現(xiàn)了SSLvWindows2000和XP下的IPSec文章–/infocus/1519–/infocus/1526–/infocus/1528實(shí)現(xiàn)特點(diǎn)–與IETF兼容–支持Kerberos、基于證書的認(rèn)證、基于共享密鑰的認(rèn)證–一些不受IPSec保護(hù)的流量:廣播包、組播包、RSVP包、IKE包、Kerberos包–與L2TP結(jié)合起來提供安全的VPN遠(yuǎn)程訪問–不能與NAT協(xié)同工作–仍然面臨一些攻擊:DOS,其他層上協(xié)議的攻擊對(duì)比FreeBSD的實(shí)現(xiàn):/doc/en_US.ISO8859-1/books/handbook/ipsec.html.2022/10/3142西安電子科技大學(xué)計(jì)算機(jī)學(xué)院Windows2000和XP下的IPSec文章.2022/SET協(xié)議SecureElectronicTransaction.2022/10/3143西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SET協(xié)議SecureElectronicTransac第三部分SET協(xié)議SecureElectronicTransaction,SET安全電子交易協(xié)議1996年,由Visa和MasterCard兩大國際信用卡組織聯(lián)合開發(fā)的電子商務(wù)交易參考標(biāo)準(zhǔn)(復(fù)雜、開放)。為在Internet上從事在線交易而設(shè)立的一個(gè)開放的以信用卡交易為特征的規(guī)范。得到IBM、HP、Microsoft、Verifone、RSA、Terisa、GTE、Verisign等公司的支持,成為事實(shí)上的工業(yè)標(biāo)準(zhǔn),并為IETF所認(rèn)可。SET本身不是一個(gè)支付系統(tǒng),而是一個(gè)安全協(xié)議和格式集。實(shí)現(xiàn)交易參與者行為的安全性、一致性、廣泛性支持產(chǎn)品包括IBM的Net.Commerce、CommercePoint,Verifone的vWallet、vPos、vGate,Microsft的MS-Wallet等其他產(chǎn)品還包括:CyberCash、GlobalSet、TrinTech、DigiCash、OpenMarket等。.2022/10/3144西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第三部分SET協(xié)議SecureElectronicTSET協(xié)議的發(fā)展歷史1996年,Visa&MasterCard作為主要制定者發(fā)起并公布。1997年出版規(guī)范,長達(dá)971頁。1998年出現(xiàn)SET兼容的產(chǎn)品。SET協(xié)議標(biāo)準(zhǔn)組織SETCo在1998和1999年提出許多協(xié)議擴(kuò)展。目前因各種原因,該協(xié)議因其復(fù)雜性,而受到冷落,前途比較渺茫。其設(shè)計(jì)思想值學(xué)習(xí)和探討。.2022/10/3145西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SET協(xié)議的發(fā)展歷史1996年,Visa&Master電子商務(wù)(ElectronicCommerce,EC)是指利用簡單、快捷、低成本的電子通信方式,買賣雙方從事的商貿(mào)活動(dòng)(不謀面或少謀面)。內(nèi)容:電子方式為特征+商貿(mào)活動(dòng)電子方式:電話、傳真、EMAIL、Internet、EDI等。最終模式應(yīng)是建立在Internet上活動(dòng)流:網(wǎng)絡(luò)上信息流、商流、資金流、部分物流的實(shí)現(xiàn)。具體活動(dòng):交易方匹配、洽談、訂貨、合同、支付、發(fā)票、報(bào)關(guān)、納稅、售后服務(wù)等。涉及的機(jī)構(gòu):消費(fèi)者、商家、金融機(jī)構(gòu)、政府機(jī)構(gòu)、認(rèn)證機(jī)構(gòu)、配送中心等。特征:普遍性、方便性、整體性、安全性、協(xié)調(diào)性等。.2022/10/3146西安電子科技大學(xué)計(jì)算機(jī)學(xué)院電子商務(wù)(ElectronicCommerce,EC)是指電子商務(wù)發(fā)展階段20世紀(jì)60-90年代,基于EDI(電子數(shù)據(jù)交換)的電子商務(wù)是指業(yè)務(wù)文件按照一個(gè)公認(rèn)的標(biāo)準(zhǔn)從一臺(tái)計(jì)算機(jī)傳輸?shù)搅硪慌_(tái)計(jì)算機(jī)上的電子傳輸方式。依賴于專用網(wǎng)絡(luò)和專用EDI軟件標(biāo)準(zhǔn):美國-X12聯(lián)合國-UN/EDIFACT20世紀(jì)90年代以后,基于Internet的電子商務(wù)Dell公司的網(wǎng)絡(luò)直銷Amazon公司的網(wǎng)上書店eBay公司的個(gè)人拍賣網(wǎng)站應(yīng)用模式:支付角度:支付型/非支付型服務(wù)角度:B2BB2CC2CB2GC2G…….2022/10/3147西安電子科技大學(xué)計(jì)算機(jī)學(xué)院電子商務(wù)發(fā)展階段20世紀(jì)60-90年代,基于EDI(電子數(shù)據(jù)電子商務(wù)分類-支付角度電子商務(wù)業(yè)務(wù)支付型非支付型NON-SET支付SET支付稅務(wù)申報(bào)、電子選舉、在線報(bào)表、安全政務(wù)等電子銀行、代繳代付、電子證券、網(wǎng)上購物等支付卡交易、電子銀行、網(wǎng)上購物等.2022/10/3148西安電子科技大學(xué)計(jì)算機(jī)學(xué)院電子商務(wù)分類-支付角度電子商務(wù)支付型非支付型NON-SETS電子商務(wù)安全需求與措施安全性需求有效性機(jī)密性完整性可靠性/不可抵賴性/鑒別可審查性措施加密技術(shù)對(duì)稱加密/公鑰加密密鑰管理技術(shù)數(shù)字證書數(shù)字簽名安全電子商務(wù)協(xié)議安全電子郵件/SSL/SET…….2022/10/3149西安電子科技大學(xué)計(jì)算機(jī)學(xué)院電子商務(wù)安全需求與措施安全性需求.2022/10/2349西SET協(xié)議安全支付商業(yè)需求提供付款和訂購信息的保密性確保傳送數(shù)據(jù)的完整性為持卡人是否為信用卡帳號(hào)合法用戶提供認(rèn)證為商家提供認(rèn)證確保交易各方利益創(chuàng)建不依賴于傳輸安全機(jī)制也不妨礙其使用的協(xié)議在軟件和網(wǎng)絡(luò)提供者之間提供功能設(shè)施和互操作性.2022/10/3150西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SET協(xié)議安全支付商業(yè)需求提供付款和訂購信息的保密性.202SET協(xié)議中安全特性和實(shí)現(xiàn)SET協(xié)議中安全考慮信息保密性-帳號(hào)和支付信息等的傳輸安全,加密技術(shù)認(rèn)證-持卡人帳號(hào)和商家認(rèn)證,通過數(shù)字證書機(jī)制,確認(rèn)參與者的真實(shí)身份防止抵賴-數(shù)字簽名技術(shù)數(shù)據(jù)完整性-防止客戶發(fā)送給商家的信息被篡改,數(shù)字簽名和HASH、MAC手段授權(quán)安全實(shí)現(xiàn)在消費(fèi)者端實(shí)現(xiàn)安全電子錢包在商家實(shí)現(xiàn)安全電子商家在銀行等金融機(jī)構(gòu)實(shí)現(xiàn)安全支付網(wǎng)關(guān),完成SET協(xié)議和銀行金融系統(tǒng)相關(guān)標(biāo)準(zhǔn)(如ISO8583)的轉(zhuǎn)換。

.2022/10/3151西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SET協(xié)議中安全特性和實(shí)現(xiàn)SET協(xié)議中安全考慮.2022/1SET協(xié)議規(guī)范概述規(guī)范涉及的內(nèi)容:加密算法的應(yīng)用證書消息和對(duì)象格式購買消息和對(duì)象格式請(qǐng)款消息和對(duì)象格式交易實(shí)體之間消息協(xié)議SET規(guī)范描述了系統(tǒng)設(shè)計(jì)考慮、證書管理、支付系統(tǒng)正式的協(xié)議定義、傳輸機(jī)制以及增加的擴(kuò)展(支持硬件設(shè)備、特殊消息等)。大量采用已經(jīng)存在的、相關(guān)的、用于支持的國際標(biāo)準(zhǔn)。.2022/10/3152西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SET協(xié)議規(guī)范概述規(guī)范涉及的內(nèi)容:.2022/10/235SET組件.2022/10/3153西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SET組件.2022/10/2353西安電子科技大學(xué)計(jì)算機(jī)學(xué)涉及的實(shí)體和概念持卡人(Cardholder)商家(Merchant)發(fā)卡行(Issuer)收單行(Acquirer)支付網(wǎng)關(guān)(PaymentGateway)支付卡品牌(Brand)認(rèn)證中心(CertificateAuthority,CA).2022/10/3154西安電子科技大學(xué)計(jì)算機(jī)學(xué)院涉及的實(shí)體和概念持卡人(Cardholder).2022/1雙簽名目的在于(持卡人)將商家訂單信息(OrderInformation,OI)和收單行支付信息(PaymentInstructions,PI)連接起來一起發(fā)送(保證商家只能看到OI,收單行只能看到PI),但是又要保證OI和PI的一致性關(guān)聯(lián)性,而采用的一種組合簽名方法。首先分別計(jì)算OI的HASH值和PI的HASH值,二者連接后再次執(zhí)行HASH,然后簽名。即:DS=EKRc[H(H(PI)||H(OI))].2022/10/3155西安電子科技大學(xué)計(jì)算機(jī)學(xué)院雙簽名目的在于(持卡人)將商家訂單信息(OrderInfo雙簽名.2022/10/3156西安電子科技大學(xué)計(jì)算機(jī)學(xué)院雙簽名.2022/10/2356西安電子科技大學(xué)計(jì)算機(jī)學(xué)院證書類型持卡者證書保證簽署支付者和正確的支付卡帳號(hào)一致,帳號(hào)信息通過HASH方法作為持卡者證書中的一部分內(nèi)容。商家證書需要兩個(gè)密鑰對(duì)參與SET交易,一個(gè)是簽名密鑰和證書,一個(gè)是密鑰交換密鑰和證書。支付網(wǎng)關(guān)證書需要兩個(gè)密鑰對(duì)參與SET交易,一個(gè)是簽名密鑰和證書,一個(gè)是密鑰交換密鑰和證書。收單行證書發(fā)卡行證書證書鏈確認(rèn)證書注銷列表檢查.2022/10/3157西安電子科技大學(xué)計(jì)算機(jī)學(xué)院證書類型持卡者證書.2022/10/2357西安電子科技大學(xué)發(fā)證機(jī)構(gòu)涉及的發(fā)證機(jī)構(gòu)根CA(RCA)、支付卡品牌CA(BCA)、區(qū)域CA(GCA)、持卡者CA(CCA)、商家CA(MCA)、支付CA(PCA)信任層次RCABCAGCACCAMCAPCACardholderMerchantPaymentGateway.2022/10/3158西安電子科技大學(xué)計(jì)算機(jī)學(xué)院發(fā)證機(jī)構(gòu)涉及的發(fā)證機(jī)構(gòu)RCABCAGCACCAMCAPCAC支付處理支付處理是SET規(guī)范中最為關(guān)鍵的描述部分支付處理的基本步驟和流程持卡者注冊(cè)(CardholderRegistration)顧客開通帳號(hào)獲取證書商家注冊(cè)(MerchantRegistration)獲取簽名證書和密鑰交換證書購買請(qǐng)求(PerchaseRequest)顧客商品訂購,發(fā)送訂單信息和支付信息支付授權(quán)(PaymentAuthorization)商家向支付網(wǎng)關(guān)獲取支付授權(quán)信息,使得發(fā)卡行對(duì)交易擔(dān)保。支付請(qǐng)款(PaymentCapture)商家向支付網(wǎng)關(guān)申請(qǐng)?zhí)幚碇Ц叮@得支付款項(xiàng)。.2022/10/3159西安電子科技大學(xué)計(jì)算機(jī)學(xué)院支付處理支付處理是SET規(guī)范中最為關(guān)鍵的描述部分.2022/SET交易類型(1).2022/10/3160西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SET交易類型(1).2022/10/2360西安電子科技大SET交易類型(2).2022/10/3161西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SET交易類型(2).2022/10/2361西安電子科技大持卡者注冊(cè)持卡者初始注冊(cè)CA發(fā)出響應(yīng)持卡者接收到響應(yīng)并請(qǐng)求注冊(cè)表CA處理請(qǐng)求和發(fā)送適當(dāng)?shù)淖?cè)表持卡者接收注冊(cè)表,并請(qǐng)求證書CA處理請(qǐng)求和產(chǎn)生證書(有關(guān)帳號(hào)信息的HASH值將成為證書中的一部分內(nèi)容)持卡者接收證書.2022/10/3162西安電子科技大學(xué)計(jì)算機(jī)學(xué)院持卡者注冊(cè)持卡者初始注冊(cè).2022/10/2362西安電子科商家注冊(cè)商家請(qǐng)求注冊(cè)表CA發(fā)出響應(yīng)商家接收注冊(cè)表和請(qǐng)求證書CA處理請(qǐng)求和產(chǎn)生證書商家接收證書.2022/10/3163西安電子科技大學(xué)計(jì)算機(jī)學(xué)院商家注冊(cè)商家請(qǐng)求注冊(cè)表.2022/10/2363西安電子科技購買請(qǐng)求持卡者初始化購買請(qǐng)求持卡者完成瀏覽、挑選、定購后,SET協(xié)議啟動(dòng)。提供訂購表完全的內(nèi)容、選擇支付卡品牌、請(qǐng)求支付網(wǎng)關(guān)證書。商家發(fā)出證書商家為請(qǐng)求消息制定一個(gè)唯一的交易識(shí)別號(hào),將商家和相應(yīng)的支付網(wǎng)關(guān)證書一起發(fā)給持卡者。持卡者接收響應(yīng)和發(fā)出請(qǐng)求持卡者檢驗(yàn)響應(yīng)的證書并保存候用,產(chǎn)生有效的OI和PI,并進(jìn)行雙簽名,將PI和OI封裝數(shù)字信封,發(fā)送給商家。商家處理請(qǐng)求消息驗(yàn)證持卡者證書,驗(yàn)證數(shù)字信封的數(shù)字簽名。持卡者接收購買響應(yīng)驗(yàn)證,并更新本地定購狀態(tài)數(shù)據(jù)庫。

.2022/10/3164西安電子科技大學(xué)計(jì)算機(jī)學(xué)院購買請(qǐng)求持卡者初始化購買請(qǐng)求.2022/10/2364西安電持卡者購買請(qǐng)求構(gòu)造.2022/10/3165西安電子科技大學(xué)計(jì)算機(jī)學(xué)院持卡者購買請(qǐng)求構(gòu)造.2022/10/2365西安電子科技大學(xué)商家購買請(qǐng)求驗(yàn)證.2022/10/3166西安電子科技大學(xué)計(jì)算機(jī)學(xué)院商家購買請(qǐng)求驗(yàn)證.2022/10/2366西安電子科技大學(xué)計(jì)支付授權(quán)商家請(qǐng)求授權(quán):商家產(chǎn)生一個(gè)安全的授權(quán)請(qǐng)求,發(fā)送給支付網(wǎng)關(guān)。購買相關(guān)信息:PI/雙簽名/OI摘要/持卡者數(shù)字信封認(rèn)可相關(guān)信息:認(rèn)證分組(商家簽名交易標(biāo)識(shí))和商家數(shù)字信封證書:持卡人簽名證書、商家簽名證書、商家密鑰交換證書支付網(wǎng)關(guān)處理授權(quán)請(qǐng)求安全驗(yàn)證,解密PI,驗(yàn)證與OI的一致性和關(guān)聯(lián)性,通過后支付網(wǎng)關(guān)將通過一個(gè)支付系統(tǒng)向發(fā)卡行發(fā)出一個(gè)授權(quán)請(qǐng)求。一旦從發(fā)卡行接收到一個(gè)授權(quán)響應(yīng),支付網(wǎng)關(guān)將簽署一個(gè)授權(quán)認(rèn)可消息,安全處理后發(fā)送給商家。商家處理響應(yīng)驗(yàn)證有效性,保存授權(quán)認(rèn)可消息和請(qǐng)款標(biāo)識(shí)(CaptureToken)。.2022/10/3167西安電子科技大學(xué)計(jì)算機(jī)學(xué)院支付授權(quán)商家請(qǐng)求授權(quán):商家產(chǎn)生一個(gè)安全的授權(quán)請(qǐng)求,發(fā)送給支付支付請(qǐng)款商家請(qǐng)求支付商家產(chǎn)生一個(gè)請(qǐng)款請(qǐng)求(包含交易金額、交易標(biāo)識(shí)等),和請(qǐng)款標(biāo)識(shí)一起發(fā)給支付網(wǎng)關(guān)。支付網(wǎng)關(guān)處理請(qǐng)款請(qǐng)求驗(yàn)證請(qǐng)款請(qǐng)求的有效性,得到請(qǐng)款標(biāo)識(shí),形成清算請(qǐng)求,并創(chuàng)建清算請(qǐng)求,通過一個(gè)支付卡系統(tǒng)發(fā)給發(fā)卡行。并給商家發(fā)送請(qǐng)款響應(yīng)消息。商家接收響應(yīng)商家驗(yàn)證有效性,并保存請(qǐng)款響應(yīng)消息,以備與收單行得到的付款進(jìn)行對(duì)帳。.2022/10/3168西安電子科技大學(xué)計(jì)算機(jī)學(xué)院支付請(qǐng)款商家請(qǐng)求支付.2022/10/2368西安電子科技大第17章作業(yè)思考題習(xí)題.2022/10/3169西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第17章作業(yè)思考題.2022/10/2369西安電子科技大學(xué)

Chapter16

Web安全性《密碼編碼學(xué)與網(wǎng)絡(luò)安全》

.2022/10/3170西安電子科技大學(xué)計(jì)算機(jī)學(xué)院

Chapter16

第一部分SSL/TLS協(xié)議SSL(SecureSocketLayer)是一種在兩個(gè)端實(shí)體(EndEntity)之間提供安全通道的協(xié)議。它具有保護(hù)傳輸數(shù)據(jù)以及識(shí)別通信實(shí)體的功能。安全通道是透明的IETF制定的TLS(TransportLayerSecurity)版本是對(duì)Nescape公司的SSL和Microsoft公司的PCT(PrivateCommunicationTechnology)兩個(gè)協(xié)議的綜合和兼容。重點(diǎn)討論SSL協(xié)議.2022/10/3171西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第一部分SSL/TLS協(xié)議SSL(SecureSSSL/TLS協(xié)議設(shè)計(jì)目標(biāo)SSLV2設(shè)計(jì)目標(biāo)為滿足WEB安全通信而設(shè)計(jì)提供客戶和服務(wù)器之間傳輸數(shù)據(jù)的保密性服務(wù)器認(rèn)證(客戶端認(rèn)證可選)SSLV3設(shè)計(jì)目標(biāo)修正SSLV2中存在的多處安全問題設(shè)計(jì)一種安全磋商多種加密算法的機(jī)制.2022/10/3172西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL/TLS協(xié)議設(shè)計(jì)目標(biāo)SSLV2設(shè)計(jì)目標(biāo).2022/SSL提供了什么SSL提供了通道級(jí)別的安全:連接的兩端知道所傳輸?shù)臄?shù)據(jù)是保密的,而且沒有被篡改幾乎總是要對(duì)服務(wù)器進(jìn)行認(rèn)證可選的客戶端認(rèn)證針對(duì)異常情況的安全通知錯(cuò)誤警示關(guān)閉連接所有這些依賴于某些對(duì)系統(tǒng)的假定假定已經(jīng)正確產(chǎn)生了密鑰數(shù)據(jù)并且該密鑰已被安全地保管.2022/10/3173西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL提供了什么SSL提供了通道級(jí)別的安全:連接的兩端知道SSL與TCP/IPSSL連接非常類似于“保密的”的TCP連接位于TCP之上,應(yīng)用層之下幾乎只能在TCP上運(yùn)行,而不能在UDP或IP上運(yùn)行,因而它依賴于可靠的傳輸協(xié)議微軟的STLP和無線應(yīng)用論壇的WTLS均為意圖在數(shù)據(jù)報(bào)傳輸層(如UDP)上正確工作的變種。.2022/10/3174西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL與TCP/IPSSL連接非常類似于“保密的”的TCP連SSL變種譜系樹SSLV1(1994)未發(fā)布SSLV2(1994)第一版SSLV3(1995)TLS(1997-1999)PCT(1995)STLP(1996)WTLS(1998).2022/10/3175西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL變種譜系樹SSLV1(1994)SSLV2(199用于WEB的SSL保護(hù)使用HTTP的WEB通信新的URLhttps://在瀏覽器中的表現(xiàn)NETSCAPE:工具條上會(huì)顯示一把鑰匙IE:右下角顯示一把鎖幾乎所有的商業(yè)WEB服務(wù)器和瀏覽器都實(shí)現(xiàn)了內(nèi)置的SSL協(xié)議,通過配置即可使用.2022/10/3176西安電子科技大學(xué)計(jì)算機(jī)學(xué)院用于WEB的SSL保護(hù)使用HTTP的WEB通信.2022/1在SSL上構(gòu)建一切除了HTTP和NNTP(SNEWS)外,還可以用于SMTP、Telnet、FTP等,也可用于保護(hù)專有協(xié)議。協(xié)議端口標(biāo)準(zhǔn)化協(xié)議實(shí)現(xiàn)OPENSSL(C語言實(shí)現(xiàn))pureTLS(java實(shí)現(xiàn))ApacheSSL(針對(duì)Apache服務(wù)器的實(shí)現(xiàn))Mod_ssl.2022/10/3177西安電子科技大學(xué)計(jì)算機(jī)學(xué)院在SSL上構(gòu)建一切除了HTTP和NNTP(SNEWS)外,兩個(gè)主要的協(xié)議SSL記錄協(xié)議建立在可靠的傳輸協(xié)議(如TCP)之上它提供連接安全性,有兩個(gè)特點(diǎn)保密性,使用了對(duì)稱加密算法完整性,使用HMAC算法用來封裝高層的協(xié)議SSL握手協(xié)議客戶和服務(wù)器之間相互鑒別協(xié)商加密算法和密鑰它提供連接安全性,有三個(gè)特點(diǎn)身份鑒別,至少對(duì)一方實(shí)現(xiàn)鑒別,也可以是雙向鑒別協(xié)商得到的共享密鑰是安全的,中間人不能夠知道協(xié)商過程是可靠的.2022/10/3178西安電子科技大學(xué)計(jì)算機(jī)學(xué)院兩個(gè)主要的協(xié)議SSL記錄協(xié)議.2022/10/239西安電子SSL的兩個(gè)重要概念SSL連接(connection)一個(gè)連接是一個(gè)提供一種合適類型服務(wù)的傳輸(OSI分層的定義)。SSL的連接是點(diǎn)對(duì)點(diǎn)的關(guān)系。連接是暫時(shí)的,每一個(gè)連接和一個(gè)會(huì)話關(guān)聯(lián)。SSL會(huì)話(session)一個(gè)SSL會(huì)話是在客戶與服務(wù)器之間的一個(gè)關(guān)聯(lián)。會(huì)話由HandshakeProtocol創(chuàng)建。會(huì)話定義了一組可供多個(gè)連接共享的密碼安全參數(shù)。會(huì)話用以避免為每一個(gè)連接提供新的安全參數(shù)所需昂貴的協(xié)商代價(jià)。.2022/10/3179西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL的兩個(gè)重要概念SSL連接(connection).20SSL基礎(chǔ)-針對(duì)RSA服務(wù)器認(rèn)證的SSLSSL靈活性:單向認(rèn)證和雙向認(rèn)證認(rèn)證+加密和認(rèn)證加密算法:RSADSSDHFORTEZZA……連接分為兩個(gè)節(jié)段:握手階段完成對(duì)服務(wù)器認(rèn)證并建立加密密鑰數(shù)據(jù)傳輸階段加密數(shù)據(jù)傳輸.2022/10/3180西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL基礎(chǔ)-針對(duì)RSA服務(wù)器認(rèn)證的SSLSSL靈活性:.2握手協(xié)議握手階段的目的客戶和服務(wù)器協(xié)商保護(hù)數(shù)據(jù)的算法(及其具體參數(shù))確立在協(xié)商好的算法上使用的加密密鑰可選擇對(duì)客戶端進(jìn)行認(rèn)證

clientserver----------------------------------------------------------------------------所支持的加密算法,隨機(jī)數(shù)選中的加密算法,隨機(jī)數(shù),服務(wù)器證書加密后的pre_master_secret

計(jì)算相關(guān)演化密鑰計(jì)算相關(guān)演化密鑰握手消息的MAC值握手消息的MAC值注:1.pre_master_secret可以由KDF(keyderivationfunction)演化出master_secret,最后再通過master_secret演化出系列加密密鑰。

2.最后兩步防止握手本身遭受篡改(如低強(qiáng)度密碼算法替換等).3.客戶端和服務(wù)器端隨機(jī)數(shù)的傳輸,防止重放攻擊。.2022/10/3181西安電子科技大學(xué)計(jì)算機(jī)學(xué)院握手協(xié)議握手階段的目的.2022/10/2312西安電子科技握手消息

clientserver----------------------------------------------------------------------------握手:ClientHello

握手:ServerHelloCertificate……ServerHelloDoneClientKeyExchange……(ChangeCipherSpec)Finished

……(ChangeCipherSpec)Finished.2022/10/3182西安電子科技大學(xué)計(jì)算機(jī)學(xué)院握手消息clientSSL記錄協(xié)議實(shí)際的數(shù)據(jù)傳輸是使用SSL記錄協(xié)議實(shí)現(xiàn)的數(shù)據(jù)流分割成一系列片段并加以傳輸,每個(gè)片斷單獨(dú)保護(hù)和傳輸為實(shí)現(xiàn)完整性保護(hù),對(duì)片段進(jìn)行MAC保護(hù)為實(shí)現(xiàn)機(jī)密性保護(hù),對(duì)片段進(jìn)行加密保護(hù)傳輸?shù)氖前踩涗?2022/10/3183西安電子科技大學(xué)計(jì)算機(jī)學(xué)院SSL記錄協(xié)議實(shí)際的數(shù)據(jù)傳輸是使用SSL記錄協(xié)議實(shí)現(xiàn)的.2記錄頭(Head)ContentType;——8位,上層協(xié)議類型Majorversion;Minnorversion——16位,主次版本CompressedLength:16位—加密后數(shù)據(jù)的長度,不超過214+2048字節(jié)(SSL幾乎不用壓縮,雖然支持)EncryptedDatafragment;——密文數(shù)據(jù).2022/10/3184西安電子科技大學(xué)計(jì)算機(jī)學(xué)院記錄頭(Head)ContentType;——8位,上層記錄負(fù)荷(Payload)支持4種協(xié)議消息:application_data、alert、handshake、change_cipher_spec.Alert協(xié)議消息:報(bào)警等級(jí)(warning/fatal)+具體報(bào)警編碼2字節(jié)change_cipher_spec協(xié)議消息:1字節(jié),將掛起狀態(tài)變成當(dāng)前狀態(tài),指示在此之后的所有消息都將使用剛剛商定的密碼進(jìn)行加密。handshake協(xié)議消息:類型(1字節(jié))+長度(3字節(jié))+消息,類型共10種.2022/10/3185西安電子科技大學(xué)計(jì)算機(jī)學(xué)院記錄負(fù)荷(Payload)支持4種協(xié)議消息:appli記錄負(fù)荷(Payload).2022/10/3186西安電子科技大學(xué)計(jì)算機(jī)學(xué)院記錄負(fù)荷(Payload).2022/10/2317西安電子完整SSL會(huì)話握手協(xié)議交換Hello消息,對(duì)于算法、交換隨機(jī)值等協(xié)商一致交換必要的密碼參數(shù),以便雙方得到統(tǒng)一的premastersecret交換證書和相應(yīng)的密碼信息,以便進(jìn)行身份認(rèn)證產(chǎn)生mastersecret把安全參數(shù)提供給SSL記錄層檢驗(yàn)雙方是否已經(jīng)獲得同樣的安全參數(shù).2022/10/3187西安電子科技大學(xué)計(jì)算機(jī)學(xué)院完整SSL會(huì)話握手協(xié)議交換Hello消息,對(duì)于算法、交換隨機(jī).2022/10/3188西安電子科技大學(xué)計(jì)算機(jī)學(xué)院.2022/10/2319西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第一階段:建立起安全協(xié)商客戶發(fā)送一個(gè)client_hello消息,包括以下參數(shù):版本、隨機(jī)數(shù)(32位時(shí)間戳+28字節(jié)隨機(jī)序列)、會(huì)話ID、客戶支持的密碼算法列表(CipherSuite)、客戶支持的壓縮方法列表.然后,客戶等待服務(wù)器的server_hello消息服務(wù)器發(fā)送server_hello消息,參數(shù):客戶建議的低版本以及服務(wù)器支持的最高版本、服務(wù)器產(chǎn)生的隨機(jī)數(shù)、會(huì)話ID、服務(wù)器從客戶建議的密碼算法和壓縮方法中確定一套本次連接使用的確定方法..2022/10/3189西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第一階段:建立起安全協(xié)商客戶發(fā)送一個(gè)client_helloCipherSuite指定了密鑰交換的方法,SSL支持以下一些方法:RSA,要求服務(wù)器提供一個(gè)RSA證書DH(Diffie-Hellman),要求服務(wù)器的證書中包含了由CA簽名的DH公開參數(shù)??蛻艋蛘咴谧C書中提供DH公開參數(shù),或者在密鑰交換消息中提供此參數(shù)EDH(EphemeralDiffie-Hellman),產(chǎn)生臨時(shí)的密鑰,DH公開參數(shù)由發(fā)送者的私鑰進(jìn)行簽名,接收者用對(duì)應(yīng)的公鑰進(jìn)行驗(yàn)證

匿名的DH,不加鑒別。會(huì)受到中間人攻擊然后,指定以下信息加密算法和類型(流還是分組密碼算法)HMAC、MD5還是SHA-1是否可出口HashSizeKeyMaterialIVSize.2022/10/3190西安電子科技大學(xué)計(jì)算機(jī)學(xué)院CipherSuite指定了密鑰交換的方法,SSL支持以下一第二階段:服務(wù)器鑒別和密鑰交換服務(wù)器發(fā)送certificate消息,消息包含一個(gè)X.509證書,或者一條證書鏈除了匿名DH之外的密鑰交換方法都需要服務(wù)器發(fā)送server_key_exchange消息可選的,有些情況下可以不需要。只有當(dāng)certificate消息沒有包含必需的數(shù)據(jù)的時(shí)候才發(fā)送此消息消息包含簽名,被簽名的內(nèi)容包括兩個(gè)隨機(jī)數(shù)以及服務(wù)器參數(shù)服務(wù)器發(fā)送certificate_request消息(可選)非匿名server可以向客戶請(qǐng)求一個(gè)證書包含證書類型和CAs服務(wù)器發(fā)送server_hello_done,然后等待應(yīng)答.2022/10/3191西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第二階段:服務(wù)器鑒別和密鑰交換服務(wù)器發(fā)送certificat第二階段:服務(wù)器鑒別和密鑰交換.2022/10/3192西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第二階段:服務(wù)器鑒別和密鑰交換.2022/10/2323西安第三階段:客戶鑒別和密鑰交換客戶收到server_done消息后,它根據(jù)需要檢查服務(wù)器提供的證書,并判斷server_hello的參數(shù)是否可以接受,如果都沒有問題的話,發(fā)送一個(gè)或多個(gè)消息給服務(wù)器。如果服務(wù)器請(qǐng)求證書的話,則客戶首先發(fā)送一個(gè)certificate消息,若客戶沒有證書,則發(fā)送一個(gè)no_certificate警告。然后客戶發(fā)送client_key_exchange消息,消息的內(nèi)容取決于密鑰交換的類型(如果是RSA,則含加密的PreMasterSecret)。最后,客戶發(fā)送一個(gè)certificate_verify消息(可選),其中包含一個(gè)簽名,對(duì)從第一條消息以來的所有握手消息的HMAC值(用master_secret)進(jìn)行簽名.2022/10/3193西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第三階段:客戶鑒別和密鑰交換客戶收到server_done消第三階段:客戶鑒別和密鑰交換.2022/10/3194西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第三階段:客戶鑒別和密鑰交換.2022/10/2325西安電第四階段:結(jié)束第四階段建立起一個(gè)安全的連接客戶發(fā)送一個(gè)change_cipher_spec消息,并且把協(xié)商得到的CipherSuite拷貝到當(dāng)前連接的狀態(tài)之中然后,客戶用本次連接協(xié)商的算法、密鑰參數(shù)發(fā)送一個(gè)finished消息,這條消息可以檢查密鑰交換和鑒別過程是否已經(jīng)成功。其中包括一個(gè)校驗(yàn)值,對(duì)所有以來的消息進(jìn)行校驗(yàn)。服務(wù)器同樣發(fā)送change_cipher_spec消息和finished消息。握手過程完成,客戶和服務(wù)器可以交換應(yīng)用層數(shù)據(jù)。.2022/10/3195西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第四階段:結(jié)束第四階段建立起一個(gè)安全的連接.2022/10/第四階段:結(jié)束.2022/10/3196西安電子科技大學(xué)計(jì)算機(jī)學(xué)院第四階段:結(jié)束.2022/10/2327西安電子科技大學(xué)計(jì)算密鑰交換算法SSL記錄協(xié)議需要:CipherSuite,mastersecret,theclient&serverrandomvalues在hello消息中,交換隨機(jī)數(shù)以及各種算法兩類密鑰交換算法:RSA,客戶產(chǎn)生一個(gè)48字節(jié)的pre_master_secret,然后通過服務(wù)器的公鑰傳遞給服務(wù)器Diffie-Hellman,雙方協(xié)商得到的密鑰被用作pre_master_secret對(duì)于各種密鑰交換算法,從pre_master_secret計(jì)算得到Master_secret,然后從內(nèi)存中刪除Master_secret總是48字節(jié)長,而pre_master_secret長度不定,取決于密鑰交換算法.2022/10/3197西安電子科技大學(xué)計(jì)算機(jī)學(xué)院密鑰交換算法SSL記錄協(xié)議需要:CipherSuite,m密鑰導(dǎo)出.2022/10/3198西安電子科技大學(xué)計(jì)算機(jī)學(xué)院密鑰導(dǎo)出.2022/10/2329西安電子科技大學(xué)計(jì)算機(jī)學(xué)院Master_secret的產(chǎn)生SSL3.0Master_secret=MD5(pre_master_secret‖SHA-1(‘A’‖pre_master_secret||ClientHello.random‖ServerHello.random))‖MD5(pre_master_secret‖SHA-1(‘BB’‖pre_master_secret||ClientHello.random‖ServerHello.random))‖MD5(pre_master_secret‖SHA-1(‘CCC’‖pre_master_secret||ClientHello.random‖ServerHello.random))

TLS1.0master_secret=PRF(pre_master_secret,“mastersecret”, ClientHello.random,+ServerHello.random)[0..47]*PRF(secret,label,seed)為偽隨機(jī)函數(shù).2022/10/3199西安電子科技大學(xué)計(jì)算機(jī)學(xué)院Master_secret的產(chǎn)生SSL3.0.2022/1偽隨機(jī)函數(shù)PRF(secret,label,seed)P_hash(secret,seed)=+HMAC_hash(secret,A(1)+seed)+HMAC_hash(secret,A(2)+seed)+HMAC_hash(secret,A(3)+seed)+...這里A()定義如下:

A(0)=seedA(i)=HMAC_hash(secret,A(i-1))偽隨機(jī)函數(shù)PRF(secret,label,seed)=P_MD5(S1,label+seed)XORP_SHA-1(S2,label+seed);

這里,S1和S2為secret的各一半,如果secret為奇數(shù)個(gè)字節(jié),則S1和S2共享一個(gè)字節(jié).2022/10/31100西安電子科技大學(xué)計(jì)算機(jī)學(xué)院偽隨機(jī)函數(shù)PRF(secret,label,seed)P最終需要的密鑰導(dǎo)出.2022/10/31101西安電子科技大學(xué)計(jì)算機(jī)學(xué)院最終需要的密鑰導(dǎo)出.2022/10/2332西安電子科技大學(xué)密鑰導(dǎo)出公式Key_block=MD5(master_secret||SHA-1(‘A’+master_secret+server_random+client_random))||MD5(master_secret||SHA-1(‘BB’+master_secret+server_random+client_random))||MD5(master_secret||SHA-1(‘

溫馨提示

  • 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)論