技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)安全領(lǐng)域,具體涉及一種數(shù)據(jù)加密、解密方法和裝置及數(shù)據(jù)加解密系統(tǒng)。
背景技術(shù):
流加密技術(shù)在實(shí)時(shí)保密通信中廣泛采用。目前的流加密技術(shù)主要采用RC4/3DES等對(duì)稱(chēng)加密算法,對(duì)稱(chēng)加密算法具有計(jì)算量小、加密速度快、加密效率高的優(yōu)點(diǎn),對(duì)稱(chēng)加密算法的安全性依賴(lài)于初始密鑰,但是由于初始密鑰設(shè)置可能會(huì)不恰當(dāng),對(duì)稱(chēng)加密算法的安全性受到挑戰(zhàn)。在這種情況下,當(dāng)前的流加密通信有采用非對(duì)稱(chēng)加密算法的趨勢(shì)。但非對(duì)稱(chēng)加密算法運(yùn)算量大,在流加密通信中很難處理大量數(shù)據(jù),目前采用選擇性處理部分?jǐn)?shù)據(jù),其它數(shù)據(jù)仍然是明文。這種方式能夠解決特定場(chǎng)合的問(wèn)題,但在大部分通信場(chǎng)合下,不是最佳選擇,而傳統(tǒng)的基于對(duì)稱(chēng)加密算法的流加密技術(shù)能夠?qū)崟r(shí)處理全部數(shù)據(jù),如果能夠解決由于初始密鑰設(shè)置不恰當(dāng)而引起的問(wèn)題,從而提高對(duì)稱(chēng)加密算法的安全性,仍然具備相當(dāng)強(qiáng)的應(yīng)用前景。
技術(shù)實(shí)現(xiàn)要素:
(一)要解決的技術(shù)問(wèn)題
本發(fā)明要解決的技術(shù)問(wèn)題是:解決由于初始密鑰設(shè)置不恰當(dāng)引起的問(wèn)題,從而提高基于對(duì)稱(chēng)加密算法的流加密技術(shù)的安全性。
(二)技術(shù)方案
為解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種數(shù)據(jù)加密方法,包括:
獲取初始密鑰;對(duì)所述初始密鑰進(jìn)行白噪聲化處理,得到加密密鑰;獲取待加密數(shù)據(jù);利用所述加密密鑰對(duì)所述待加密數(shù)據(jù)進(jìn)行加密。
優(yōu)選地,獲取初始密鑰包括:
獲取用戶(hù)輸入的初始密鑰;或者生成得到初始密鑰。
本發(fā)明還提供了一種數(shù)據(jù)解密方法,包括:
獲取初始密鑰;對(duì)所述初始密鑰進(jìn)行白噪聲化處理,得到解密密鑰;獲取待解密數(shù)據(jù);利用所述解密密鑰對(duì)所述待解密數(shù)據(jù)進(jìn)行解密。
優(yōu)選地,獲取初始密鑰包括:
獲取用戶(hù)輸入的初始密鑰;或者生成得到初始密鑰。
本發(fā)明還提供了一種數(shù)據(jù)加密裝置,包括:
第一獲取模塊,用于獲取初始密鑰;處理模塊,用于對(duì)所述初始密鑰進(jìn)行白噪聲化處理,得到加密密鑰;第二獲取模塊,獲取待加密數(shù)據(jù);加密模塊,用于利用所述加密密鑰對(duì)所述待加密數(shù)據(jù)進(jìn)行加密。
優(yōu)選地,所述第一獲取模塊包括:
獲取單元,用于獲取用戶(hù)輸入的初始密鑰;和/或生成單元,用于生成得到初始密鑰。
優(yōu)選地,所述數(shù)據(jù)加密裝置還包括:
加密開(kāi)關(guān),用于當(dāng)所述加密開(kāi)關(guān)獲取加密命令時(shí)將所述待加密數(shù)據(jù)輸入所述加密模塊進(jìn)行加密。
本發(fā)明還提供了一種數(shù)據(jù)解密裝置,包括:
第一獲取模塊,用于獲取初始密鑰;處理模塊,用于對(duì)所述初始密鑰進(jìn)行白噪聲化處理,得到解密密鑰;第二獲取模塊,用于獲取待解密數(shù)據(jù);解密模塊,用于利用所述解密密鑰對(duì)所述待解密數(shù)據(jù)進(jìn)行解密。
優(yōu)選地,所述第一獲取模塊包括:
獲取單元,用于獲取用戶(hù)輸入的初始密鑰;和/或生成單元,用于生成得到初始密鑰。
優(yōu)選地,所述數(shù)據(jù)解密裝置還包括:
數(shù)據(jù)分流模塊,用于判斷所述待解密數(shù)據(jù)是否為加密數(shù)據(jù),若是,則將所述待解密數(shù)據(jù)輸入所述解密模塊進(jìn)行解密。
本發(fā)明還提供了一種加解密系統(tǒng),包括:
第一獲取模塊,用于獲取第一初始密鑰;第一處理模塊,用于對(duì)所述第一初始密鑰進(jìn)行白噪聲化處理,得到加密密鑰;第二獲取模塊,獲取待加密數(shù)據(jù);加密模塊,用于利用所述加密密鑰對(duì)所述待加密數(shù)據(jù)進(jìn)行加密;第三獲取模塊,用于獲取第二初始密鑰;第二處理模塊,用于對(duì)所述第二初始密鑰進(jìn)行白噪聲化處理,得到解密密鑰;第四獲取模塊,用于獲取待解密數(shù)據(jù);解密模塊,用于利用所述解密密鑰對(duì)所述待解密數(shù)據(jù)進(jìn)行解密。
(三)有益效果
本發(fā)明通過(guò)初始密鑰白噪聲化,使得初始密鑰具有明顯的偽隨機(jī)特征,保障在流加密過(guò)程中安全性不受初始密鑰選擇的影響,從而克服初始密鑰設(shè)置不恰當(dāng)帶來(lái)的安全性問(wèn)題,提高了基于對(duì)稱(chēng)加密算法的流加密技術(shù)的安全性。
附圖說(shuō)明
圖1為本發(fā)明提供的一種數(shù)據(jù)加密方法的流程圖;
圖2為本發(fā)明提供的一種數(shù)據(jù)解密方法的流程圖;
圖3為本發(fā)明提供的一種數(shù)據(jù)加密裝置的結(jié)構(gòu)圖;
圖4為本發(fā)明提供的一種數(shù)據(jù)解密裝置的結(jié)構(gòu)圖;
圖5為本發(fā)明提供的一種數(shù)據(jù)加解密系統(tǒng)的結(jié)構(gòu)圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)描述。以下實(shí)施例用于說(shuō)明本發(fā)明,但不用來(lái)限制本發(fā)明的范圍。
本發(fā)明的核心思想是:通過(guò)對(duì)初始密鑰白噪聲化,使得初始密鑰具有明顯的偽隨機(jī)特征,從而克服初始密鑰設(shè)置不恰當(dāng)帶來(lái)的安全性問(wèn)題。
圖1為本發(fā)明提供的一種數(shù)據(jù)加密方法的流程圖,包括以下步驟:
步驟101:獲取初始密鑰。
本實(shí)施例中,可以獲取用戶(hù)輸入的初始密鑰,也可以生成得到初始密鑰。
步驟102:對(duì)該初始密鑰進(jìn)行白噪聲化處理,得到加密密鑰。
例如,可以利用LFSR(LinearFeedbackShiftRegisters,線(xiàn)性反饋移位寄存器)算法對(duì)該初始密鑰進(jìn)行白噪聲化處理,得到加密密鑰。
步驟103:獲取待加密數(shù)據(jù)。
步驟104:利用該加密密鑰對(duì)該待加密數(shù)據(jù)進(jìn)行加密。
例如,可以通過(guò)RC4算法,利用該加密密鑰對(duì)該待加密數(shù)據(jù)進(jìn)行加密。
本實(shí)施例提供的數(shù)據(jù)加密方法,通過(guò)初始密鑰白噪聲化,使得初始密鑰具有明顯的偽隨機(jī)特征,保障在流加密過(guò)程中安全性不受初始密鑰選擇的影響,從而克服初始密鑰設(shè)置不恰當(dāng)帶來(lái)的安全性問(wèn)題,提高了基于對(duì)稱(chēng)加密算法的流加密技術(shù)的安全性。
圖2為本發(fā)明提供的一種數(shù)據(jù)解密方法的流程圖,包括以下步驟:
步驟201:獲取初始密鑰。
本實(shí)施例中,可以獲取用戶(hù)輸入的初始密鑰,也可以生成得到初始密鑰。
步驟202:對(duì)該初始密鑰進(jìn)行白噪聲化處理,得到解密密鑰。
例如,可以利用LFSR(LinearFeedbackShiftRegisters,線(xiàn)性反饋移位寄存器)算法對(duì)該初始密鑰進(jìn)行白噪聲化處理,得到解密密鑰。
步驟203:獲取待解密數(shù)據(jù)。
步驟204:利用該解密密鑰對(duì)該待解密數(shù)據(jù)進(jìn)行解密。
例如,可以通過(guò)RC4算法,利用該解密密鑰對(duì)該待解密數(shù)據(jù)進(jìn)行解密。
本實(shí)施例提供的數(shù)據(jù)解密方法與上述實(shí)施例中的數(shù)據(jù)加密方法相對(duì)應(yīng),通過(guò)初始密鑰白噪聲化,使得初始密鑰具有明顯的偽隨機(jī)特征,保障在流加密過(guò)程中安全性不受初始密鑰選擇的影響,從而克服初始密鑰設(shè)置不恰當(dāng)帶來(lái)的安全性問(wèn)題,提高了基于對(duì)稱(chēng)加密算法的流加密技術(shù)的安全性。
圖3為本發(fā)明提供的一種數(shù)據(jù)加密裝置的結(jié)構(gòu)圖,包括:
第一獲取模塊301,用于獲取初始密鑰。
處理模塊302,用于對(duì)該初始密鑰進(jìn)行白噪聲化處理,得到加密密鑰。
第二獲取模塊303,獲取待加密數(shù)據(jù)。
加密模塊304,用于利用該加密密鑰對(duì)該待加密數(shù)據(jù)進(jìn)行加密。
優(yōu)選地,該第一獲取模塊301具體包括:
獲取單元,用于獲取用戶(hù)輸入的初始密鑰;
和/或生成單元,用于生成得到初始密鑰。
優(yōu)選地,該數(shù)據(jù)加密裝置還包括加密開(kāi)關(guān),用于當(dāng)該加密開(kāi)關(guān)獲取加密命令時(shí)將該待加密數(shù)據(jù)輸入該加密模塊進(jìn)行加密,即可以通過(guò)該加密開(kāi)關(guān)對(duì)是否加密進(jìn)行控制,當(dāng)該加密開(kāi)關(guān)獲取加密命令時(shí)將該待加密數(shù)據(jù)輸入該加密模塊進(jìn)行加密,當(dāng)該加密開(kāi)關(guān)未獲取加密命令或者獲取不加密命令時(shí)不對(duì)待加密數(shù)據(jù)進(jìn)行加密而直接進(jìn)行輸出。
圖4為本發(fā)明提供的一種數(shù)據(jù)解密裝置的結(jié)構(gòu)圖,包括:
第一獲取模塊401,用于獲取初始密鑰。
處理模塊402,用于對(duì)該初始密鑰進(jìn)行白噪聲化處理,得到解密密鑰。
第二獲取模塊403,用于獲取待解密數(shù)據(jù)。
解密模塊404,用于利用該解密密鑰對(duì)該待解密數(shù)據(jù)進(jìn)行解密。
優(yōu)選地,該第一獲取模塊包括:
獲取單元,用于獲取用戶(hù)輸入的初始密鑰;
和/或生成單元,用于生成得到初始密鑰。
優(yōu)選地,該數(shù)據(jù)解密裝置還包括數(shù)據(jù)分流模塊,用于判斷所述待解密數(shù)據(jù)是否為加密數(shù)據(jù),若是,則將所述待解密數(shù)據(jù)輸入所述解密模塊進(jìn)行解密,例如,可以通過(guò)判斷該待解密數(shù)據(jù)中是否包含加密標(biāo)識(shí)來(lái)判斷該待解密數(shù)據(jù)是否為加密數(shù)據(jù),若包含加密標(biāo)識(shí),則判斷該待解密數(shù)據(jù)為加密數(shù)據(jù),將該待解密數(shù)據(jù)輸入該解密模塊進(jìn)行解密,若不包含加密標(biāo)識(shí),則直接進(jìn)行輸出,即可以通過(guò)數(shù)據(jù)分流模塊對(duì)解密的流程進(jìn)行控制,從而實(shí)現(xiàn)同時(shí)支持加密/非加密數(shù)據(jù)接收。
本發(fā)明還提供的一種數(shù)據(jù)加解密系統(tǒng),包括:
第一獲取模塊,用于獲取第一初始密鑰。
第一處理模塊,用于對(duì)該第一初始密鑰進(jìn)行白噪聲化處理,得到加密密鑰。
第二獲取模塊,獲取待加密數(shù)據(jù)。
加密模塊,用于利用該加密密鑰對(duì)該待加密數(shù)據(jù)進(jìn)行加密。
第三獲取模塊,用于獲取第二初始密鑰。
第二處理模塊,用于對(duì)該第二初始密鑰進(jìn)行白噪聲化處理,得到解密密鑰。
第四獲取模塊,用于獲取待解密數(shù)據(jù)。
解密模塊,用于利用該解密密鑰對(duì)該待解密數(shù)據(jù)進(jìn)行解密。
參見(jiàn)圖5,本實(shí)施例還提供了一種數(shù)據(jù)加解密系統(tǒng),包括數(shù)據(jù)加密裝置和數(shù)據(jù)解密裝置,該數(shù)據(jù)加密裝置和數(shù)據(jù)解密裝置的物理傳輸采用AIS(AutomaticIdentificationSystem,自動(dòng)識(shí)別系統(tǒng))無(wú)線(xiàn)接口,該數(shù)據(jù)加密裝置中的第一獲取模塊獲取第一初始密鑰,第一處理模塊對(duì)該第一初始密鑰進(jìn)行白噪聲化處理得到加密密鑰,在本實(shí)施例中,還包括加密開(kāi)關(guān),用于當(dāng)該加密開(kāi)關(guān)獲取加密命令時(shí)將該第二獲取模塊獲取到的待加密數(shù)據(jù)輸入該加密模塊進(jìn)行加密,即可以通過(guò)該加密開(kāi)關(guān)對(duì)是否加密進(jìn)行控制,當(dāng)該加密開(kāi)關(guān)獲取加密命令時(shí)將該待加密數(shù)據(jù)輸入該加密模塊進(jìn)行加密,當(dāng)該加密開(kāi)關(guān)未獲取加密命令或者獲取不加密命令時(shí)不對(duì)待加密數(shù)據(jù)進(jìn)行加密而直接通過(guò)AIS無(wú)線(xiàn)接口進(jìn)行輸出。該數(shù)據(jù)解密裝置中的第三獲取模塊獲取第二初始密鑰,第二處理模塊對(duì)該第二初始密鑰進(jìn)行白噪聲化處理,得到解密密鑰,在本實(shí)施例中,還包括數(shù)據(jù)分流模塊,用于判斷該待解密數(shù)據(jù)是否為加密數(shù)據(jù),若是,則將該待解密數(shù)據(jù)輸入該解密模塊進(jìn)行解密,例如,可以通過(guò)判斷該待解密數(shù)據(jù)中是否包含加密標(biāo)識(shí)來(lái)判斷該待解密數(shù)據(jù)是否為加密數(shù)據(jù),若包含加密標(biāo)識(shí),則判斷該待解密數(shù)據(jù)為加密數(shù)據(jù),將該待解密數(shù)據(jù)輸入該解密模塊進(jìn)行解密,若不包含加密標(biāo)識(shí),則直接進(jìn)行輸出,即可以通過(guò)數(shù)據(jù)分流模塊對(duì)解密的流程進(jìn)行控制,從而實(shí)現(xiàn)同時(shí)支持加密/非加密數(shù)據(jù)接收。
本實(shí)施例提供的數(shù)據(jù)加解密系統(tǒng),通過(guò)初始密鑰白噪聲化,使得初始密鑰具有明顯的偽隨機(jī)特征,保障在流加密過(guò)程中安全性不受初始密鑰選擇的影響,從而克服初始密鑰設(shè)置不恰當(dāng)帶來(lái)的安全性問(wèn)題,提高了基于對(duì)稱(chēng)加密算法的流加密技術(shù)的安全性。
以上實(shí)施例提供的技術(shù)方案中的全部或部分內(nèi)容可以通過(guò)軟件編程實(shí)現(xiàn),其軟件程序存儲(chǔ)在可讀取的存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)例如:計(jì)算機(jī)中的硬盤(pán)、光盤(pán)或軟盤(pán)。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。