專利名稱:一種數(shù)據(jù)加解密方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于數(shù)據(jù)加密解密技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)加解密方法及裝置。
背景技術(shù):
完美加密(Perfect Secrecy)系統(tǒng)保護的數(shù)據(jù),無論密碼分析者截獲多少密文, 在無限的計算能力和時間條件下,都無法破解。具體內(nèi)容見文獻Shannon,Claude (1949). Communication Theory of Secrecy Systems, Bell System TechnicalJournal 28(4) 656-715。一次一密亂碼本(One-time-pad,下稱之為OTP)就是其中的一個典型實現(xiàn), 有關(guān)內(nèi)容可參見下述文獻,U. S patent 1,310,719. SECRET SIGNALINGSYSTEM, S N Molotkov, “ Quantum cryptography and V A Kotel ' nikov ' s one-timekey and sampling theorems “,PHYS-USP,2006,49 (7),750-761 以及機械工業(yè)出版社 2003 年 3 月 1 日出版的《應(yīng)用密碼學》第6、12頁。目前對完美加密系統(tǒng)的實現(xiàn)主要在于密鑰部分,S卩如何通過無限多真隨機密鑰對 明文每一位進行加密以達到完美加密系統(tǒng)的設(shè)計目的。而所用加密算法大多是較單一的異 或運算,或者說,整個系統(tǒng)的安全性完全依賴于密鑰的安全保存和傳輸。一旦密鑰泄露,則 整個系統(tǒng)的安全性則變得非常脆弱。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種數(shù)據(jù)加解密方法及裝置,旨在解決現(xiàn)有完美加密技術(shù) 的安全性完全依賴于密鑰的安全保存和傳輸,一旦密鑰泄露密文有可能被破解的問題。本發(fā)明提供了一種數(shù)據(jù)加密方法,所述方法包括對待加密明文進行分組;為每組明文數(shù)據(jù)隨機分配加密函數(shù)與加密密鑰;用加密函數(shù)與加密密鑰分別對所述每組明文數(shù)據(jù)進行加密;將所述加密的數(shù)據(jù)按其對應(yīng)的所述明文位置排列形成密文。本發(fā)明提供了一種數(shù)據(jù)加密裝置,所述裝置包括分組模塊,用于對待加密明文進行分組;加密函數(shù)與加密密鑰隨機分配模塊,用于為所述分組模塊分組后的每組明文數(shù)據(jù) 隨機分配加密函數(shù)與加密密鑰;加密處理模塊,用于用所述加密函數(shù)與加密密鑰隨機分配模塊分配的加密函數(shù)與 加密密鑰對所述明文中的數(shù)據(jù)進行加密,并將所述加密的數(shù)據(jù)按其對應(yīng)的所述明文位置排 列形成密文。本發(fā)明提供了一種數(shù)據(jù)解密方法,所述方法包括獲取解密信息,并根據(jù)所述解密信息從保存的隨機種子中采集數(shù)據(jù)生成加密函數(shù) 與加密密鑰索引隨機串;
根據(jù)所述解密信息,確定所述加密函數(shù)與加密密鑰索引隨機串的遍歷起始位置, 同步遍歷所述加密函數(shù)與加密密鑰索引隨機串及待解密密文;根據(jù)所述解密信息確定所述密文中各個比特位數(shù)據(jù)對應(yīng)的加密函數(shù)與加密密 鑰;根據(jù)所述加密函數(shù)與加密密鑰,確定所述密文中各個比特位數(shù)據(jù)對應(yīng)的解密函數(shù) 與解密密鑰;用所述解密函數(shù)與解密密鑰將所述密文中各個比特位的數(shù)據(jù)還原成明文中的各 個比特位的數(shù)據(jù);將所述明文中各個比特位的數(shù)據(jù)按其所對應(yīng)的密文位置排列,形成明文。本發(fā)明還提供了一種數(shù)據(jù)解密裝置,所述裝置包括獲取模塊,用于獲取解密信息;隨機種子存儲模塊,用于存儲加密時產(chǎn)生的隨機種子;加密函數(shù)與加密密鑰索引隨機串生成模塊,用于根據(jù)所述獲取模塊獲取的解密信 息,從所述隨機種子存儲模塊保存的隨機種子中采集數(shù)據(jù)生成加密函數(shù)與加密密鑰索引隨 機串;同步遍歷模塊,用于根據(jù)所述獲取模塊獲取的解密信息,確定所述加密函數(shù)與加 密密鑰索引隨機串的遍歷起始位置,同步遍歷所述加密函數(shù)與加密密鑰索引隨機串及待解 密密文;加密函數(shù)與加密密鑰確定模塊,用于根據(jù)所述獲取模塊獲取的解密信息,確定所 述密文中各個比特位數(shù)據(jù)對應(yīng)的加密函數(shù)與加密密鑰;解密函數(shù)與解密密鑰獲取模塊,用于根據(jù)所述加密函數(shù)與加密密鑰確定模塊確定 的加密函數(shù)與加密密鑰,確定所述密文中各個比特位數(shù)據(jù)對應(yīng)的解密函數(shù)與解密密鑰;明文還原模塊,用于用所述解密函數(shù)與解密密鑰將所述密文中各個比特位的數(shù)據(jù) 還原成明文中的各個比特位的數(shù)據(jù),并將所述明文中各個比特位的數(shù)據(jù)按其所對應(yīng)的密文 位置排列,形成明文。本發(fā)明通過在加密時為待加密的明文隨機分配存儲的加密函數(shù)與加密密鑰,用所 分配的加密函數(shù)與加密密鑰對明文進行加密,解密時再通過生成并根據(jù)加密函數(shù)與加密密 鑰索引隨機串,獲得待解密密文的解密函數(shù)與解密密鑰進行解密,極大地提高了數(shù)據(jù)的安 全性,實現(xiàn)了對數(shù)據(jù)的完美加密。
圖1是本發(fā)明實施例提供的數(shù)據(jù)加密方法的流程圖;圖2是本發(fā)明實施例提供的為待加密明文隨機分配加密函數(shù)與加密密鑰之前的 步驟流程圖;圖3是本發(fā)明實施例提供的對加密函數(shù)與加密密鑰索引隨機串進行重復性校驗 的方法流程圖;圖4是本發(fā)明實施例提供的數(shù)據(jù)加密裝置的結(jié)構(gòu)示意圖;圖5是本發(fā)明實施例提供的建立最小加密函數(shù)與加密密鑰集合的方法流程圖;圖6是本發(fā)明實施例提供的數(shù)據(jù)解密方法的流程圖7是本發(fā)明實施例提供的數(shù)據(jù)解密裝置的結(jié)構(gòu)示意圖;圖8本發(fā)明實施例提供的加密函數(shù)與加密密鑰索引隨機串生成的原理示意圖;圖9是本發(fā)明實施例提供的數(shù)據(jù)加密過程的示意圖;圖10是本發(fā)明實施例提供的數(shù)據(jù)解密過程的示意圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對 本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。本發(fā)明實施例在加密時通過為待加密的明文隨機分配存儲的加密函數(shù)與加密密 鑰,用所分配的加密函數(shù)與加密密鑰對明文進行加密;解密時通過生成并根據(jù)加密函數(shù)與 加密密鑰索引隨機串,獲得待解密密文的解密函數(shù)和解密密鑰進行解密。參見圖1和圖9,本發(fā)明實施例提供了一種數(shù)據(jù)加密方法,包括以下步驟步驟S101 對待加密明文進行分組;步驟S102 為每組明文數(shù)據(jù)隨機分配加密函數(shù)與加密密鑰;本實施例預先選定一組加密函數(shù)與加密密鑰存儲,該存儲的加密函數(shù)與加密密鑰 可以覆蓋從明文中任意預定位0、1到密文中對應(yīng)位置0或1的所有轉(zhuǎn)換路徑;選定完成后, 在進行加密時,被先后分配給明文對明文進行加密;加密函數(shù)唯一對應(yīng)一種加密算法,并對 應(yīng)多個待選加密密鑰;本實施例中,將待加密明文的每位數(shù)據(jù)作為一個分組,即分別對明文中的每位數(shù) 據(jù)隨機分配加密函數(shù)與加密密鑰;在實際應(yīng)用中,還可以將待加密明文中的每2位、每3位、 每4位數(shù)據(jù)作為一個分組;步驟S103 用所分配的加密函數(shù)與加密密鑰對明文中的每位數(shù)據(jù)進行加密;步驟S104 將加密的每位數(shù)據(jù)按其對應(yīng)的明文位置排列,形成密文。參見圖2,本發(fā)明實施例在步驟S102和步驟S102之間還包括以下步驟步驟S201 生成預定長度的真隨機數(shù)和由真隨機數(shù)組成的預定長度的隨機種子;生成真隨機數(shù)的方法已經(jīng)很成熟,具體實現(xiàn)中可以采用機械工業(yè)出版社2003年3 月1日出版的《應(yīng)用密碼學》第301頁中給出的產(chǎn)生真隨機數(shù)的方法,如使用隨機噪聲,使 用計算機時鐘,CPU負載或網(wǎng)絡(luò)數(shù)據(jù)包到達次數(shù)等方法來產(chǎn)生需要的真隨機數(shù),作為隨機種 子,同時存儲產(chǎn)生的隨機種子;步驟S202 建立加密函數(shù)與加密密鑰集合,并對集合中的每個加密函數(shù)與加密密 鑰分配索引;集合中的每個加密函數(shù)與加密密鑰都有一個與之相對應(yīng)的索引,并且存儲這些不 同的索引;步驟S203 對隨機種子進行數(shù)據(jù)采集,生成加密函數(shù)與加密密鑰索引隨機串;步驟S204 同步遍歷加密函數(shù)與加密密鑰索引隨機串和待加密明文。本發(fā)明實施例在對隨機種子進行數(shù)據(jù)采集,生成加密函數(shù)與加密密鑰索引隨機串 后還包括對加密函數(shù)與加密密鑰索引隨機串進行重復性校驗的步驟,其具體實現(xiàn)方式如圖 3所示,包括以下步驟
步驟S301 通過信息摘要運算生成加密函數(shù)與加密密鑰索引隨機串的信息摘要 值;步驟S302 比對加密函數(shù)與加密密鑰索引隨機串的信息摘要值與先前存儲的信 息摘要值是否一致,如果一致,則對隨機種子再次進行數(shù)據(jù)采集,生成加密函數(shù)與加密密鑰 索引隨機串,執(zhí)行步驟S301,如果不一致,則執(zhí)行步驟S303 ;步驟S303 保存當前生成的加密函數(shù)與加密密鑰索引隨機串待用。當有新生成的加密函數(shù)與加密密鑰索引隨機串時,本發(fā)明通過運用信息摘要運算 如MD5,SHA1等,生成加密函數(shù)與加密密鑰索引隨機串的信息摘要值,將該信息摘要值與先 前存儲的加密函數(shù)與加密密鑰索引隨機串的信息摘要值進行比對,從而判斷新生成的加密 函數(shù)與加密密鑰索引隨機串是否已使用過,如果是,則重新生成加密函數(shù)與加密密鑰索引 隨機串,否則保存所生成的加密函數(shù)與加密密鑰索引隨機串待用。在保存待用的加密函數(shù) 與加密密鑰索引隨機串后,保存所有加密函數(shù)與加密密鑰索引隨機串的信息摘要值。本發(fā)明中,生成并存儲數(shù)據(jù)加密過程中所使用和產(chǎn)生的如明文分組信息、加密函 數(shù)與加密密鑰集合及被分配的每個加密函數(shù)與加密密鑰索引、數(shù)據(jù)采集時所使用的隨機種 子、再次生成所加密的明文對應(yīng)的加密函數(shù)與加密密鑰索引隨機串的信息以及遍歷加密函 數(shù)索引隨機串起始的游標位置信息,形成解密信息。參見圖4,本發(fā)明實施例提供了一種數(shù)據(jù)加密裝置,為了便于說明,僅示出了與本 發(fā)明有關(guān)部分,該裝置包括分組模塊40、加密函數(shù)與加密密鑰隨機分配模塊41和加密處理模塊42 ;在進行數(shù)據(jù)加密時,分組模塊40將待加密明文中的每位數(shù)據(jù)分成一組,加密函數(shù) 與加密密鑰隨機分配模塊41為待加密明文的每位數(shù)據(jù)隨機分配加密函數(shù)與加密密鑰用于 加密,加密處理模塊42用加密函數(shù)與加密密鑰隨機分配模塊41分配的加密函數(shù)與加密密 鑰對待加密明文的每位數(shù)據(jù)進行加密,并將加密的每位數(shù)據(jù)按其對應(yīng)的明文的位置排列, 形成密文輸出。進一步地,該數(shù)據(jù)加密裝置還包括加密函數(shù)與加密密鑰建立模塊43、真隨機數(shù)生成模塊44、加密函數(shù)與加密密鑰索 引隨機串生成模塊45、分配模塊46和同步遍歷模塊47 ;真隨機數(shù)生成模塊44用于生成預定長度的真隨機數(shù)和由真隨機數(shù)組成的預定長 度的隨機種子,加密函數(shù)與加密密鑰索引隨機串生成模塊45對該隨機種子進行數(shù)據(jù)采集, 生成加密函數(shù)與加密密鑰索引隨機串;加密函數(shù)與加密密鑰建立模塊43,用于建立并存儲 加密函數(shù)與加密密鑰集合;分配模塊46,用于對加密函數(shù)與加密密鑰建立模塊43建立的加 密函數(shù)與加密密鑰集合中的每個加密函數(shù)與加密密鑰分配索引;同步遍歷模塊47同步遍 歷加密函數(shù)與加密密鑰索引隨機串生成模塊45生成的加密函數(shù)與加密密鑰索引隨機串和 待加密明文。其中,加密函數(shù)與加密密鑰索引隨機串生成模塊45包括數(shù)據(jù)采集單元,用于對真隨機數(shù)生成模塊44生成的隨機種子進行數(shù)據(jù)采集,并發(fā) 送數(shù)據(jù)采集結(jié)果;索引隨機串生成單元,用于根據(jù)接收的數(shù)據(jù)采集單元發(fā)送的數(shù)據(jù)采集結(jié)果,生成 并保存加密函數(shù)與加密密鑰索引隨機串。
進一步地,加密函數(shù)與加密密鑰索引隨機串生成模塊45還包括信息摘要值生成模塊,用于通過信息摘要運算生成索引隨機串生成單元生成的加 密函數(shù)與加密密鑰索引隨機串的信息摘要值;存儲模塊,用于存儲信息摘要值生成模塊生成的加密函數(shù)與加密密鑰索引隨機串 的信息摘要值;比對模塊,用于將信息摘要值生成模塊的信息摘要值與存儲模塊先前存儲的信息 摘要值進行比對,并向加密函數(shù)與加密密鑰索引隨機串生成模塊45發(fā)送比對結(jié)果。加密函數(shù)與加密密鑰索引隨機串生成模塊45根據(jù)比對模塊發(fā)送的信息摘要值相 同的比對結(jié)果,重新生成加密函數(shù)與加密密鑰索引隨機串,并通過比對模塊反復進行信息 摘要值的比對,直至產(chǎn)生不重復的加密函數(shù)與加密密鑰索引隨機串。由于完美加密系統(tǒng)需要滿足密文被截獲后的后驗概率等于其先驗概率,對于任意 確定的明文,至少有一種方式可以被轉(zhuǎn)換為任意的密文,并且這些轉(zhuǎn)換方式是完全等概的 (具體內(nèi)容見文獻 Shannon,Claude (1949) CommunicationTheory of Secrecy Systems, Bell System Technical Journal 28(4) :656_715)。對于存儲在計算機中的二進制明文和 密文而言,因為所有明文和密文都是由一串數(shù)量確定的二進制數(shù)0或1組成,所以對明文任 意確定的一位數(shù)據(jù)0或1,總有至少一種方式使之轉(zhuǎn)換為密文中對應(yīng)位置的0或1,本發(fā)明 稱這種轉(zhuǎn)換方式為轉(zhuǎn)換路徑。為實現(xiàn)本發(fā)明的完美加密需要,需要找到一個最小的加密函數(shù)與加密密鑰集合, 使之能夠覆蓋從明文中任意預定位0,1到密文中對應(yīng)位置0或1的所有轉(zhuǎn)換路徑。參見圖5,本發(fā)明采用以下方法選擇最小加密函數(shù)與加密密鑰集合,其實現(xiàn)步驟 為步驟S501 選擇能覆蓋最多明文到密文的可能轉(zhuǎn)換路徑的加密函數(shù)與加密密鑰, 記錄加密函數(shù)與加密密鑰覆蓋的可能轉(zhuǎn)換路徑;步驟S502 判斷可能轉(zhuǎn)換路徑是否全被完全覆蓋,如果是,則執(zhí)行步驟S505,否 則,執(zhí)行步驟S503 ;步驟S503 確定未被覆蓋的可能轉(zhuǎn)換路徑,選擇另一能覆蓋最多未覆蓋的可能轉(zhuǎn) 換路徑的加密函數(shù)與加密密鑰,并記錄當前加密函數(shù)與加密密鑰覆蓋的路徑,重新選擇另 一能覆蓋最多未覆蓋的可能轉(zhuǎn)換路徑的加密函數(shù)與加密密鑰,執(zhí)行步驟S504 ;步驟S504 判斷是否未被覆蓋的可能轉(zhuǎn)換路徑都被覆蓋,如果是,則執(zhí)行步驟 S505,否則,執(zhí)行步驟S503 ;步驟S505 將所有選擇的加密函數(shù)與加密密鑰組成最小加密函數(shù)與加密密鑰集
口 O為了驗證該方法的可行性,以下舉出兩例,但是本發(fā)明的保護范圍不限于這兩種 實現(xiàn)。記明文任意預定位置x的數(shù)據(jù)M(x)到密文對應(yīng)位置x’的數(shù)據(jù)E(x’)的轉(zhuǎn)換為 M(x)->E(x'),其中厘00,£(1’ ) = 0 或者 1。方法A 通過選擇如下加密函數(shù)和加密密鑰,加密函數(shù)1 異或運算(X0R)。對應(yīng)運算規(guī)則是0 0 = 0
0 1 = 1
1 e 0 = 11 1 =0覆蓋以下轉(zhuǎn)換路徑
權(quán)利要求
一種數(shù)據(jù)加密方法,其特征在于,所述方法包括對待加密明文進行分組;為每組明文數(shù)據(jù)隨機分配加密函數(shù)與加密密鑰;用加密函數(shù)與加密密鑰分別對所述每組明文數(shù)據(jù)進行加密;將所述加密的數(shù)據(jù)按其對應(yīng)的所述明文位置排列形成密文。
2.如權(quán)利要求1所述的數(shù)據(jù)加密方法,其特征在于,在所述對待加密明文進行分組和 為每組明文數(shù)據(jù)隨機分配加密函數(shù)與加密密鑰的步驟之間還包括生成預定長度的真隨機數(shù)和由所述真隨機數(shù)組成的預定長度的隨機種子;建立加密函數(shù)與加密密鑰集合,并對所述集合中的每個加密函數(shù)與加密密鑰分配索引;對所述隨機種子進行數(shù)據(jù)采集,生成加密函數(shù)與加密密鑰索引隨機串; 同步遍歷所述加密函數(shù)與加密密鑰索引隨機串和待加密明文。
3.如權(quán)利要求2所述的數(shù)據(jù)加密方法,其特征在于,所述加密函數(shù)與加密密鑰集合包 括覆蓋從待加密明文中任意0、1到密文中對應(yīng)位置0或1的所有轉(zhuǎn)換路徑的加密函數(shù)與加 密密鑰,相應(yīng)地,確定所述覆蓋從待加密明文中任意0、1到密文中對應(yīng)位置0或1的所有轉(zhuǎn) 換路徑的加密函數(shù)與加密密鑰的步驟包括選擇覆蓋最多明文到密文可能轉(zhuǎn)換路徑的加密 函數(shù)與加密密鑰,并記錄所述可能轉(zhuǎn)換路徑;判斷所述可能轉(zhuǎn)換路徑是否被完全覆蓋,如果 是,則將所有選擇的加密函數(shù)與加密密鑰作為所述加密函數(shù)與加密密鑰集合的元素;否則, 選擇另一覆蓋最多未覆蓋的可能轉(zhuǎn)換路徑的加密函數(shù)與加密密鑰,并記錄當前加密函數(shù)與 加密密鑰覆蓋的路徑,重新選擇覆蓋最多未覆蓋的可能轉(zhuǎn)換路徑的加密函數(shù)與加密密鑰, 直至所選擇的加密函數(shù)與加密密鑰能覆蓋所有的可能轉(zhuǎn)換路徑,將所有選擇的加密函數(shù)與 加密密鑰作為所述加密函數(shù)與加密密鑰集合的元素。
4.如權(quán)利要求2所述的數(shù)據(jù)加密方法,其特征在于,所述對所述隨機種子進行數(shù)據(jù)采 集,生成加密函數(shù)與密密鑰索引隨機串的步驟還包括通過信息摘要運算分別生成所述加密函數(shù)與加密密鑰索引隨機串的信息摘要值; 將所述信息摘要值與先前存儲的信息摘要值進行比對,如果一致,則對所述隨機種子 再次進行數(shù)據(jù)采集,生成加密函數(shù)與加密密鑰索引隨機串,否則,保存當前所生成的加密函 數(shù)與加密密鑰索引隨機串。
5.如權(quán)利要求1所述的數(shù)據(jù)加密方法,其特征在于,所述每組明文數(shù)據(jù)包括至少一個 明文比特位。
6.一種數(shù)據(jù)加密裝置,其特征在于,所述裝置包括 分組模塊,用于對待加密明文進行分組;加密函數(shù)與加密密鑰隨機分配模塊,用于為所述分組模塊分組后的每組明文數(shù)據(jù)隨機 分配加密函數(shù)與加密密鑰;加密處理模塊,用于用所述加密函數(shù)與加密密鑰隨機分配模塊分配的加密函數(shù)與加密 密鑰對所述明文中的數(shù)據(jù)進行加密,并將所述加密的數(shù)據(jù)按其對應(yīng)的所述明文位置排列形 成密文。
7.如權(quán)利要求6所述的數(shù)據(jù)加密裝置,其特征在于,所述裝置還包括真隨機數(shù)生成模塊,用于生成預定長度的真隨機數(shù)和由所述真隨機數(shù)組成的預定長度的隨機種子;加密函數(shù)與加密密鑰建立模塊,用于建立并存儲加密函數(shù)與加密密鑰集合; 分配模塊,用于對所述加密函數(shù)與加密密鑰建立模塊建立的加密函數(shù)與加密密鑰集合 中的每個加密函數(shù)與加密密鑰分配索引;加密函數(shù)與加密密鑰索引隨機串生成模塊,用于對所述真隨機數(shù)生成模塊生成的隨機 種子進行數(shù)據(jù)采集,生成加密函數(shù)與加密密鑰索引隨機串;同步遍歷模塊,用于同步遍歷所述加密函數(shù)與加密密鑰索引隨機串生成模塊生成的加 密函數(shù)與加密密鑰索引隨機串和待加密明文。
8.如權(quán)利要求7所述的數(shù)據(jù)加密裝置,其特征在于,所述加密函數(shù)與加密密鑰索引隨 機串生成模塊包括數(shù)據(jù)采集單元,用于對所述真隨機數(shù)生成模塊生成的隨機種子進行數(shù)據(jù)采集,并發(fā)送 數(shù)據(jù)采集結(jié)果;索引隨機串生成單元,用于根據(jù)接收的所述數(shù)據(jù)采集單元發(fā)送的數(shù)據(jù)采集結(jié)果,生成 并保存加密函數(shù)與加密密鑰索引隨機串。
9.如權(quán)利要求8所述的數(shù)據(jù)加密裝置,其特征在于,所述加密函數(shù)與加密密鑰索引隨 機串生成模塊還包括信息摘要值生成模塊,用于通過信息摘要運算分別生成所述索引隨機串生成單元生成 的加密函數(shù)與加密密鑰索引隨機串的信息摘要值;存儲模塊,用于存儲所述信息摘要值生成模塊生成的加密函數(shù)與加密密鑰索引隨機串 的信息摘要值;比對模塊,用于將所述信息摘要值生成模塊的信息摘要值與所述存儲模塊先前存儲的 信息摘要值進行比對,并向所述加密函數(shù)與加密密鑰索引隨機串生成模塊發(fā)送比對結(jié)果。
10.一種數(shù)據(jù)解密方法,其特征在于,所述方法包括獲取解密信息,并根據(jù)所述解密信息從保存的隨機種子中采集數(shù)據(jù)生成加密函數(shù)與加 密密鑰索引隨機串;根據(jù)所述解密信息,確定所述加密函數(shù)與加密密鑰索引隨機串的遍歷起始位置,同步 遍歷所述加密函數(shù)與加密密鑰索引隨機串及待解密密文;根據(jù)所述解密信息確定所述密文中各個比特位數(shù)據(jù)對應(yīng)的加密函數(shù)與加密密鑰; 根據(jù)所述加密函數(shù)與加密密鑰,確定所述密文中各個比特位數(shù)據(jù)對應(yīng)的解密函數(shù)與解 密密鑰;用所述解密函數(shù)與解密密鑰將所述密文中各個比特位的數(shù)據(jù)還原成明文中的各個比 特位的數(shù)據(jù);將所述明文中各個比特位的數(shù)據(jù)按其所對應(yīng)的密文位置排列,形成明文。
11.一種數(shù)據(jù)解密裝置,其特征在于,所述裝置包括 獲取模塊,用于獲取解密信息;隨機種子存儲模塊,用于存儲加密時產(chǎn)生的隨機種子;加密函數(shù)與加密密鑰索引隨機串生成模塊,用于根據(jù)所述獲取模塊獲取的解密信息, 從所述隨機種子存儲模塊保存的隨機種子中采集數(shù)據(jù)生成加密函數(shù)與加密密鑰索引隨機 串;同步遍歷模塊,用于根據(jù)所述獲取模塊獲取的解密信息,確定所述加密函數(shù)與加密密 鑰索引隨機串的遍歷起始位置,同步遍歷所述加密函數(shù)與加密密鑰索引隨機串及待解密密 文;加密函數(shù)與加密密鑰確定模塊,用于根據(jù)所述獲取模塊獲取的解密信息,確定所述密 文中各個比特位數(shù)據(jù)對應(yīng)的加密函數(shù)與加密密鑰;解密函數(shù)與解密密鑰獲取模塊,用于根據(jù)所述加密函數(shù)與加密密鑰確定模塊確定的加 密函數(shù)與加密密鑰,確定所述密文中各個比特位數(shù)據(jù)對應(yīng)的解密函數(shù)與解密密鑰;明文還原模塊,用于用所述解密函數(shù)與解密密鑰將所述密文中各個比特位的數(shù)據(jù)還原 成明文中的各個比特位的數(shù)據(jù),并將所述明文中各個比特位的數(shù)據(jù)按其所對應(yīng)的密文位置 排列,形成明文。
全文摘要
本發(fā)明涉及數(shù)據(jù)加密解密技術(shù)領(lǐng)域,提供了一種數(shù)據(jù)加解密方法及裝置。所述數(shù)據(jù)加密方法包括對待加密明文進行分組;為每組明文數(shù)據(jù)隨機分配加密函數(shù)與加密密鑰;用加密函數(shù)與加密密鑰分別對每組明文數(shù)據(jù)進行加密;將加密的數(shù)據(jù)按其對應(yīng)的明文位置排列形成密文。所述數(shù)據(jù)加密裝置包括分組模塊、加密函數(shù)與加密密鑰隨機分配模塊、以及加密處理模塊。本發(fā)明還提供了一種數(shù)據(jù)解密方法及裝置。本發(fā)明通過在加密時為待加密的明文的每位數(shù)據(jù)隨機分配加密函數(shù)與加密密鑰,對明文的每位數(shù)據(jù)進行加密排列形成密文,極大地提高了數(shù)據(jù)存儲的安全性,實現(xiàn)了對數(shù)據(jù)完美加密。
文檔編號H04L9/08GK101984574SQ201010563720
公開日2011年3月9日 申請日期2010年11月29日 優(yōu)先權(quán)日2010年11月29日
發(fā)明者劉慧 申請人:北京卓微天成科技咨詢有限公司