第7章安全協(xié)議_第1頁
第7章安全協(xié)議_第2頁
第7章安全協(xié)議_第3頁
第7章安全協(xié)議_第4頁
第7章安全協(xié)議_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第7章安全協(xié)議學(xué)習(xí)目標(biāo)

本章講解安全協(xié)議的概念,在網(wǎng)絡(luò)分層體系結(jié)構(gòu)中典型安全協(xié)議分類。重點(diǎn)講解的虛擬專用網(wǎng)協(xié)議IPSec、傳輸層安全協(xié)議TLS。網(wǎng)絡(luò)體系結(jié)構(gòu)中各層實(shí)現(xiàn)安全保護(hù)的機(jī)制虛擬專用網(wǎng)協(xié)議IPSec安全保護(hù)機(jī)理及工作過程傳輸層安全協(xié)議TLS安全保護(hù)機(jī)理及工作過程2023/2/13本章目錄7.1安全協(xié)議概述7.2虛擬專用網(wǎng)協(xié)議IPSec7.3傳輸層安全(TLS)協(xié)議2023/2/14什么是安全協(xié)議?7.1安全協(xié)議概述什么是協(xié)議(protocol)?協(xié)議是在對等實(shí)體(兩方或多方)之間為完成某項(xiàng)任務(wù)所執(zhí)行的一系列確定的步驟,是協(xié)議實(shí)體必須共同遵循的一套規(guī)則。協(xié)議步驟(或規(guī)則)是明確定義的。協(xié)議必須是完整的。什么是安全協(xié)議?為了實(shí)現(xiàn)特定的安全目標(biāo),使用密碼技術(shù)在網(wǎng)絡(luò)和分布式系統(tǒng)中提供各種安全服務(wù)的協(xié)議,稱為安全協(xié)議或密碼協(xié)議。兩類最基本的安全協(xié)議:實(shí)體認(rèn)證協(xié)議和密鑰協(xié)商協(xié)議。2023/2/167.1安全協(xié)議概述網(wǎng)絡(luò)協(xié)議棧各層上的安全協(xié)議在網(wǎng)絡(luò)環(huán)境下,安全服務(wù)可以在不同的網(wǎng)絡(luò)層次上實(shí)施。2023/2/177.1安全協(xié)議概述1.數(shù)據(jù)鏈路層安全協(xié)議PPP-PAP(

PasswordAuthenticationProtocol-

PointtoPointProtocol):口令認(rèn)證協(xié)議PAP是PPP的一個鏈路控制子協(xié)議,對等實(shí)體建立初始連接之后,使用2次握手實(shí)現(xiàn)實(shí)體認(rèn)證,被認(rèn)證一方向認(rèn)證方持續(xù)重復(fù)發(fā)送“用戶ID/口令”,直至認(rèn)證得到響應(yīng)或連接終止。PAP認(rèn)證口令以明文文本形式在鏈路上傳輸,不能防止竊聽、重放等攻擊,是一種弱認(rèn)證方法。2023/2/187.1安全協(xié)議概述1.數(shù)據(jù)鏈路層安全PPP-CHAP(ChallengeHandshakeAuthenticationProtocol):質(zhì)詢握手認(rèn)證協(xié)議也是PPP協(xié)議簇中的一個子協(xié)議。通過三次握手驗(yàn)證對等實(shí)體身份,被認(rèn)證方向認(rèn)證方發(fā)送“標(biāo)識”;認(rèn)證方向被認(rèn)證方發(fā)送“質(zhì)詢”(Challenge:隨機(jī)數(shù))消息;被認(rèn)證方使用質(zhì)詢和口令字(雙方事先共享)共同計算哈希值做應(yīng)答。2023/2/197.1安全協(xié)議概述1.數(shù)據(jù)鏈路層安全協(xié)議WEP(WiredEquivalentPrivacy):有線網(wǎng)等同保密WEP是IEEE802.11b標(biāo)準(zhǔn)中定義的無線局域網(wǎng)安全協(xié)議。WEP在數(shù)據(jù)鏈路層提供對無線鏈路的保護(hù),實(shí)現(xiàn)無線節(jié)點(diǎn)之間的相互認(rèn)證和數(shù)據(jù)保密傳輸。WEP使用共享密鑰認(rèn)證,使用RC4流密碼算法加密數(shù)據(jù)幀。WEP在802.11中是可選的,已經(jīng)發(fā)現(xiàn)其存在缺陷,在新的802.11標(biāo)準(zhǔn)中被新的協(xié)議替換。2023/2/1107.1安全協(xié)議概述2.應(yīng)用層安全協(xié)議MIME/S-MIME全名:MultipurposeInternetMailExtensions/SecureMIMEMIME多用途網(wǎng)際郵件擴(kuò)充協(xié)議定義了郵件消息格式,方便不同郵件系統(tǒng)之間消息交換。MIME允許郵件中包含任意類型的文件,如文本、圖象、聲音、視頻及其它應(yīng)用程序等。S/MIME是MIME的安全版本,提供了一種安全電子郵件機(jī)制,基于MIME標(biāo)準(zhǔn),S/MIME為電子消息應(yīng)用程序提供郵件安全服務(wù),包括認(rèn)證、完整性保護(hù)、數(shù)據(jù)保密等。

2023/2/1117.1安全協(xié)議概述2.應(yīng)用層安全協(xié)議PGP

(PrettyGoodPrivacy)用于電子郵件、存儲數(shù)據(jù)加密和數(shù)字簽名的開源實(shí)用程序。PGP基于RSA公鑰加密體制,實(shí)現(xiàn)了對郵件的加密保護(hù),以及基于數(shù)字簽名的源認(rèn)證和不可否認(rèn)性保護(hù)。PGP支持密鑰管理服務(wù)器,但其證書模型不同于X.509。PGP模型允許多重地、獨(dú)立地而非特殊可信個體簽署“名字/密鑰”關(guān)聯(lián)來證明證書的有效性。“只要有足夠的簽名,<名字/密鑰>關(guān)聯(lián)就是可信的,因?yàn)椴粫械暮灻叨际恰畨摹摹保此^“信任網(wǎng)”模型。2023/2/1127.1安全協(xié)議概述2.應(yīng)用層安全協(xié)議SET

(SecureElectronicTransaction)由MasterCard和Visa聯(lián)合Netscape、Microsoft等公司開發(fā)。是一種電子支付安全模型,用于電子商務(wù)的安全保障。解決B2C模式下商家、消費(fèi)者和銀行之間的信任和安全交易問題。涉及電子商務(wù)交易中的交易協(xié)定、信息保密、資料完整、數(shù)據(jù)認(rèn)證、數(shù)據(jù)簽名等問題。2023/2/113本章目錄7.1安全協(xié)議概述7.2虛擬專用網(wǎng)協(xié)議IPSec7.3傳輸層安全(TLS)協(xié)議2023/2/114如何在IP層實(shí)現(xiàn)安全的數(shù)據(jù)通信?7.2.1虛擬專用網(wǎng)VPNVPN:VirtualPrivateNetworkVPN是建立在公共網(wǎng)絡(luò)(如Internet)上的專用網(wǎng)絡(luò),通過在兩個系統(tǒng)之間建立安全的信道(也稱隧道)來實(shí)現(xiàn)重要數(shù)據(jù)的安全傳輸。VPN可以在路由器、交換機(jī)或者防火墻等網(wǎng)絡(luò)設(shè)備上實(shí)現(xiàn)。VPN可以幫助遠(yuǎn)程用戶或公司分支機(jī)構(gòu)以及商業(yè)伙伴與內(nèi)部網(wǎng)絡(luò)建立可信的安全連接,保證數(shù)據(jù)傳輸?shù)陌踩?。利用VPN技術(shù)在互聯(lián)網(wǎng)環(huán)境下建立虛擬的企業(yè)專用網(wǎng)絡(luò),可以大大縮減企業(yè)運(yùn)營成本,增強(qiáng)競爭力。2023/2/1167.2.1虛擬專用網(wǎng)VPNVPN的運(yùn)行模式遠(yuǎn)程主機(jī)與網(wǎng)關(guān)之間(稱為遠(yuǎn)程接入VPN)網(wǎng)關(guān)與網(wǎng)關(guān)之間(又分內(nèi)聯(lián)網(wǎng)VPN和外聯(lián)網(wǎng)VPN)主機(jī)與主機(jī)之間2023/2/1177.2.1虛擬專用網(wǎng)VPNVPN采用安全隧道技術(shù)將傳送的原始數(shù)據(jù)經(jīng)過加密和協(xié)議封裝后,嵌套到網(wǎng)絡(luò)傳輸單元中傳輸,實(shí)現(xiàn)對傳輸信息的保護(hù)。典型的VPN協(xié)議主要有三種:PPTP:PointtoPointTunnelingProtocolL2TP:Layer2TunnelingProtocolIPSec:IPSecurity2023/2/1187.2.1虛擬專用網(wǎng)VPN點(diǎn)對點(diǎn)隧道協(xié)議PPTPPPTP是在PPP協(xié)議的基礎(chǔ)上開發(fā)的一種增強(qiáng)型安全協(xié)議,它使用一個TCP上的控制隧道和一個封裝PPP數(shù)據(jù)包的通用路由封裝GRE(GenericRoutingEncapsulation)隧道。PPTP協(xié)議假定在PPTP客戶機(jī)和PPTP服務(wù)器之間有連通且可用的網(wǎng)絡(luò)連接,如IP網(wǎng)絡(luò)。PPTP支持多種協(xié)議,允許在GRE隧道內(nèi)傳輸?shù)腜PP數(shù)據(jù)包承載任何協(xié)議。PPTP沒有定義具體的加密和認(rèn)證功能,而是依賴隧道化的PPP協(xié)議中應(yīng)用的安全功能。2023/2/1197.2.1虛擬專用網(wǎng)VPN第2層隧道協(xié)議L2TPL2TP是由Cisco第2層轉(zhuǎn)發(fā)協(xié)議L2F和PPTP協(xié)議發(fā)展演變的VPN機(jī)制,2005年IETF發(fā)布最新版本L2TPv3(RFC3931)。L2TP工作在包交換網(wǎng)絡(luò)之上,如IP網(wǎng)絡(luò)(使用UDP)、幀中繼永久虛擬電路(PVCs)、X.25虛擬電路或ATM網(wǎng)絡(luò)。L2TP在本質(zhì)上是一個會話層協(xié)議,使用UDP端口1701,L2TP數(shù)據(jù)包封裝在UDP報文中傳輸。在L2TP隧道內(nèi)通常傳輸點(diǎn)到點(diǎn)協(xié)議會話,L2TP不直接提供加密,它依賴隧道中所使用端到端加密協(xié)議實(shí)現(xiàn)保密性服務(wù),L2TP通常與IPSec混合應(yīng)用,提供保密、認(rèn)證和完整性服務(wù)。2023/2/1207.2.1虛擬專用網(wǎng)VPNIP層安全協(xié)議IPSec(InternetProtocolSecurity)IPSec是IETF制訂的VPN安全標(biāo)準(zhǔn),工作在IP層,提供對IP分組進(jìn)行加密和認(rèn)證的功能。SSLVPN(SecureSocketsLayerVPN)使用安全套接層SSL協(xié)議實(shí)現(xiàn)VPN的機(jī)制。通常SSL協(xié)議被內(nèi)置于IE等瀏覽器中,使用SSL協(xié)議進(jìn)行認(rèn)證和數(shù)據(jù)加密的SSLVPN就可以免于安裝客戶端。SSLVPN部署簡單,同時性能也遠(yuǎn)低于使用IPSec實(shí)現(xiàn)的VPN。2023/2/1217.2.2IP層VPN協(xié)議——IPSecIPSec是工作在IP層的安全機(jī)制,用于保護(hù)一對主機(jī)之間(主機(jī)到主機(jī))、一對安全網(wǎng)關(guān)(網(wǎng)絡(luò)到網(wǎng)絡(luò))或者安全主機(jī)與網(wǎng)關(guān)之間(主機(jī)到網(wǎng)絡(luò))的數(shù)據(jù)流安全。IPSec為IP報文段提供保密性、完整性、訪問控制和數(shù)據(jù)源認(rèn)證等安全保護(hù)服務(wù)。IPSec是一個協(xié)議簇,包括會話初始化階段通信雙方雙向認(rèn)證協(xié)議、密鑰協(xié)商協(xié)議,以及對通信會話中每個IP報文保護(hù)(認(rèn)證和/或加密)協(xié)議。2023/2/1227.2.2IP層VPN協(xié)議——IPSecIPSec定義了兩類保護(hù)IP報文的協(xié)議認(rèn)證報頭AH(AuthenticationHeader):為IP報文提供無連接的完整性、數(shù)據(jù)源認(rèn)證和抗重放攻擊保護(hù)。有效載荷封裝ESP

(EncapsulatingSecurityPayload):為IP報文提供保密性、無連接完整性、數(shù)據(jù)源認(rèn)證、抗重放攻擊等保護(hù)服務(wù)。2023/2/1237.2.2IP層VPN協(xié)議——IPSecIPSec定義了兩種工作模式傳輸模式:在原有IP報文中插入IPSec協(xié)議頭(AH或ESP)及報尾(ESP),報文按原有IP報文頭包含的信息(如IP地址)進(jìn)行傳輸。隧道模式:將原有IP報文作為一個新IP報文的數(shù)據(jù)域看待,被封裝保護(hù)在一個新的IP報文中,再根據(jù)是AH協(xié)議或ESP協(xié)議添加相應(yīng)的報頭或報尾。2023/2/1247.2.2IP層VPN協(xié)議——IPSecIPSec的應(yīng)用模式安全網(wǎng)關(guān)—安全網(wǎng)關(guān):網(wǎng)關(guān)之間應(yīng)用IPSec,兩個網(wǎng)關(guān)后面的內(nèi)部網(wǎng)絡(luò)主機(jī)通過安全網(wǎng)關(guān)實(shí)現(xiàn)在Internet上的安全通信。這種場景適合使用隧道模式。主機(jī)—主機(jī):IP連接的兩臺主機(jī)直接應(yīng)用IPSec通信。兩個節(jié)點(diǎn)必須使用公有IP地址,通常使用傳輸模式,也可以使用隧道模式。主機(jī)—安全網(wǎng)關(guān):主機(jī)與網(wǎng)關(guān)之間應(yīng)用IPSec,通常使用隧道模式。2023/2/1257.2.2IP層VPN協(xié)議——IPSecIPSec的工作流程IPSec使用網(wǎng)際密鑰交換協(xié)議IKE(InternetKeyExchange)動態(tài)協(xié)商共享密鑰及相關(guān)算法,建立安全關(guān)聯(lián)SA(SecurityAssociation)。SA為AH和ESP操作提供一套用于認(rèn)證、加密和簽名的密碼算法及必要的參數(shù)。IPSec的完整工作流程如下圖。2023/2/1267.2.2IP層VPN協(xié)議——IPSec2023/2/1277.2.3認(rèn)證報頭AH協(xié)議AH協(xié)議為每個數(shù)據(jù)報添加一個驗(yàn)證報頭,其中包含一個帶密鑰的Hash值,確保對報文的任何修改都能被檢查出來。AH協(xié)議提供無連接的完整性、數(shù)據(jù)源認(rèn)證、抗重放攻擊等保護(hù),但不提供保密性服務(wù)。2023/2/1287.2.3認(rèn)證報頭AH協(xié)議1.認(rèn)證報頭格式下一個頭:標(biāo)識認(rèn)證報頭AH后面跟著的載荷的類型。載荷長度:以32比特為單位的AH認(rèn)證報頭長度減2。安全參數(shù)索引SPI:32比特

整數(shù),接收端識別入站報文

綁定的安全關(guān)聯(lián)SA。序列號:單調(diào)遞增計數(shù)32

比特整數(shù),防止重放攻擊。完整性驗(yàn)證值ICV:對整個IP報文(含AH頭)完整性的認(rèn)證。2023/2/1297.2.3認(rèn)證報頭AH協(xié)議2.AH的兩種工作模式(1)AH傳輸模式;(2)AH隧道模式2023/2/1307.2.3認(rèn)證頭AH協(xié)議3.完整性驗(yàn)證值計算AH傳輸模式:ICV計算將原IP報文頭中可變域置為0后,把整個AH報文作為HMAC的輸入,摘要值即為ICV值。AH隧道模式:ICV計算將新IP報文頭中可變域置為0后,把整個AH報文作為HMAC的輸入,摘要值即為ICV值。2023/2/1317.2.4封裝安全載荷ESP協(xié)議封裝安全載荷ESP(EncapsulatingSecurityPayload)提供數(shù)據(jù)保密性、數(shù)據(jù)源認(rèn)證、無連接完整性保護(hù)、抗重放等服務(wù),以及有限的數(shù)據(jù)流保密服務(wù)。ESP使用對稱密碼技術(shù)加密IP報文的數(shù)據(jù)域(傳輸模式)或整個IP報文(隧道模式),使用與AH協(xié)議中相同的帶密鑰的消息摘要算法計算ESP報文的認(rèn)證數(shù)據(jù)——完整性驗(yàn)證值ICV。2023/2/1327.2.4封裝安全載荷ESP協(xié)議1.ESP報文格式2023/2/1337.2.4封裝安全載荷ESP協(xié)議2.ESP的兩種工作模式(1)ESP傳輸模式;(2)ESP隧道模式ESPESP2023/2/1347.2.5Internet密鑰交換IKE在兩個通信節(jié)點(diǎn)間執(zhí)行雙向認(rèn)證并建立一個IKE安全關(guān)聯(lián)SA。SA包括兩個通信節(jié)點(diǎn)共享的秘密信息以及一個密碼算法集。IETF在1998年發(fā)布了IKE(RFC2409),2010年發(fā)布了最新版本IKEv2。IKE融合使用到了三個不同協(xié)議Internet安全連接和密鑰管理協(xié)議ISAKMP(InternetSecurityAssociationandKeyManagementProtocol)Oakley密鑰確定協(xié)議(OAKLEYKeyDeterminationProtocol)安全密鑰交換機(jī)制SKEME(SecureKeyExchangeMechanism)。2023/2/1357.2.5Internet密鑰交換1.初始化交換(InitialExchange)2023/2/1367.2.5Internet密鑰交換HDR:消息頭。包含安全參數(shù)索引SPI、版本號和一些標(biāo)志位,以及消息ID,識別重傳消息。SA:安全關(guān)聯(lián)載荷,小寫字母i和r分別代表發(fā)起者和響應(yīng)者。SA載荷中包括發(fā)送者支持的密碼算法等。KE:密鑰交換載荷,如執(zhí)行DH密鑰交換協(xié)議所交換的發(fā)送者計算的公鑰值(gx)。N:Nonce載荷,包含發(fā)送者產(chǎn)生的一次隨機(jī)數(shù)。CERT:證書載荷,包含發(fā)送者的公鑰數(shù)字證書。CERTREQ:證書請求載荷。SK{…}:使用密鑰SK對稱密加密。TS:負(fù)載選擇符。2023/2/1377.2.5Internet密鑰交換IKE初始化包括兩個交換(1)IKESA初始化(記為IKE_SA_INIT)交換IKE_SA_INIT交換包括消息1和消息2,用于協(xié)商密碼算法、交換隨機(jī)數(shù)Nonce、執(zhí)行DH公鑰交換。(2)IKE認(rèn)證(記為IKE_AUTH)交換IKE_AUTH交換包括消息3和消息4,認(rèn)證前面的消息、交換身份標(biāo)識ID和證書(可選),并建立第一個子SA,這一交換中除消息頭之外其他載荷數(shù)據(jù)使用IKE_SA_INIT交換建立的算法和密鑰進(jìn)行加密和完整性保護(hù)。2023/2/1387.2.5Internet密鑰交換2.生成子SA交換(CREATE_CHILD_SAExchange)用于創(chuàng)建新的子SA和在IKESA及在子SA之間更新密鑰,該交換在IKESA之后可以由雙方中的任一方發(fā)起??蛇x地,子SA交換可以包括KE載荷用于附加的DH交換,為子SA提供強(qiáng)前向安全(ForwardSecrecy)2023/2/1397.2.5Internet密鑰交換3.信息交換(InformationExchange)用于在IKESA操作過程中的變換點(diǎn),對等實(shí)體相互傳遞有關(guān)錯誤或特定事件通知的控制消息。信息交換必須在初始交換之后,需用初始交換協(xié)商的密鑰。信息交換包含零個或多個通知N、刪除D、配置CP載荷。2023/2/1407.2.5Internet密鑰交換IKE消息頭(HDR)格式2023/2/1417.2.5Internet密鑰交換典型載荷的數(shù)據(jù)結(jié)構(gòu)舉例安全關(guān)聯(lián)載荷(SecurityAssociationPayload)422023/2/1427.2.5Internet密鑰交換典型載荷的數(shù)據(jù)結(jié)構(gòu)舉例密鑰交換載荷(KeyExchangePayload,記為KE)KE載荷用于交換Diffie-Hellman公鑰(指數(shù)計算結(jié)果),KE載荷同樣包含通用載荷頭,后面跟DH群編號以及密鑰交換數(shù)據(jù)——DH公鑰。證明載荷(IdentificationPayload)允許對等實(shí)體向?qū)Ψ阶C明自己的身份,身份可以用于策略查找,但不必與CERT載荷任何域相一致;身份域也可以用于訪問控制決策,但若在IDi或IDr載荷中采用IP地址(ID_IPV4_ADDR或ID_IPV6_ADDR)標(biāo)識類型,IKE也不要求其中地址與封裝IKE消息的IP頭部中地址一致。2023/2/1437.2.5Internet密鑰交換典型載荷的數(shù)據(jù)結(jié)構(gòu)舉例證書載荷(CertificatePayload,記為CERT)證書請求載荷(CertificateRequestPayload,記CERTREQ)認(rèn)證載荷(AuthenticationPayload,記為AUTH)隨機(jī)數(shù)Nonce載荷通知載荷(NotifyPayload,記為N)刪除載荷(DeletePayload,記為D)流量選擇載荷(TrafficSelectorPayload,記為TS)加密載荷(EncryptedPayload,記為SK{...})2023/2/144本章目錄7.1安全協(xié)議概述7.2虛擬專用網(wǎng)協(xié)議IPSec7.3傳輸層安全(TLS)協(xié)議2023/2/145如何實(shí)現(xiàn)INTERNET中

通訊的兩個應(yīng)用程序之間

認(rèn)證和數(shù)據(jù)保密傳輸?467.3.1TLS概述TLS(TransportLayerSecurity)的由來TLS協(xié)議是一個用于Internet上實(shí)現(xiàn)保密通信的安全協(xié)議。TLS協(xié)議是IETF在Netscape公司開發(fā)的SSL(SecureSocketLayer)協(xié)議基礎(chǔ)上改進(jìn)發(fā)展而來的。Netscape于1994年開發(fā)了用于保護(hù)Web通訊的SSL協(xié)議,并在推出SSL3.1時改名為TLS1.0。1997年IETF發(fā)布Draft,1999年發(fā)布TLSv1.0(RFC2246)。IETF于2006年發(fā)布了TLSv1.1版本(RFC4363)。2023/2/1477.3.1TLS概述TLS的設(shè)計目標(biāo)密碼安全性:TLS用于在通訊實(shí)體間建立安全連接?;ゲ僮餍裕邯?dú)立開發(fā)者可以使用TLS開發(fā)應(yīng)用程序,而無需交換程序的代碼。擴(kuò)展性:提供一種框架,便于加入新的公鑰、對稱密碼。相對效率性:密碼操作是高CPU敏感的,尤其是公鑰密碼操作,TLS提供了會話緩存機(jī)制以減少建立的連接數(shù),此外盡量減少網(wǎng)絡(luò)活動。2023/2/1487.3.1TLS概述

TLS的使用2023/2/1497.3.1TLS概述

TLS的體系結(jié)構(gòu)TLS位于TCP層與應(yīng)用層之間,對應(yīng)用層透明,在可靠傳輸協(xié)議TCP之上建立一個可靠的端到端安全服務(wù),為兩個通訊實(shí)體之間提供保密性和完整性保護(hù)。TLS協(xié)議分為上下兩層底層:SSL記錄協(xié)議層上層:SSL握手協(xié)議層2023/2/1507.3.1TLS概述TLS的兩個子層TLS記錄協(xié)議層TLS記錄協(xié)議建立在可靠的TCP協(xié)議上,為高層協(xié)議提供數(shù)據(jù)封裝,實(shí)現(xiàn)壓縮/解壓、加密/解密、計算/驗(yàn)證MAC等操作。TLS記錄協(xié)議要使用TLS握手協(xié)議協(xié)商的密碼算法和密鑰對上層數(shù)據(jù)加密實(shí)現(xiàn)保密性;同時使用HMAC實(shí)現(xiàn)傳輸消息的完整性。2023/2/1517.3.1TLS概述TLS的兩個子層TLS握手協(xié)議層包含3個子協(xié)議:TLS握手協(xié)議、TLS密碼規(guī)格變更協(xié)議、TLS報警協(xié)議。TLS握手協(xié)議層負(fù)責(zé)在客戶與服務(wù)器間進(jìn)行身份認(rèn)證、協(xié)商加密算法和密鑰。TLS協(xié)議使用對稱密碼體制加密傳輸?shù)臄?shù)據(jù),使用公鑰密碼體制進(jìn)行身份認(rèn)證和交換加密密鑰。2023/2/1527.3.1TLS概述TLS的兩個子層TLS協(xié)議棧2023/2/1537.3.1TLS概述TLS的兩個重要概念TLS連接(connection)一個連接是一個提供一種合適類型服務(wù)的傳輸過程。TLS連接是點(diǎn)對點(diǎn)的關(guān)系。連接是暫時的,每一個連接和一個會話關(guān)聯(lián)。TLS會話(session)一個TLS會話是在客戶與服務(wù)器之間的一個關(guān)聯(lián)。會話由握手協(xié)議創(chuàng)建,定義了一組可供多個連接共享的密碼安全參數(shù)。會話用以避免為每一個連接提供新的安全參數(shù)所需昂貴的協(xié)商代價。2023/2/1547.3.1TLS概述會話的狀態(tài)有多個狀態(tài)與一個會話相關(guān)聯(lián);一旦一個會話建立,就存在一個讀或?qū)懙漠?dāng)前狀態(tài);在握手協(xié)議中,創(chuàng)建了掛起的讀寫狀態(tài);成功的握手協(xié)議,將掛起狀態(tài)轉(zhuǎn)變?yōu)楫?dāng)前狀態(tài);每個會話狀態(tài)實(shí)際上是一組參數(shù)。2023/2/1557.3.1TLS概述會話的狀態(tài)參數(shù)Sessionidentifier:服務(wù)器選擇的一個任意字節(jié)序列,用以標(biāo)識一個活動的或可激活的會話狀態(tài)。PeerCertificate::一個X.509v3證書,可為空。Compressionmethod:加密前進(jìn)行數(shù)據(jù)壓縮的算法。Cipherspec:指明數(shù)據(jù)加密算法(無或DES等)及MAC算法(如MD5或SHA-1)用以計算MAC。還包括其它參數(shù),如散列長度。Mastersecret:48位秘密,在client與server之間共享。Isresumable:一個標(biāo)志,指明該會話能否用于產(chǎn)生一個新連接。2023/2/1567.3.1TLS概述TLS連接狀態(tài)一個連接狀態(tài)是TLS記錄協(xié)議的操作環(huán)境,包括壓縮算法、加密算法和MAC算法以及相應(yīng)的密鑰。TLS從兩個角度定義連接狀態(tài):預(yù)備狀態(tài)和當(dāng)前狀態(tài),讀狀態(tài)/寫狀態(tài)。預(yù)備狀態(tài):包含本次握手過程中協(xié)商成功的壓縮算法、加密算法、MAC計算算法和密鑰等。當(dāng)前狀態(tài):包含記錄協(xié)議正在使用的壓縮算法、加密算法、MAC計算算法和密鑰等。讀狀態(tài):包含解壓縮算法、解密算法、MAC驗(yàn)證算法和對應(yīng)的密鑰等。寫狀態(tài):包含壓縮算法、加密算法、MAC計算算法和對應(yīng)的密鑰等。

邏輯上可以組合為四個連接狀態(tài):當(dāng)前讀狀態(tài)、當(dāng)前寫狀態(tài)、預(yù)備讀狀態(tài)、預(yù)備寫狀態(tài)。2023/2/157連接的狀態(tài)參數(shù)Serverandclientrandom:為每個連接選擇的字節(jié)序列。ServerwriteMACsecret:服務(wù)器發(fā)送數(shù)據(jù)時用于計算MAC的key。ClientwriteMACsecret:客戶機(jī)發(fā)送數(shù)據(jù)時用于計算MAC的key。Serverwritekey:服務(wù)器端加密數(shù)據(jù)和客戶端解密數(shù)據(jù)用的密鑰。Clientwritekey:客戶端加密數(shù)據(jù)和服務(wù)器端解密數(shù)據(jù)的密鑰Initializationvectors:在CBC模式中用到的IV,最初由握手協(xié)議初始化,然后每一個記錄的最后一個密文塊被用作下一個記錄的IV。Sequencenumbers:每一個連接都需要維護(hù)一個序列號,當(dāng)密碼參數(shù)變化時,重置為0,最大值為264-1。7.3.1TLS概述2023/2/1587.3.2TLS記錄協(xié)議層TLS記錄協(xié)議層根據(jù)當(dāng)前會話狀態(tài)指定的壓縮算法、密碼規(guī)格(CipherSpec)指定的對稱加密算法、MAC算法、密鑰長度、散列長度、IV長度等參數(shù),以及連接狀態(tài)中指定客戶和服務(wù)器的隨機(jī)數(shù)、加密密鑰、MAC秘密、IV、消息序列號等,對當(dāng)前連接中傳輸?shù)母邔訑?shù)據(jù)進(jìn)行分片、壓縮/解壓縮(可選)、MAC保護(hù)/驗(yàn)證、加/解密等操作。記錄協(xié)議層需要封裝的高層協(xié)議包括4類:改變密碼規(guī)格協(xié)議、報警協(xié)議、握手協(xié)議和應(yīng)用層協(xié)議(如HTTP、FTP、Telnet等)。2023/2/1597.3.2TLS記錄協(xié)議層2023/2/1607.3.2TLS記錄協(xié)議層記錄協(xié)議使用握手協(xié)議提供的安全參數(shù)生成加密密鑰和MAC密鑰。具體方法如下:使用偽隨機(jī)函數(shù),輸入握手協(xié)議產(chǎn)生的主秘密、密鑰擴(kuò)展字符串、服務(wù)器產(chǎn)生的隨機(jī)數(shù)和客戶產(chǎn)生的隨機(jī)數(shù),輸出足夠長度密鑰塊。密鑰塊按密碼規(guī)格需要順序分解成特定長度的4個密鑰:客戶寫MAC密鑰、服務(wù)器寫MAC密鑰、客戶寫加密密鑰、服務(wù)器寫加密密鑰。2023/2/1617.3.3TLS握手協(xié)議層1.TLS握手協(xié)議負(fù)責(zé)協(xié)商一個會話,該會話包括以下內(nèi)容:會話標(biāo)識符:服務(wù)器選擇的任意字節(jié)序列標(biāo)識一個活動的或可恢復(fù)的會話狀態(tài)。實(shí)體證書:對等實(shí)體的X.509v3證書,可以為空。壓縮方法:用于加密前壓縮數(shù)據(jù)的算法。密碼規(guī)格:指明數(shù)據(jù)加密算法(如空、DES等)和MAC算法(如MD5或SHA),以及密碼屬性如摘要長度。主秘密(Mastersecret):服務(wù)器與客戶端共享48字節(jié)秘密值??苫謴?fù)標(biāo)志:指明該會話是否可以用于初始化新的連接。2023/2/1627.3.3TLS握手協(xié)議層1.TLS握手協(xié)議握手協(xié)議的消息交換過程

(*表示可選)2023/2/1637.3.2TLS記錄協(xié)議層(1)交換hello消息協(xié)商確認(rèn)算法、交換隨機(jī)數(shù)并檢查會話恢復(fù)客戶hello和服務(wù)器hello都包括:協(xié)議版本、隨機(jī)數(shù)會話ID、密碼套件和壓縮算法。客戶hello給出密碼套件列表和壓縮算法列表,供服務(wù)器選擇。密碼套件包括:密鑰交換算法、對稱加密算法和MAC算法(2)交換證書只要密鑰交換方法不是匿名的,在ServerHello之后必須發(fā)送證書消息Certificate。CetificateRequest2023/2/1647.3.2TLS記錄協(xié)議層(3)密鑰交換與認(rèn)證當(dāng)服務(wù)器證書沒有足夠數(shù)據(jù)允許客戶端交換一個預(yù)主密鑰時,服務(wù)器發(fā)送證書消息后緊跟著發(fā)送服務(wù)器密鑰交換消息ServerKeyExchange。ServerKeyExchange向客戶傳遞用于交換預(yù)主密鑰的密碼信息,并包含簽名值。ServerKeyExchange消息內(nèi)容根據(jù)Hello階段協(xié)商的密鑰交換方法不同而不同。2023/2/1657.3.2TLS記錄協(xié)

溫馨提示

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

最新文檔

評論

0/150

提交評論