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

Ssl會話重用的方法和服務(wù)器的制造方法

文檔序號:10691031閱讀:467來源:國知局
Ssl會話重用的方法和服務(wù)器的制造方法
【專利摘要】本發(fā)明公開了一種SSL會話重用的方法和服務(wù)器,屬于通信技術(shù)領(lǐng)域。所述方法包括:服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為所述客戶端生成會話標(biāo)識,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中;服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中,當(dāng)所述服務(wù)器能夠從所述客戶端獲取到所述會話標(biāo)識時,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息;服務(wù)器集群中的任一服務(wù)器根據(jù)所述對稱密鑰相關(guān)信息生成對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。本發(fā)明可在服務(wù)器集群中實現(xiàn)SSL會話重用。
【專利說明】
SSL會話重用的方法和服務(wù)器
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種SSL會話重用的方法和服務(wù)器。
【背景技術(shù)】
[0002]SSL (Secure Sockets Layer,安全套接層)/TLS (Transport Layer Security,傳輸安全協(xié)議)協(xié)議是IETF (The Internet Engineering Task Force,國際互聯(lián)網(wǎng)工程任務(wù)組)提出的安全網(wǎng)絡(luò)傳輸協(xié)議,主要是為了保護(hù)在互聯(lián)網(wǎng)中傳遞的機(jī)密信息,該協(xié)議包括兩個過程:握手階段和數(shù)據(jù)傳輸階段。握手階段:客戶端(client)生成預(yù)主加密串(PreMasterSecret字串),用服務(wù)器(server)的公鑰(public key)對預(yù)主加密串進(jìn)行加密,將加密后的預(yù)主加密串發(fā)送給服務(wù)器;服務(wù)器接收加密后的預(yù)主加密串,用與公鑰匹配的私鑰(private key)對加密后的預(yù)主加密串進(jìn)行解密,得到預(yù)主加密串,利用預(yù)主加密串生成對稱秘鑰相關(guān)信息(sess1n_info)(包括主密鑰(master secret)、服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)等),利用對稱秘鑰相關(guān)信息生成對稱秘鑰。數(shù)據(jù)傳輸階段:服務(wù)器利用握手階段生成的對稱秘鑰對明文進(jìn)行加密,將加密后的明文發(fā)送到客戶端;客戶端接收加密后的明文后,利用客戶端的預(yù)主加密串生成對稱秘鑰相關(guān)信息,利用對稱秘鑰相關(guān)信息生成對稱秘鑰,利用對稱秘鑰對加密后的明文進(jìn)行解密即可得到明文繼續(xù)處理。
[0003]為了提高握手的效率,提出了 SSL會話重用(sess1n reuse)的方法,具體過程如下:在客戶端首次握手階段,客戶端向服務(wù)器發(fā)送會話標(biāo)識長度(SESS1N ID LENGTH)信息;服務(wù)器接收客戶端會話標(biāo)識長度信息后,如果支持會話重用就生成并回復(fù)客戶端一個會話標(biāo)識(SESS1N ID);客戶端接收會話標(biāo)識,用服務(wù)器的公鑰對預(yù)主加密串進(jìn)行加密,將加密后的預(yù)主加密串發(fā)送給服務(wù)器;服務(wù)器接收加密后的預(yù)主加密串,用與公鑰匹配的私鑰對加密后的預(yù)主加密串進(jìn)行解密,得到預(yù)主加密串,利用預(yù)主加密串生成對稱秘鑰相關(guān)信息,利用對稱秘鑰相關(guān)信息生成對稱秘鑰;當(dāng)客戶端再次請求握手時,向服務(wù)器發(fā)送會話標(biāo)識;服務(wù)器接收會話標(biāo)識后,回復(fù)客戶端相同的會話標(biāo)識,然后直接向客戶端發(fā)送結(jié)束(finish)報文;客戶端和服務(wù)器利用本端的預(yù)主加密串生成對稱秘鑰相關(guān)信息,利用對稱秘鑰相關(guān)信息生成對稱秘鑰,雙方利用對稱秘鑰進(jìn)行數(shù)據(jù)加密傳輸。
[0004]通過上述過程可以看出SSL會話重用的方法,可以直接通過對稱秘鑰相關(guān)信息恢復(fù)出對稱秘鑰進(jìn)行數(shù)據(jù)加密傳輸,將握手階段的非對稱加密過程省略,可以節(jié)約時間,加快SSL會話的速度。然而,現(xiàn)有SSL會話重用的方法,對稱秘鑰相關(guān)信息是哪個服務(wù)器生成,就由哪個服務(wù)器保存,當(dāng)遇到服務(wù)器集群(由多個服務(wù)器組成)時,客戶端每一次的訪問可能會被定向到服務(wù)器集群中不同的服務(wù)器,例如:當(dāng)客戶端的一次訪問被定位到服務(wù)器集群中的服務(wù)器A,由服務(wù)器A生成對稱秘鑰相關(guān)信息,當(dāng)客戶端下一次訪問時,又被定位到服務(wù)器集群中的服務(wù)器B,此時服務(wù)器B無法獲知由服務(wù)器A生成的對稱秘鑰相關(guān)信息,從而無法實現(xiàn)SSL會話重用。

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

[0005]為了解決上述問題,本發(fā)明提供了一種SSL會話重用的方法和服務(wù)器,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,可以實現(xiàn)對稱密鑰相關(guān)信息生成和存儲的分離,服務(wù)器集群中的任一服務(wù)器都可以從服務(wù)器集群中信息存儲地址指向的服務(wù)器中獲取到對稱密鑰相關(guān)信息,可以在服務(wù)器集群中實現(xiàn)SSL會話重用。
[0006]為了解決上述問題,本發(fā)明公開了一種SSL會話重用的方法,所述方法包括:
[0007]服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為所述客戶端生成會話標(biāo)識,將所述會話標(biāo)識發(fā)送給所述客戶端,根據(jù)所述客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)所述會話標(biāo)識獲取信息存儲地址,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中;
[0008]所述服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中,當(dāng)所述服務(wù)器集群中的任一服務(wù)器能夠從所述客戶端獲取到所述會話標(biāo)識時,所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息;
[0009]所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述對稱密鑰相關(guān)信息生成對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。
[0010]進(jìn)一步地,服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為所述客戶端生成會話標(biāo)識,將所述會話標(biāo)識發(fā)送給所述客戶端,根據(jù)所述客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)所述會話標(biāo)識獲取信息存儲地址,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,包括:
[0011]所述服務(wù)器集群中的任一服務(wù)器接收所述客戶端的SSL請求,獲取所述SSL請求中攜帶的會話標(biāo)識長度信息;
[0012]所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識長度信息確定會話標(biāo)識長度為零時,為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端,使得所述客戶端接收會話標(biāo)識,生成并將加密后的所述預(yù)主加密串發(fā)送給所述服務(wù)器集群中的任一服務(wù)器;
[0013]所述服務(wù)器集群中的任一服務(wù)器接收并對所述客戶端發(fā)送的加密后的所述預(yù)主加密串進(jìn)行解密得到所述預(yù)主加密串,根據(jù)所述預(yù)主加密串生成所述對稱密鑰相關(guān)信息,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中;
[0014]所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述對稱密鑰相關(guān)信息生成所述對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。
[0015]進(jìn)一步地,所述服務(wù)器集群中的任一服務(wù)器接收所述客戶端的SSL請求,獲取所述SSL請求中攜帶的會話標(biāo)識長度信息之后,還包括:
[0016]所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識長度信息確定所述會話標(biāo)識長度不為零時,確定所述服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中;
[0017]相應(yīng)地,當(dāng)所述服務(wù)器集群中的任一服務(wù)器能夠從所述客戶端獲取到所述會話標(biāo)識時,所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息,包括:
[0018]所述服務(wù)器集群中的任一服務(wù)器判斷所述SSL請求中是否攜帶所述會話標(biāo)識;
[0019]如果所述SSL請求中攜帶所述會話標(biāo)識,則所述服務(wù)器集群中的任一服務(wù)器獲取所述SSL請求中的所述會話標(biāo)識,所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息,將所述會話標(biāo)識發(fā)送給所述客戶端,并向所述客戶端發(fā)送握手結(jié)束信息。
[0020]進(jìn)一步地,所述服務(wù)器集群中的任一服務(wù)器判斷所述SSL請求中是否攜帶所述會話標(biāo)識之后,還包括:
[0021]如果所述SSL請求中沒有攜帶所述會話標(biāo)識,則執(zhí)行為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端的步驟。
[0022]進(jìn)一步地,所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息,包括:
[0023]所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識,查詢所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息是否存在;
[0024]如果所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息存在,則執(zhí)行將所述會話標(biāo)識發(fā)送給所述客戶端,并向所述客戶端發(fā)送握手結(jié)束信息的步驟;
[0025]如果所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息不存在,則執(zhí)行為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端的步驟。
[0026]進(jìn)一步地,所述對稱密鑰相關(guān)信息包括:主密鑰master secret、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)。
[0027]進(jìn)一步地,查詢預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表,得到所述會話標(biāo)識對應(yīng)的所述信息存儲地址,其中,所述預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表中保存有所述會話標(biāo)識與所述信息存儲地址對應(yīng)關(guān)系;或
[0028]對所述會話標(biāo)識進(jìn)行哈希運(yùn)算得到哈希值,將所述哈希值作為所述會話標(biāo)識對應(yīng)的所述信息存儲地址。
[0029]為了解決上述問題,本發(fā)明還公開了一種SSL會話重用的服務(wù)器,所述服務(wù)器集群中的任一服務(wù)器包括:
[0030]處理模塊,用于在所述服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為所述客戶端生成會話標(biāo)識,將所述會話標(biāo)識發(fā)送給所述客戶端,根據(jù)所述客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)所述會話標(biāo)識獲取信息存儲地址,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中;
[0031]查詢模塊,用于在所述服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中,當(dāng)所述服務(wù)器集群中的任一服務(wù)器能夠從所述客戶端獲取到所述會話標(biāo)識時,根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息;
[0032]傳輸模塊,用于根據(jù)所述對稱密鑰相關(guān)信息生成對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。
[0033]進(jìn)一步地,所述處理模塊包括:
[0034]處理單元,用于接收所述客戶端的SSL請求,獲取所述SSL請求中攜帶的會話標(biāo)識長度信息;
[0035]生成單元,用于根據(jù)所述會話標(biāo)識長度信息確定會話標(biāo)識長度為零時,為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端,使得所述客戶端接收會話標(biāo)識,生成并將加密后的所述預(yù)主加密串發(fā)送給所述服務(wù)器集群中的任一服務(wù)器;
[0036]存儲單元,用于接收并對所述客戶端發(fā)送的加密后的所述預(yù)主加密串進(jìn)行解密得到所述預(yù)主加密串,根據(jù)所述預(yù)主加密串生成所述對稱密鑰相關(guān)信息,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中;
[0037]傳輸單元,用于根據(jù)所述對稱密鑰相關(guān)信息生成所述對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。
[0038]進(jìn)一步地,所述處理模塊還包括:
[0039]確定單元,用于根據(jù)所述會話標(biāo)識長度信息確定所述會話標(biāo)識長度不為零時,確定所述服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中;
[0040]相應(yīng)地,所述查詢模塊包括:
[0041]判斷單元,用于判斷所述SSL請求中是否攜帶所述會話標(biāo)識;
[0042]查詢單元,用于如果所述SSL請求中攜帶所述會話標(biāo)識,則獲取所述SSL請求中的所述會話標(biāo)識,根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息,將所述會話標(biāo)識發(fā)送給所述客戶端,并向所述客戶端發(fā)送握手結(jié)束信息。
[0043]進(jìn)一步地,所述處理模塊還包括:
[0044]通知單元,用于如果所述SSL請求中沒有攜帶所述會話標(biāo)識,則通知所述生成單元執(zhí)行為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端的步驟。
[0045]進(jìn)一步地,所述查詢單元包括:
[0046]查詢子單元,用于根據(jù)所述會話標(biāo)識,查詢所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息是否存在;
[0047]第一通知子單元,用于如果所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息存在,則通知所述查詢單元執(zhí)行將所述會話標(biāo)識發(fā)送給所述客戶端,并向所述客戶端發(fā)送握手結(jié)束信息的步驟;
[0048]第二通知子單元,用于如果所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息不存在,則通知所述生成單元執(zhí)行為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端的步驟。
[0049]進(jìn)一步地,所述對稱密鑰相關(guān)信息包括:主密鑰master secret、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)。
[0050]進(jìn)一步地,所述處理模塊還包括:
[0051]第一地址獲取單元,用于查詢預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表,得到所述會話標(biāo)識對應(yīng)的所述信息存儲地址,其中,所述預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表中保存有所述會話標(biāo)識與所述信息存儲地址對應(yīng)關(guān)系;或
[0052]第二地址獲取單元,用于對所述會話標(biāo)識進(jìn)行哈希運(yùn)算得到哈希值,將所述哈希值作為所述會話標(biāo)識對應(yīng)的所述信息存儲地址。
[0053]與現(xiàn)有技術(shù)相比,本發(fā)明可以獲得包括以下技術(shù)效果:
[0054]I)將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,可以實現(xiàn)對稱密鑰相關(guān)信息生成和存儲的分離,服務(wù)器集群中的任一服務(wù)器都可以從服務(wù)器集群中信息存儲地址指向的服務(wù)器中獲取到對稱密鑰相關(guān)信息,可以在服務(wù)器集群中實現(xiàn)SSL會話重用。
[0055]2)將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,使得對稱密鑰相關(guān)信息的保存時間可以完全獨(dú)立,從而生成對稱密鑰相關(guān)信息的服務(wù)器down機(jī)或者休眠、重啟等,都不會影響到對稱密鑰相關(guān)信息的有效期,實現(xiàn)了服務(wù)器集群中SSL會話重用的高可用性。
[0056]當(dāng)然,實施本發(fā)明的任一產(chǎn)品必不一定需要同時達(dá)到以上所述的所有技術(shù)效果。
【附圖說明】
[0057]此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本發(fā)明的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0058]圖1是本發(fā)明實施例的第一種SSL會話重用的方法流程圖;
[0059]圖2是本發(fā)明實施例的一種服務(wù)器和服務(wù)器集群中信息存儲地址指向的服務(wù)器關(guān)系不意圖;
[0060]圖3是本發(fā)明實施例的第二種SSL會話重用的方法流程圖;
[0061]圖4是本發(fā)明實施例的第三種SSL會話重用的方法流程圖;
[0062]圖5是本發(fā)明實施例的另一種服務(wù)器和服務(wù)器集群中信息存儲地址指向的服務(wù)器關(guān)系示意圖;
[0063]圖6是本發(fā)明實施例的一種SSL會話重用的服務(wù)器結(jié)構(gòu)示意圖。
【具體實施方式】
[0064]以下將配合附圖及實施例來詳細(xì)說明本發(fā)明的實施方式,藉此對本發(fā)明如何應(yīng)用技術(shù)手段來解決技術(shù)問題并達(dá)成技術(shù)功效的實現(xiàn)過程能充分理解并據(jù)以實施。
[0065]在一個典型的配置中,計算設(shè)備包括一個或多個處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
[0066]內(nèi)存可能包括計算機(jī)可讀介質(zhì)中的非永久性存儲器,隨機(jī)存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flash RAM)。內(nèi)存是計算機(jī)可讀介質(zhì)的示例。
[0067]計算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術(shù)來實現(xiàn)信息存儲。信息可以是計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計算機(jī)的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲器(SRAM)、動態(tài)隨機(jī)存取存儲器(DRAM)、其他類型的隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設(shè)備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設(shè)備訪問的信息。按照本文中的界定,計算機(jī)可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號和載波。
[0068]如在說明書及權(quán)利要求當(dāng)中使用了某些詞匯來指稱特定組件。本領(lǐng)域技術(shù)人員應(yīng)可理解,硬件制造商可能會用不同名詞來稱呼同一個組件。本說明書及權(quán)利要求并不以名稱的差異來作為區(qū)分組件的方式,而是以組件在功能上的差異來作為區(qū)分的準(zhǔn)則。如在通篇說明書及權(quán)利要求當(dāng)中所提及的“包含”為一開放式用語,故應(yīng)解釋成“包含但不限定于”?!按笾隆笔侵冈诳山邮盏恼`差范圍內(nèi),本領(lǐng)域技術(shù)人員能夠在一定誤差范圍內(nèi)解決所述技術(shù)問題,基本達(dá)到所述技術(shù)效果。此外,“耦接”一詞在此包含任何直接及間接的電性耦接手段。因此,若文中描述一第一服務(wù)器耦接于一第二服務(wù)器,則代表所述第一服務(wù)器可直接電性耦接于所述第二服務(wù)器,或通過其他服務(wù)器或耦接手段間接地電性耦接至所述第二服務(wù)器。說明書后續(xù)描述為實施本發(fā)明的較佳實施方式,然所述描述乃以說明本發(fā)明的一般原則為目的,并非用以限定本發(fā)明的范圍。本發(fā)明的保護(hù)范圍當(dāng)視所附權(quán)利要求所界定者為準(zhǔn)。
[0069]還需要說明的是,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的商品或者系統(tǒng)不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種商品或者系統(tǒng)所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的商品或者系統(tǒng)中還存在另外的相同要素。
[0070]實施例描沐
[0071]下面以一實施例對本發(fā)明方法的實現(xiàn)作進(jìn)一步說明。如圖1所示,為本發(fā)明實施例的一種SSL會話重用的方法流程圖,該方法包括:
[0072]SlOl:服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為客戶端生成會話標(biāo)識,將會話標(biāo)識發(fā)送給客戶端,根據(jù)客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)會話標(biāo)識獲取信息存儲地址,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中。
[0073]具體地,根據(jù)會話標(biāo)識獲取信息存儲地址,至少可以通過下面的方法獲取到:
[0074]查詢預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表,得到會話標(biāo)識對應(yīng)的信息存儲地址,其中,預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表中保存有會話標(biāo)識與信息存儲地址對應(yīng)關(guān)系;或
[0075]對會話標(biāo)識進(jìn)行哈希運(yùn)算得到哈希值,將哈希值作為會話標(biāo)識對應(yīng)的信息存儲地址。
[0076]其中,哈希運(yùn)算具體可以是一致性哈希算法,如Chord算法,KAD算法等。
[0077]具體地,對稱密鑰相關(guān)信息(sess1n_info)包括:主密鑰(master secret)、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)等。其中,主密鑰是根據(jù)預(yù)主加密串(PreMaster Secret字串)、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)等生成的,具體生成過程與現(xiàn)有方法類似,此處不再贅述,服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)是服務(wù)器集群中的任一服務(wù)器隨機(jī)生成的隨機(jī)數(shù),可以在與客戶端交互過程中發(fā)送給客戶端,客戶端隨機(jī)數(shù)是客戶端隨機(jī)生成的隨機(jī)數(shù),可以在與服務(wù)器集群中的任一服務(wù)器交互過程中發(fā)送給服務(wù)器集群中的任一服務(wù)器。并且,對稱密鑰相關(guān)信息還可以包括對稱密鑰相關(guān)信息的有效時間等,以便監(jiān)控對稱密鑰相關(guān)信息是否已經(jīng)過期失效。
[0078]具體地,參見圖2,服務(wù)器集群中的服務(wù)器相互連通,從而服務(wù)器集群中的任一服務(wù)器可以根據(jù)會話標(biāo)識獲取信息存儲地址,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,并且多個服務(wù)器可以通過負(fù)載均衡器與終端設(shè)備進(jìn)行交互,以實現(xiàn)多個服務(wù)器之間的任務(wù)均衡。服務(wù)器集群中的任一服務(wù)器可以是能夠提供SSL接入服務(wù)的服務(wù)器,包括但不限于HTTPs、POPs、SMTPs、FTPs。
[0079]需要說明的是,可以在服務(wù)器集群中的每個服務(wù)器的內(nèi)部設(shè)置一個存儲結(jié)構(gòu)(例如:Cluster_inf0),通過存儲結(jié)構(gòu)記錄服務(wù)器集群中所有服務(wù)器的標(biāo)識(包括但不限于ip,內(nèi)部域名等)。且存儲結(jié)構(gòu)(例如:cluster_info)在所有的服務(wù)器中都相同,相同的主要目的是為了避免根據(jù)會話標(biāo)識獲取信息存儲地址時結(jié)果不一致。
[0080]S102:服務(wù)器集群中的任一服務(wù)器與客戶端再次進(jìn)行握手過程中,當(dāng)服務(wù)器集群中的任一服務(wù)器能夠從客戶端獲取到會話標(biāo)識時,服務(wù)器集群中的任一服務(wù)器根據(jù)會話標(biāo)識獲取信息存儲地址,從服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息。
[0081]具體地,參見圖3,服務(wù)器集群中的任一服務(wù)器根據(jù)會話標(biāo)識獲取信息存儲地址,從服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息,包括:
[0082]S102a:服務(wù)器集群中的任一服務(wù)器根據(jù)會話標(biāo)識獲取信息存儲地址。
[0083]其中,根據(jù)會話標(biāo)識獲取信息存儲地址與步驟SlOl中的一致,即如果SlOl是通過查詢預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表獲取到,則此處也是通過查詢預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表獲取到;如果SlOl是通過對會話標(biāo)識進(jìn)行哈希運(yùn)算獲取到,則此處也是通過對會話標(biāo)識進(jìn)行哈希運(yùn)算獲取到,從而使得存儲和查詢保持一致。
[0084]S102b:服務(wù)器集群中的任一服務(wù)器查詢服務(wù)器集群中信息存儲地址指向的服務(wù)器。
[0085]S102c:服務(wù)器集群從服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息。
[0086]具體地,服務(wù)器集群中的任一服務(wù)器能夠從服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息,則說明對稱密鑰相關(guān)信息還沒有過期或沒有因為服務(wù)器集群中信息存儲地址指向的服務(wù)器重啟等原因而失效,對稱密鑰相關(guān)信息可以用來生成對稱密鑰。
[0087]S103:服務(wù)器集群中的任一服務(wù)器根據(jù)對稱密鑰相關(guān)信息生成對稱密鑰,利用對稱密鑰與客戶端進(jìn)行加密數(shù)據(jù)傳輸。
[0088]具體地,服務(wù)器集群中的任一服務(wù)器利用對稱密鑰與客戶端進(jìn)行加密數(shù)據(jù)傳輸時,客戶端會根據(jù)客戶端的預(yù)主加密串、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)等生成主密鑰,然后根據(jù)主密鑰、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)等生成對稱密鑰,利用對稱密鑰對服務(wù)器集群中的任一服務(wù)器發(fā)送過來的利用對稱密鑰加密后的明文進(jìn)行解密,利用對稱密鑰對發(fā)送到服務(wù)器集群中的任一服務(wù)器的明文進(jìn)行加密等,實現(xiàn)加密數(shù)據(jù)傳輸。
[0089]具體地,在本實施例的一優(yōu)選實施例中,參見圖4,SSL會話重用的方法包括:
[0090]S201:服務(wù)器集群中的任一服務(wù)器接收客戶端的SSL請求,獲取SSL請求中攜帶的會話標(biāo)識長度信息。
[0091]具體地,客戶端的SSL請求可以是客戶端(Client)Hello報文。會話標(biāo)識長度信息可能是 SESSOIIN ID LENGTH:0、SSESS0IIN ID LENGTH:32 等。
[0092]具體地,如果SSL請求中沒有攜帶會話標(biāo)識長度信息,服務(wù)器集群中的任一服務(wù)器沒有獲取到SSL請求中攜帶的會話標(biāo)識長度信息,則證明客戶端不接受SSL會話重用,則服務(wù)器集群中的任一服務(wù)器后續(xù)不會生成會話標(biāo)識,服務(wù)器集群中的任一服務(wù)器和客戶端之間按照現(xiàn)有的非SSL會話重用的方法進(jìn)行握手過程和數(shù)據(jù)加密傳輸過程。
[0093]S202:服務(wù)器集群中的任一服務(wù)器根據(jù)會話標(biāo)識長度信息判斷會話標(biāo)識長度是否為零,如果會話標(biāo)識長度為零,則執(zhí)行S203 ;如果會話標(biāo)識長度不為零,則執(zhí)行S206。
[0094]具體地,如果會話標(biāo)識長度信息為SESSOIIN ID LENGTH: 32,則會話標(biāo)識長度不為零,如果會話標(biāo)識長度信息為SESSOIIN ID LENGTH: 0,則會話標(biāo)識長度為零。
[0095]S203:服務(wù)器集群中的任一服務(wù)器為客戶端生成會話標(biāo)識,并將會話標(biāo)識發(fā)送給客戶端,使得客戶端接收會話標(biāo)識,生成并將加密后的預(yù)主加密串發(fā)送給服務(wù)器集群中的任一服務(wù)器。
[0096]具體地,根據(jù)SSL/TLS協(xié)議,會話標(biāo)識(SESS1N ID)可以是一個32字節(jié)且非零的隨機(jī)數(shù)、隨機(jī)字符串等(SESS1N ID:token〈32*>)。
[0097]S204:服務(wù)器集群中的任一服務(wù)器接收并對客戶端發(fā)送的加密后的預(yù)主加密串進(jìn)行解密得到預(yù)主加密串,根據(jù)預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)會話標(biāo)識獲取信息存儲地址,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中。
[0098]具體地,根據(jù)會話標(biāo)識獲取信息存儲地址,至少可以通過下面的方法獲取到:
[0099]查詢預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表,得到會話標(biāo)識對應(yīng)的信息存儲地址,其中,預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表中保存有會話標(biāo)識與信息存儲地址對應(yīng)關(guān)系;或
[0100]對會話標(biāo)識進(jìn)行哈希運(yùn)算得到哈希值,將哈希值作為會話標(biāo)識對應(yīng)的信息存儲地址。
[0101]其中,哈希運(yùn)算具體可以是一致性哈希算法,如Chord算法,KAD算法等。
[0102]具體地,根據(jù)預(yù)主加密串生成對稱密鑰相關(guān)信息可以是根據(jù)預(yù)主加密串、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)等生成主密鑰,然后將主密鑰、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)作為對稱密鑰相關(guān)信息。
[0103]具體地,服務(wù)器集群中的任一服務(wù)器接收并對客戶端發(fā)送的加密后的預(yù)主加密串進(jìn)行解密得到預(yù)主加密串后,還可以先判斷預(yù)主加密串是否完整無缺,如果預(yù)主加密串完整無缺,再根據(jù)預(yù)主加密串生成對稱密鑰相關(guān)信息,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中;如果預(yù)主加密串不是完整無缺,則月艮務(wù)器集群中的任一服務(wù)器向客戶端發(fā)送結(jié)束報文,斷開與客戶端的連接,不再進(jìn)行后續(xù)操作。
[0104]S205:服務(wù)器集群中的任一服務(wù)器根據(jù)對稱密鑰相關(guān)信息生成對稱密鑰,利用對稱密鑰與客戶端進(jìn)行加密數(shù)據(jù)傳輸,然后結(jié)束。
[0105]S206:服務(wù)器集群中的任一服務(wù)器判斷SSL請求中是否攜帶會話標(biāo)識,如果SSL請求中攜帶會話標(biāo)識,則執(zhí)行S207 ;如果SSL請求中沒有攜帶會話標(biāo)識,則執(zhí)行S203。
[0106]具體地,服務(wù)器集群中的任一服務(wù)器根據(jù)會話標(biāo)識長度信息確定會話標(biāo)識長度不為零時,確定服務(wù)器集群中的任一服務(wù)器與客戶端可能是再次進(jìn)行握手過程中,SSL請求中可能攜帶服務(wù)器集群中的任一服務(wù)器在初次握手過程中為客戶端生成的會話標(biāo)識。
[0107]S207:服務(wù)器集群中的任一服務(wù)器獲取SSL請求中的會話標(biāo)識。
[0108]S208:服務(wù)器集群中的任一服務(wù)器根據(jù)會話標(biāo)識,查詢服務(wù)器集群中信息存儲地址指向的服務(wù)器中會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息是否存在,如果服務(wù)器集群中信息存儲地址指向的服務(wù)器中會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息存在,則執(zhí)行S209 ;如果服務(wù)器集群中信息存儲地址指向的服務(wù)器中會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息不存在,則執(zhí)行S203o
[0109]具體地,如果服務(wù)器集群中信息存儲地址指向的服務(wù)器中會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息存在,則說明對稱密鑰相關(guān)信息還沒有過期或沒有因為服務(wù)器集群中信息存儲地址指向的服務(wù)器重啟等原因而失效,對稱密鑰相關(guān)信息可以用來生成對稱密鑰。如果服務(wù)器集群中信息存儲地址指向的服務(wù)器中會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息不存在,則說明對稱密鑰相關(guān)信息可能因為過期或服務(wù)器集群中信息存儲地址指向的服務(wù)器重啟等原因而失效。
[0110]S209:服務(wù)器集群中的任一服務(wù)器將會話標(biāo)識發(fā)送給客戶端,并向客戶端發(fā)送握手結(jié)束信息,然后執(zhí)行S205。
[0111]具體地,服務(wù)器集群中的任一服務(wù)器將會話標(biāo)識發(fā)送給客戶端,并向客戶端發(fā)送握手結(jié)束信息(例如:finish報文),以告知客戶端本次握手過程完成可以進(jìn)行后續(xù)流程。
[0112]為了便于進(jìn)一步地理解,參見圖5,服務(wù)器集群中的服務(wù)器I與客戶端進(jìn)行握手過程中,為客戶端生成會話標(biāo)識,將會話標(biāo)識發(fā)送給客戶端,根據(jù)客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)會話標(biāo)識獲取信息存儲地址,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器2中;服務(wù)器集群中的服務(wù)器3與客戶端再次進(jìn)行握手過程中,當(dāng)服務(wù)器3能夠從客戶端獲取到會話標(biāo)識時,服務(wù)器3根據(jù)會話標(biāo)識獲取信息存儲地址,從服務(wù)器集群中信息存儲地址指向的服務(wù)器2中查詢得到會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息;服務(wù)器3根據(jù)對稱密鑰相關(guān)信息生成對稱密鑰,利用對稱密鑰與客戶端進(jìn)行加密數(shù)據(jù)傳輸。
[0113]本實施例所述的SSL會話重用的方法,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,可以實現(xiàn)對稱密鑰相關(guān)信息生成和存儲的分離,服務(wù)器集群中的任一服務(wù)器都可以從服務(wù)器集群中信息存儲地址指向的服務(wù)器中獲取到對稱密鑰相關(guān)信息,可以在服務(wù)器集群中實現(xiàn)SSL會話重用。將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,使得對稱密鑰相關(guān)信息的保存時間可以完全獨(dú)立,從而服務(wù)器集群中生成對稱密鑰相關(guān)信息的服務(wù)器down機(jī)或者休眠、重啟等,都不會影響到對稱密鑰相關(guān)信息的有效期,實現(xiàn)了服務(wù)器集群中SSL會話重用的高可用性。
[0114]如圖6所示,是本發(fā)明實施例的一種SSL會話重用的服務(wù)器集群中的任一服務(wù)器結(jié)構(gòu)圖,該服務(wù)器集群中的任一服務(wù)器包括:
[0115]處理模塊301,用于在服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為客戶端生成會話標(biāo)識,將會話標(biāo)識發(fā)送給客戶端,根據(jù)客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,將會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中;
[0116]查詢模塊302,用于在服務(wù)器集群中的任一服務(wù)器與客戶端再次進(jìn)行握手過程中,當(dāng)服務(wù)器集群中的任一服務(wù)器能夠從客戶端獲取到會話標(biāo)識時,根據(jù)會話標(biāo)識,從服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息;
[0117]傳輸模塊303,用于根據(jù)對稱密鑰相關(guān)信息生成對稱密鑰,利用對稱密鑰與客戶端進(jìn)行加密數(shù)據(jù)傳輸。
[0118]進(jìn)一步地,處理模塊301包括:
[0119]處理單元,用于接收客戶端的SSL請求,獲取SSL請求中攜帶的會話標(biāo)識長度信息;
[0120]生成單元,用于根據(jù)會話標(biāo)識長度信息確定會話標(biāo)識長度為零時,為客戶端生成會話標(biāo)識,并將會話標(biāo)識發(fā)送給客戶端,使得客戶端接收會話標(biāo)識,生成并將加密后的預(yù)主加密串發(fā)送給服務(wù)器集群中的任一服務(wù)器;
[0121]存儲單元,用于接收并對客戶端發(fā)送的加密后的預(yù)主加密串進(jìn)行解密得到預(yù)主加密串,根據(jù)預(yù)主加密串生成對稱密鑰相關(guān)信息,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中;
[0122]傳輸單元,用于根據(jù)對稱密鑰相關(guān)信息生成對稱密鑰,利用對稱密鑰與客戶端進(jìn)行加密數(shù)據(jù)傳輸。
[0123]進(jìn)一步地,處理模塊301還包括:
[0124]確定單元,用于根據(jù)會話標(biāo)識長度信息確定會話標(biāo)識長度不為零時,確定服務(wù)器集群中的任一服務(wù)器與客戶端再次進(jìn)行握手過程中;
[0125]相應(yīng)地,查詢模塊302包括:
[0126]判斷單元,用于判斷SSL請求中是否攜帶會話標(biāo)識;
[0127]查詢單元,用于如果SSL請求中攜帶會話標(biāo)識,則獲取SSL請求中的會話標(biāo)識,根據(jù)會話標(biāo)識,從服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息,將會話標(biāo)識發(fā)送給客戶端,并向客戶端發(fā)送握手結(jié)束信息。
[0128]進(jìn)一步地,處理模塊301還包括:
[0129]通知單元,用于如果SSL請求中沒有攜帶會話標(biāo)識,則通知生成單元執(zhí)行為客戶端生成會話標(biāo)識,并將會話標(biāo)識發(fā)送給客戶端的步驟。
[0130]進(jìn)一步地,查詢單元包括:
[0131]查詢子單元,用于根據(jù)會話標(biāo)識,查詢服務(wù)器集群中信息存儲地址指向的服務(wù)器中會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息是否存在;
[0132]第一通知子單元,用于如果服務(wù)器集群中信息存儲地址指向的服務(wù)器中會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息存在,則通知查詢單元執(zhí)行將會話標(biāo)識發(fā)送給客戶端,并向客戶端發(fā)送握手結(jié)束信息的步驟;
[0133]第二通知子單元,用于如果服務(wù)器集群中信息存儲地址指向的服務(wù)器中會話標(biāo)識對應(yīng)的對稱密鑰相關(guān)信息不存在,則通知生成單元執(zhí)行為客戶端生成會話標(biāo)識,并將會話標(biāo)識發(fā)送給客戶端的步驟。
[0134]進(jìn)一步地,對稱密鑰相關(guān)信息包括:主密鑰master secret、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)。
[0135]進(jìn)一步地,服務(wù)器集群中的任一服務(wù)器為服務(wù)器集群中的任一服務(wù)器,服務(wù)器集群中信息存儲地址指向的服務(wù)器獨(dú)立于服務(wù)器集群中的任一服務(wù)器。
[0136]本實施例所述的SSL會話重用的服務(wù)器集群中的任一服務(wù)器,將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,可以實現(xiàn)對稱密鑰相關(guān)信息生成和存儲的分離,服務(wù)器集群中的任一服務(wù)器都可以從服務(wù)器集群中信息存儲地址指向的服務(wù)器中獲取到對稱密鑰相關(guān)信息,可以在服務(wù)器集群中實現(xiàn)SSL會話重用。將會話標(biāo)識和對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,使得對稱密鑰相關(guān)信息的保存時間可以完全獨(dú)立,從而服務(wù)器集群中生成對稱密鑰相關(guān)信息的服務(wù)器down機(jī)或者休眠、重啟等,都不會影響到對稱密鑰相關(guān)信息的有效期,實現(xiàn)了服務(wù)器集群中SSL會話重用的高可用性。
[0137]服務(wù)器集群中的任一服務(wù)器與前述的方法流程描述對應(yīng),不足之處參考上述方法流程的敘述,不再一一贅述。
[0138]上述說明示出并描述了本發(fā)明的若干優(yōu)選實施例,但如前所述,應(yīng)當(dāng)理解本發(fā)明并非局限于本文所披露的形式,不應(yīng)看作是對其他實施例的排除,而可用于各種其他組合、修改和環(huán)境,并能夠在本文所述發(fā)明構(gòu)想范圍內(nèi),通過上述教導(dǎo)或相關(guān)領(lǐng)域的技術(shù)或知識進(jìn)行改動。而本領(lǐng)域人員所進(jìn)行的改動和變化不脫離本發(fā)明的精神和范圍,則都應(yīng)在本發(fā)明所附權(quán)利要求的保護(hù)范圍內(nèi)。
【主權(quán)項】
1.一種SSL會話重用的方法,其特征在于,所述方法包括: 服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為所述客戶端生成會話標(biāo)識,將所述會話標(biāo)識發(fā)送給所述客戶端,根據(jù)所述客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)所述會話標(biāo)識獲取信息存儲地址,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中; 所述服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中,當(dāng)所述服務(wù)器集群中的任一服務(wù)器能夠從所述客戶端獲取到所述會話標(biāo)識時,所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息; 所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述對稱密鑰相關(guān)信息生成對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。2.如權(quán)利要求1所述的方法,其特征在于,服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為所述客戶端生成會話標(biāo)識,將所述會話標(biāo)識發(fā)送給所述客戶端,根據(jù)所述客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)所述會話標(biāo)識獲取信息存儲地址,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中,包括: 所述服務(wù)器集群中的任一服務(wù)器接收所述客戶端的SSL請求,獲取所述SSL請求中攜帶的會話標(biāo)識長度信息; 所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識長度信息確定會話標(biāo)識長度為零時,為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端,使得所述客戶端接收會話標(biāo)識,生成并將加密后的所述預(yù)主加密串發(fā)送給所述服務(wù)器集群中的任一服務(wù)器; 所述服務(wù)器集群中的任一服務(wù)器接收并對所述客戶端發(fā)送的加密后的所述預(yù)主加密串進(jìn)行解密得到所述預(yù)主加密串,根據(jù)所述預(yù)主加密串生成所述對稱密鑰相關(guān)信息,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中; 所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述對稱密鑰相關(guān)信息生成所述對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。3.如權(quán)利要求2所述的方法,其特征在于,所述服務(wù)器集群中的任一服務(wù)器接收所述客戶端的SSL請求,獲取所述SSL請求中攜帶的會話標(biāo)識長度信息之后,還包括: 所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識長度信息確定所述會話標(biāo)識長度不為零時,確定所述服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中; 相應(yīng)地,當(dāng)所述服務(wù)器集群中的任一服務(wù)器能夠從所述客戶端獲取到所述會話標(biāo)識時,所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息,包括: 所述服務(wù)器集群中的任一服務(wù)器判斷所述SSL請求中是否攜帶所述會話標(biāo)識; 如果所述SSL請求中攜帶所述會話標(biāo)識,則所述服務(wù)器集群中的任一服務(wù)器獲取所述SSL請求中的所述會話標(biāo)識,所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息,將所述會話標(biāo)識發(fā)送給所述客戶端,并向所述客戶端發(fā)送握手結(jié)束信息。4.如權(quán)利要求3所述的方法,其特征在于,所述服務(wù)器集群中的任一服務(wù)器判斷所述SSL請求中是否攜帶所述會話標(biāo)識之后,還包括: 如果所述SSL請求中沒有攜帶所述會話標(biāo)識,則執(zhí)行為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端的步驟。5.如權(quán)利要求3所述的方法,其特征在于,所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息,包括: 所述服務(wù)器集群中的任一服務(wù)器根據(jù)所述會話標(biāo)識,查詢所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息是否存在; 如果所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息存在,則執(zhí)行將所述會話標(biāo)識發(fā)送給所述客戶端,并向所述客戶端發(fā)送握手結(jié)束信息的步驟; 如果所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息不存在,則執(zhí)行為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端的步驟。6.如權(quán)利要求1-5任一權(quán)利要求所述的方法,其特征在于,所述對稱密鑰相關(guān)信息包括:主密鑰master secret、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)。7.如權(quán)利要求1-5任一權(quán)利要求所述的方法,其特征在于,根據(jù)所述會話標(biāo)識獲取信息存儲地址,包括: 查詢預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表,得到所述會話標(biāo)識對應(yīng)的所述信息存儲地址,其中,所述預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表中保存有所述會話標(biāo)識與所述信息存儲地址對應(yīng)關(guān)系;或 對所述會話標(biāo)識進(jìn)行哈希運(yùn)算得到哈希值,將所述哈希值作為所述會話標(biāo)識對應(yīng)的所述信息存儲地址。8.—種SSL會話重用的服務(wù)器,其特征在于,所述服務(wù)器集群中的任一服務(wù)器包括: 處理模塊,用于在所述服務(wù)器集群中的任一服務(wù)器與客戶端進(jìn)行握手過程中,為所述客戶端生成會話標(biāo)識,將所述會話標(biāo)識發(fā)送給所述客戶端,根據(jù)所述客戶端返回的預(yù)主加密串生成對稱密鑰相關(guān)信息,根據(jù)所述會話標(biāo)識獲取信息存儲地址,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在服務(wù)器集群中信息存儲地址指向的服務(wù)器中; 查詢模塊,用于在所述服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中,當(dāng)所述服務(wù)器集群中的任一服務(wù)器能夠從所述客戶端獲取到所述會話標(biāo)識時,根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息; 傳輸模塊,用于根據(jù)所述對稱密鑰相關(guān)信息生成對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。9.如權(quán)利要求8所述的服務(wù)器,其特征在于,所述處理模塊包括: 處理單元,用于接收所述客戶端的SSL請求,獲取所述SSL請求中攜帶的會話標(biāo)識長度信息; 生成單元,用于根據(jù)所述會話標(biāo)識長度信息確定會話標(biāo)識長度為零時,為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端,使得所述客戶端接收會話標(biāo)識,生成并將加密后的所述預(yù)主加密串發(fā)送給所述服務(wù)器; 存儲單元,用于接收并對所述客戶端發(fā)送的加密后的所述預(yù)主加密串進(jìn)行解密得到所述預(yù)主加密串,根據(jù)所述預(yù)主加密串生成所述對稱密鑰相關(guān)信息,將所述會話標(biāo)識和所述對稱密鑰相關(guān)信息對應(yīng)存儲在所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中; 傳輸單元,用于根據(jù)所述對稱密鑰相關(guān)信息生成所述對稱密鑰,利用所述對稱密鑰與所述客戶端進(jìn)行加密數(shù)據(jù)傳輸。10.如權(quán)利要求9所述的服務(wù)器,其特征在于,所述處理模塊還包括: 確定單元,用于根據(jù)所述會話標(biāo)識長度信息確定所述會話標(biāo)識長度不為零時,確定所述服務(wù)器集群中的任一服務(wù)器與所述客戶端再次進(jìn)行握手過程中; 相應(yīng)地,所述查詢模塊包括: 判斷單元,用于判斷所述SSL請求中是否攜帶所述會話標(biāo)識; 查詢單元,用于如果所述SSL請求中攜帶所述會話標(biāo)識,則獲取所述SSL請求中的所述會話標(biāo)識,根據(jù)所述會話標(biāo)識獲取信息存儲地址,從所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中查詢得到所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息,將所述會話標(biāo)識發(fā)送給所述客戶端,并向所述客戶端發(fā)送握手結(jié)束信息。11.如權(quán)利要求10所述的服務(wù)器,其特征在于,所述處理模塊還包括: 通知單元,用于如果所述SSL請求中沒有攜帶所述會話標(biāo)識,則通知所述生成單元執(zhí)行為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端的步驟。12.如權(quán)利要求10所述的服務(wù)器,其特征在于,所述查詢單元包括: 查詢子單元,用于根據(jù)所述會話標(biāo)識,查詢所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息是否存在; 第一通知子單元,用于如果所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息存在,則通知所述查詢單元執(zhí)行將所述會話標(biāo)識發(fā)送給所述客戶端,并向所述客戶端發(fā)送握手結(jié)束信息的步驟; 第二通知子單元,用于如果所述服務(wù)器集群中信息存儲地址指向的服務(wù)器中所述會話標(biāo)識對應(yīng)的所述對稱密鑰相關(guān)信息不存在,則通知所述生成單元執(zhí)行為所述客戶端生成所述會話標(biāo)識,并將所述會話標(biāo)識發(fā)送給所述客戶端的步驟。13.如權(quán)利要求8-12任一權(quán)利要求所述的服務(wù)器,其特征在于,所述對稱密鑰相關(guān)信息包括:主密鑰master secret、服務(wù)器集群中的任一服務(wù)器隨機(jī)數(shù)和客戶端隨機(jī)數(shù)。14.如權(quán)利要求8-12任一權(quán)利要求所述的服務(wù)器,其特征在于,所述處理模塊還包括: 第一地址獲取單元,用于查詢預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表,得到所述會話標(biāo)識對應(yīng)的所述信息存儲地址,其中,所述預(yù)設(shè)會話標(biāo)識存儲地址對應(yīng)表中保存有所述會話標(biāo)識與所述信息存儲地址對應(yīng)關(guān)系;或 第二地址獲取單元,用于對所述會話標(biāo)識進(jìn)行哈希運(yùn)算得到哈希值,將所述哈希值作為所述會話標(biāo)識對應(yīng)的所述信息存儲地址。
【文檔編號】H04L29/06GK106059986SQ201510195065
【公開日】2016年10月26日
【申請日】2015年4月22日
【發(fā)明人】向西西, 楊洋
【申請人】阿里巴巴集團(tuán)控股有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
五家渠市| 宁晋县| 铁岭县| 天门市| 清流县| 隆尧县| 兴化市| 门源| 泉州市| 黄冈市| 西藏| 阿拉善左旗| 阜阳市| 贵阳市| 苗栗县| 富民县| 永福县| 无为县| 鸡泽县| 台安县| 武陟县| 青州市| 报价| 开阳县| 当雄县| 永修县| 庆安县| 鄢陵县| 千阳县| 齐齐哈尔市| 南昌市| 长治市| 张家港市| 长丰县| 黎城县| 廉江市| 乌海市| 常德市| 余江县| 乳山市| 会泽县|