版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、SSL協(xié)議的工作原理圖解安全套接字 SSL協(xié)議的工作原理1、密碼學(xué)的相關(guān)概念密碼學(xué)( cryptography ):目的是通過將信息編碼使其不可讀,從而達(dá)到 安全 性。明文 (plain text ):發(fā)送人、 接受人和任何訪問消息的人都能理解的消息。密文( cipher text ):明文消息經(jīng)過某種編碼后,得到密文消息。加密( encryption ):將明文消息變成密文消息。 解密( decryption ):將密文消息變成明文消息。算法:取一個輸入文本,產(chǎn)生一個輸出文 本。加密算法:發(fā)送方進(jìn)行加密的算法。解密算法:接收方進(jìn)行解密的算法。密鑰(key):只有發(fā)送方和接收方理解的消息對稱密
2、鑰加密( Symmetric Key Cryptography ):加密與解 密使用相同密鑰。非對稱密鑰加密( Asymmetric Key Cryptography ):加密與解密使用不同 密鑰。2 、相關(guān)的加密算法介紹DES 算法即數(shù)據(jù)加密標(biāo)準(zhǔn),也稱為數(shù)據(jù)加密算法。加密過程如下:在 SSL 中會用到分組 DES、三重 DES算法等加密算法對數(shù)據(jù)進(jìn)行加密。當(dāng)然可以選用其 他非 DES加密算法,視情況而定,后面會詳細(xì)介紹。3 、密鑰 交換 算法使用對稱加密算法時,密鑰 交換 是個大難題,所以 Diffie 和 Hellman 提出了著名的 Diffie-Hellman 密鑰交換算法。Diffi
3、e-Hellman 密鑰交換算法原理:(1)Alice 與Bob確定兩個大素?cái)?shù) n和 g,這兩個數(shù)不用保密( 2)Alice 選擇另一個大隨機(jī)數(shù) x,并計(jì)算 A 如下: A=gx mod n(3)Alice 將 A發(fā)給 Bob( 4) Bob選擇另一個大隨機(jī)數(shù) y,并計(jì)算 B如下: B=gy modn (5) Bob 將 B發(fā)給 Alice (6)計(jì)算秘密密鑰 K1如下: K1=Bx modn (7)計(jì)算秘密密鑰 K2如下: K2=Ay mod nK1=K2, 因此 Alice 和 Bob 可以用其進(jìn)行加解密RSA 加密算法是基于這樣的數(shù)學(xué)事實(shí):兩個大素?cái)?shù)相乘容易,而對得到的乘積求因子則 很難
4、。加密過程如下:(1) 選擇兩個大素?cái)?shù) P、Q(2)計(jì)算 N=P*Q(3)選擇一個公鑰(加密密鑰) E,使其不是 (P-1) 與(Q-1) 的因子 (4)選擇私鑰(解密密鑰) D,滿足如下條件:(D*E)mod (P-1)(Q-1)=1(5) 加密時,明文 PT 計(jì)算密文CT如下:CT=PTE mod N(6) 解密時,從密文 CT 計(jì)算明文 PT如下:PT=CTDmodN 這也是SSL中會用一種密鑰交換算法。3 、散列算法:主要用于驗(yàn)證數(shù)據(jù)的完整性, 即保證時消息在發(fā)送之后和接收之前沒有被篡改對于 SSL 中使用到的散列算法有 MD5、SHA-1.4 、數(shù)字證書:數(shù)字證書其實(shí)就是一個小的計(jì)算
5、機(jī)文件, 其作用類似于我們的身份證、 護(hù)照, 用于證明 身份,在 SSL中,使用數(shù)字證書來證明自己的身份,而不是偽造的。5 、簡單的總結(jié):在 SSL 中會使用密鑰交換算法交換密鑰; 使用密鑰對數(shù)據(jù)進(jìn)行加密; 使用散列算法對數(shù) 據(jù)的完整性進(jìn)行驗(yàn)證,使用數(shù)字證書證明自己的身份。好了,下面開始介紹SSL 協(xié)議 。SSL 介紹:安全套接字( Secure Socket Layer ,SSL)協(xié)議是 Web瀏覽器與 Web服務(wù)器之間安全交 換信息的 協(xié)議 ,提供兩個基本的安全服務(wù):鑒別與保密。SSL 是 Netscape 于1994年開發(fā)的,后來成為了世界上最著名的web 安全機(jī)制,所有主要的瀏覽器都支
6、持 SSL協(xié)議。目前有三個版本: 2、 3、,最常用的是第 3版,是 1995年發(fā)布的。SSL 協(xié)議的三個特性 保密:在握手協(xié)議中定義了會話密鑰后,所有的消息都被加密。 鑒別:可選的客戶端認(rèn)證,和強(qiáng)制的 服務(wù)器 端認(rèn)證。 完整性:傳送的消息包括消息完整性檢查(使用MAC)。SSL 的位置SSL 介于應(yīng)用層和 TCP層之間。應(yīng)用層數(shù)據(jù)不再直接傳遞給傳輸層, 而是傳遞給 SSL層, SSL層對從應(yīng)用層收到的數(shù)據(jù)進(jìn)行加密,并增加自己的SSL 頭。SSL的工作原理握手協(xié)議( Handshake protocol )記錄協(xié)議( Record protocol )警報(bào)協(xié)議( Alert protocol
7、)1 、握手協(xié)議握手協(xié)議是客戶機(jī)和服務(wù)器用 SSL 連接通信時使用的第一個子協(xié)議, 握手協(xié)議包括客戶 機(jī)與服務(wù)器之間的一系列消息。 SSL中最復(fù)雜的協(xié)議就是握手協(xié)議。該協(xié)議允許服務(wù)器和客 戶機(jī)相互驗(yàn)證, 協(xié)商加密和 MAC算法以及保密密鑰, 用來保護(hù)在 SSL 記錄中發(fā)送的數(shù)據(jù)。 握 手協(xié)議是在應(yīng)用程序的數(shù)據(jù)傳輸之前使用的。每個握手協(xié)議包含以下 3個字段( 1) Type:表示 10種消息類型之一( 2) Length :表示消息長度字節(jié)數(shù)( 3) Content :與消息相關(guān)的參數(shù)握手協(xié)議的 4個階段詳細(xì)出處參考:建立安全能力SSL 握手的第一階段啟動邏輯連接,建立這個連接的安全能力。首先客
8、戶機(jī)向服務(wù)器發(fā) 出 client hello 消息并等待服務(wù)器響應(yīng),隨后服務(wù)器向客戶機(jī)返回 server hello 消息,對 client hello 消息中的信息進(jìn)行確認(rèn)。Client hello 消息包括 Version ,Random,Session id , Cipher suite , Compression method 等信息。ClientHello 客戶發(fā)送 CilentHello 信息,包含如下內(nèi)容:( 1)客戶端可以支持的 SSL最高版本號(2)一個用于生成主秘密的 32字節(jié)的隨機(jī)數(shù)。 (等會介紹主秘密是什么)( 3)一個確定會話的會話 ID.( 4)一個客戶端可以支持的
9、密碼套件列表。密碼套件格式:每個套件都以“ SSL”開頭,緊跟著的是密鑰交換算法。用“ With ”這個詞把密鑰交換算法、加密算法、散列算法分開,例如:SSL_DHE_RSA_WITH_DES_CBC_,SHA表示把 DHE_RS(A 帶有 RSA數(shù)字簽名的暫時 Diffie-HellMan )定義為密鑰交換算法;把 DES_CBC定義為加密算法;把 SHA定義為散列算法。(5)一個客戶端可以支持的壓縮算法列表。ServerHello 服務(wù)器用 ServerHello 信息應(yīng)答客戶,包括下列內(nèi)容( 1)一個 SSL版本號。取客戶端支持的最高版本號和服務(wù)端支持的最高版本號中的較 低者。(2)一個
10、用于生成主秘密的 32字節(jié)的隨機(jī)數(shù)。 (客戶端一個、服務(wù)端一個)( 3)會話 ID( 4)從客戶端的密碼套件列表中選擇的一個密碼套件( 5)從客戶端的壓縮方法的列表中選擇的壓縮方法這個階段之后,客戶端服務(wù)端知道了下列內(nèi)容:(1)SSL版本(2)密鑰交換、信息驗(yàn)證和加密算法( 3)壓縮方法(4)有關(guān)密鑰生成的兩個隨機(jī)數(shù)。服務(wù)器鑒別與密鑰交換服務(wù)器啟動 SSL握手第 2階段,是本階段所有消息的唯一發(fā)送方,客戶機(jī)是所有消息的 唯一接收方。該階段分為 4步:(a)證書: 服務(wù)器將數(shù)字證書和到根 CA整個鏈發(fā)給客戶端, 使客戶端能用服務(wù)器證書 中的服務(wù)器公鑰認(rèn)證服務(wù)器。( b)服務(wù)器密鑰交換(可選) :
11、這里視密鑰交換算法而定(c)證書請求:服務(wù)端可能會要求客戶自身進(jìn)行驗(yàn)證。(d)服務(wù)器握手完成:第二階段的結(jié)束,第三階段開始的信號這里重點(diǎn)介紹一下服務(wù)端的驗(yàn)證和密鑰交換。這個階段的前面的(a)證書 和( b)服務(wù)器密鑰交換是基于密鑰交換方法的。而在SSL 中密鑰交換算法有 6種:無效(沒有密鑰交在階段 1過程客戶端與服務(wù)端協(xié)商的過程中已經(jīng)確定使哪種密鑰交換算法。 如果協(xié)商過程中確定使用 RSA交換密鑰,那么過程如下圖: 這個方法中,服務(wù)器在它的第一個信息中,發(fā)送了RSA加密/ 解密公鑰證書。不過,因?yàn)轭A(yù)備主秘密是由客戶端在下一個階段生成并發(fā)送的, 所以第二個信息是空的。 注意, 公鑰 證書會進(jìn)行
12、從服務(wù)器到客戶端的驗(yàn)證。當(dāng)服務(wù)器收到預(yù)備主秘密時,它使用私鑰進(jìn)行解密。 服務(wù)端擁有私鑰是一個證據(jù), 可以證明服務(wù)器是一個它在第一個信息發(fā)送的公鑰證書中要求 的實(shí)體。其他的幾種密鑰交換算法這里就不介紹了。可以參考 Behrouz 著的密碼學(xué)與網(wǎng)絡(luò)安 全??蛻魴C(jī)鑒別與密鑰交換:客戶機(jī)啟動 SSL握手第 3階段,是本階段所有消息的唯一發(fā)送方,服務(wù)器是所有消息的 唯一接收方。該階段分為 3步:(a)證書(可選) :為了對服務(wù)器證明自身,客戶要發(fā)送一個證書信息,這是可選的,在 IIS 中可以配置強(qiáng)制客戶端證書認(rèn)證。( b)客戶機(jī)密鑰交換 ( Pre-master-secret ):這里客戶端將預(yù)備主密鑰
13、發(fā)送給服務(wù)端, 注意這里會使用服務(wù)端的公鑰進(jìn)行加密。( c)證書驗(yàn)證(可選) ,對預(yù)備秘密和隨機(jī)數(shù)進(jìn)行簽名,證明擁有(a)證書的公鑰。下面也重點(diǎn)介紹一下 RSA方式的客戶端驗(yàn)證和密鑰交換。這種情況,除非服務(wù)器在階段 II 明確請求,否則沒有證書信息??蛻舳嗣荑€交換方法 包括階段 II 收到的由 RSA公鑰加密的預(yù)備主密鑰。階段 III 之后,客戶要有服務(wù)器進(jìn)行驗(yàn)證,客戶和服務(wù)器都知道預(yù)備主密鑰。完成客戶機(jī)啟動 SSL握手第 4階段, 使服務(wù)器結(jié)束。 該階段分為 4步,前2個消息來自客戶機(jī),后2個消息來自服務(wù)器。密鑰生成的過程這樣握手協(xié)議完成, 下面看下什么是預(yù)備主密鑰, 主密鑰是怎么生成的。 為了保證信息 的完整性和機(jī)密性, SSL 需要有六個加密秘密:四個密鑰和兩個IV. 為了信息的可信性,客戶端需要一個密鑰( HMA)C,為了加密要有一個密鑰,為了分組加密要一個IV ,服務(wù)也是如此。 SSL需要的密鑰是單向的,不同于那些在其他方向的密鑰。如果在一個方向上有攻擊, 這種攻擊在其他方向是沒影響的。生成過程如下:2 、記錄協(xié)議記錄協(xié)議在客戶機(jī)和服務(wù)器握手成功后使用, 即客戶機(jī)和服務(wù)器鑒別對方和確定安全信 息交換使用的算法后,進(jìn)入 SSL記錄協(xié)議,記錄協(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版苗木種植與農(nóng)業(yè)綜合開發(fā)合同樣本4篇
- 二零二五年度教育培訓(xùn)股東股權(quán)轉(zhuǎn)讓與合作辦學(xué)合同2篇
- 二零二五版嬰幼兒奶粉國際市場拓展與出口合同4篇
- 2025版綠色環(huán)保型商品房預(yù)售買賣合同3篇
- 2025年度校服品牌授權(quán)與校園形象塑造合同3篇
- 2025年度事業(yè)單位合同工勞動法執(zhí)行監(jiān)督評估合同3篇
- 2025年度生鮮配送冷鏈物流承包合同范本3篇
- 2025年度個人傭金提成與長期激勵合同2篇
- 課題申報(bào)參考:能源數(shù)據(jù)要素賦能可再生能源電力生產(chǎn)的機(jī)制與對策研究
- 課題申報(bào)參考:民族傳統(tǒng)體育與體育非物質(zhì)文化遺產(chǎn)的傳承與保護(hù)研究
- 2025年N1叉車司機(jī)考試試題(附答案)
- 《醫(yī)院財(cái)務(wù)分析報(bào)告》課件
- 2025老年公寓合同管理制度
- 2024-2025學(xué)年人教版數(shù)學(xué)六年級上冊 期末綜合卷(含答案)
- 2024中國汽車后市場年度發(fā)展報(bào)告
- 感染性腹瀉的護(hù)理查房
- 天津市部分區(qū)2023-2024學(xué)年高二上學(xué)期期末考試 物理 含解析
- 《人工智能基礎(chǔ)》全套英語教學(xué)課件(共7章)
- GB/T 35613-2024綠色產(chǎn)品評價紙和紙制品
- 2022-2023學(xué)年五年級數(shù)學(xué)春季開學(xué)摸底考(四)蘇教版
- 【螞蟻?!?024中國商業(yè)醫(yī)療險(xiǎn)發(fā)展研究藍(lán)皮書
評論
0/150
提交評論