欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

Ssl連接的建立方法以及基于ssl連接的通信方法及裝置制造方法

文檔序號(hào):7804271閱讀:303來源:國知局
Ssl連接的建立方法以及基于ssl連接的通信方法及裝置制造方法
【專利摘要】本發(fā)明適用通信安全領(lǐng)域,提供了SSL連接的建立方法以及基于SSL連接的通信方法及裝置,在客戶端和服務(wù)器之間建立SSL連接的過程中引入聯(lián)鎖機(jī)制,客戶端和服務(wù)器首先分別收到密文數(shù)據(jù)對(duì)應(yīng)的MAC值,再收到密文數(shù)據(jù),之后分別計(jì)算收到加密后消息密文數(shù)據(jù)的MAC值,通過對(duì)比判斷是否有中間人攻擊,從而保證了后續(xù)生成的會(huì)話主密鑰的安全性,有效地避免了中間人攻擊。
【專利說明】SSL連接的建立方法以及基于SSL連接的通信方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于通信安全領(lǐng)域,尤其涉及一種SSL連接的建立方法以及基于SSL連接的通信方法及裝置。
【背景技術(shù)】
[0002]安全套接層(Secure Sockets Layer,縮寫為SSL)協(xié)議主要用于網(wǎng)頁(Web)服務(wù)的數(shù)據(jù)加密方面,以保證用戶和服務(wù)器之間Web通信的數(shù)據(jù)安全。SSL協(xié)議可分為兩層:SSL記錄協(xié)議(SSL Record Protocol):建立在可靠的傳輸協(xié)議(如TCP)之上,為高層協(xié)議提供數(shù)據(jù)封裝、壓縮、加密等基本功能的支持。SSL握手協(xié)議(SSL Handshake Protocol):建立在SSL記錄協(xié)議之上,用于在實(shí)際的數(shù)據(jù)傳輸開始前,通訊雙方進(jìn)行身份認(rèn)證、協(xié)商加密算法、交換加密密鑰等。
[0003]現(xiàn)有SSL握手協(xié)議需要公鑰基礎(chǔ)設(shè)施(Public Key Infrastructure,縮寫為PKI)的支持,PKI的安全性依賴證書的安全性,而證書的安全性由證書的可信性和有效性來保證。使用證書前,需要檢查證書撤銷列表來確定證書的有效性,但事實(shí)上,通過證書撤銷列表或者在線證書狀態(tài)協(xié)議的有效性檢測(cè),并不能實(shí)時(shí)的提供有效性保證,客戶端不能實(shí)時(shí)的得到這樣的服務(wù),因此,容易受到中間人攻擊。

【發(fā)明內(nèi)容】

[0004]本發(fā)明實(shí)施例的目的在于提供一種SSL連接的建立方法以及基于SSL連接的通信方法及裝置,旨在解決由于現(xiàn)有SSL協(xié)議中客戶端和服務(wù)器之間的數(shù)據(jù)通信容易受到中間人攻擊,導(dǎo)致客戶端和服務(wù)器之間通信數(shù)據(jù)安全性降低的問題。
[0005]本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一方面,提供了一種SSL連接的建立方法,所述方法包括下述步驟:
[0006]客戶端向服務(wù)器發(fā)送建立SSL連接的請(qǐng)求消息,所述請(qǐng)求消息包含生成的第一隨機(jī)數(shù);
[0007]所述服務(wù)器向所述客戶端返回所述請(qǐng)求消息的響應(yīng)消息,所述響應(yīng)消息包含服務(wù)器證書以及生成的第二隨機(jī)數(shù);
[0008]所述客戶端通過公鑰基礎(chǔ)設(shè)施對(duì)所述服務(wù)器證書進(jìn)行認(rèn)證,認(rèn)證成功后,使用所述服務(wù)器證書的公鑰對(duì)包含第三隨機(jī)數(shù)的消息進(jìn)行加密以得到第一密文,計(jì)算所述第一密文的MAC值,將該MAC值記為第一 MAC值,將所述第一 MAC值發(fā)送給所述服務(wù)器;
[0009]所述服務(wù)器接收到所述第一 MAC值后,生成第四隨機(jī)數(shù),使用所述服務(wù)器證書的私鑰對(duì)包含所述第四隨機(jī)數(shù)的消息進(jìn)行加密以得到第二密文,計(jì)算所述第二密文的MAC值,將該MAC值記為第二 MAC值,將所述第二 MAC值發(fā)送給所述客戶端;
[0010]所述客戶端接收到所述第二 MAC值后,將所述第一密文發(fā)送給所述服務(wù)器;
[0011]所述服務(wù)器接收到所述第一密文后,計(jì)算所述第一密文的MAC值,記為第三MAC值,當(dāng)所述第三MAC值與所述第一 MAC值相同時(shí),使用所述服務(wù)器證書的私鑰對(duì)所述第一密文進(jìn)行解密以得到所述第三隨機(jī)數(shù),將所述第二密文發(fā)送給所述客戶端;
[0012]所述客戶端接收到所述第二密文后,計(jì)算所述第二密文的MAC值,記為第四MAC值,當(dāng)所述第四MAC值與所述第二MAC值相同時(shí),使用所述服務(wù)器證書的公鑰對(duì)所述第二密文進(jìn)行解密以得到所述第四隨機(jī)數(shù),根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第一會(huì)話主密鑰,使用所述第一會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第五MAC值,將所述第五MAC值發(fā)送給所述服務(wù)器;
[0013]所述服務(wù)器根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用所述預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第二會(huì)話主密鑰,使用所述第二會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第六MAC值,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值和所述第五MAC值相同時(shí),將所述第六MAC值發(fā)送給所述客戶端,將所述第二會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰;
[0014]所述客戶端接收到所述第六MAC值后,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值與所述第五MAC值相同時(shí),將所述第一會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰,從而完成所述SSL連接的建立。
[0015]一方面,提供了一種SSL連接的建立裝置,其特征在于,所述裝置包括:
[0016]請(qǐng)求消息發(fā)送單元,用于所述客戶端向所述服務(wù)器發(fā)送建立SSL連接的請(qǐng)求消息,所述請(qǐng)求消息包含生成的第一隨機(jī)數(shù);
[0017]響應(yīng)消息返回單元,用于所述服務(wù)器向所述客戶端返回所述請(qǐng)求消息的響應(yīng)消息,所述響應(yīng)消息包含服務(wù)器證書以及生成的第二隨機(jī)數(shù);
[0018]第一處理單元,用于所述客戶端通過公鑰基礎(chǔ)設(shè)施對(duì)所述服務(wù)器證書進(jìn)行認(rèn)證,認(rèn)證成功后,使用所述服務(wù)器證書的公鑰對(duì)包含第三隨機(jī)數(shù)的消息進(jìn)行加密以得到第一密文,計(jì)算所述第一密文的MAC值,將該MAC值記為第一 MAC值,將所述第一 MAC值發(fā)送給所述服務(wù)器;
[0019]第二處理單元,用于所述服務(wù)器接收到所述第一 MAC值后,生成第四隨機(jī)數(shù),使用所述服務(wù)器證書的私鑰對(duì)包含所述第四隨機(jī)數(shù)的消息進(jìn)行加密以得到第二密文,計(jì)算所述第二密文的MAC值,將該MAC值記為第二 MAC值,將所述第二 MAC值發(fā)送給所述客戶端;
[0020]所述第一處理單元還用于當(dāng)所述客戶端接收到所述第二 MAC值后,將所述第一密文發(fā)送給所述服務(wù)器;
[0021]所述第二處理單元還用于當(dāng)所述服務(wù)器接收到所述第一密文后,計(jì)算所述第一密文的MAC值,記為第三MAC值,當(dāng)所述第三MAC值與所述第一 MAC值相同時(shí),使用所述服務(wù)器證書的私鑰對(duì)所述第一密文進(jìn)行解密以得到所述第三隨機(jī)數(shù),將所述第二密文發(fā)送給所述客戶端;
[0022]所述第一處理單元還用于當(dāng)所述客戶端接收到所述第二密文后,計(jì)算所述第二密文的MAC值,記為第四MAC值,當(dāng)所述第四MAC值與所述第二 MAC值相同時(shí),使用所述服務(wù)器證書的公鑰對(duì)所述第二密文進(jìn)行解密以得到所述第四隨機(jī)數(shù),根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第一會(huì)話主密鑰,使用所述第一會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第五MAC值,將所述第五MAC值發(fā)送給所述服務(wù)器;
[0023]所述第二處理單元還用于所述服務(wù)器根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用所述預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第二會(huì)話主密鑰,使用所述第二會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第六MAC值,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值和所述第五MAC值相同時(shí),將所述第六MAC值發(fā)送給所述客戶端,將所述第二會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰;
[0024] 所述第一處理單元還用于當(dāng)所述客戶端接收到所述第六MAC值后,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值與所述第五MAC值相同時(shí),將所述第一會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰,從而完成所述SSL連接的建立。
[0025]一方面,提供了一種基于前述建立的SSL連接的通信方法,所述方法包括:
[0026]所述客戶端使用所述第一會(huì)話主密鑰對(duì)待傳送的客戶端數(shù)據(jù)段進(jìn)行加密以得到第三密文,計(jì)算所述第三密文的MAC值,記為第七M(jìn)AC值,將所述第七M(jìn)AC值發(fā)送給服務(wù)器;
[0027]所述服務(wù)器接受到所述客戶端的第七M(jìn)AC值后,使用所述第二會(huì)話主密鑰對(duì)待發(fā)送的服務(wù)器數(shù)據(jù)段進(jìn)行加密以得到第四密文,計(jì)算所述第四密文的MAC值,記為第八MAC值,將所述第八MAC值發(fā)送給客戶端;
[0028]所述客戶端接收到所述第八MAC值后,將所述第三密文發(fā)送給所述服務(wù)器;
[0029]所述服務(wù)器接受到所述第三密文后,計(jì)算所述第三密文的MAC值,記為第九MAC值,當(dāng)所述第九MAC值與所述第七M(jìn)AC值相同時(shí),對(duì)所述第三密文進(jìn)行解密以得到所述客戶端數(shù)據(jù),并將所述第四密文發(fā)送給所述客戶端;
[0030]所述客戶端計(jì)算所述第四密文的MAC值,記為第十MAC值,當(dāng)所述第十MAC值與所述第八MAC值相同時(shí),對(duì)所述第四密文進(jìn)行解密以得到所述服務(wù)器數(shù)據(jù),從而完成一次通?目。
[0031]一方面,提供了一種基于SSL連接的通信裝置,所述裝置包括:
[0032]第三處理單元,用于客戶端使用第一會(huì)話主密鑰對(duì)待傳送的客戶端數(shù)據(jù)段進(jìn)行加密以得到第三密文,計(jì)算所述第三密文的MAC值,記為第七M(jìn)AC值,將所述第七M(jìn)AC值發(fā)送給服務(wù)器;
[0033]第四處理單元,用于服務(wù)器接受到所述客戶端的第七M(jìn)AC值后,使用所述第二會(huì)話主密鑰對(duì)待發(fā)送的服務(wù)器數(shù)據(jù)段進(jìn)行加密以得到第四密文,計(jì)算所述第四密文的MAC值,記為第八MAC值,將所述第八MAC值發(fā)送給客戶端;
[0034]所述第三處理單元還用于所述客戶端接收到所述第八MAC值后,將所述第三密文發(fā)送給所述服務(wù)器;
[0035]所述第四處理單元還用于所述服務(wù)器接受到所述第三密文后,計(jì)算所述第三密文的MAC值,記為第九MAC值,當(dāng)所述第九MAC值與所述第七M(jìn)AC值相同時(shí),對(duì)所述第三密文進(jìn)行解密以得到所述客戶端數(shù)據(jù),并將所述第四密文發(fā)送給所述客戶端;
[0036]所述第三處理單元還用于所述客戶端計(jì)算所述第四密文的MAC值,記為第十MAC值,當(dāng)所述第十MAC值與所述第八MAC值相同時(shí),對(duì)所述第四密文進(jìn)行解密以得到所述服務(wù)器數(shù)據(jù),從而完成一次通信。
[0037]本發(fā)明實(shí)施例在客戶端和服務(wù)器之間建立SSL連接的過程中弓丨入聯(lián)鎖機(jī)制,客戶端和服務(wù)器首先分別收到密文數(shù)據(jù)對(duì)應(yīng)的MAC值,再收到密文數(shù)據(jù),之后分別計(jì)算收到加密后消息密文數(shù)據(jù)的MAC值,通過對(duì)比判斷是否有中間人攻擊,從而保證了后續(xù)生成的會(huì)話主密鑰的安全性,有效地避免了中間人攻擊。
【專利附圖】

【附圖說明】
[0038]圖1是本發(fā)明實(shí)施例一提供的SSL連接的建立方法的實(shí)現(xiàn)流程圖;
[0039]圖2是本發(fā)明實(shí)施例二提供的SSL連接的建立裝置的結(jié)構(gòu)圖;
[0040]圖3是本發(fā)明實(shí)施例三提供的基于SSL連接的通信方法的實(shí)現(xiàn)流程圖;以及
[0041]圖4是本發(fā)明實(shí)施例四提供的基于SSL連接的通信裝置的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0042]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0043]以下結(jié)合具體實(shí)施例對(duì)本發(fā)明的具體實(shí)現(xiàn)進(jìn)行詳細(xì)描述:
[0044]實(shí)施例一:
[0045]圖1示出了本發(fā)明實(shí)施例一提供的SSL連接的建立方法的實(shí)現(xiàn)流程,詳述如下:
[0046]在步驟SlOl中,客戶端向服務(wù)器發(fā)送建立SSL連接的請(qǐng)求消息,所述請(qǐng)求消息包含生成的第一隨機(jī)數(shù)。
[0047]在本發(fā)明實(shí)施例中,客戶端可以是瀏覽器,也可以是其他可連接到Web服務(wù)的專用客戶端。當(dāng)客戶端連接到服務(wù)器時(shí),向服務(wù)器發(fā)出建立SSL連接的請(qǐng)求消息,該請(qǐng)求消息中包括客戶端最高可支持的SSL協(xié)議的版本號(hào)、會(huì)話標(biāo)識(shí)、客戶端支持的密碼套件列表、壓縮算法列表和用作產(chǎn)生密鑰的隨機(jī)數(shù)等參數(shù),在這里將該隨機(jī)數(shù)記為第一隨機(jī)數(shù)。
[0048]在步驟S102中,所述服務(wù)器向所述客戶端返回所述請(qǐng)求消息的響應(yīng)消息,所述響應(yīng)消息包含服務(wù)器證書以及生成的第二隨機(jī)數(shù)。
[0049]在本發(fā)明實(shí)施例中,第二隨機(jī)數(shù)由服務(wù)器生成,以用于后續(xù)的主密鑰的生成,在具體實(shí)施例中,服務(wù)器證書和第二隨機(jī)數(shù)可以分別發(fā)送。為了簡化通信過程,優(yōu)選地,生成的第二隨機(jī)數(shù)和服務(wù)器證書在一個(gè)響應(yīng)消息中發(fā)送給客戶端,從而減少握手過程中的通信次數(shù)。另外,服務(wù)器消息中還可以包括服務(wù)器根據(jù)接收的SSL版本號(hào)選擇的SSL版本號(hào)、從客戶端的密碼套件列表中選擇的一個(gè)密碼套件、從客戶端的壓縮算法列表中選擇的壓縮方法。
[0050]在步驟S103中,所述客戶端通過公鑰基礎(chǔ)設(shè)施對(duì)所述服務(wù)器證書進(jìn)行認(rèn)證,認(rèn)證成功后,使用所述服務(wù)器證書的公鑰對(duì)包含第三隨機(jī)數(shù)的消息進(jìn)行加密以得到第一密文,計(jì)算所述第一密文的MAC值,將該MAC值記為第一 MAC值。
[0051]在本發(fā)明實(shí)施例中,客戶端接收到響應(yīng)消息后,請(qǐng)求服務(wù)器證書的證書授權(quán)中心(Certificate Authority,CA)對(duì)服務(wù)器證書進(jìn)行認(rèn)證,以保證服務(wù)器證書的有效性和安全性。認(rèn)證成功后,客戶端生成一隨機(jī)數(shù),將該隨機(jī)數(shù)記為第三隨機(jī)數(shù),客戶端使用服務(wù)器證書的公鑰對(duì)包含第三隨機(jī)數(shù)的消息進(jìn)行加密以得到一密文,將該密文記為第一密文,計(jì)算第一密文的消息鑒別碼(Message Authentication Code,MAC)值,將該MAC值記為第一MAC值,最后客戶端將第一 MAC值發(fā)送給服務(wù)器。
[0052]其中,在計(jì)算第一密文的MAC值時(shí),客戶端將服務(wù)器證書的公鑰作為密鑰,使用服務(wù)器發(fā)送過來的響應(yīng)消息中選擇的(即客戶端與服務(wù)器協(xié)商得到的)單向散列函數(shù)對(duì)第一密文進(jìn)行運(yùn)算,從而得到第一 MAC值。
[0053]在步驟S104中,所述客戶端將所述第一 MAC值發(fā)送給所述服務(wù)器。
[0054]在步驟S105中,所述服務(wù)器接收到所述第一 MAC值后,生成第四隨機(jī)數(shù),使用所述服務(wù)器證書的私鑰對(duì)包含所述第四隨機(jī)數(shù)的消息進(jìn)行加密以得到第二密文,計(jì)算所述第二密文的MAC值,將該MAC值記為第二 MAC值。
[0055]在本發(fā)明實(shí)施例中,同樣地,服務(wù)器可將服務(wù)器證書的公鑰作為密鑰,使用其選擇的單向散列函數(shù)計(jì)算所述第二 MAC值。
[0056]在步驟S106中,所述服務(wù)器將所述第二 MAC值發(fā)送給所述客戶端。
[0057]在步驟S107中,所述客戶端接收到所述第二 MAC值后,將所述第一密文發(fā)送給所述服務(wù)器。
[0058]在步驟S108中,所述服務(wù)器接收到所述第一密文后,計(jì)算所述第一密文的MAC值,記為第三MAC值,當(dāng)所述第三MAC值與所述第一 MAC值相同時(shí),使用所述服務(wù)器證書的私鑰對(duì)所述第一密文進(jìn)行解密以得到所述第三隨機(jī)數(shù)。
[0059]在步驟S109中,所述服務(wù)器將所述第二密文發(fā)送給所述客戶端。
[0060]在本發(fā)明實(shí)施例中,同樣地,服務(wù)器將服務(wù)器證書的公鑰作為密鑰,使用其選擇的單向散列函數(shù)計(jì)算所述第三MAC值。之后,服務(wù)器比較所述第三MAC值是否與所述第一 MAC值相同,當(dāng)所述第三MAC值與所述第一 MAC值相同時(shí),使用所述服務(wù)器證書的私鑰對(duì)所述第一密文進(jìn)行解密以得到所述第三隨機(jī)數(shù),將所述第二密文發(fā)送給所述客戶端。當(dāng)所述第三MAC值和所述第一 MAC值不相同時(shí),所述服務(wù)器終止與所述客戶端的通信,以保證服務(wù)器與客戶端的通信安全。
[0061 ] 在步驟SI 10中,所述客戶端接收到所述第二密文后,計(jì)算所述第二密文的MAC值,記為第四MAC值,當(dāng)所述第四MAC值與所述第二 MAC值相同時(shí),使用所述服務(wù)器證書的公鑰對(duì)所述第二密文進(jìn)行解密以得到所述第四隨機(jī)數(shù),根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第一會(huì)話主密鑰,使用所述第一會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第五MAC值。
[0062]在步驟Slll中,所述客戶端將所述第五MAC值發(fā)送給所述服務(wù)器。
[0063]在本發(fā)明實(shí)施例中,密鑰導(dǎo)出函數(shù)根據(jù)步驟SlOl和S102中客戶端和服務(wù)器協(xié)商確定的密碼套件列表進(jìn)行設(shè)置。
[0064]在本發(fā)明實(shí)施例中,在步驟S103的客戶端將第一 MAC值發(fā)送給服務(wù)器的過程中,如果中間人截獲第一 MAC值后,只能虛構(gòu)一個(gè)MAC值發(fā)送給服務(wù)器,而當(dāng)步驟S107中客戶端將第一密文發(fā)送給服務(wù)器時(shí),由于中間人之前已經(jīng)對(duì)第一 MAC進(jìn)行了偽造,當(dāng)接收到第一密文時(shí),解密獲得消息后,也不也能再發(fā)送第一密文的內(nèi)容,因此,中間人只能向服務(wù)器發(fā)送之前偽造出第一 MAC的消息內(nèi)容。同樣,中間人截獲服務(wù)器發(fā)送給客戶端的第二 MAC值和第二密文后,也只能虛構(gòu)對(duì)應(yīng)的MAC值和密文,這樣,使得客戶端和服務(wù)器的通信內(nèi)容被打亂,客戶端和服務(wù)器發(fā)現(xiàn)異常后終止會(huì)話,從而有效防止了中間人攻擊。[0065]在步驟S112中,所述服務(wù)器根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用所述預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第二會(huì)話主密鑰,使用所述第二會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第六MAC值,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值和所述第五MAC值相同時(shí),將所述第二會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰。
[0066]在步驟S113中,所述服務(wù)器將所述第六MAC值發(fā)送給所述客戶端,
[0067]在本發(fā)明實(shí)施例中,當(dāng)所述第六MAC值和所述第五MAC值相同時(shí),表明在前述通信中,并未受到中間人的攻擊,SSL連接建立過程中的通信消息是完全、可靠的。當(dāng)所述第六MAC值和所述第五MAC值不相同時(shí),服務(wù)器終止與所述客戶端的通信,以保證服務(wù)器的安全。
[0068]在步驟S114中,所述客戶端接收到所述第六MAC值后,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值與所述第五MAC值相同時(shí),將所述第一會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰,從而完成所述SSL連接的建立。
[0069]在本發(fā)明實(shí)施例中,當(dāng)客戶端通過比較確定所述第六MAC值和所述第五MAC值不相同時(shí),客戶端終止與所述服務(wù)器的通信,以保證客戶端的安全。在本發(fā)明實(shí)施例中,若SSL連接成功建立后,則所述第一會(huì)話密鑰與所述第二會(huì)話密鑰相同。
[0070]本發(fā)明實(shí)施例在客戶端和服務(wù)器之間建立SSL連接的過程中弓丨入聯(lián)鎖機(jī)制,客戶端和服務(wù)器首先分別收到密文數(shù)據(jù)對(duì)應(yīng)的MAC值,再收到密文數(shù)據(jù),之后分別計(jì)算收到加密后消息密文數(shù)據(jù)的MAC值,通過對(duì)比判斷是否有中間人攻擊,從而保證后續(xù)生成的會(huì)話主密鑰的安全性,有效地避免了中間人攻擊。
[0071]實(shí)施例二:
[0072]圖2示出了本發(fā)明實(shí)施例二提供的SSL連接的建立裝置2的結(jié)構(gòu),為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,其中,SSL連接的建立裝置2包括下述單元:
[0073]請(qǐng)求消息發(fā)送單元2101,用于所述客戶端向所述服務(wù)器發(fā)送建立SSL連接的請(qǐng)求消息,所述請(qǐng)求消息包含生成的第一隨機(jī)數(shù);
[0074]響應(yīng)消息返回單元2201,用于所述服務(wù)器向所述客戶端返回所述請(qǐng)求消息的響應(yīng)消息,所述響應(yīng)消息包含服務(wù)器證書以及生成的第二隨機(jī)數(shù);
[0075]第一處理單元2102,用于所述客戶端通過公鑰基礎(chǔ)設(shè)施對(duì)所述服務(wù)器證書進(jìn)行認(rèn)證,認(rèn)證成功后,使用所述服務(wù)器證書的公鑰對(duì)包含第三隨機(jī)數(shù)的消息進(jìn)行加密以得到第一密文,計(jì)算所述第一密文的MAC值,將該MAC值記為第一 MAC值,將所述第一 MAC值發(fā)送給所述服務(wù)器;
[0076]第二處理單元2202,用于所述服務(wù)器接收到所述第一 MAC值后,生成第四隨機(jī)數(shù),使用所述服務(wù)器證書的私鑰對(duì)包含所述第四隨機(jī)數(shù)的消息進(jìn)行加密以得到第二密文,計(jì)算所述第二密文的MAC值,將該MAC值記為第二 MAC值,將所述第二 MAC值發(fā)送給所述客戶端;
[0077]所述第一處理單元2102還用于當(dāng)所述客戶端接收到所述第二MAC值后,將所述第一密文發(fā)送給所述服務(wù)器;
[0078]所述第二處理單元2202還用于當(dāng)所述服務(wù)器接收到所述第一密文后,計(jì)算所述第一密文的MAC值,記為第三MAC值,當(dāng)所述第三MAC值與所述第一 MAC值相同時(shí),使用所述服務(wù)器證書的私鑰對(duì)所述第一密文進(jìn)行解密以得到所述第三隨機(jī)數(shù),將所述第二密文發(fā)送給所述客戶端;
[0079]所述第一處理單元2102還用于當(dāng)所述客戶端接收到所述第二密文后,計(jì)算所述第二密文的MAC值,記為第四MAC值,當(dāng)所述第四MAC值與所述第二 MAC值相同時(shí),使用所述服務(wù)器證書的公鑰對(duì)所述第二密文進(jìn)行解密以得到所述第四隨機(jī)數(shù),根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第一會(huì)話主密鑰,使用所述第一會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第五MAC值,將所述第五MAC值發(fā)送給所述服務(wù)器;
[0080]所述第二處理單元2202還用于所述服務(wù)器根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用所述預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第二會(huì)話主密鑰,使用所述第二會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第六MAC值,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值和所述第五MAC值相同時(shí),將所述第六MAC值發(fā)送給所述客戶端,將所述第二會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰;
[0081]所述第一處理單元2102還用于當(dāng)所述客戶端接收到所述第六MAC值后,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值與所述第五MAC值相同時(shí),將所述第一會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰,從而完成所述SSL連接的建立。
[0082]在具體的實(shí)施例中,所述請(qǐng)求消息發(fā)送單元2101和所述第一處理單元2102可位于客戶端中,所述響應(yīng)消息返回單元12和所述第二處理單元2202可位于服務(wù)器中,以用于在客戶端和服務(wù)器之間建立SSL連接。
[0083]具體地,所述第一處理單元2102可包括:
[0084]第一 MAC值計(jì)算單元21021,用于將所述服務(wù)器證書的公鑰作為密鑰,使用所述響應(yīng)消息中選擇的單向散列函數(shù)計(jì)算所述第一 MAC值;
[0085]所述第二處理單元2202可以包括:
[0086]第二 MAC值計(jì)算單元22021,用于將所述服務(wù)器證書的公鑰作為密鑰,使用所述響應(yīng)消息中選擇的單向散列函數(shù)計(jì)算所述第二 MAC值。
[0087]本發(fā)明實(shí)施例提出了一種SSL連接的建立裝置,該裝置在客戶端和服務(wù)器之間建立SSL連接的過程中引入了聯(lián)鎖機(jī)制,客戶端和服務(wù)器首先分別收到利用服務(wù)器公鑰或私鑰加密后消息密文數(shù)據(jù)對(duì)應(yīng)的MAC值,再收到加密后消息密文數(shù)據(jù),之后分別計(jì)算收到加密后消息密文數(shù)據(jù)的MAC值,通過對(duì)比判斷是否有中間人攻擊,從而保證了后續(xù)生成的會(huì)話主密鑰的安全性,有效地避免了中間人攻擊。
[0088]實(shí)施例三:
[0089]圖3示出了本發(fā)明實(shí)施例三提供的基于實(shí)施一建立的SSL連接的通信方法的實(shí)現(xiàn)流程,詳述如下:
[0090]在步驟S301中,客戶端使用第一會(huì)話主密鑰對(duì)待傳送的客戶端數(shù)據(jù)段進(jìn)行加密以得到第三密文,計(jì)算所述第三密文的MAC值,記為第七M(jìn)AC值。
[0091]在步驟S302中,客戶端將所述第七M(jìn)AC值發(fā)送給服務(wù)器。
[0092]在本發(fā)明實(shí)施例中,待傳送的客戶端數(shù)據(jù)段可以為客戶端待發(fā)送的請(qǐng)求信息或數(shù)據(jù)。當(dāng)通過本發(fā)明實(shí)施例一中的方法建立SSL連接后,客戶端和服務(wù)器之間開始進(jìn)行通信。首先使用客戶端生成的第一會(huì)話主密鑰對(duì)待傳送的客戶端數(shù)據(jù)段進(jìn)行加密以得到第三密文,之后,使用SSL連接建立過程中與服務(wù)器協(xié)商的單向散列函數(shù)對(duì)第三密文進(jìn)行運(yùn)算,得到第三密文的MAC值。
[0093]在步驟S303中,所述服務(wù)器接受到所述客戶端的第七M(jìn)AC值后,使用所述第二會(huì)話主密鑰對(duì)待發(fā)送的服務(wù)器數(shù)據(jù)段進(jìn)行加密以得到第四密文,計(jì)算所述第四密文的MAC值,記為第八MAC值。
[0094]在步驟S304中,所述服務(wù)器將所述第八MAC值發(fā)送給客戶端。
[0095]在本發(fā)明實(shí)施例中,待發(fā)送的服務(wù)器數(shù)據(jù)段可以為服務(wù)器發(fā)送給客戶端的響應(yīng)消息或數(shù)據(jù)。
[0096]在步驟S305中,所述客戶端接收到所述第八MAC值后,將所述第三密文發(fā)送給所述服務(wù)器。
[0097]在步驟S306中,所述服務(wù)器接受到所述第三密文后,計(jì)算所述第三密文的MAC值,記為第九MAC值,當(dāng)所述第九MAC值與所述第七M(jìn)AC值相同時(shí),對(duì)所述第三密文進(jìn)行解密以得到所述客戶端數(shù)據(jù)。
[0098]在步驟S307中,所述服務(wù)器將所述第四密文發(fā)送給所述客戶端。
[0099]在步驟S308中,所述客戶端計(jì)算所述第四密文的MAC值,記為第十MAC值,當(dāng)所述第十MAC值與所述第八MAC值相同時(shí),對(duì)所述第四密文進(jìn)行解密以得到所述服務(wù)器數(shù)據(jù),從而完成一次通信。
[0100]在本發(fā)明實(shí)施例中,為了進(jìn)一步提高客戶端和服務(wù)器之間通信的安全性,在SSL連接的建立過程和數(shù)據(jù)傳輸過程中分別引入了聯(lián)鎖機(jī)制。如果在SSL連接的過程中有中間人的存在,會(huì)使得客戶端和服務(wù)器生成的會(huì)話密鑰不同,而本發(fā)明實(shí)施例中在后續(xù)數(shù)據(jù)傳輸?shù)耐ㄐ旁偈褂寐?lián)鎖機(jī)制,同樣由于中間人接收到MAC值后,不能獲得原消息,只能進(jìn)行偽造,使得客戶端和服務(wù)器接收數(shù)據(jù)混亂,這樣,中間人攻擊可以更被容易地發(fā)現(xiàn),同時(shí),也不需要過多地改變基于SSL連接的通信模型。
[0101]實(shí)施例四:
[0102]圖4示出了本發(fā)明實(shí)施例四提供的基于SSL連接的通信裝置4的結(jié)構(gòu),為了便于說明,僅不出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0103]在本發(fā)明實(shí)施例中,基于SSL連接的通信裝置4包括本發(fā)明實(shí)施例二中SSL連接的建立裝置2的各個(gè)單元,在這里不再對(duì)SSL連接的建立裝置2的各個(gè)單元進(jìn)行描述。除了包括SSL連接的建立裝置2的各個(gè)單元之外,所述通信裝置4還包括:
[0104]第三處理單元2103,用于客戶端使用第一會(huì)話主密鑰對(duì)待傳送的客戶端數(shù)據(jù)段進(jìn)行加密以得到第三密文,計(jì)算所述第三密文的MAC值,記為第七M(jìn)AC值,將所述第七M(jìn)AC值發(fā)送給服務(wù)器。
[0105]第四處理單元2203,用于服務(wù)器接受到所述客戶端的第七M(jìn)AC值后,使用所述第二會(huì)話主密鑰對(duì)待發(fā)送的服務(wù)器數(shù)據(jù)段進(jìn)行加密以得到第四密文,計(jì)算所述第四密文的MAC值,記為第八MAC值,將所述第八MAC值發(fā)送給客戶端。
[0106]所述第三處理單元2103還用于所述客戶端接收到所述第八MAC值后,將所述第三密文發(fā)送給所述服務(wù)器。
[0107]所述第四處理單元2203還用于所述服務(wù)器接受到所述第三密文后,計(jì)算所述第三密文的MAC值,記為第九MAC值,當(dāng)所述第九MAC值與所述第七M(jìn)AC值相同時(shí),對(duì)所述第三密文進(jìn)行解密以得到所述客戶端數(shù)據(jù),并將所述第四密文發(fā)送給所述客戶端。
[0108]所述第三處理單元2103還用于所述客戶端計(jì)算所述第四密文的MAC值,記為第十MAC值,當(dāng)所述第十MAC值與所述第八MAC值相同時(shí),對(duì)所述第四密文進(jìn)行解密以得到所述服務(wù)器數(shù)據(jù),從而完成一次通信。
[0109]在具體的實(shí)施例中,所述第三處理單元2103位于客戶端中,所述第四處理單元2203位于服務(wù)器中。
[0110]在本發(fā)明實(shí)施例中,為了進(jìn)一步提高客戶端和服務(wù)器之間通信的安全性,在SSL連接的建立過程和數(shù)據(jù)傳輸過程中分別引入了聯(lián)鎖機(jī)制。如果在SSL連接的過程中有中間人的存在,會(huì)使得客戶端和服務(wù)器生成的會(huì)話密鑰不同,而本發(fā)明實(shí)施例中在后續(xù)數(shù)據(jù)傳輸?shù)耐ㄐ旁偈褂寐?lián)鎖機(jī)制,同樣由于中間人接收到密文和MAC值后,不能獲得原消息,只能進(jìn)行偽造,使得客戶端和服務(wù)器接收數(shù)據(jù)混亂,這樣,中間人攻擊可以更被容易地發(fā)現(xiàn),同時(shí),也不需要改變基于SSL連接的通信模型。
[0111]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種SSL連接的建立方法,其特征在于,所述方法包括下述步驟: 客戶端向服務(wù)器發(fā)送建立SSL連接的請(qǐng)求消息,所述請(qǐng)求消息包含生成的第一隨機(jī)數(shù); 所述服務(wù)器向所述客戶端返回所述請(qǐng)求消息的響應(yīng)消息,所述響應(yīng)消息包含服務(wù)器證書以及生成的第二隨機(jī)數(shù); 所述客戶端通過公鑰基礎(chǔ)設(shè)施對(duì)所述服務(wù)器證書進(jìn)行認(rèn)證,認(rèn)證成功后,使用所述服務(wù)器證書的公鑰對(duì)包含第三隨機(jī)數(shù)的消息進(jìn)行加密以得到第一密文,計(jì)算所述第一密文的MAC值,將該MAC值記為第一 MAC值,將所述第一 MAC值發(fā)送給所述服務(wù)器; 所述服務(wù)器接收到所述第一 MAC值后,生成第四隨機(jī)數(shù),使用所述服務(wù)器證書的私鑰對(duì)包含所述第四隨機(jī)數(shù)的消息進(jìn)行加密以得到第二密文,計(jì)算所述第二密文的MAC值,將該MAC值記為第二 MAC值,將所述第二 MAC值發(fā)送給所述客戶端; 所述客戶端接收到所述第二 MAC值后,將所述第一密文發(fā)送給所述服務(wù)器; 所述服務(wù)器接收到所述第一密文后,計(jì)算所述第一密文的MAC值,記為第三MAC值,當(dāng)所述第三MAC值與所述第一 MAC值相同時(shí),使用所述服務(wù)器證書的私鑰對(duì)所述第一密文進(jìn)行解密以得到所述第三隨機(jī)數(shù),將所述第二密文發(fā)送給所述客戶端; 所述客戶端接收到所述第二密文后,計(jì)算所述第二密文的MAC值,記為第四MAC值,當(dāng)所述第四MAC值與所述第二 MAC值相同時(shí),使用所述服務(wù)器證書的公鑰對(duì)所述第二密文進(jìn)行解密以得到所述第四隨 機(jī)數(shù),根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第一會(huì)話主密鑰,使用所述第一會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第五MAC值,將所述第五MAC值發(fā)送給所述服務(wù)器; 所述服務(wù)器根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用所述預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第二會(huì)話主密鑰,使用所述第二會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第六MAC值,t匕較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值和所述第五MAC值相同時(shí),將所述第六MAC值發(fā)送給所述客戶端,將所述第二會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰; 所述客戶端接收到所述第六MAC值后,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值與所述第五MAC值相同時(shí),將所述第一會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰,從而完成所述SSL連接的建立。
2.如權(quán)利要求1所述的方法,其特征在于,計(jì)算所述第一密文的所述第一MAC值的步驟包括: 將所述服務(wù)器證書的公鑰作為密鑰,使用所述響應(yīng)消息中選擇的單向散列函數(shù)計(jì)算所述第一 MAC值。 計(jì)算所述第二密文的所述第二 MAC值的步驟包括: 將所述服務(wù)器證書的公鑰作為密鑰,使用所述響應(yīng)消息中選擇的單向散列函數(shù)計(jì)算所述第二 MAC值。
3.如權(quán)利要求1所述的方法,其特征在于,所述服務(wù)器根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用所述預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第二會(huì)話主密鑰,使用所述第二會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第六MAC值,比較所述第六MAC值與所述第五MAC值的步驟之后,所述客戶端接收到所述第六MAC值后,比較所述第六MAC值與所述第五MAC值的步驟之前,所述方法還包括: 當(dāng)所述第六MAC值和所述第五MAC值不相同時(shí),所述服務(wù)器終止與所述客戶端的通信。
4.如權(quán)利要求1所述的方法,其特征在于,所述客戶端接收到所述第六MAC值后,比較所述第六MAC值與所述第五MAC值的步驟之后,所述方法還包括: 當(dāng)所述第六MAC值和所述第五MAC值不相同時(shí),所述客戶端終止與所述服務(wù)器的通信。
5.一種SSL連接的建立裝置,其特征在于,所述裝置包括: 請(qǐng)求消息發(fā)送單元,用于所述客戶端向所述服務(wù)器發(fā)送建立SSL連接的請(qǐng)求消息,所述請(qǐng)求消息包含生成的第一隨機(jī)數(shù); 響應(yīng)消息返回單元,用于所述服務(wù)器向所述客戶端返回所述請(qǐng)求消息的響應(yīng)消息,所述響應(yīng)消息包含服務(wù)器證書以及生成的第二隨機(jī)數(shù); 第一處理單元,用于所述客戶端通過公鑰基礎(chǔ)設(shè)施對(duì)所述服務(wù)器證書進(jìn)行認(rèn)證,認(rèn)證成功后,使用所述服務(wù)器證書的公鑰對(duì)包含第三隨機(jī)數(shù)的消息進(jìn)行加密以得到第一密文,計(jì)算所述第一密文的MAC值,將該MAC值記為第一 MAC值,將所述第一 MAC值發(fā)送給所述服務(wù)器; 第二處理單元,用 于所述服務(wù)器接收到所述第一 MAC值后,生成第四隨機(jī)數(shù),使用所述服務(wù)器證書的私鑰對(duì)包含所述第四隨機(jī)數(shù)的消息進(jìn)行加密以得到第二密文,計(jì)算所述第二密文的MAC值,將該MAC值記為第二 MAC值,將所述第二 MAC值發(fā)送給所述客戶端; 所述第一處理單元還用于當(dāng)所述客戶端接收到所述第二 MAC值后,將所述第一密文發(fā)送給所述服務(wù)器; 所述第二處理單元還用于當(dāng)所述服務(wù)器接收到所述第一密文后,計(jì)算所述第一密文的MAC值,記為第三MAC值,當(dāng)所述第三MAC值與所述第一 MAC值相同時(shí),使用所述服務(wù)器證書的私鑰對(duì)所述第一密文進(jìn)行解密以得到所述第三隨機(jī)數(shù),將所述第二密文發(fā)送給所述客戶端; 所述第一處理單元還用于當(dāng)所述客戶端接收到所述第二密文后,計(jì)算所述第二密文的MACft,記為第四MAC值,當(dāng)所述第四MAC值與所述第二 MAC值相同時(shí),使用所述服務(wù)器證書的公鑰對(duì)所述第二密文進(jìn)行解密以得到所述第四隨機(jī)數(shù),根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第一會(huì)話主密鑰,使用所述第一會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第五MAC值,將所述第五MAC值發(fā)送給所述服務(wù)器; 所述第二處理單元還用于所述服務(wù)器根據(jù)所述第一隨機(jī)數(shù)、第二隨機(jī)數(shù)以及第三隨機(jī)數(shù),使用所述預(yù)設(shè)的密鑰導(dǎo)出函數(shù)計(jì)算出一會(huì)話主密鑰,記為第二會(huì)話主密鑰,使用所述第二會(huì)話主密鑰計(jì)算所述請(qǐng)求消息、所述響應(yīng)消息、所述第一密文以及所述第四隨機(jī)數(shù)的MAC值,記為第六MAC值,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值和所述第五MAC值相同時(shí),將所述第六MAC值發(fā)送給所述客戶端,將所述第二會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰; 所述第一處理單元還用于當(dāng)所述客戶端接收到所述第六MAC值后,比較所述第六MAC值與所述第五MAC值,當(dāng)所述第六MAC值與所述第五MAC值相同時(shí),將所述第一會(huì)話主密鑰設(shè)置為與所述客戶端進(jìn)行后續(xù)通信的主密鑰,從而完成所述SSL連接的建立。
6.如權(quán)利要求5所述的裝置,其特征在于,計(jì)算所述第一密文的所述第一MAC值的步驟包括: 第一處理單元包括: 第一 MAC值計(jì)算單元,用于將所述服務(wù)器證書的公鑰作為密鑰,使用所述響應(yīng)消息中選擇的單向散列函數(shù)計(jì)算所述第一 MAC值; 第二處理單元包括: 第二 MAC值計(jì)算單元,用于將所述服務(wù)器證書的公鑰作為密鑰,使用所述響應(yīng)消息中選擇的單向散列函數(shù)計(jì)算所述第二 MAC值。
7.一種基于權(quán)利要求1建立的SSL連接的通信方法,其特征在于,所述方法包括: 所述客戶端使用所述第一會(huì)話主密鑰對(duì)待傳送的客戶端數(shù)據(jù)段進(jìn)行加密以得到第三密文,計(jì)算所述第三密文的MAC值,記為第七M(jìn)AC值,將所述第七M(jìn)AC值發(fā)送給服務(wù)器; 所述服務(wù)器接受到所述客戶端的第七M(jìn)AC值后,使用所述第二會(huì)話主密鑰對(duì)待發(fā)送的服務(wù)器數(shù)據(jù)段進(jìn)行加密以得到第四密文,計(jì)算所述第四密文的MAC值,記為第八MAC值,將所述第八MAC值發(fā)送給客戶端; 所述客戶端接收到所述第八MAC值后,將所述第三密文發(fā)送給所述服務(wù)器; 所述服務(wù)器接受到所述第三密文后,計(jì)算所述第三密文的MAC值,記為第九MAC值,當(dāng)所述第九MAC值與所述第七M(jìn)AC值相同時(shí),對(duì)所述第三密文進(jìn)行解密以得到所述客戶端數(shù)據(jù),并將所述第四密文發(fā)送給所述客戶端; 所述客戶端計(jì)算所述第四密文的MAC值,記為第十MAC值,當(dāng)所述第十MAC值與所述第八MAC值相同時(shí),對(duì)所述第四密文進(jìn)行解密以得到所述服務(wù)器數(shù)據(jù),從而完成一次通信。
8.如權(quán)利要求7所述的方法,其特征在于,所述方法還包括: 當(dāng)所述第九MAC值與所述第七M(jìn)AC值不相同時(shí),所述服務(wù)器終止與所述客戶端的通信。
9.如權(quán)利要求7所述的方法,其特征在于,所述方法還包括: 當(dāng)所述第十MAC值與所述第八MAC值不相同時(shí),所述客戶端終止與所述服務(wù)器的通信。
10.一種基于SSL連接的通信裝置,其特征在于,所述裝置包括: 第三處理單元,用于客戶端使用第一會(huì)話主密鑰對(duì)待傳送的客戶端數(shù)據(jù)段進(jìn)行加密以得到第三密文,計(jì)算所述第三密文的MAC值,記為第七M(jìn)AC值,將所述第七M(jìn)AC值發(fā)送給服務(wù)器; 第四處理單元,用于服務(wù)器接受到所述客戶端的第七M(jìn)AC值后,使用所述第二會(huì)話主密鑰對(duì)待發(fā)送的服務(wù)器數(shù)據(jù)段進(jìn)行加密以得到第四密文,計(jì)算所述第四密文的MAC值,記為第八MAC值,將所述第八MAC值發(fā)送給客戶端; 所述第三處理單元還用于所述客戶端接收到所述第八MAC值后,將所述第三密文發(fā)送給所述服務(wù)器; 所述第四處理單元還用于所述服務(wù)器接受到所述第三密文后,計(jì)算所述第三密文的MAC值,記為第九MAC值,當(dāng)所述第九MAC值與所述第七M(jìn)AC值相同時(shí),對(duì)所述第三密文進(jìn)行解密以得到所述客戶端數(shù)據(jù),并將所述第四密文發(fā)送給所述客戶端; 所述第三處理單元還用于所述客戶端計(jì)算所述第四密文的MAC值,記為第十MAC值,當(dāng)所述第十MAC值與所述第八MAC值相同時(shí),對(duì)所述第四密文進(jìn)行解密以得到所述服務(wù)器數(shù)據(jù),從而完成一次通 信。
【文檔編號(hào)】H04L29/06GK103986716SQ201410215917
【公開日】2014年8月13日 申請(qǐng)日期:2014年5月21日 優(yōu)先權(quán)日:2014年5月21日
【發(fā)明者】段孝茹, 陳劍勇, 林秋鎮(zhèn), 喻建平 申請(qǐng)人:深圳大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
遂昌县| 岳西县| 洪湖市| 沅江市| 辛集市| 固原市| 高唐县| 泊头市| 巨野县| 阳江市| 墨玉县| 南川市| 玛纳斯县| 汶上县| 随州市| 漠河县| 南开区| 正安县| 呈贡县| 鄂托克旗| 岐山县| 驻马店市| 莲花县| 保康县| 太湖县| 广昌县| 奉化市| 双桥区| 宁蒗| 陇西县| 金乡县| 曲阳县| 云浮市| 长丰县| 台北县| 塔河县| 南通市| 彰化县| 增城市| 阜宁县| 尉氏县|