一種保證數(shù)據(jù)安全的方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種保證數(shù)據(jù)安全的方法及系統(tǒng),該方法,包括:預(yù)先在目標(biāo)服務(wù)器上設(shè)置硬件安全模塊HSM,在所述HSM中保存密鑰材料;客戶端接收所述目標(biāo)服務(wù)器發(fā)來(lái)的所述密鑰材料;所述客戶端根據(jù)所述密鑰材料對(duì)待傳輸數(shù)據(jù)進(jìn)行加密;所述客戶端將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器根據(jù)所述HSM中的所述密鑰材料對(duì)加密后的所述待傳輸數(shù)據(jù)進(jìn)行解密。本發(fā)明提供了一種保證數(shù)據(jù)安全的方法及系統(tǒng),能夠提高數(shù)據(jù)的安全性。
【專利說(shuō)明】
一種保證數(shù)據(jù)安全的方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種保證數(shù)據(jù)安全的方法及系統(tǒng)。
【背景技術(shù)】
[0002]云計(jì)算是互聯(lián)網(wǎng)時(shí)代的一種新型計(jì)算方式,自產(chǎn)生之日起就包含了眾多信息技術(shù),如并行計(jì)算技術(shù)、虛擬化技術(shù)、網(wǎng)絡(luò)技術(shù)、信息安全管理技術(shù)及海量數(shù)據(jù)分布式存儲(chǔ)技術(shù)等。云計(jì)算已逐漸成為許多國(guó)家的重要發(fā)展戰(zhàn)略,世界各國(guó)政府都在指定相應(yīng)的措施搭理推進(jìn)本國(guó)云計(jì)算的建設(shè)和應(yīng)用,但是云計(jì)算技術(shù)在創(chuàng)造機(jī)遇、帶來(lái)巨大經(jīng)濟(jì)利益的同時(shí),也帶來(lái)了相應(yīng)的安全挑戰(zhàn),如何保證云計(jì)算中數(shù)據(jù)傳輸?shù)陌踩絹?lái)越受到重視。
[0003]現(xiàn)有技術(shù)中,發(fā)送方將待傳輸?shù)臄?shù)據(jù)通過(guò)密鑰進(jìn)行加密,將加密后的數(shù)據(jù)發(fā)送給接收方,接收方進(jìn)行解密獲得相應(yīng)的數(shù)據(jù)。
[0004]但是,這種方式加密方式比較簡(jiǎn)單,一旦用于解密的密鑰被截取,就能對(duì)加密后的數(shù)據(jù)進(jìn)行解密,安全性較低。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例提供了一種保證數(shù)據(jù)安全的方法及系統(tǒng),能夠提高數(shù)據(jù)的安全性。
[0006]—方面,本發(fā)明實(shí)施例提供了一種保證數(shù)據(jù)安全的方法,包括:
[0007]預(yù)先在目標(biāo)服務(wù)器上設(shè)置硬件安全模塊HSM,在所述HSM中保存密鑰材料;
[0008]SI:客戶端接收所述目標(biāo)服務(wù)器發(fā)來(lái)的所述密鑰材料;
[0009]S2:所述客戶端根據(jù)所述密鑰材料對(duì)待傳輸數(shù)據(jù)進(jìn)行加密;
[0010]S3:所述客戶端將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器根據(jù)所述HSM中的所述密鑰材料對(duì)加密后的所述待傳輸數(shù)據(jù)進(jìn)行解密。
[0011]進(jìn)一步地,包括:
[0012]預(yù)先設(shè)置所述目標(biāo)服務(wù)器的第一安全套接層SSL代理,預(yù)先設(shè)置所述客戶端的第二 SSL代理,所述第一 SSL代理與所述第二 SSL代理之間通過(guò)SSL協(xié)議進(jìn)行交互;
[0013]所述SI,包括:所述客戶端通過(guò)所述第二SSL代理接收所述目標(biāo)服務(wù)器通過(guò)所述第一 SSL代理發(fā)來(lái)的所述密鑰材料;
[0014]所述S3,包括:
[0015]所述客戶端通過(guò)所述第二SSL代理將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器。
[0016]進(jìn)一步地,在所述SI之前,還包括:
[0017]所述客戶端向所述第二SSL代理發(fā)送與所述目標(biāo)服務(wù)器建立連接的連接請(qǐng)求,以使所述第二 SSL代理根據(jù)所述連接請(qǐng)求中的身份認(rèn)證信息對(duì)所述客戶端進(jìn)行身份認(rèn)證,通過(guò)認(rèn)證后,根據(jù)所述連接請(qǐng)求中的所述目標(biāo)服務(wù)器的身份信息與所述目標(biāo)服務(wù)器的第一SSL代理建立連接,所述連接請(qǐng)求包括:所述客戶端的身份認(rèn)證信息、所述目標(biāo)服務(wù)器的身份信息。
[0018]進(jìn)一步地,所述S2,包括:
[0019]所述客戶端對(duì)所述待傳輸數(shù)據(jù)進(jìn)行加密,生成第一加密文件;
[0020]所述客戶端根據(jù)所述密鑰材料對(duì)用于解密所述第一加密文件的密鑰信息進(jìn)行加密,生成第二加密文件;
[0021]所述S3,包括:
[0022]所述客戶端將所述第一加密文件和所述第二加密文件發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器根據(jù)所述HSM中的所述密鑰材料對(duì)所述第二加密文件進(jìn)行解密,獲取所述密鑰信息,根據(jù)所述密鑰信息對(duì)所述第一加密文件進(jìn)行解密。
[0023]進(jìn)一步地,還包括:
[0024]所述客戶端對(duì)所述待傳輸數(shù)據(jù)進(jìn)行散列,獲取所述待傳輸數(shù)據(jù)的原始散列值,將所述原始散列值發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器對(duì)解密出的待傳輸數(shù)據(jù)進(jìn)行散列,獲取解密出的待傳輸數(shù)據(jù)的當(dāng)前散列值,比較所述原始散列值和所述當(dāng)前散列值是否相同,如果是,則確定解密出的待傳輸數(shù)據(jù)有效,否則,確定解密出的待傳輸數(shù)據(jù)無(wú)效。
[0025]另一方面,本發(fā)明實(shí)施例提供了一種保證數(shù)據(jù)安全的系統(tǒng),包括:
[0026]目標(biāo)服務(wù)器、客戶端;
[0027]所述目標(biāo)服務(wù)器中設(shè)置有硬件安全模塊HSM,所述HSM中保存有密鑰材料;
[0028]所述目標(biāo)服務(wù)器,用于向所述客戶端發(fā)送所述HSM中的密鑰材料,根據(jù)所述HSM中的所述密鑰材料對(duì)加密后的所述待傳輸數(shù)據(jù)進(jìn)行解密。
[0029]所述客戶端,用于接收所述目標(biāo)服務(wù)器發(fā)來(lái)的所述密鑰材料,根據(jù)所述密鑰材料對(duì)待傳輸數(shù)據(jù)進(jìn)行加密,將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器。
[0030]進(jìn)一步地,還包括:
[0031 ]與所述目標(biāo)服務(wù)器對(duì)應(yīng)的第一安全套接層SSL代理;
[0032]與所述客戶端對(duì)應(yīng)的第二SSL代理;
[0033]所述第一 SSL代理與所述第二 SSL代理之間通過(guò)SSL協(xié)議進(jìn)行交互;
[0034]所述目標(biāo)服務(wù)器,用于將所述密鑰材料發(fā)送給所述第一SSL代理,接收所述第一SSL代理發(fā)來(lái)的加密后的待傳輸數(shù)據(jù);
[0035]所述第一SSL代理,用于將所述密鑰材料發(fā)送給所述第二 SSL代理,將所述第二 SSL代理發(fā)來(lái)的加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器;
[0036]所述第二SSL代理,用于將所述密鑰材料發(fā)送該所述客戶端,將所述客戶端發(fā)來(lái)的加密后的待傳輸數(shù)據(jù)發(fā)送給所述第一 SSL代理;
[0037]所述客戶端,用于接收所述第二SSL代理發(fā)來(lái)的所述密鑰材料,將加密后的待傳輸數(shù)據(jù)發(fā)送給所述第二 SSL代理。
[0038]進(jìn)一步地,所述客戶端,還用于向所述第二SSL代理發(fā)送與所述目標(biāo)服務(wù)器建立連接的連接請(qǐng)求,所述連接請(qǐng)求包括:所述客戶端的身份認(rèn)證信息、所述目標(biāo)服務(wù)器的身份信息;
[0039]所述第二SSL代理,還用于根據(jù)所述連接請(qǐng)求中的身份認(rèn)證信息對(duì)所述客戶端進(jìn)行身份認(rèn)證,通過(guò)認(rèn)證后,根據(jù)所述連接請(qǐng)求中的所述目標(biāo)服務(wù)器的身份信息與所述第一SSL代理建立連接。
[0040]進(jìn)一步地,所述客戶端,用于對(duì)所述待傳輸數(shù)據(jù)進(jìn)行加密,生成第一加密文件,通過(guò)所述密鑰材料對(duì)用于解密所述第一加密文件的密鑰信息進(jìn)行加密,生成第二加密文件,將所述第一加密文件和所述第二加密文件發(fā)送給所述目標(biāo)服務(wù)器;
[0041 ]所述目標(biāo)服務(wù)器,用于根據(jù)所述HSM中的所述密鑰材料對(duì)所述第二加密文件進(jìn)行解密,獲取所述密鑰信息,根據(jù)所述密鑰信息對(duì)所述第一加密文件進(jìn)行解密。
[0042]進(jìn)一步地,所述客戶端,還用于對(duì)所述待傳輸數(shù)據(jù)進(jìn)行散列,獲取所述待傳輸數(shù)據(jù)的原始散列值,將所述原始散列值發(fā)送給所述目標(biāo)服務(wù)器;
[0043]所述目標(biāo)服務(wù)器,還用于對(duì)解密出的待傳輸數(shù)據(jù)進(jìn)行散列,獲取解密出的待傳輸數(shù)據(jù)的當(dāng)前散列值,比較所述原始散列值和所述當(dāng)前散列值是否相同,如果是,則確定解密出的待傳輸數(shù)據(jù)有效,否則,確定解密出的待傳輸數(shù)據(jù)無(wú)效。
[0044]在本發(fā)明實(shí)施例中,客戶端根據(jù)密鑰材料來(lái)加密待傳輸數(shù)據(jù),在進(jìn)行解密時(shí),需要HSM中的密鑰材料才能解密,而密鑰材料保存在HSM中,不容易被外部獲取,使得加密后的待傳輸數(shù)據(jù)不容易被破解,提高了數(shù)據(jù)的安全性。
【附圖說(shuō)明】
[0045]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0046]圖1是本發(fā)明一實(shí)施例提供的一種保證數(shù)據(jù)安全的方法的流程圖;
[0047]圖2是本發(fā)明一實(shí)施例提供的另一種保證數(shù)據(jù)安全的方法的流程圖;
[0048]圖3是本發(fā)明一實(shí)施例提供的一種保證數(shù)據(jù)安全的系統(tǒng)的示意圖。
【具體實(shí)施方式】
[0049]為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0050]如圖1所示,本發(fā)明實(shí)施例提供了一種保證數(shù)據(jù)安全的方法,該方法可以包括以下步驟:
[0051 ] S0:預(yù)先在目標(biāo)服務(wù)器上設(shè)置HSM(Hardware Security Module,硬件安全模塊),在所述HSM中保存密鑰材料;
[0052]SI:客戶端接收所述目標(biāo)服務(wù)器發(fā)來(lái)的所述密鑰材料;
[0053]S2:所述客戶端根據(jù)所述密鑰材料對(duì)待傳輸數(shù)據(jù)進(jìn)行加密;
[0054]S3:所述客戶端將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器根據(jù)所述HSM中的所述密鑰材料對(duì)加密后的所述待傳輸數(shù)據(jù)進(jìn)行解密。
[0055]在本發(fā)明實(shí)施例中,客戶端根據(jù)密鑰材料來(lái)加密待傳輸數(shù)據(jù),在進(jìn)行解密時(shí),需要HSM中的密鑰材料才能解密,而密鑰材料保存在HSM中,不容易被外部獲取,使得加密后的待傳輸數(shù)據(jù)不容易被破解,提高了數(shù)據(jù)的安全性。
[0056]為了進(jìn)一步提高數(shù)據(jù)傳輸過(guò)程中的安全性,在本發(fā)明一實(shí)施例中,該方法包括:預(yù)先設(shè)置所述目標(biāo)服務(wù)器的第一 SSL代理,預(yù)先設(shè)置所述客戶端的第二 SSL代理,所述第一 SSL代理與所述第二 SSL代理之間通過(guò)SSL協(xié)議進(jìn)行交互;
[0057]所述SI,包括:所述客戶端通過(guò)所述第二SSL代理接收所述目標(biāo)服務(wù)器通過(guò)所述第一SSL代理發(fā)來(lái)的所述密鑰材料;
[0058]所述S3,包括:
[0059]所述客戶端通過(guò)所述第二SSL代理將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器。
[0060]在該實(shí)施例中,分別為目標(biāo)服務(wù)器和客戶端設(shè)置第一SSL代理和第二SSL代理,客戶端與目標(biāo)服務(wù)器之間的數(shù)據(jù)傳輸均通過(guò)代理來(lái)完成,按照SSL協(xié)議進(jìn)行交互,通過(guò)SSL協(xié)議可以對(duì)客戶端與目標(biāo)服務(wù)器之間的傳輸?shù)臄?shù)據(jù)進(jìn)行安全加密,進(jìn)一步提高了客戶端與目標(biāo)服務(wù)器之間的數(shù)據(jù)傳輸?shù)陌踩浴?br>[0061 ]在所述SI之前,還包括:所述客戶端向所述第二SSL代理發(fā)送與所述目標(biāo)服務(wù)器建立連接的連接請(qǐng)求,以使所述第二SSL代理根據(jù)所述連接請(qǐng)求中的身份認(rèn)證信息對(duì)所述客戶端進(jìn)行身份認(rèn)證,通過(guò)認(rèn)證后,根據(jù)所述連接請(qǐng)求中的所述目標(biāo)服務(wù)器的身份信息與所述目標(biāo)服務(wù)器的第一 SSL代理建立連接,所述連接請(qǐng)求包括:所述客戶端的身份認(rèn)證信息、所述目標(biāo)服務(wù)器的身份信息。
[0062]在該實(shí)施例中,客戶端可以通過(guò)⑶NNECT方法向第二SSL代理發(fā)送連接請(qǐng)求,第二SSL代理接收到連接請(qǐng)求后,根據(jù)身份認(rèn)證信息確認(rèn)該連接請(qǐng)求的有效性及該連接請(qǐng)求對(duì)應(yīng)的客戶端的權(quán)限等,如果確認(rèn)該連接請(qǐng)求有效,客戶端具有連接目標(biāo)服務(wù)器的權(quán)限,則客戶端通過(guò)認(rèn)證。目標(biāo)服務(wù)器的身份信息可以包括:目標(biāo)服務(wù)器的主機(jī)名和端口號(hào)等。當(dāng)?shù)诙SL代理與第一SSL建立連接后,可以向客戶返回一個(gè)連接成功的確認(rèn)信號(hào),例如:返回“200Connect1n established”給客戶端。
[0063]為了進(jìn)一步提高數(shù)據(jù)的安全性,在本發(fā)明一實(shí)施例中,所述S2,包括:
[0064]所述S2,包括:
[0065]所述客戶端對(duì)所述待傳輸數(shù)據(jù)進(jìn)行加密,生成第一加密文件;
[0066]所述客戶端根據(jù)所述密鑰材料對(duì)用于解密所述第一加密文件的密鑰信息進(jìn)行加密,生成第二加密文件;
[0067]所述S3,包括:
[0068]所述客戶端將所述第一加密文件和所述第二加密文件發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器根據(jù)所述HSM中的所述密鑰材料對(duì)所述第二加密文件進(jìn)行解密,獲取所述密鑰信息,根據(jù)所述密鑰信息對(duì)所述第一加密文件進(jìn)行解密。
[0069]具體地,所述客戶端根據(jù)所述密鑰材料對(duì)用于解密所述第一加密文件的密鑰信息進(jìn)行加密,生成第二加密文件,包括:所述客戶端根據(jù)所述密鑰材料生成HSM密鑰;所述客戶端通過(guò)所述HSM密鑰對(duì)密鑰信息進(jìn)行加密,生成第二加密文件。
[0070]在該實(shí)施例中,對(duì)待傳輸數(shù)據(jù)進(jìn)行加密后,再對(duì)密鑰信息進(jìn)行加密,使得密鑰信息更加安全,由于根據(jù)密鑰材料加密的第二加密文件需要通過(guò)目標(biāo)服務(wù)器中的HSM中的密鑰材料才能解密,而密鑰材料有HSM進(jìn)行硬件保護(hù),安全性更高,這使得第二加密文件更加難以被破解,進(jìn)而提高了待傳輸數(shù)據(jù)的安全性。
[0071]為了驗(yàn)證待傳輸數(shù)據(jù)在傳輸過(guò)程中是否被篡改,在本發(fā)明一實(shí)施例中,該方法還包括:所述客戶端對(duì)所述待傳輸數(shù)據(jù)進(jìn)行散列,獲取所述待傳輸數(shù)據(jù)的原始散列值,將所述原始散列值發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器對(duì)解密出的待傳輸數(shù)據(jù)進(jìn)行散列,獲取解密出的待傳輸數(shù)據(jù)的當(dāng)前散列值,比較所述原始散列值和所述當(dāng)前散列值是否相同,如果是,則確定解密出的待傳輸數(shù)據(jù)有效,否則,確定解密出的待傳輸數(shù)據(jù)無(wú)效。
[0072]在該實(shí)施例中,客戶端和目標(biāo)服務(wù)器可以通過(guò)MD2、MD4、MD5和SHA-1等算法對(duì)待傳輸數(shù)據(jù)進(jìn)行散列??蛻舳撕湍繕?biāo)服務(wù)器采用相同的散列算法對(duì)待傳輸數(shù)據(jù)進(jìn)行散列。當(dāng)目標(biāo)服務(wù)器計(jì)算出的當(dāng)前散列值與原始散列值不同時(shí),說(shuō)明目標(biāo)服務(wù)器接收到的待傳輸數(shù)據(jù)已經(jīng)被篡改了,數(shù)據(jù)無(wú)效,目標(biāo)服務(wù)器可以將該待傳輸數(shù)據(jù)丟棄,并向客戶端發(fā)出報(bào)警信號(hào),通知客戶端目標(biāo)服務(wù)器接收到的待傳輸數(shù)據(jù)無(wú)效;如果當(dāng)前散列值與原始散列值相同,則可以將接收到的待傳輸數(shù)據(jù)上傳到應(yīng)用層。另外,該原始散列值可以由客戶端通過(guò)密鑰材料生成的密鑰來(lái)加密,然后傳輸給目標(biāo)服務(wù)器。
[0073]如圖2所示,本發(fā)明實(shí)施例提供了一種保證數(shù)據(jù)安全的方法,在該實(shí)施例中,客戶端為瀏覽器,目標(biāo)服務(wù)器為在云環(huán)境中的服務(wù)器A,瀏覽器需要向服務(wù)器A發(fā)送數(shù)據(jù)A,該方法可以包括以下步驟:
[0074]步驟201:預(yù)先在服務(wù)器A上設(shè)置HSM,在HSM中保存密鑰材料。
[0075]該HSM可以是TPM(Trusted Platform Module,可信賴平臺(tái)模塊)安全芯片,密鑰材料可以是TPM安全芯片中的根密鑰。HSM中還可以保存數(shù)字證書(shū)。也可以將數(shù)字證書(shū)作為密鑰材料。HSM中還可以保存私鑰,而該私鑰與密鑰材料相匹配,通過(guò)私鑰可以解密根據(jù)密鑰材料生成的HSM密鑰。
[0076]步驟202:預(yù)先設(shè)置服務(wù)器A的第一 SSL代理,預(yù)先設(shè)置瀏覽器的第二 SSL代理,第一SSL代理與第二 SSL代理之間通過(guò)SSL協(xié)議進(jìn)行交互。
[0077]瀏覽器和服務(wù)器A之間交互都有對(duì)應(yīng)的SSL代理來(lái)完成,通過(guò)SSL協(xié)議,可以增強(qiáng)瀏覽器和服務(wù)器A之間數(shù)據(jù)傳輸?shù)陌踩浴?br>[0078]步驟203:瀏覽器向第二 SSL代理發(fā)送與服務(wù)器A建立連接的連接請(qǐng)求,連接請(qǐng)求包括:瀏覽器的身份認(rèn)證信息、服務(wù)器A的身份信息。
[0079]服務(wù)器A的身份信息可以是服務(wù)器A的唯一標(biāo)識(shí),用來(lái)確定服務(wù)器A。
[0080]步驟204:第二 SSL代理根據(jù)連接請(qǐng)求中的身份認(rèn)證信息對(duì)瀏覽器進(jìn)行身份認(rèn)證,通過(guò)認(rèn)證后,根據(jù)連接請(qǐng)求中的服務(wù)器A的身份信息與服務(wù)器A的第一 SSL代理建立連接。
[0081]通過(guò)對(duì)瀏覽器進(jìn)行身份認(rèn)證可以保證服務(wù)器A的安全,避免服務(wù)器A被非法入侵。
[0082]步驟205:服務(wù)器A獲取HSM中的密鑰材料,將密鑰材料通過(guò)第一 SSL代理發(fā)送給第二SSL代理。
[0083]步驟206:第二SSL代理接收第一SSL代理發(fā)來(lái)的密鑰材料,將密鑰材料發(fā)給瀏覽器。
[0084]步驟207:瀏覽器對(duì)數(shù)據(jù)A進(jìn)行散列,生成數(shù)據(jù)A的散列值A(chǔ),對(duì)數(shù)據(jù)A和散列值A(chǔ)進(jìn)行加密,生成第一加密文件。
[0085]該加密可以通過(guò)對(duì)稱加密完成。
[0086]步驟208:瀏覽器根據(jù)第二 SSL代理發(fā)來(lái)的密鑰材料對(duì)用于解密第一加密文件的密鑰信息進(jìn)行加密,生成第二加密文件。
[0087]密鑰信息可以是解密第一加密文件的公鑰,服務(wù)器端可以通過(guò)該公鑰對(duì)應(yīng)的私鑰來(lái)解密。
[0088]步驟209:瀏覽器將第一加密文件和第二加密文件發(fā)送給第二 SSL代理。
[0089]步驟210:第二SSL代理將瀏覽器發(fā)來(lái)的第一加密文件和第二加密文件發(fā)送給第一SSL代理。
[0090]步驟211:第一 SSL代理將第二 SSL代理發(fā)來(lái)的第一加密文件和第二加密文件發(fā)送給服務(wù)器A。
[0091]步驟212:服務(wù)器A獲取HSM中的密鑰材料,根據(jù)獲取的密鑰材料對(duì)第二加密文件進(jìn)行解密,獲取密鑰信息,根據(jù)密鑰信息對(duì)第一加密文件進(jìn)行解密,獲取數(shù)據(jù)A和散列值A(chǔ)。
[0092]服務(wù)器A在對(duì)第一加密文件解密時(shí),可以通過(guò)與瀏覽器生成第一加密文件的加密算法相對(duì)應(yīng)的解密算法來(lái)實(shí)現(xiàn)。
[0093]具體地,在HSM中還保存有密鑰材料對(duì)應(yīng)的私鑰。根據(jù)獲取的密鑰材料對(duì)第二加密文件進(jìn)行解密,包括:根據(jù)獲取的密鑰材料確定對(duì)應(yīng)的私鑰,通過(guò)該私鑰對(duì)第二加密文件進(jìn)行解密。
[0094]步驟213:服務(wù)器A對(duì)獲取的數(shù)據(jù)A進(jìn)行散列,生成散列值B,比較散列值A(chǔ)和散列值B是否相同,如果是,則確定解密出的數(shù)據(jù)A有效,否則,確定解密出的數(shù)據(jù)A無(wú)效。
[0095]服務(wù)器A生成散列值B的算法與瀏覽器生成散列值A(chǔ)的算法相同,例如都是MD5。
[0096]在本發(fā)明實(shí)施例中,通過(guò)第一SSL代理和第二SSL代理來(lái)加強(qiáng)密鑰的安全性,通過(guò)HSM來(lái)保存密鑰材料,HSM通過(guò)物理和邏輯方式,把密鑰材料與使用的計(jì)算機(jī)和應(yīng)用相隔離,避免了易受攻擊的軟件方式來(lái)保存密鑰材料的風(fēng)險(xiǎn),提高了密鑰材料的安全性。在本發(fā)明實(shí)施例中,通過(guò)軟件和硬件兩方面對(duì)數(shù)據(jù)進(jìn)行保護(hù),提高了數(shù)據(jù)的安全性。
[0097]如圖3所示,本實(shí)施例提供的一種保證數(shù)據(jù)安全的系統(tǒng),包括:
[0098]目標(biāo)服務(wù)器301、客戶端302;
[0099]所述目標(biāo)服務(wù)器301中設(shè)置有硬件安全模塊HSM,所述HSM中保存有密鑰材料;
[0100]所述目標(biāo)服務(wù)器301,用于向所述客戶端302發(fā)送所述HSM中的密鑰材料,根據(jù)所述HSM中的所述密鑰材料對(duì)加密后的所述待傳輸數(shù)據(jù)進(jìn)行解密。
[0101 ]所述客戶端302,用于接收所述目標(biāo)服務(wù)器301發(fā)來(lái)的所述密鑰材料,根據(jù)所述密鑰材料對(duì)待傳輸數(shù)據(jù)進(jìn)行加密,將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器。
[0102]在本發(fā)明一實(shí)施例中,還包括:與所述目標(biāo)服務(wù)器對(duì)應(yīng)的第一安全套接層SSL代理;
[0103]與所述客戶端對(duì)應(yīng)的第二SSL代理;
[0104]所述第一 SSL代理與所述第二 SSL代理之間通過(guò)SSL協(xié)議進(jìn)行交互;
[0105]所述目標(biāo)服務(wù)器,用于將所述密鑰材料發(fā)送給所述第一SSL代理,接收所述第一SSL代理發(fā)來(lái)的加密后的待傳輸數(shù)據(jù);
[0106]所述第一SSL代理,用于將所述密鑰材料發(fā)送給所述第二 SSL代理,將所述第二 SSL代理發(fā)來(lái)的加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器;
[0107]所述第二SSL代理,用于將所述密鑰材料發(fā)送該所述客戶端,將所述客戶端發(fā)來(lái)的加密后的待傳輸數(shù)據(jù)發(fā)送給所述第一 SSL代理;
[0108]所述客戶端,用于接收所述第二SSL代理發(fā)來(lái)的所述密鑰材料,將加密后的待傳輸數(shù)據(jù)發(fā)送給所述第二 SSL代理。
[0109]在本發(fā)明一實(shí)施例中,所述客戶端,還用于向所述第二SSL代理發(fā)送與所述目標(biāo)服務(wù)器建立連接的連接請(qǐng)求,所述連接請(qǐng)求包括:所述客戶端的身份認(rèn)證信息、所述目標(biāo)服務(wù)器的身份信息;
[0110]所述第二SSL代理,還用于根據(jù)所述連接請(qǐng)求中的身份認(rèn)證信息對(duì)所述客戶端進(jìn)行身份認(rèn)證,通過(guò)認(rèn)證后,根據(jù)所述連接請(qǐng)求中的所述目標(biāo)服務(wù)器的身份信息與所述第一SSL代理建立連接。
[0111]在本發(fā)明一實(shí)施例中,所述客戶端,用于對(duì)所述待傳輸數(shù)據(jù)進(jìn)行加密,生成第一加密文件,通過(guò)所述密鑰材料對(duì)用于解密所述第一加密文件的密鑰信息進(jìn)行加密,生成第二加密文件,將所述第一加密文件和所述第二加密文件發(fā)送給所述目標(biāo)服務(wù)器;
[0112]所述目標(biāo)服務(wù)器,用于根據(jù)所述HSM中的所述密鑰材料對(duì)所述第二加密文件進(jìn)行解密,獲取所述密鑰信息,根據(jù)所述密鑰信息對(duì)所述第一加密文件進(jìn)行解密。
[0113]在本發(fā)明一實(shí)施例中,所述客戶端,還用于對(duì)所述待傳輸數(shù)據(jù)進(jìn)行散列,獲取所述待傳輸數(shù)據(jù)的原始散列值,將所述原始散列值發(fā)送給所述目標(biāo)服務(wù)器;
[0114]所述目標(biāo)服務(wù)器,還用于對(duì)解密出的待傳輸數(shù)據(jù)進(jìn)行散列,獲取解密出的待傳輸數(shù)據(jù)的當(dāng)前散列值,比較所述原始散列值和所述當(dāng)前散列值是否相同,如果是,則確定解密出的待傳輸數(shù)據(jù)有效,否則,確定解密出的待傳輸數(shù)據(jù)無(wú)效。
[0115]上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過(guò)程等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見(jiàn)本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。
[0116]本發(fā)明實(shí)施例至少具有如下有益效果:
[0117]1、在本發(fā)明實(shí)施例中,客戶端根據(jù)密鑰材料來(lái)加密待傳輸數(shù)據(jù),在進(jìn)行解密時(shí),需要HSM中的密鑰材料才能解密,而密鑰材料保存在HSM中,不容易被外部獲取,使得加密后的待傳輸數(shù)據(jù)不容易被破解,提高了數(shù)據(jù)的安全性。
[0118]2、在本發(fā)明實(shí)施例中,分別為目標(biāo)服務(wù)器和客戶端設(shè)置第一SSL代理和第二SSL代理,客戶端與目標(biāo)服務(wù)器之間的數(shù)據(jù)傳輸均通過(guò)代理來(lái)完成,按照SSL協(xié)議進(jìn)行交互,通過(guò)SSL協(xié)議可以對(duì)客戶端與目標(biāo)服務(wù)器之間的傳輸?shù)臄?shù)據(jù)進(jìn)行安全加密,進(jìn)一步提高了客戶端與目標(biāo)服務(wù)器之間的數(shù)據(jù)傳輸?shù)陌踩浴?br>[0119]3、在本發(fā)明實(shí)施例中,對(duì)待傳輸數(shù)據(jù)進(jìn)行加密后,再對(duì)密鑰信息進(jìn)行加密,使得密鑰信息更加安全,由于根據(jù)密鑰材料加密的第二加密文件需要通過(guò)目標(biāo)服務(wù)器中的HSM中的密鑰材料才能解密,而密鑰材料有HSM進(jìn)行硬件保護(hù),安全性更高,這使得第二加密文件更加難以被破解,進(jìn)而提高了待傳輸數(shù)據(jù)的安全性。
[0120]4、在本發(fā)明實(shí)施例中,通過(guò)第一SSL代理和第二SSL代理來(lái)加強(qiáng)密鑰的安全性,通過(guò)HSM來(lái)保存密鑰材料,HSM通過(guò)物理和邏輯方式,把密鑰材料與使用的計(jì)算機(jī)和應(yīng)用相隔離,避免了易受攻擊的軟件方式來(lái)保存密鑰材料的風(fēng)險(xiǎn),提高了密鑰材料的安全性。在本發(fā)明實(shí)施例中,通過(guò)軟件和硬件兩方面對(duì)數(shù)據(jù)進(jìn)行保護(hù),提高了數(shù)據(jù)的安全性。
[0121]需要說(shuō)明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)......”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同因素。
[0122]本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)在計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:ROM、RAM、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)中。
[0123]最后需要說(shuō)明的是:以上所述僅為本發(fā)明的較佳實(shí)施例,僅用于說(shuō)明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種保證數(shù)據(jù)安全的方法,其特征在于,包括: 預(yù)先在目標(biāo)服務(wù)器上設(shè)置硬件安全模塊HSM,在所述HSM中保存密鑰材料; 51:客戶端接收所述目標(biāo)服務(wù)器發(fā)來(lái)的所述密鑰材料; 52:所述客戶端根據(jù)所述密鑰材料對(duì)待傳輸數(shù)據(jù)進(jìn)行加密; 53:所述客戶端將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器根據(jù)所述HSM中的所述密鑰材料對(duì)加密后的所述待傳輸數(shù)據(jù)進(jìn)行解密。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,包括: 預(yù)先設(shè)置所述目標(biāo)服務(wù)器的第一安全套接層SSL代理,預(yù)先設(shè)置所述客戶端的第二 SSL代理,所述第一 SSL代理與所述第二 SSL代理之間通過(guò)SSL協(xié)議進(jìn)行交互; 所述SI,包括:所述客戶端通過(guò)所述第二SSL代理接收所述目標(biāo)服務(wù)器通過(guò)所述第一SSL代理發(fā)來(lái)的所述密鑰材料; 所述S3,包括: 所述客戶端通過(guò)所述第二 SSL代理將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,包括: 在所述SI之前,還包括: 所述客戶端向所述第二 SSL代理發(fā)送與所述目標(biāo)服務(wù)器建立連接的連接請(qǐng)求,以使所述第二 SSL代理根據(jù)所述連接請(qǐng)求中的身份認(rèn)證信息對(duì)所述客戶端進(jìn)行身份認(rèn)證,通過(guò)認(rèn)證后,根據(jù)所述連接請(qǐng)求中的所述目標(biāo)服務(wù)器的身份信息與所述目標(biāo)服務(wù)器的第一SSL代理建立連接,所述連接請(qǐng)求包括:所述客戶端的身份認(rèn)證信息、所述目標(biāo)服務(wù)器的身份信息。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,包括: 所述S2,包括: 所述客戶端對(duì)所述待傳輸數(shù)據(jù)進(jìn)行加密,生成第一加密文件; 所述客戶端根據(jù)所述密鑰材料對(duì)用于解密所述第一加密文件的密鑰信息進(jìn)行加密,生成第二加密文件; 所述S3,包括: 所述客戶端將所述第一加密文件和所述第二加密文件發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器根據(jù)所述HSM中的所述密鑰材料對(duì)所述第二加密文件進(jìn)行解密,獲取所述密鑰信息,根據(jù)所述密鑰信息對(duì)所述第一加密文件進(jìn)行解密。5.根據(jù)權(quán)利要求1-4中任一所述的方法,其特征在于,還包括: 所述客戶端對(duì)所述待傳輸數(shù)據(jù)進(jìn)行散列,獲取所述待傳輸數(shù)據(jù)的原始散列值,將所述原始散列值發(fā)送給所述目標(biāo)服務(wù)器,以使所述目標(biāo)服務(wù)器對(duì)解密出的待傳輸數(shù)據(jù)進(jìn)行散列,獲取解密出的待傳輸數(shù)據(jù)的當(dāng)前散列值,比較所述原始散列值和所述當(dāng)前散列值是否相同,如果是,則確定解密出的待傳輸數(shù)據(jù)有效,否則,確定解密出的待傳輸數(shù)據(jù)無(wú)效。6.一種保證數(shù)據(jù)安全的系統(tǒng),其特征在于,包括: 目標(biāo)服務(wù)器、客戶端; 所述目標(biāo)服務(wù)器中設(shè)置有硬件安全模塊HSM,所述HSM中保存有密鑰材料; 所述目標(biāo)服務(wù)器,用于向所述客戶端發(fā)送所述HSM中的密鑰材料,根據(jù)所述HSM中的所述密鑰材料對(duì)加密后的所述待傳輸數(shù)據(jù)進(jìn)行解密。 所述客戶端,用于接收所述目標(biāo)服務(wù)器發(fā)來(lái)的所述密鑰材料,根據(jù)所述密鑰材料對(duì)待傳輸數(shù)據(jù)進(jìn)行加密,將加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器。7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,還包括: 與所述目標(biāo)服務(wù)器對(duì)應(yīng)的第一安全套接層SSL代理; 與所述客戶端對(duì)應(yīng)的第二 SSL代理; 所述第一 SSL代理與所述第二 SSL代理之間通過(guò)SSL協(xié)議進(jìn)行交互; 所述目標(biāo)服務(wù)器,用于將所述密鑰材料發(fā)送給所述第一 SSL代理,接收所述第一 SSL代理發(fā)來(lái)的加密后的待傳輸數(shù)據(jù); 所述第一 SSL代理,用于將所述密鑰材料發(fā)送給所述第二 SSL代理,將所述第二 SSL代理發(fā)來(lái)的加密后的待傳輸數(shù)據(jù)發(fā)送給所述目標(biāo)服務(wù)器; 所述第二 SSL代理,用于將所述密鑰材料發(fā)送該所述客戶端,將所述客戶端發(fā)來(lái)的加密后的待傳輸數(shù)據(jù)發(fā)送給所述第一 SSL代理; 所述客戶端,用于接收所述第二 SSL代理發(fā)來(lái)的所述密鑰材料,將加密后的待傳輸數(shù)據(jù)發(fā)送給所述第二 SSL代理。8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,包括: 所述客戶端,還用于向所述第二SSL代理發(fā)送與所述目標(biāo)服務(wù)器建立連接的連接請(qǐng)求,所述連接請(qǐng)求包括:所述客戶端的身份認(rèn)證信息、所述目標(biāo)服務(wù)器的身份信息; 所述第二 SSL代理,還用于根據(jù)所述連接請(qǐng)求中的身份認(rèn)證信息對(duì)所述客戶端進(jìn)行身份認(rèn)證,通過(guò)認(rèn)證后,根據(jù)所述連接請(qǐng)求中的所述目標(biāo)服務(wù)器的身份信息與所述第一 SSL代理建立連接。9.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,包括: 所述客戶端,用于對(duì)所述待傳輸數(shù)據(jù)進(jìn)行加密,生成第一加密文件,通過(guò)所述密鑰材料對(duì)用于解密所述第一加密文件的密鑰信息進(jìn)行加密,生成第二加密文件,將所述第一加密文件和所述第二加密文件發(fā)送給所述目標(biāo)服務(wù)器; 所述目標(biāo)服務(wù)器,用于根據(jù)所述HSM中的所述密鑰材料對(duì)所述第二加密文件進(jìn)行解密,獲取所述密鑰信息,根據(jù)所述密鑰信息對(duì)所述第一加密文件進(jìn)行解密。10.根據(jù)權(quán)利要求6-9中任一所述的系統(tǒng),其特征在于,包括: 所述客戶端,還用于對(duì)所述待傳輸數(shù)據(jù)進(jìn)行散列,獲取所述待傳輸數(shù)據(jù)的原始散列值,將所述原始散列值發(fā)送給所述目標(biāo)服務(wù)器; 所述目標(biāo)服務(wù)器,還用于對(duì)解密出的待傳輸數(shù)據(jù)進(jìn)行散列,獲取解密出的待傳輸數(shù)據(jù)的當(dāng)前散列值,比較所述原始散列值和所述當(dāng)前散列值是否相同,如果是,則確定解密出的待傳輸數(shù)據(jù)有效,否則,確定解密出的待傳輸數(shù)據(jù)無(wú)效。
【文檔編號(hào)】H04L29/06GK105871858SQ201610236653
【公開(kāi)日】2016年8月17日
【申請(qǐng)日】2016年4月15日
【發(fā)明人】張衛(wèi)品, 戴鴻君, 于治樓
【申請(qǐng)人】浪潮集團(tuán)有限公司