




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
計算機系統(tǒng)安全第十三章
TLS(SSL)協議
1計算機系統(tǒng)安全1TCP/IP協議棧中的安全一、SSL協議的概述
2TCP/IP協議棧中的安全一、SSL協議的概述2SSL協議的發(fā)展
一、SSL協議的概述
1SSL(SecureSocketLayer)是Netscape公司設計的主要用于web的安全傳輸協議。2IETF()將SSL作了標準化,即RFC2246,并將其稱為TLS(TransportLayerSecurity),TLS1.0與SSL3.0差別很小。3在WAP的環(huán)境下,由于手機處理和存儲能力有限,wap論壇()在TLS的基礎上做了簡化,提出了WTLS協議(WirelessTLS),以適應無線的特殊環(huán)境。
3SSL協議的發(fā)展一、SSL協議的概述1SSL(SecuSSL協議的位置
一、SSL協議的概述SSL協議要求建立在可靠的傳輸層協議(如:TCP)之上。SSL協議的優(yōu)勢在于它是與應用層協議獨立無關的。高層的應用層協議(例如:HTTP,FTP,TELNET)能透明的建立于SSL協議之上。SSL協議在應用層協議通信之前就已經完成加密算法、通信密鑰的協商以及服務器認證工作。在此之后應用層協議所傳送的數據都會被加密,從而保證通信的私密性。
4SSL協議的位置一、SSL協議的概述SSL協議要SSL協議的位置一、SSL協議的概述
SSL協議建立在傳送層和應用層之間,由記錄協議和握手協議組成,其中記錄協議在握手協議下端。SSL在TCP之上建立了一個加密通道。
IPHTTP/S-HTTPFTPSMTPTCPSSLorTLS5SSL協議的位置一、SSL協議的概述SSL協議建立在傳送層主要功能
一、SSL協議的概述
1、SSL服務器認證:允許用戶確認服務器身份。支持SSL協議的客戶機軟件能使用公鑰密碼標準技術檢查服務器證書、公用ID是否有效和是否由在客戶信任的CA列表內的認證機構發(fā)放。
2、SSL客戶機認證:允許服務器確認用戶身份。使用應用于服務器認證同樣的技術,支持SSL協議的服務器軟件能檢查客戶證書、公用ID是否有效和是否由在服務器信任的認證機構列表內的CA發(fā)放。
6主要功能一、SSL協議的概述1、SSL服務器認證:允許用主要功能一、SSL協議的概述
3、機密性:一個加密的SSL連接要求所有在客戶機與服務器之間發(fā)送的信息由發(fā)送方軟件加密和由接受方軟件解密,這樣提供了高度機密性。4、完整性:所有通過加密SSL連接發(fā)送的數據都被一種檢測篡改的機制所保護,這種機制自動地決定傳輸中的數據是否已經被更改。
7主要功能一、SSL協議的概述3、機密性:一個加密的SSL連連接安全一、SSL協議的概述
SSL協議提供的連接安全有三個基本屬性:連接是保密的。對稱加密法用于數據加密(如用DES和RC4等)。對方的身份能夠使用非對稱或公鑰密碼進行認證(如用RSA和DSS等)。連接是可靠的。消息傳輸包括使用消息認證碼(MAC)的消息完整性檢查,安全哈希函數(如SHA和MD5等)用于消息認證碼計算。8連接安全一、SSL協議的概述SSL協議提供的連接安全有三個SSL協議的組成
一、SSL協議的概述SSL協議包括兩個子協議:SSL記錄協議和SSL握手協議。SSLHandshakeProtocolSSLChangeCipherSpecProtocolSSLAlertProtocolHTTP,FTP…SSLRecordProtocolTCPIP9SSL協議的組成一、SSL協議的概述SSL協議包括兩個子協SSL協議的組成一、SSL協議的概述記錄協議定義了要傳輸數據的格式,它位于一些可靠的的傳輸協議TCP之上,用于各種更高層協議的封裝。記錄協議主要完成分組和組合,壓縮和解壓縮,以及消息認證和加密等功能。所有傳輸數據包括握手消息和應用數據都被封裝在記錄中。握手協議允許服務器與客戶機在應用程序傳輸和接收數據之前互相認證、協商加密算法和密鑰。10SSL協議的組成一、SSL協議的概述記錄協議定義了要傳輸數據SSL握手協議一、SSL協議的概述在初次建立SSL連接時使用SSL記錄協議交換一系列消息。為如下操作做準備:.客戶機對服務器的認證。.客戶機與服務器都支持的加密算法或密碼。.服務器對客戶的認證(可選)。.使用公鑰加密技術生成共享密鑰。.建立加密SSL連接。11SSL握手協議一、SSL協議的概述在初次建立SSL連接時使用四個目標
二、目標
加密安全性:在雙方之間建立安全的連接。協同工作能力:獨立程序員能夠使用SSL3.0開發(fā)應用,然后能夠在不知道他人代碼的情況下成功地交換加密參數。可擴展性:SSL致力于提供一種框架,在必要時新的公鑰和大批加密方法可以整合進來。相對效率:考慮到加密操作特別是公鑰操作的速度問題,SSL協議使用可選的會話緩沖方案以降低連接數量,減少網絡操作行為。12四個目標二、目標加密安全性:在雙方之間建立安全的連接。支持的密碼
三、SSL協議支持的密碼
帶SHA-1消息認證、支持168位加密的3-DES,速度不如RC4快。大約有3.7*1050個密碼。帶MD5消息認證、支持128位加密的RC4,RC4和RC2都有128位的密碼,加密強度僅次于3-DES。RC4和RC2大約有3.4*1038個密碼可用。RC4密碼是SSL支持的密碼中最快的。帶SHA-1消息認證、支持56位加密的DES,大約有7.2*1016個可用的密碼(在SSL2.0中該密碼使用的是MD5消息認證)。13支持的密碼三、SSL協議支持的密碼帶SHA-1消息認證、支持的密碼
三、SSL協議支持的密碼
美國允許以下加密技術出口:帶MD5消息認證、支持40位加密的RC4,大約有個1.1*1012可用的密碼。帶MD5消息認證、支持40位加密的RC2,大約有個1.1*1012可用的密碼。注:對RC2和RC4支持40位加密,其中密鑰仍是128位的,但只有40位有加密意義。不加密,只帶MD5消息認證。(SSL3.0支持而SSL2.0不支持)。14支持的密碼三、SSL協議支持的密碼美國允許以下加密技術出主要工作流程
四、SSL協議原理及工作流程
①網絡連接建立;②選擇與該連接相關的加密和壓縮方式;③雙方的身份識別;④本次傳輸密鑰的確定;⑤加密的數據傳輸;⑥網絡連接的關閉。15主要工作流程四、SSL協議原理及工作流程①網絡連接建立;主要工作流程四、SSL協議原理及工作流程
應用數據的傳輸過程為:1)應用程序把應用數據提交給本地的SSL;2)發(fā)送端的SSL根據需要:
a)使用指定的壓縮算法,壓縮應用數據;
b)使用散列算法對壓縮后的數據計算散列值;
c)把散列值和壓縮數據一起用加密算法加密;3)密文通過網絡傳給對方;16主要工作流程四、SSL協議原理及工作流程應用數據的傳輸過程主要工作流程四、SSL協議原理及工作流程
4)接收方的SSL用相同的加密算法對密文解密,得到明文;用相同的散列算法對明文中的應用數據散列;計算得到的散列值與明文中的散列值比較;5)如果一致,則明文有效,接收方的SSL把明文解壓后得到應用數據上交給應用層。否則就丟棄數據,并向發(fā)方發(fā)出告警信息。嚴重的錯誤有可能引起再次的協商或連接中斷。17主要工作流程四、SSL協議原理及工作流程4)接收方的SSL記錄協議工作流程
四、SSL協議原理及工作流程
18記錄協議工作流程四、SSL協議原理及工作流程18記錄協議工作流程四、SSL協議原理及工作流程
ApplicationdataFragmentCompressAddMACEncryptionAppendSSLrecordheader19記錄協議工作流程四、SSL協議原理及工作流程Applica四、SSL協議原理及工作流程
SSL記錄格式內容類型主版本號次版本號壓縮長度被壓縮(可選)的明文MAC(0,16or20字節(jié))加密數據20四、SSL協議原理及工作流程SSL記錄格式內容類型主版本內容類型:長8位,表示封裝數據的上一層協議,如:握手協議、報警協議、更改密碼說明協議或應用數據主版本號:8位,3.0版為3次版本號:8位,3.0版為0壓縮長度:16位,表示壓縮后的數據字節(jié)數SSL記錄格式21內容類型:長8位,表示封裝數據的上一層協議,如:握手協議、報四、SSL協議原理及工作流程
SSL記錄協議的負載22四、SSL協議原理及工作流程SSL記錄協議的負載22SSL記錄數據的格式四、SSL協議原理及工作流程
SSL的記錄包含三個部分:MAC數據、實際數據和粘貼數據。MAC數據用于數據完整性檢查。MAC數據=HASH[密鑰,實際數據,粘貼數據,序號]。當會話的客戶端發(fā)送數據時,密鑰是客戶的寫密鑰(服務器用讀密鑰來驗證MAC數據);而當會話的客戶端接收數據時,密鑰是客戶的讀密鑰(服務器用寫密鑰來產生MAC數據)。序號是一個可以被發(fā)送和接收雙方遞增的計數器。計數器有32位,計數值循環(huán)使用,每發(fā)送一個記錄計數值遞增一次,序號的初始值為0。23SSL記錄數據的格式四、SSL協議原理及工作流程SSL的記SSL握手協議四、SSL協議原理及工作流程SSL握手協議包含兩個階段:第一個階段:建立私密性通信信道;第二個階段:客戶認證。24SSL握手協議四、SSL協議原理及工作流程SSL握手協議包SSL握手協議工作流程
四、SSL協議原理及工作流程第一階段:通信初始化。當雙方都收到對方HELLO消息時,就有足夠信息確定是否需要新密鑰。若不需要新密鑰,則進入握手第二階段。否則,客戶方根據服務器方的SERVER-HELLO消息(包含服務器持有證書、加密規(guī)約和連接標識)產生新密鑰,并發(fā)出CLIENT-MASTER-KEY消息。最終服務器方向客戶方發(fā)出SERVER-VERIFY消息。只有擁有合適的公鑰的服務器才能解開密鑰。
25SSL握手協議工作流程四、SSL協議原理及工作流程第一階SSL握手協議工作流程四、SSL協議原理及工作流程
每一通信方向上都需要一對密鑰,所以一個連接需要四個密鑰,分別為客戶方的讀密鑰、寫密鑰、服務器方的讀密鑰、寫密鑰。第二階段:對客戶進行認證,此時服務器已經被認證了。服務器向客戶發(fā)出認證請求消息:REQUEST-CERTIFICATE。當客戶收到服務器方的認證請求消息,發(fā)出自己的證書,并且監(jiān)聽對方回送的認證結果。而當服務器收到客戶的認證,認證成功返回SERVER-FINISH消息,否則返回錯誤消息。握手過程到此全部結束。
26SSL握手協議工作流程四、SSL協議原理及工作流程SSL握手協議工作流程四、SSL協議原理及工作流程
ClientHelloServerHello,Certificate+CertchainClientKeyexchangeServerChangeCipherClientChangeCipherClient<->ServerData27SSL握手協議工作流程四、SSL協議原理及工作流程ClieSSL握手協議工作流程四、SSL協議原理及工作流程
CLIENTSERVERClientHelloServerHelloCertificate*CertificateRequest*ServerKeyExchange*Certificate*ClientKeyExchangeCertificateVerify*changecipherspecFinishedchangecipherspecFinishedApplicationDataApplicationData28SSL握手協議工作流程四、SSL協議原理及工作流程CLIESSL握手協議工作流程四、SSL協議原理及工作流程
CLIENTSERVERClientHelloServerHellochangecipherspecFinishedchangecipherspecFinishedApplicationDataApplicationData29SSL握手協議工作流程四、SSL協議原理及工作流程CLIE四、SSL協議原理及工作流程
消息類型 參數hello_request nullclient_hello/
version,random,sessionid,server_hello
ciphersuite,compressionmethodcertificate chainofX.509v3certificatesserver_key_exchange parameters,signaturecertificate_request type,authoritiesserver_done nullcertificate_verify signatureclient_key_exchange parameters,signaturefinished hashvalue30四、SSL協議原理及工作流程消息類型 參數3認證服務器的身份四、SSL協議原理及工作流程
1.從服務器端傳送的證書中獲得相關信息2.當天的時間是否在證書的合法期限內;3.簽發(fā)證書的機關是否客戶端信任的;4.簽發(fā)證書的公鑰是否符合簽發(fā)者的數字簽名5.證書中的服務器域名是否符合服務器自己真正的域名6.服務器被驗證成功,客戶繼續(xù)進行握手過程。
31認證服務器的身份四、SSL協議原理及工作流程1.從服務器端認證客戶端的身份四、SSL協議原理及工作流程
1.客戶端傳送的證書中獲得相關信息;2.用戶的公鑰是否符合用戶的數字簽名;3.當天的時間是否在證書的合法期限內;4.簽發(fā)證書的機關是否服務器信任的;5.簽發(fā)證書的機關是否服務器端信任的;6.用戶的證書是否在服務器的LDAP用戶信息中7.該用戶是否有權限訪問請求的服務器資源32認證客戶端的身份四、SSL協議原理及工作流程1.客戶端傳工作流程
4階段四、SSL協議原理及工作流程33工作流程
4階段四、SSL協議原理及工作流程33工作流程
四、SSL協議原理及工作流程
1.CS:發(fā)送客戶的SSL版本號、密碼設置、隨機數以及服務器使用SSL協議通信所需的其它信息。2.SC:發(fā)送服務器的SSL版本號、密碼設置、隨機數以及客戶機使用SSL協議通信所需的其它信息。服務器還要發(fā)送自己的證書,若需要對客戶認證,則要求客戶發(fā)送證書。3.C對S認證。若S不能被認證,用戶收到警告,通知加密和認證連接不能建立。若服務器能被成功地認證,客戶機繼續(xù)下一步。34工作流程四、SSL協議原理及工作流程1.CS:發(fā)送客工作流程
四、SSL協議原理及工作流程
4.
使用所有在握手中生成的數據,客戶機為會話創(chuàng)建pre_master_secret,用服務器公鑰(從服務器證書中得到)加密它,向服務器發(fā)送加密的pre_master_secret。5.若服務器已經要求客戶認證,客戶機會向服務器隨加密的pre_master_secret一起發(fā)送簽名的數據和客戶自己的證書。6.S試圖去認證客戶。若認證成功,S使用私鑰加密pre_master_secret,然后執(zhí)行一系列步驟生成mastersecret。否則會話終止。35工作流程四、SSL協議原理及工作流程4.
使用所有在握工作流程
四、SSL協議原理及工作流程7.客戶機與服務器使用mastersecret生成會話密鑰。該密鑰是對稱密鑰,用于加密和解密在SSL會話期間交換的信息,檢驗信息完整性——即檢測通過SSL連接發(fā)送和接收期間數據中的任何改變。8.CS:發(fā)送消息通知以后從客戶機來的消息將用會話密鑰加密。客戶機然后發(fā)送一條獨立的(加密的)消息表明握手的客戶機部分已經完成。36工作流程四、SSL協議原理及工作流程7.客戶機與服務器使用工作流程
四、SSL協議原理及工作流程9.SC:發(fā)送消息通知以后從服務器來的消息將用會話密鑰加密。服務器然后發(fā)送一條獨立的(加密的)消息表明握手的服務器部分已經完成。10.SSL握手完成,SSL會話開始。客戶機與服務器使用會話加密和解密他們彼此發(fā)送的數據和驗證數據完整性。37工作流程四、SSL協議原理及工作流程9.SC:發(fā)送消息工作流程
四、SSL協議原理及工作流程在繼續(xù)會話之前,Netscape服務器能被配置成檢查客戶證書是否出現在LDAP目錄里的用戶條目中。這個配置選項提供了一條途徑確認客戶證書尚未被撤消。重要的是要注意到客戶機與服務器證書與用公鑰/密鑰對中的一個加密一些數據而用其它密鑰解密數據有關。在服務器認證的情況下,客戶機用服務器公用密鑰加密pre_master_secret。只有相應的密鑰能夠正確地解密pre_master_secret,客戶才確信:與公鑰相關聯的標識符事實上是服務器與客戶機連接使用的。否則,服務器不能解密pre_master_secret、不能生成會話要求的對稱密鑰,會話將被終止。38工作流程四、SSL協議原理及工作流程在繼續(xù)會話之前,Net工作流程
四、SSL協議原理及工作流程在客戶認證的情況下,客戶機用客戶的密鑰加密一些隨機數據,創(chuàng)建一個數字簽名。只有在相應的密鑰被使用時,客戶證書中的公鑰能夠正確驗證數字簽名。否則,服務器不能驗證數字簽名,會話被終止。39工作流程四、SSL協議原理及工作流程在客戶認證的情況下,客密鑰協商的形象化比喻四、SSL協議原理及工作流程
假設SSL客戶端C與SSL服務器端S通信,加密后的消息放在方括號[]里,以區(qū)別于明文消息。雙方的處理動作的說明用圓括號()括起。C:我想和你安全的通話,我這里的對稱加密算法有DES,RC5,密鑰交換算法有RSA和DH,摘要算法有MD5和SHA。S:我們用DES-RSA-SHA這對組合好了。
這是我的證書,里面有我的名字和公鑰,你拿去驗證一下我的身份(把證書發(fā)給C)。40密鑰協商的形象化比喻四、SSL協議原理及工作流程假設SSL密鑰協商的形象化比喻四、SSL協議原理及工作流程
C:(查看證書上S的名字,并通過手頭已有的CA的證書驗證S的證書的真實性,如果有誤,發(fā)出警告并斷開連接,這一步保證了B的公鑰的真實性)(產生一份秘密消息——稱為per_master_secret,以后用于對初始化向量和hmac進行加密,然后用S的公鑰加密成為ClientKeyExchange)41密鑰協商的形象化比喻四、SSL協議原理及工作流程C:(查看密鑰協商的形象化比喻我生成了一份秘密消息,并用你的公鑰加密傳給你了(把ClientKeyExchange發(fā)給S)
注意:下面我要用加密辦法給你發(fā)消息了!(將秘密消息進行處理,生成加密密鑰,加密初始化向量和hmac的密鑰)[我說完了]
42密鑰協商的形象化比喻我生成了一份秘密消息,并用你的公鑰加密傳PPT教學課件謝謝觀看ThankYouForWatchingPPT教學課件謝謝觀看ThankYouForWatch計算機系統(tǒng)安全第十三章
TLS(SSL)協議
44計算機系統(tǒng)安全1TCP/IP協議棧中的安全一、SSL協議的概述
45TCP/IP協議棧中的安全一、SSL協議的概述2SSL協議的發(fā)展
一、SSL協議的概述
1SSL(SecureSocketLayer)是Netscape公司設計的主要用于web的安全傳輸協議。2IETF()將SSL作了標準化,即RFC2246,并將其稱為TLS(TransportLayerSecurity),TLS1.0與SSL3.0差別很小。3在WAP的環(huán)境下,由于手機處理和存儲能力有限,wap論壇()在TLS的基礎上做了簡化,提出了WTLS協議(WirelessTLS),以適應無線的特殊環(huán)境。
46SSL協議的發(fā)展一、SSL協議的概述1SSL(SecuSSL協議的位置
一、SSL協議的概述SSL協議要求建立在可靠的傳輸層協議(如:TCP)之上。SSL協議的優(yōu)勢在于它是與應用層協議獨立無關的。高層的應用層協議(例如:HTTP,FTP,TELNET)能透明的建立于SSL協議之上。SSL協議在應用層協議通信之前就已經完成加密算法、通信密鑰的協商以及服務器認證工作。在此之后應用層協議所傳送的數據都會被加密,從而保證通信的私密性。
47SSL協議的位置一、SSL協議的概述SSL協議要SSL協議的位置一、SSL協議的概述
SSL協議建立在傳送層和應用層之間,由記錄協議和握手協議組成,其中記錄協議在握手協議下端。SSL在TCP之上建立了一個加密通道。
IPHTTP/S-HTTPFTPSMTPTCPSSLorTLS48SSL協議的位置一、SSL協議的概述SSL協議建立在傳送層主要功能
一、SSL協議的概述
1、SSL服務器認證:允許用戶確認服務器身份。支持SSL協議的客戶機軟件能使用公鑰密碼標準技術檢查服務器證書、公用ID是否有效和是否由在客戶信任的CA列表內的認證機構發(fā)放。
2、SSL客戶機認證:允許服務器確認用戶身份。使用應用于服務器認證同樣的技術,支持SSL協議的服務器軟件能檢查客戶證書、公用ID是否有效和是否由在服務器信任的認證機構列表內的CA發(fā)放。
49主要功能一、SSL協議的概述1、SSL服務器認證:允許用主要功能一、SSL協議的概述
3、機密性:一個加密的SSL連接要求所有在客戶機與服務器之間發(fā)送的信息由發(fā)送方軟件加密和由接受方軟件解密,這樣提供了高度機密性。4、完整性:所有通過加密SSL連接發(fā)送的數據都被一種檢測篡改的機制所保護,這種機制自動地決定傳輸中的數據是否已經被更改。
50主要功能一、SSL協議的概述3、機密性:一個加密的SSL連連接安全一、SSL協議的概述
SSL協議提供的連接安全有三個基本屬性:連接是保密的。對稱加密法用于數據加密(如用DES和RC4等)。對方的身份能夠使用非對稱或公鑰密碼進行認證(如用RSA和DSS等)。連接是可靠的。消息傳輸包括使用消息認證碼(MAC)的消息完整性檢查,安全哈希函數(如SHA和MD5等)用于消息認證碼計算。51連接安全一、SSL協議的概述SSL協議提供的連接安全有三個SSL協議的組成
一、SSL協議的概述SSL協議包括兩個子協議:SSL記錄協議和SSL握手協議。SSLHandshakeProtocolSSLChangeCipherSpecProtocolSSLAlertProtocolHTTP,FTP…SSLRecordProtocolTCPIP52SSL協議的組成一、SSL協議的概述SSL協議包括兩個子協SSL協議的組成一、SSL協議的概述記錄協議定義了要傳輸數據的格式,它位于一些可靠的的傳輸協議TCP之上,用于各種更高層協議的封裝。記錄協議主要完成分組和組合,壓縮和解壓縮,以及消息認證和加密等功能。所有傳輸數據包括握手消息和應用數據都被封裝在記錄中。握手協議允許服務器與客戶機在應用程序傳輸和接收數據之前互相認證、協商加密算法和密鑰。53SSL協議的組成一、SSL協議的概述記錄協議定義了要傳輸數據SSL握手協議一、SSL協議的概述在初次建立SSL連接時使用SSL記錄協議交換一系列消息。為如下操作做準備:.客戶機對服務器的認證。.客戶機與服務器都支持的加密算法或密碼。.服務器對客戶的認證(可選)。.使用公鑰加密技術生成共享密鑰。.建立加密SSL連接。54SSL握手協議一、SSL協議的概述在初次建立SSL連接時使用四個目標
二、目標
加密安全性:在雙方之間建立安全的連接。協同工作能力:獨立程序員能夠使用SSL3.0開發(fā)應用,然后能夠在不知道他人代碼的情況下成功地交換加密參數??蓴U展性:SSL致力于提供一種框架,在必要時新的公鑰和大批加密方法可以整合進來。相對效率:考慮到加密操作特別是公鑰操作的速度問題,SSL協議使用可選的會話緩沖方案以降低連接數量,減少網絡操作行為。55四個目標二、目標加密安全性:在雙方之間建立安全的連接。支持的密碼
三、SSL協議支持的密碼
帶SHA-1消息認證、支持168位加密的3-DES,速度不如RC4快。大約有3.7*1050個密碼。帶MD5消息認證、支持128位加密的RC4,RC4和RC2都有128位的密碼,加密強度僅次于3-DES。RC4和RC2大約有3.4*1038個密碼可用。RC4密碼是SSL支持的密碼中最快的。帶SHA-1消息認證、支持56位加密的DES,大約有7.2*1016個可用的密碼(在SSL2.0中該密碼使用的是MD5消息認證)。56支持的密碼三、SSL協議支持的密碼帶SHA-1消息認證、支持的密碼
三、SSL協議支持的密碼
美國允許以下加密技術出口:帶MD5消息認證、支持40位加密的RC4,大約有個1.1*1012可用的密碼。帶MD5消息認證、支持40位加密的RC2,大約有個1.1*1012可用的密碼。注:對RC2和RC4支持40位加密,其中密鑰仍是128位的,但只有40位有加密意義。不加密,只帶MD5消息認證。(SSL3.0支持而SSL2.0不支持)。57支持的密碼三、SSL協議支持的密碼美國允許以下加密技術出主要工作流程
四、SSL協議原理及工作流程
①網絡連接建立;②選擇與該連接相關的加密和壓縮方式;③雙方的身份識別;④本次傳輸密鑰的確定;⑤加密的數據傳輸;⑥網絡連接的關閉。58主要工作流程四、SSL協議原理及工作流程①網絡連接建立;主要工作流程四、SSL協議原理及工作流程
應用數據的傳輸過程為:1)應用程序把應用數據提交給本地的SSL;2)發(fā)送端的SSL根據需要:
a)使用指定的壓縮算法,壓縮應用數據;
b)使用散列算法對壓縮后的數據計算散列值;
c)把散列值和壓縮數據一起用加密算法加密;3)密文通過網絡傳給對方;59主要工作流程四、SSL協議原理及工作流程應用數據的傳輸過程主要工作流程四、SSL協議原理及工作流程
4)接收方的SSL用相同的加密算法對密文解密,得到明文;用相同的散列算法對明文中的應用數據散列;計算得到的散列值與明文中的散列值比較;5)如果一致,則明文有效,接收方的SSL把明文解壓后得到應用數據上交給應用層。否則就丟棄數據,并向發(fā)方發(fā)出告警信息。嚴重的錯誤有可能引起再次的協商或連接中斷。60主要工作流程四、SSL協議原理及工作流程4)接收方的SSL記錄協議工作流程
四、SSL協議原理及工作流程
61記錄協議工作流程四、SSL協議原理及工作流程18記錄協議工作流程四、SSL協議原理及工作流程
ApplicationdataFragmentCompressAddMACEncryptionAppendSSLrecordheader62記錄協議工作流程四、SSL協議原理及工作流程Applica四、SSL協議原理及工作流程
SSL記錄格式內容類型主版本號次版本號壓縮長度被壓縮(可選)的明文MAC(0,16or20字節(jié))加密數據63四、SSL協議原理及工作流程SSL記錄格式內容類型主版本內容類型:長8位,表示封裝數據的上一層協議,如:握手協議、報警協議、更改密碼說明協議或應用數據主版本號:8位,3.0版為3次版本號:8位,3.0版為0壓縮長度:16位,表示壓縮后的數據字節(jié)數SSL記錄格式64內容類型:長8位,表示封裝數據的上一層協議,如:握手協議、報四、SSL協議原理及工作流程
SSL記錄協議的負載65四、SSL協議原理及工作流程SSL記錄協議的負載22SSL記錄數據的格式四、SSL協議原理及工作流程
SSL的記錄包含三個部分:MAC數據、實際數據和粘貼數據。MAC數據用于數據完整性檢查。MAC數據=HASH[密鑰,實際數據,粘貼數據,序號]。當會話的客戶端發(fā)送數據時,密鑰是客戶的寫密鑰(服務器用讀密鑰來驗證MAC數據);而當會話的客戶端接收數據時,密鑰是客戶的讀密鑰(服務器用寫密鑰來產生MAC數據)。序號是一個可以被發(fā)送和接收雙方遞增的計數器。計數器有32位,計數值循環(huán)使用,每發(fā)送一個記錄計數值遞增一次,序號的初始值為0。66SSL記錄數據的格式四、SSL協議原理及工作流程SSL的記SSL握手協議四、SSL協議原理及工作流程SSL握手協議包含兩個階段:第一個階段:建立私密性通信信道;第二個階段:客戶認證。67SSL握手協議四、SSL協議原理及工作流程SSL握手協議包SSL握手協議工作流程
四、SSL協議原理及工作流程第一階段:通信初始化。當雙方都收到對方HELLO消息時,就有足夠信息確定是否需要新密鑰。若不需要新密鑰,則進入握手第二階段。否則,客戶方根據服務器方的SERVER-HELLO消息(包含服務器持有證書、加密規(guī)約和連接標識)產生新密鑰,并發(fā)出CLIENT-MASTER-KEY消息。最終服務器方向客戶方發(fā)出SERVER-VERIFY消息。只有擁有合適的公鑰的服務器才能解開密鑰。
68SSL握手協議工作流程四、SSL協議原理及工作流程第一階SSL握手協議工作流程四、SSL協議原理及工作流程
每一通信方向上都需要一對密鑰,所以一個連接需要四個密鑰,分別為客戶方的讀密鑰、寫密鑰、服務器方的讀密鑰、寫密鑰。第二階段:對客戶進行認證,此時服務器已經被認證了。服務器向客戶發(fā)出認證請求消息:REQUEST-CERTIFICATE。當客戶收到服務器方的認證請求消息,發(fā)出自己的證書,并且監(jiān)聽對方回送的認證結果。而當服務器收到客戶的認證,認證成功返回SERVER-FINISH消息,否則返回錯誤消息。握手過程到此全部結束。
69SSL握手協議工作流程四、SSL協議原理及工作流程SSL握手協議工作流程四、SSL協議原理及工作流程
ClientHelloServerHello,Certificate+CertchainClientKeyexchangeServerChangeCipherClientChangeCipherClient<->ServerData70SSL握手協議工作流程四、SSL協議原理及工作流程ClieSSL握手協議工作流程四、SSL協議原理及工作流程
CLIENTSERVERClientHelloServerHelloCertificate*CertificateRequest*ServerKeyExchange*Certificate*ClientKeyExchangeCertificateVerify*changecipherspecFinishedchangecipherspecFinishedApplicationDataApplicationData71SSL握手協議工作流程四、SSL協議原理及工作流程CLIESSL握手協議工作流程四、SSL協議原理及工作流程
CLIENTSERVERClientHelloServerHellochangecipherspecFinishedchangecipherspecFinishedApplicationDataApplicationData72SSL握手協議工作流程四、SSL協議原理及工作流程CLIE四、SSL協議原理及工作流程
消息類型 參數hello_request nullclient_hello/
version,random,sessionid,server_hello
ciphersuite,compressionmethodcertificate chainofX.509v3certificatesserver_key_exchange parameters,signaturecertificate_request type,authoritiesserver_done nullcertificate_verify signatureclient_key_exchange parameters,signaturefinished hashvalue73四、SSL協議原理及工作流程消息類型 參數3認證服務器的身份四、SSL協議原理及工作流程
1.從服務器端傳送的證書中獲得相關信息2.當天的時間是否在證書的合法期限內;3.簽發(fā)證書的機關是否客戶端信任的;4.簽發(fā)證書的公鑰是否符合簽發(fā)者的數字簽名5.證書中的服務器域名是否符合服務器自己真正的域名6.服務器被驗證成功,客戶繼續(xù)進行握手過程。
74認證服務器的身份四、SSL協議原理及工作流程1.從服務器端認證客戶端的身份四、SSL協議原理及工作流程
1.客戶端傳送的證書中獲得相關信息;2.用戶的公鑰是否符合用戶的數字簽名;3.當天的時間是否在證書的合法期限內;4.簽發(fā)證書的機關是否服務器信任的;5.簽發(fā)證書的機關是否服務器端信任的;6.用戶的證書是否在服務器的LDAP用戶信息中7.該用戶是否有權限訪問請求的服務器資源75認證客戶端的身份四、SSL協議原理及工作流程1.客戶端傳工作流程
4階段四、SSL協議原理及工作流程76工作流程
4階段四、SSL協議原理及工作流程33工作流程
四、SSL協議原理及工作流程
1.CS:發(fā)送客戶的SSL版本號、密碼設置、隨機數以及服務器使用SSL協議通信所需的其它信息。2.SC:發(fā)送服務器的SSL版本號、密碼設置、隨機數以及客戶機使用SSL協議通信所需的其它信息。服務器還要發(fā)送自己的證書,若需要對客戶認證,則要求客戶發(fā)送證書。3.C對S認證。若S不能被認證,用戶收到警告,通知加密和認證連接不能建立。若服務器能被成功地認證,客戶機繼續(xù)下一步。77工作流程四、SSL協議原理及工作流程1.CS:發(fā)送客工作流程
四、SSL協議原理及工作流程
4.
使用所有在握手中生成的數據,客戶機為會話創(chuàng)建pre_master_secret,用服務器公鑰(從服務器證書中得到)加密它,向服務器發(fā)送加密的pre_master_secret。5.若服務器已經要求客戶認證,客戶機會向服務器隨加密的pre_master_secret一起發(fā)送簽名的數據和客戶自己的證書。6.S試圖去認
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國鑄造機械制造行業(yè)運營狀況與發(fā)展前景分析報告
- 2025-2030年中國金屬波紋管市場發(fā)展趨勢規(guī)劃研究報告
- 2025-2030年中國聚氨酯慢回彈海綿女性內衣市場運營狀況及發(fā)展規(guī)劃分析報告
- 2025-2030年中國綜合肺功能測定儀市場發(fā)展狀況及投資策略研究報告
- 2025-2030年中國純鋯珠行業(yè)運行現狀及發(fā)展前景分析報告
- 2025-2030年中國礦渣粉行業(yè)運營格局及發(fā)展趨勢分析報告
- 2025-2030年中國真空搬運機械行業(yè)競爭格局及發(fā)展趨勢分析報告
- 2025-2030年中國盆景行業(yè)競爭狀況規(guī)劃研究報告
- 濮陽職業(yè)技術學院《藥物合成實驗》2023-2024學年第二學期期末試卷
- 吉林電子信息職業(yè)技術學院《施工技術與施工組織》2023-2024學年第二學期期末試卷
- 文化產業(yè)管理專業(yè)大學生職業(yè)生涯規(guī)劃書
- DSM-V美國精神疾病診斷標準
- 文獻的載體課件
- 2023年高考語文全國乙卷《長出一地的好蕎麥》解析
- 混凝土強度回彈檢測方案
- 歷年中考地理生物變態(tài)難題
- 研學旅行課程標準(一)-前言、課程性質與定位、課程基本理念、課程目標
- 部編版二年級下冊語文教案全冊
- 解放牌汽車CA10B后鋼板彈簧吊耳加工工藝及夾具設計哈
- 大學??啤稒C電傳動控制》課件
- 高中地理高清區(qū)域地理填圖冊
評論
0/150
提交評論