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

數(shù)據(jù)加密、解密方法、數(shù)據(jù)加密、解密裝置及通信系統(tǒng)與流程

文檔序號:11254026閱讀:592來源:國知局
數(shù)據(jù)加密、解密方法、數(shù)據(jù)加密、解密裝置及通信系統(tǒng)與流程

本發(fā)明屬于終端信息安全技術領域,具體涉及數(shù)據(jù)加密、解密方法、數(shù)據(jù)加密、解密裝置及通信系統(tǒng)。



背景技術:

隨著網絡化、信息化的高速發(fā)展,信息資源的安全訪問問題日益突出。用戶對終端信息的安全認知及安全需求越來越高,為確保用戶終端信息安全,對終端信息的加解密處理成為本領域的重點關注方向。

目前對終端信息的加密處理,各平臺都有自己的一套實現(xiàn)方案,如android、ios以及pc等。使得上層應用在調用底層算法時,各平臺需要單獨實現(xiàn),不僅增加了工作量,而且跨平臺性差,甚至只能實現(xiàn)平臺內的加密通信。因此,急需一種能夠進行跨平臺操作的加解密處理技術來解決現(xiàn)有技術存在的缺陷。



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

鑒于此,本發(fā)明的目的在于提供一種數(shù)據(jù)加密、解密方法、數(shù)據(jù)加密、解密裝置及通信系統(tǒng),以有效地改善上述問題。

本發(fā)明的實施例是這樣實現(xiàn)的:

一方面,本發(fā)明實施例提供了一種數(shù)據(jù)加密方法,應用于通信系統(tǒng)的發(fā)送終端,所述通信系統(tǒng)還包括:接收終端。所述數(shù)據(jù)加密方法包括:獲取所述接收終端的標識信息,及預先存儲的公鑰;根據(jù)所述發(fā)送終端的操作系統(tǒng),通過預設的加密接口獲取與所述發(fā)送終端的操作系統(tǒng)相對應的加密算法;根據(jù)所述公鑰、所述標識信息和所獲取的加密算法對待加密數(shù)據(jù)進行加密;將加密后的數(shù)據(jù)發(fā)送至所述接收終端。

第二方面,本發(fā)明實施例還提供了一種數(shù)據(jù)解密方法,應用于通信系統(tǒng)的接收終端,所述通信系統(tǒng)還包括:發(fā)送終端。所述數(shù)據(jù)解密方法包括:接收并識別由所述發(fā)送終端發(fā)送的加密信息;當識別出所接收信息為加密信息時,獲取預先存儲的密鑰,所述密鑰與上所述的數(shù)據(jù)加密方法中的公鑰相對應;根據(jù)所述接收終端的操作系統(tǒng),通過預設的加密接口獲取與所述接收終端的操作系統(tǒng)相對應的解密算法;根據(jù)所述密鑰和所獲取的解密算法對所述加密信息進行解密,得到解密信息。

第三方面,本發(fā)明實施例還提供了一種數(shù)據(jù)加密裝置,應用于通信系統(tǒng),所述通信系統(tǒng)還包括:接收終端。所述發(fā)送終端包括:第一獲取模塊,用于獲取所述接收終端的標識信息,及預先存儲的公鑰。第二獲取模塊,用于根據(jù)所述發(fā)送終端的操作系統(tǒng),通過預設的加密接口獲取與所述發(fā)送終端的操作系統(tǒng)相對應的加密算法。數(shù)據(jù)加密模塊,用于根據(jù)所述公鑰、所述標識信息和所獲取的加密算法對待加密數(shù)據(jù)進行加密。發(fā)送模塊,用于將加密后的數(shù)據(jù)發(fā)送至所述接收終端。

第四方面,本發(fā)明實施例還提供了一種數(shù)據(jù)解密裝置,應用于通信系統(tǒng)的接收終端,所述通信系統(tǒng)還包括:發(fā)送終端。所述接收終端包括:接收和識別模塊,用于接收并識別由所述發(fā)送終端發(fā)送的加密信息。第三獲取模塊,用于當識別出所接收信息為加密信息時,獲取預先存儲的密鑰,所述密鑰與上述的數(shù)據(jù)加密方法中的公鑰相對應。第四獲取模塊,用于根據(jù)所述接收終端的操作系統(tǒng),通過預設的加密接口獲取與所述接收終端的操作系統(tǒng)相對應的解密算法。數(shù)據(jù)解密模塊,根據(jù)所述密鑰和所獲取的解密算法對所述加密信息進行解密,得到解密信息。

第五方面,本發(fā)明實施例還提供了一種通信系統(tǒng),包括:上述的發(fā)送終端和上述的接收終端,所述發(fā)送終端和所述接收終端通過服務器耦合。

本發(fā)明實施例提供的數(shù)據(jù)加密、解密方法、數(shù)據(jù)加密、解密裝置及通信系統(tǒng),與現(xiàn)有技術相比,由于各平臺采用了統(tǒng)一的加密接口,使得上層應用在調用底層算法時,只需采用一套代碼,便可多處使用,簡化了工作量,從而實現(xiàn)了終端的跨平臺端到端加解密的目的。

本發(fā)明的其他特征和優(yōu)點將在隨后的說明書闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明實施例而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明書、權利要求書以及附圖中所特別指出的結構來實現(xiàn)和獲得。

附圖說明

為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。通過附圖所示,本發(fā)明的上述及其它目的、特征和優(yōu)勢將更加清晰。在全部附圖中相同的附圖標記指示相同的部分。并未刻意按實際尺寸等比例縮放繪制附圖,重點在于示出本發(fā)明的主旨。

圖1示出了本發(fā)明實施例所提供的通信系統(tǒng)中的服務器與本地終端的交互圖。

圖2示出了本發(fā)明實施例提供的一種電子設備的結構框圖。

圖3示出了本發(fā)明實施例提供的一種數(shù)據(jù)加密方法的方法流程圖。

圖4示出了本發(fā)明實施例提供的一種數(shù)據(jù)解密方法的方法流程圖。

圖5示出了本發(fā)明實施例提供的一種數(shù)據(jù)加解密裝置的功能模塊框圖。

圖6示出了本發(fā)明實施例提供的圖5中的數(shù)據(jù)加密裝置的功能模塊框圖。

圖7示出了本發(fā)明實施例提供的圖5中的數(shù)據(jù)解密裝置的功能模塊框圖。

具體實施方式

為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。通常在此處附圖中描述和示出的本發(fā)明實施例的組件可以以各種不同的配置來布置和設計。

因此,以下對在附圖中提供的本發(fā)明的實施例的詳細描述并非旨在限制要求保護的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

應注意到:相似的標號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨后的附圖中不需要對其進行進一步定義和解釋。

在本發(fā)明的描述中,需要說明的是,術語“第一”、“第二”、“第三”等僅用于區(qū)分描述,而不能理解為指示或暗示相對重要性。

如圖1所示,是本發(fā)明實施例提供的數(shù)據(jù)加密、解密方法所應用的通信系統(tǒng)100中的服務器101與發(fā)送終端102、接收終端103等多個本地終端進行交互的示意圖。所述服務器101通過網絡與一個或多個的發(fā)送終端102、接收終端103等進行通信連接,以進行數(shù)據(jù)通信或交互。所述服務器101可以是網絡服務器、數(shù)據(jù)庫服務器等,也可以是網絡服務器、數(shù)據(jù)庫服務器等的集成式服務器系統(tǒng)。所述發(fā)送終端102、接收終端103等各個終端設備可以是個人電腦(personalcomputer,pc)、平板電腦、智能手機、個人數(shù)字助理(personaldigitalassistant,pda)等。

如圖2所示,圖2示出了本發(fā)明實施例提供的一種電子設備200的結構框圖。所述電子設備200包括:數(shù)據(jù)加解密裝置210、存儲器220、存儲控制器230和處理器240。

所述存儲器220、存儲控制器230、處理器240各元件相互之間直接或間接地電性連接,以實現(xiàn)數(shù)據(jù)的傳輸或交互。例如,這些元件相互之間可通過一條或多條通訊總線或信號線實現(xiàn)電性連接。所述數(shù)據(jù)加解密裝置210包括至少一個可以軟件或固件(firmware)的形式存儲于所述存儲器220中或固化在所述電子設備200的操作系統(tǒng)(operatingsystem,os)中的軟件功能模塊。所述處理器240用于執(zhí)行存儲器220中存儲的可執(zhí)行模塊,例如所述數(shù)據(jù)加解密裝置210包括的軟件功能模塊或計算機程序。

其中,存儲器220可以是,但不限于,隨機存取存儲器(randomaccessmemory,ram),只讀存儲器(readonlymemory,rom),可編程只讀存儲器(programmableread-onlymemory,prom),可擦除只讀存儲器(erasableprogrammableread-onlymemory,eprom),電可擦除只讀存儲器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存儲器220用于存儲程序,所述處理器240在接收到執(zhí)行指令后,執(zhí)行所述程序,后述本發(fā)明實施例任一實施例揭示的流程定義的電子設備200所執(zhí)行的方法可以應用于處理器240中,或者由處理器240實現(xiàn)。

處理器240可能是一種集成電路芯片,具有信號的處理能力。上述的處理器可以是通用處理器,包括中央處理器(centralprocessingunit,cpu)、網絡處理器(networkprocessor,np)等;還可以是數(shù)字信號處理器(dsp)、專用集成電路(asic)、現(xiàn)成可編程門陣列(fpga)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件??梢詫崿F(xiàn)或者執(zhí)行本發(fā)明實施例中的公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。

本發(fā)明實施例提供了一種應用于圖1中的通信系統(tǒng)100中的數(shù)據(jù)加密方法,如圖3所示。該方法是基于pki體系的基礎技術及jce提供的加密相關接口實現(xiàn)的。pki(publickeyinfrastructure)即“公鑰基礎設施”,是一種遵循既定標準的密鑰管理平臺,它能夠為所有網絡應用提供加密和數(shù)字簽名等密碼服務及所必需的密鑰和證書管理體系,依據(jù)pki體系可以建立安全服務的基礎設施。

其中,圖3示出了本發(fā)明實施例提供的一種應用于圖1中的通信系統(tǒng)中的數(shù)據(jù)加密方法的流程圖,具體包括:步驟s301-s304。

步驟s301:獲取所述接收終端的標識信息,及預先存儲的公鑰。

發(fā)送終端在發(fā)送數(shù)據(jù)時,需要獲取目標接收終端的標識信息,才能將待發(fā)送的數(shù)據(jù)發(fā)送給對應的接收終端,若待發(fā)送數(shù)據(jù)需要加密發(fā)送時,還需要獲取預先存儲的公鑰才能將數(shù)據(jù)進行加密。其中,優(yōu)選地,該預先存儲的公鑰是存儲于服務器端的,以便多個終端共用。

步驟s302:根據(jù)所述發(fā)送終端的操作系統(tǒng),通過預設的加密接口獲取與所述發(fā)送終端的操作系統(tǒng)相對應的加密算法。

為了避免現(xiàn)有加密技術中,各平臺采用不同的加密調用接口,這樣不同平臺的上層應用在調用底層算法時,需要不同的程序代碼,不僅增加了其工作量,還增加了使用、維護等成本,使得平臺間的跨越性差。本實施例中,通過預設的加密接口實現(xiàn)不同平臺的統(tǒng)一調用,例如,安卓系統(tǒng)在調用底層算法時,調用加密接口a,ios系統(tǒng)在調用底層算法時,也調用加密接口a,這樣就使得一套代碼能夠多處使用,降低了工作量,節(jié)約了使用、維護成本,使得平臺間的跨越性好。其中,預設加密接口是根據(jù)實際使用需要而預先設計的調用接口,通過該加密接口可以獲取與所述發(fā)送終端的操作系統(tǒng)相對應的加密算法。其中,當發(fā)送終端的操作系統(tǒng)為pc或android操作系統(tǒng)時,通過預設的加密接口獲取到的所述加密算法為采用java語言封裝的加密算法。當發(fā)送終端的操作系統(tǒng)為ios操作系統(tǒng)時,通過預設的加密接口獲取到的所述加密算法為采用openssl封裝的加密算法。

步驟s303:根據(jù)所述公鑰、所述標識信息和所獲取的加密算法對待加密數(shù)據(jù)進行加密。

獲取到公鑰、接收終端的標識信息以及相應的加密算法后,根據(jù)所述公鑰、所述標識信息和所獲取的加密算法對待加密數(shù)據(jù)進行加密,得到加密后的數(shù)據(jù)。其中,加密時,可以采用對稱加密算法或非對稱加密算法。

步驟s304:將加密后的數(shù)據(jù)發(fā)送至所述接收終端。

得到加密后的數(shù)據(jù)后,將其發(fā)送至接收終端。其中,包括,將加密后的數(shù)據(jù)保存到服務器數(shù)據(jù)庫,通過所述服務器將加密后的數(shù)據(jù)發(fā)送至所述接收終端。發(fā)送時,根據(jù)獲取到的標識信息,將服務器將加密后的數(shù)據(jù)發(fā)送至與該標識信息相對應的接收終端。

本發(fā)明實施例提供了一種應用于圖1中的通信系統(tǒng)100中的數(shù)據(jù)解密方法,如圖4所示。其中,圖4示出了本發(fā)明實施例提供的一種數(shù)據(jù)解密方法的流程圖,具體包括:步驟s401-s404。

步驟s401:接收并識別由所述發(fā)送終端發(fā)送的加密信息。

接收終端獲取到由發(fā)送終端經服務器發(fā)送的數(shù)據(jù)信息后,對所接收到的數(shù)據(jù)信息進行判斷,判斷所接收到的數(shù)據(jù)信息是否為加密信息,若所接收到的數(shù)據(jù)信息為加密信息時,則執(zhí)行步驟s402。

其中,作為一種優(yōu)選地實施方式,可以根據(jù)對所接收到的數(shù)據(jù)信息是否具備加密頭信息來判斷所接收到的數(shù)據(jù)信息是否為加密信息。

步驟s402:當識別出所接收信息為加密信息時,獲取預先存儲的密鑰,所述密鑰與上述的數(shù)據(jù)加密方法中的公鑰相對應。

當識別出所接收信息為加密信息時,獲取預先存儲的密鑰,以便于對該加密信息進行解密操作。其中,該密鑰與上述的數(shù)據(jù)加密方法中的公鑰相對應。即若該加密信息是采用對稱加密算法進行加密得到的,則該密鑰與公鑰相同,例如,公鑰為123456,則密鑰也為123456。若該加密信息是采用非對稱加密算法進行加密得到的,則該密鑰與公鑰相對應的私鑰,例如,公鑰為123456,則該密鑰為與之相對應的私鑰,例如,為654321。其中公鑰和私鑰可以根據(jù)用戶的使用規(guī)則自己定義。應當理解的是,上述中的所列舉的公鑰以及私鑰僅僅是為了便于理解而舉的例子而已,并不能理解成是對本發(fā)明的限制。

步驟s403:根據(jù)所述接收終端的操作系統(tǒng),通過預設的加密接口獲取與所述接收終端的操作系統(tǒng)相對應的解密算法。

為了避免現(xiàn)有解密技術中,各平臺采用不同的解密調用接口,這樣不同平臺的上層應用在調用底層算法時,需要不同的程序代碼,不僅增加了其工作量,還增加了使用、維護等成本,使得平臺間的跨越性差。本實施例中,通過預設的解密接口實現(xiàn)不同平臺的統(tǒng)一調用,例如,安卓系統(tǒng)在調用底層算法時,調用解密接口a,ios系統(tǒng)在調用底層算法時,也調用解密接口a,這樣就使得一套代碼能夠多處使用,降低了工作量,節(jié)約了使用、維護成本,使得平臺間的跨越性好。其中,預設解密接口是根據(jù)實際使用需要而預先設計的調用接口,通過該解密接口可以獲取與所述接收終端的操作系統(tǒng)相對應的解密算法。其中,當接收終端的操作系統(tǒng)為pc或android操作系統(tǒng)時,通過預設的解密接口獲取到的所述解密算法為采用java語言封裝的解密算法。當接收終端的操作系統(tǒng)為ios操作系統(tǒng)時,通過預設的解密接口獲取到的所述解密算法為采用openssl封裝的解密算法。

步驟s404:根據(jù)所述密鑰和所獲取的解密算法對所述加密信息進行解密,得到解密信息。

獲取到密鑰以及相應的解密算法后,根據(jù)所述密鑰和所獲取的解密算法對所述加密信息進行解密,得到解密信息。其中,解密時,可以采用對稱解密算法或非對稱解密算法。

本發(fā)明實施例還提供了一種應用于圖1所示的通信系統(tǒng)100中的數(shù)據(jù)加解密裝置210,如圖5所示。該數(shù)據(jù)加解密裝置210包括:數(shù)據(jù)加密裝置211和數(shù)據(jù)解密裝置212。

其中,數(shù)據(jù)加密裝置211用于對數(shù)據(jù)進行加密,得到加密信息。優(yōu)選地,如圖6所示,該數(shù)據(jù)加密裝置211包括:第一獲取模塊2111、第二獲取模塊2112、數(shù)據(jù)加密模塊2113和發(fā)送模塊2114

第一獲取模塊2111,用于獲取所述接收終端的標識信息,及預先存儲的公鑰。

第二獲取模塊2112,用于根據(jù)所述發(fā)送終端的操作系統(tǒng),通過預設的加密接口獲取與所述發(fā)送終端的操作系統(tǒng)相對應的加密算法。

數(shù)據(jù)加密模塊2113,用于根據(jù)所述公鑰、所述標識信息和所獲取的加密算法對待加密數(shù)據(jù)進行加密。

發(fā)送模塊2114,用于將加密后的數(shù)據(jù)發(fā)送至所述接收終端。

其中,數(shù)據(jù)解密裝置212用于對加密信息進行解密,得到解密信息。優(yōu)選地,如圖7所示,該數(shù)據(jù)解密裝置212包括:接收和識別模塊2121、第三獲取模塊2122、第四獲取模塊2123和數(shù)據(jù)解密模塊2124。

接收和識別模塊2121,用于接收并識別由所述發(fā)送終端發(fā)送的加密信息。

第三獲取模塊2122,用于當識別出所接收信息為加密信息時,獲取預先存儲的密鑰,所述密鑰與上述的數(shù)據(jù)加密方法中的公鑰相對應。

第四獲取模塊2123,用于根據(jù)所述接收終端的操作系統(tǒng),通過預設的加密接口獲取與所述接收終端的操作系統(tǒng)相對應的解密算法。

數(shù)據(jù)解密模塊2124,根據(jù)所述密鑰和所獲取的解密算法對所述加密信息進行解密,得到解密信息。

需要說明的是,本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。

本發(fā)明實施例所提供的數(shù)據(jù)加解密裝置210,其實現(xiàn)原理及產生的技術效果和前述方法實施例相同,為簡要描述,裝置實施例部分未提及之處,可參考前述方法實施例中相應內容。

在本申請所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,也可以通過其它的方式實現(xiàn)。以上所描述的裝置實施例僅僅是示意性的,例如,附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的裝置、方法和計算機程序產品的可能實現(xiàn)的體系架構、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為替換的實現(xiàn)方式中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個連續(xù)的方框實際上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。

另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一起形成一個獨立的部分,也可以是各個模塊單獨存在,也可以兩個或兩個以上模塊集成形成一個獨立的部分。

所述功能如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現(xiàn)出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:u盤、移動硬盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質。需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。

以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。

當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
读书| 盐亭县| 台山市| 盈江县| 襄樊市| 仁化县| 济阳县| 乌兰县| 彰化县| 尼勒克县| 岳普湖县| 井陉县| 绍兴市| 启东市| 休宁县| 阿合奇县| 宝兴县| 阜宁县| 罗平县| 福泉市| 科尔| 招远市| 平山县| 新宾| 万全县| 南康市| 应城市| 富锦市| 漳州市| 玉山县| 堆龙德庆县| 常州市| 股票| 都江堰市| 雷州市| 如皋市| 陇西县| 且末县| 汉寿县| 广汉市| 新津县|