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

一種數(shù)據(jù)加密傳輸方法及裝置與流程

文檔序號(hào):11778413閱讀:299來源:國知局
一種數(shù)據(jù)加密傳輸方法及裝置與流程

本發(fā)明涉及通信加密領(lǐng)域,特別是涉及一種數(shù)據(jù)加密傳輸方法及裝置。



背景技術(shù):

國密算法作為國際密碼局認(rèn)定的國產(chǎn)密碼算法,被廣泛運(yùn)用在各種安全認(rèn)證、網(wǎng)上銀行及數(shù)字簽名等數(shù)據(jù)加密中。國際商用密碼管理辦公室制定了一系列國密算法標(biāo)準(zhǔn),包括ssf3、sm1、sm2、sm3、sm4、sm7、祖沖之密碼算法標(biāo)準(zhǔn)等。由于目前科研領(lǐng)域?qū)τ趪芩惴ǖ难邪l(fā)投入大、研發(fā)水平成熟并且成功豐碩,所以國密算法更具安全性和實(shí)用性,采用國密算法加密傳輸數(shù)據(jù)可使數(shù)據(jù)的安全性和可靠性都能得到嚴(yán)格保障。

目前,消息中間件采用的是openssl加密機(jī)制以對(duì)數(shù)據(jù)進(jìn)行加密并傳輸。由于openssl為開源的加密機(jī)制,存在著很多安全上的漏洞,所以數(shù)據(jù)的安全性與可靠性相對(duì)弱于采用國密算法進(jìn)行加密的數(shù)據(jù)。然而,對(duì)于消息中間件中的數(shù)據(jù)的傳輸安全越來越被重視,例如作為國家“核高基”的重大專項(xiàng)成果的inforsuitemq消息中間件,其目的之一就是提供可靠的數(shù)據(jù)加密傳輸服務(wù)。

由此可見,提供一種數(shù)據(jù)加密傳輸方法,以進(jìn)一步提高數(shù)據(jù)傳輸?shù)陌踩耘c可靠性,正是本領(lǐng)域技術(shù)人員亟待解決的問題。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的是提供一種數(shù)據(jù)加密傳輸方法及裝置,提高了所傳輸數(shù)據(jù)的安全性與可靠性。

為解決上述技術(shù)問題,本發(fā)明提供一種數(shù)據(jù)加密傳輸方法,應(yīng)用于基于ssl協(xié)議的通信過程,包括:

服務(wù)端在進(jìn)行ssl協(xié)議的初始化設(shè)置并加載國密算法庫后,建立基于國密算法的ssl的服務(wù),并在國密算法庫中選擇需要使用的加密算法;

客戶端加載國密算法庫,并與服務(wù)端建立tcp連接;

客戶端建立與服務(wù)端的ssl會(huì)話,并向服務(wù)端發(fā)起連接請(qǐng)求以建立與服務(wù)端之間的ssl鏈路連接;

服務(wù)端通過加密算法將待傳輸數(shù)據(jù)進(jìn)行加密以得到密文,并將密文發(fā)送至客戶端;

客戶端通過國密算法庫中的解密算法對(duì)密文進(jìn)行解密以得到待傳輸數(shù)據(jù)。

優(yōu)選的,在客戶端加載國密算法庫,并與服務(wù)端建立tcp連接后,該方法進(jìn)一步包括:服務(wù)端讀取客戶端的證書和密鑰并驗(yàn)證證書的合法性。

優(yōu)選的,在以建立與服務(wù)端之間的ssl鏈路連接后,該方法進(jìn)一步包括:客戶端進(jìn)行ssl認(rèn)證并輸出ssl鏈路連接的信息。

優(yōu)選的,加密算法具體為加密套件。

優(yōu)選的,該方法進(jìn)一步包括:客戶端通過jni技術(shù),為java語言工程提供支持國密算法的ssl通信的接口。

優(yōu)選的,國密算法庫具體為gmssl國密算法庫。

優(yōu)選的,客戶端加載國密算法庫具體為:

客戶端通過gmssl程序加載gmssl國密算法庫。

此外,本發(fā)明還提供一種數(shù)據(jù)加密傳輸裝置,應(yīng)用于基于ssl協(xié)議的通信過程,包括:

服務(wù)端,用于在進(jìn)行ssl協(xié)議的初始化設(shè)置并加載國密算法庫后,建立基于國密算法的ssl的服務(wù),并在國密算法庫中選擇需要使用的加密算法;以及通過加密算法將待傳輸數(shù)據(jù)進(jìn)行加密以得到密文,并將密文發(fā)送至客戶端;

客戶端,用于加載國密算法庫,并與服務(wù)端建立tcp連接;以及建立與服務(wù)端的ssl會(huì)話,并向服務(wù)端發(fā)起連接請(qǐng)求,以建立與服務(wù)端之間的ssl鏈路連接;并且通過國密算法庫中的解密算法對(duì)密文進(jìn)行解密以得到待傳輸數(shù)據(jù)。

優(yōu)選的,服務(wù)端還用于讀取客戶端的證書和密鑰并驗(yàn)證證書的合法性。

本發(fā)明所提供的一種數(shù)據(jù)加密傳輸方法,采用國密算法以對(duì)數(shù)據(jù)進(jìn)行加密并通過ssl通信協(xié)議進(jìn)行傳輸。由于科研領(lǐng)域?qū)芩惴ǖ难邪l(fā)水平成熟并且成果豐碩,所以國密算法存在的漏洞較少,進(jìn)而可用性相對(duì)較高。因此,使用國密算法對(duì)數(shù)據(jù)進(jìn)行加密而成的密文很難被攻擊和破譯。另一方面,通過ssl協(xié)議對(duì)數(shù)據(jù)進(jìn)行傳輸,能夠確保數(shù)據(jù)被正確傳輸?shù)侥康牡刂凡⑶曳乐箓鬏斨型颈桓`取以及能夠保證數(shù)據(jù)的完整性。由此可見,采用ssl協(xié)議傳輸由國密算法進(jìn)行加密的數(shù)據(jù),能夠進(jìn)一步提高所傳輸數(shù)據(jù)的安全性與可靠性。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例,下面將對(duì)實(shí)施例中所需要使用的附圖做簡(jiǎn)單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本實(shí)施例提供的一種數(shù)據(jù)加密傳輸方法的流程圖;

圖2為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)加密傳輸方法的流程圖;

圖3為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)加密傳輸方法的流程圖;

圖4為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)加密傳輸裝置結(jié)構(gòu)圖。

具體實(shí)施方式

下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下,所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)范圍。

本發(fā)明的核心是提供一種數(shù)據(jù)加密傳輸方法,該方法進(jìn)一步提高了數(shù)據(jù)傳輸?shù)陌踩耘c可靠性。

為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。

實(shí)施例一

圖1為本實(shí)施例提供的一種數(shù)據(jù)加密傳輸方法的流程圖。請(qǐng)參考圖1,數(shù)據(jù)加密傳輸方法,應(yīng)用于基于ssl協(xié)議的通信過程,具體步驟包括:

步驟s10:服務(wù)端在進(jìn)行ssl協(xié)議的初始化設(shè)置并加載國密算法庫后,建立基于國密算法的ssl的服務(wù),并在國密算法庫中選擇需要使用的加密算法。

本步驟中,服務(wù)端進(jìn)行ssl協(xié)議初始化的目的在于,配置好ssl協(xié)議的各項(xiàng)參數(shù),保證ssl協(xié)議能夠在服務(wù)端上正常的運(yùn)行,為后續(xù)ssl協(xié)議傳輸做好準(zhǔn)備。加載國密算法庫是為了給ssl協(xié)議充足的加密算法支持,使ssl協(xié)議能夠根據(jù)實(shí)際的情況而具體選擇所需要使用的國密加密算法以進(jìn)行數(shù)據(jù)的加密。服務(wù)端在建立ssl協(xié)議的服務(wù)后,在國密算法庫中選擇所使用的算法,為后續(xù)的數(shù)據(jù)加密與傳輸做準(zhǔn)備。

作為一種優(yōu)選的實(shí)施方式,國密算法庫具體為gmssl國密算法庫。

由于gmssl國密算法庫是科研領(lǐng)域?qū)τ趪芩惴ㄟM(jìn)行了較高投入與研究力度所得的成果,所以存在的漏洞更少,更加安全。

則對(duì)應(yīng)的,作為一種優(yōu)選的實(shí)施方式,步驟s11中,客戶端加載國密算法庫具體為:

客戶端通過gmssl程序加載gmssl國密算法庫。

gmssl作為集成了國密算法庫以及相應(yīng)命令行工具的開源程序,在不同系統(tǒng)平臺(tái)均可以實(shí)現(xiàn)客戶端與服務(wù)端進(jìn)行對(duì)傳輸數(shù)據(jù)的加密與傳輸?shù)纫幌盗惺乱?。雖然現(xiàn)在的gmssl程序普遍是在linux系統(tǒng)平臺(tái)運(yùn)行的,但是可以通過vs2008等命令行工具對(duì)gmssl程序的源碼進(jìn)行編譯,進(jìn)而能夠使gmssl程序運(yùn)行在windows或其它操作系統(tǒng)平臺(tái),從而實(shí)現(xiàn)跨平臺(tái)使用gmssl程序。

作為一種優(yōu)選的實(shí)施方式,加密算法具體為加密套件。

加密套件為多種加密算法的組合。為了保障通過加密算法進(jìn)行加密后的傳輸數(shù)據(jù)的安全性更高,可以采用多種加密算法組合的加密方式對(duì)傳輸數(shù)據(jù)進(jìn)行加密,這樣獲得的密文需要通過與多種加密算法分別對(duì)應(yīng)的解密算法進(jìn)行解密,增加了解密時(shí)的復(fù)雜程度,因此可以進(jìn)一步提高對(duì)傳輸數(shù)據(jù)進(jìn)行加密的安全性。

步驟s11:客戶端加載國密算法庫,并與服務(wù)端建立tcp連接。

由于國密算法庫中提供加密算法與對(duì)應(yīng)的解密算法,所以客戶端加載與服務(wù)端所加載的國密算法庫相近或相同的國密算法庫,目的在于,能夠在接收到服務(wù)端發(fā)來的國密算法加密的數(shù)據(jù)后,從自身的國密算法庫中找到解析該數(shù)據(jù)的對(duì)應(yīng)算法,進(jìn)而實(shí)現(xiàn)解析并獲取到原始數(shù)據(jù)的目的。另一方面,由于tcp連接的特殊通信機(jī)制,能夠保證數(shù)據(jù)傳輸?shù)目煽???梢岳斫獾氖?,客戶端與服務(wù)端建立tcp連接,是保證數(shù)據(jù)傳輸安全的基礎(chǔ)。

步驟s12:客戶端建立與服務(wù)端的ssl會(huì)話,并向服務(wù)端發(fā)起連接請(qǐng)求以建立與服務(wù)端之間的ssl鏈路連接。

在上一步驟中所建立tcp連接的基礎(chǔ)上,客戶端建立與服務(wù)端的ssl會(huì)話并向服務(wù)端發(fā)起連接請(qǐng)求,目的是與服務(wù)端開啟的ssl服務(wù)連接并建立ssl鏈路連接??梢岳斫獾氖?,客戶端與服務(wù)端之間建立好ssl鏈路連接是兩者進(jìn)行ssl協(xié)議通信的前提。

步驟s13:服務(wù)端通過加密算法將待傳輸數(shù)據(jù)進(jìn)行加密以得到密文,并將密文發(fā)送至客戶端。

本步驟中,服務(wù)端通過之前步驟中所選好的加密算法對(duì)傳輸數(shù)據(jù)進(jìn)行加密,并將加密所得的密文通過建立好的ssl鏈路發(fā)送至客戶端。

步驟s14:客戶端通過國密算法庫中的解密算法對(duì)密文進(jìn)行解密以得到待傳輸數(shù)據(jù)。

本步驟中,客戶端接收到服務(wù)端發(fā)來的密文后,通過國密算法庫中與加密數(shù)據(jù)所用算法對(duì)應(yīng)的解密算法,對(duì)密文進(jìn)行解密并得到傳輸數(shù)據(jù)。

本實(shí)施例提供的數(shù)據(jù)加密傳輸方法,采用國密算法以對(duì)數(shù)據(jù)進(jìn)行加密并通過ssl通信協(xié)議進(jìn)行傳輸。由于科研領(lǐng)域?qū)芩惴ǖ难邪l(fā)水平成熟并且成果豐碩,所以國密算法存在的漏洞較少,進(jìn)而可用性相對(duì)較高。因此,使用國密算法對(duì)數(shù)據(jù)進(jìn)行加密而成的密文很難被攻擊和破譯。另一方面,通過ssl協(xié)議對(duì)數(shù)據(jù)進(jìn)行傳輸,能夠確保數(shù)據(jù)被正確傳輸?shù)侥康牡刂凡⑶曳乐箓鬏斨型颈桓`取以及能夠保證數(shù)據(jù)的完整性。由此可見,采用ssl協(xié)議傳輸由國密算法進(jìn)行加密的數(shù)據(jù),能夠進(jìn)一步提高所傳輸數(shù)據(jù)的安全性與可靠性。

實(shí)施例二

圖2為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)加密傳輸方法的流程圖。圖2中步驟s10-s14與圖1相同,在此不再贅述。

如圖2所示,作為一種優(yōu)選的實(shí)施方式,在客戶端加載國密算法庫,并與服務(wù)端建立tcp連接后,即步驟s11后,還包括:

步驟s20:服務(wù)端讀取客戶端的證書和密鑰并驗(yàn)證證書的合法性。

本步驟中,服務(wù)端通過客戶端所提供的證書和密鑰對(duì)客戶端的身份進(jìn)行判斷客服端是否為可與自身進(jìn)行通信的合法用戶??梢岳斫獾氖?,在數(shù)據(jù)被服務(wù)端傳輸至客戶端之前進(jìn)行對(duì)客戶端身份合法性的驗(yàn)證,能夠進(jìn)一步保障通信傳輸數(shù)據(jù)的安全。

如圖2所示,作為一種優(yōu)選的實(shí)施方式,在客戶端建立與服務(wù)端的ssl會(huì)話,并向服務(wù)端發(fā)起連接請(qǐng)求以建立與服務(wù)端之間的ssl鏈路連接后,即步驟s12后,還包括:

步驟s21:客戶端進(jìn)行ssl認(rèn)證并輸出ssl鏈路連接的信息。

本步驟中,客戶端對(duì)自身與服務(wù)端所建立的鏈路連接進(jìn)行ssl認(rèn)證,目的在于客戶端可以具體了解服務(wù)器的身份信息,并且可以進(jìn)一步對(duì)于服務(wù)器的合法性做出判斷,進(jìn)而為更加安全的數(shù)據(jù)傳輸做好準(zhǔn)備。輸出ssl鏈路連接信息可被記錄下載,以便呈現(xiàn)給用戶查看或是在ssl鏈路連接發(fā)生錯(cuò)誤時(shí)提供詳盡的信息以進(jìn)行錯(cuò)誤排查等,在此不作具體的限定。

實(shí)施例三

圖3為本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)加密傳輸方法的流程圖。圖3中步驟s10-s14與圖1相同,在此不再贅述。

如圖3所示,在上述實(shí)施例的基礎(chǔ)上,還包括:

步驟s30:客戶端通過jni技術(shù),為java語言工程提供支持國密算法的ssl通信的接口。

本步驟的目的在于,為java語言工程提供可以使用的ssl通信接口,在開發(fā)者進(jìn)行編寫java工程時(shí)可以無障礙的調(diào)用ssl通信接口,以實(shí)現(xiàn)在java程序中進(jìn)行ssl通信協(xié)議的傳輸。

實(shí)施例四

在上文中對(duì)于數(shù)據(jù)加密傳輸方法的實(shí)施例進(jìn)行了詳細(xì)的描述,本發(fā)明還提供一種與該方法對(duì)應(yīng)的數(shù)據(jù)加密傳輸裝置,由于裝置部分的實(shí)施例與方法部分的實(shí)施例相互對(duì)應(yīng),因此裝置部分的實(shí)施例請(qǐng)參見方法部分的實(shí)施例的描述,這里暫不贅述。圖4為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)加密傳輸裝置結(jié)構(gòu)圖。本發(fā)明實(shí)施例提供的一種數(shù)據(jù)加密傳輸裝置,應(yīng)用于基于ssl協(xié)議的通信過程,具體包括:

服務(wù)端10,用于在進(jìn)行ssl協(xié)議的初始化設(shè)置并加載國密算法庫后,建立基于國密算法的ssl的服務(wù),并在國密算法庫中選擇需要使用的加密算法;以及通過加密算法將待傳輸數(shù)據(jù)進(jìn)行加密以得到密文,并將密文發(fā)送至客戶端11;

客戶端11,用于加載國密算法庫,并與服務(wù)端10建立tcp連接;以及建立與服務(wù)端10的ssl會(huì)話,并向服務(wù)端10發(fā)起連接請(qǐng)求,以建立與服務(wù)端10之間的ssl鏈路連接;并且通過國密算法庫中的解密算法對(duì)密文進(jìn)行解密以得到待傳輸數(shù)據(jù)。

本發(fā)明所提供的一種數(shù)據(jù)加密傳輸裝置,應(yīng)用于基于ssl協(xié)議的通信過程,采用國密算法以對(duì)數(shù)據(jù)進(jìn)行加密并通過ssl通信協(xié)議進(jìn)行傳輸。由于科研領(lǐng)域?qū)芩惴ǖ难邪l(fā)水平成熟并且成果豐碩,所以國密算法存在的漏洞較少,進(jìn)而可用性相對(duì)較高。因此,使用國密算法對(duì)數(shù)據(jù)進(jìn)行加密而成的密文很難被攻擊和破譯。另一方面,通過ssl協(xié)議對(duì)數(shù)據(jù)進(jìn)行傳輸,能夠確保數(shù)據(jù)被正確傳輸?shù)侥康牡刂凡⑶曳乐箓鬏斨型颈桓`取以及能夠保證數(shù)據(jù)的完整性。由此可見,采用ssl協(xié)議傳輸由國密算法進(jìn)行加密的數(shù)據(jù),能夠進(jìn)一步提高所傳輸數(shù)據(jù)的安全性與可靠性。

在上述實(shí)施例的基礎(chǔ)上,服務(wù)端10還用于讀取客戶端11的證書和密鑰并驗(yàn)證證書的合法性。

服務(wù)端10通過客戶端11所提供的證書和密鑰對(duì)客戶端11的身份進(jìn)行判斷客服端是否為可與自身進(jìn)行通信的合法用戶??梢岳斫獾氖?,在數(shù)據(jù)被服務(wù)端10傳輸至客戶端11之前進(jìn)行對(duì)客戶端11身份合法性的驗(yàn)證,能夠進(jìn)一步保障通信傳輸數(shù)據(jù)的安全。

以上對(duì)本發(fā)明所提供的一種數(shù)據(jù)加密傳輸方法及裝置進(jìn)行了詳細(xì)介紹。說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。對(duì)于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法部分說明即可。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對(duì)本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。

還需要說明的是,在本說明書中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
彰化县| 临沭县| 南溪县| 平果县| 吴忠市| 平江县| 库车县| 无为县| 无极县| 西安市| 阳曲县| 淮滨县| 稷山县| 孝昌县| 罗城| 佛坪县| 克什克腾旗| 紫云| 原阳县| 介休市| 阳泉市| 福安市| 同江市| 神木县| 磐安县| 长乐市| 深州市| 嘉祥县| 徐汇区| 黄梅县| 中宁县| 四川省| 乳山市| 宜昌市| 乌拉特前旗| 东台市| 罗田县| 芜湖市| 五家渠市| 银川市| 枣庄市|