亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種數(shù)據(jù)加解密方法及裝置的制作方法

文檔序號:7766988閱讀:379來源:國知局
專利名稱:一種數(shù)據(jù)加解密方法及裝置的制作方法
技術領域
本發(fā)明屬于數(shù)據(jù)加密解密技術領域,尤其涉及一種數(shù)據(jù)加解密方法及裝置。
背景技術
完美加密(Perfect kcrecy)系統(tǒng)保護的數(shù)據(jù),無論密碼分析者截獲多少密文, 在無限的計算能力和時間條件下,都無法破解,具體內容見文獻aiarmon,Claude (1949). Communication Theory of Secrecy Systems, Bell System Technical Journal 28(4) 656-715。一次一密亂碼本(One-time-pad,下稱之為OTP)就是其中的一個典型實現(xiàn), 有關內容可參見下述文獻,U. S patent 1,310,719. SECRET SIGNALINGSYSTEM, S N Molotkov, “ Quantum cryptography and V A Kotel' nikov' s one-time key and sampling theorems " , PHYS-USP, 2006,49 (7), 750-761 以及機械工業(yè)出版社 2003 年 3 月 1 日出版的《應用密碼學》第6、12頁。目前對完美加密系統(tǒng)的實現(xiàn)主要在于密鑰部分,S卩如何通過無限多真隨機密鑰對 明文每一位進行加密以達到完美加密系統(tǒng)的設計目的。而所用加密算法大多是較單一的異 或運算,或者說,整個系統(tǒng)的安全性完全依賴于密鑰的安全保存和傳輸。一旦密鑰泄露,則 整個系統(tǒng)的安全性則變得非常脆弱。

發(fā)明內容
本發(fā)明的目的在于提供一種數(shù)據(jù)加解密方法及裝置,旨在解決現(xiàn)有完美加密技術 的安全性完全依賴于密鑰的安全保存和傳輸,一旦密鑰泄露密文有可能被破解的問題。本發(fā)明提供了一種數(shù)據(jù)加密方法,所述方法包括對待加密明文進行分組;為每組明文數(shù)據(jù)隨機分配加密函數(shù);用加密函數(shù)分別對所述每組明文數(shù)據(jù)進行加密;將所述加密的數(shù)據(jù)按其對應的所述明文位置排列形成密文。本發(fā)明提供了一種數(shù)據(jù)加密裝置,所述裝置包括分組模塊,用于對待加密明文進行分組;加密函數(shù)隨機分配模塊,用于為所述分組模塊分組后的每組明文數(shù)據(jù)隨機分配加 密函數(shù);加密處理模塊,用于用所述加密函數(shù)隨機分配模塊分配的加密函數(shù)對所述明文中 的數(shù)據(jù)進行加密,并將所述加密的數(shù)據(jù)按其對應的所述明文位置排列形成密文。本發(fā)明提供了一種數(shù)據(jù)解密方法,所述方法包括獲取解密信息,并根據(jù)所述解密信息從保存的隨機種子中采集數(shù)據(jù)生成加密函數(shù) 索引隨機串;根據(jù)所述解密信息,確定所述加密函數(shù)索引隨機串的遍歷起始位置,同步遍歷所述加密函數(shù)索引隨機串及待解密密文;根據(jù)所述解密信息確定所述密文中各個比特位數(shù)據(jù)對應的加密函數(shù);根據(jù)所述加密函數(shù),確定所述密文中各個比特位數(shù)據(jù)對應的解密函數(shù);用所述解密函數(shù)將所述密文中各個比特位的數(shù)據(jù)還原成明文中的各個比特位的 數(shù)據(jù);將所述明文中各個比特位的數(shù)據(jù)按其所對應的密文位置排列,形成明文。本發(fā)明還提供了一種數(shù)據(jù)解密裝置,所述裝置包括獲取模塊,用于獲取解密信息;隨機種子存儲模塊,用于存儲加密時產生的隨機種子;加密函數(shù)索引隨機串生成模塊,用于根據(jù)所述獲取模塊獲取的解密信息,從所述 隨機種子存儲模塊保存的隨機種子中采集數(shù)據(jù)生成加密函數(shù)索引隨機串;同步遍歷模塊,用于根據(jù)所述獲取模塊獲取的解密信息,確定所述加密函數(shù)索引 隨機串的遍歷起始位置,同步遍歷所述加密函數(shù)索引隨機串及待解密密文;加密函數(shù)確定模塊,用于根據(jù)所述獲取模塊獲取的解密信息,確定所述密文中各 個比特位數(shù)據(jù)對應的加密函數(shù);解密函數(shù)獲取模塊,用于根據(jù)所述加密函數(shù)確定模塊確定的加密函數(shù),確定所述 密文中各個比特位數(shù)據(jù)對應的解密函數(shù);明文還原模塊,用于用所述解密函數(shù)將所述密文中各個比特位的數(shù)據(jù)還原成明文 中的各個比特位的數(shù)據(jù),并將所述明文中各個比特位的數(shù)據(jù)按其所對應的密文位置排列, 形成明文。本發(fā)明通過在加密時為待加密的明文隨機分配存儲的加密函數(shù),用所分配的加密 函數(shù)對明文進行加密,解密時再通過創(chuàng)建并根據(jù)加密函數(shù)索引隨機串,獲得待解密密文的 解密函數(shù)和解密密鑰進行解密,極大地提高了數(shù)據(jù)的安全性,實現(xiàn)了對數(shù)據(jù)的完美加密。


圖1是本發(fā)明實施例提供的數(shù)據(jù)加密方法的流程圖;圖2是本發(fā)明實施例提供的為待加密明文隨機分配加密函數(shù)之前的步驟流程圖;圖3是本發(fā)明實施例提供的對加密函數(shù)索引隨機串進行重復性校驗的方法流程 圖;圖4是本發(fā)明實施例提供的數(shù)據(jù)加密裝置的結構示意圖;圖5是本發(fā)明實施例提供的建立最小加密函數(shù)集合的方法流程圖;圖6是本發(fā)明實施例提供的數(shù)據(jù)解密方法的流程圖;圖7是本發(fā)明實施例提供的數(shù)據(jù)解密裝置的結構示意圖;圖8本發(fā)明實施例提供的加密函數(shù)索引隨機串生成的原理示意圖;圖9是本發(fā)明實施例提供的數(shù)據(jù)加密過程的示意圖;圖10是本發(fā)明實施例提供的數(shù)據(jù)解密過程的示意圖。
具體實施例方式為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。本發(fā)明實施例在加密時通過為待加密的明文隨機分配存儲的加密函數(shù),用所分配 的加密函數(shù)對明文進行加密;解密時通過生成并根據(jù)加密函數(shù)索引隨機串,獲得待解密密 文的解密函數(shù)進行解密。參見圖1和圖9,本發(fā)明實施例提供了一種數(shù)據(jù)加密方法,包括以下步驟步驟SlOl 對待加密明文進行分組;步驟S102 為每組明文數(shù)據(jù)隨機分配加密函數(shù);本實施例預先選定一組加密函數(shù)存儲,該存儲的加密函數(shù)可以覆蓋從明文中任意 預定位0、1到密文中對應位置0或1的所有轉換路徑;選定完成后,在進行加密時,被隨機 分配給明文對明文進行加密;本實施例中,將待加密明文的每位(比特位)數(shù)據(jù)作為一個分組,即分別對明文中 的每位數(shù)據(jù)隨機分配加密函數(shù);在實際應用中,還可以將待加密明文中的每2位、每3位、每 4位數(shù)據(jù)作為一個分組;步驟S103 用所分配的加密函數(shù)對明文中的每位數(shù)據(jù)進行加密;步驟S104 將加密的每位數(shù)據(jù)按其對應的明文位置排列,形成密文。參見圖2,本發(fā)明實施例在步驟SlOl和步驟S102之間還包括以下步驟步驟S201 生成預定長度的真隨機數(shù)和由真隨機數(shù)組成的預定長度的隨機種子;生成真隨機數(shù)的方法已經很成熟,具體實現(xiàn)中可以采用機械工業(yè)出版社2003年3 月1日出版的《應用密碼學》第301頁中給出的產生真隨機數(shù)的方法,如使用隨機噪聲,使 用計算機時鐘,CPU負載或網絡數(shù)據(jù)包到達次數(shù)等方法來產生需要的真隨機數(shù),作為隨機種 子,同時存儲產生的隨機種子;步驟S202 建立加密函數(shù)集合,并對集合中的每個加密函數(shù)分配索引;集合中的每個加密函數(shù)都有一個與之相對應的索引,并且存儲這些不同的索引;步驟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,SHAl 等,生成加密函數(shù)索引隨機串的信息摘要值,將該信息摘要值與先前存儲的加密函數(shù)索引 隨機串的信息摘要值進行比對,從而判斷新生成的加密函數(shù)索引隨機串是否已使用過,如 果是,則重新生成加密函數(shù)索引隨機串,否則保存所生成的加密函數(shù)索引隨機串待用。在保 存待用的加密函數(shù)索引隨機串后,保存所有加密函數(shù)索引隨機串的信息摘要值。本發(fā)明中,生成并存儲數(shù)據(jù)加密過程中所使用和產生的如明文分組信息、加密函數(shù)集合及被分配的每個加密函數(shù)索引、每個加密函數(shù)對應的密鑰、數(shù)據(jù)采集時所使用的隨 機種子、再次生成所加密的明文對應的加密函數(shù)索引隨機串的信息以及遍歷加密函數(shù)索引 隨機串起始的游標位置信息,形成解密信息。參見圖4,本發(fā)明實施例提供了一種數(shù)據(jù)加密裝置,為了便于說明,僅示出了與本 發(fā)明有關部分,該裝置包括分組模塊40、加密函數(shù)隨機分配模塊41和加密處理模塊42 ;在進行數(shù)據(jù)加密時,分組模塊40將待加密明文中的每位數(shù)據(jù)分成一組,加密函數(shù) 隨機分配模塊41為待加密明文的每位數(shù)據(jù)隨機分配加密函數(shù)用于加密,加密處理模塊42 用加密函數(shù)隨機分配模塊41分配的加密函數(shù)對待加密明文的每位數(shù)據(jù)進行加密,并將加 密的每位數(shù)據(jù)按其對應的明文的位置排列,形成密文輸出。進一步地,該數(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ù)采集結果;索引隨機串生成單元,用于根據(jù)接收的數(shù)據(jù)采集單元發(fā)送的數(shù)據(jù)采集結果,生成 并保存加密函數(shù)索引隨機串。進一步地,加密函數(shù)索引隨機串生成模塊45還包括信息摘要值生成模塊,用于通過信息摘要運算生成索引隨機串生成單元生成的加 密函數(shù)索引隨機串的信息摘要值;存儲模塊,用于存儲信息摘要值生成模塊生成的加密函數(shù)索引隨機串的信息摘要 值;比對模塊,用于將信息摘要值生成模塊生成的信息摘要值與存儲模塊先前存儲的 信息摘要值進行比對,并向加密函數(shù)索引隨機串生成模塊45發(fā)送比對結果。加密函數(shù)索引隨機串生成模塊45根據(jù)比對模塊發(fā)送的信息摘要值相同的比對結 果,重新生成加密函數(shù)索引隨機串,并通過比對模塊反復進行信息摘要值的比對,直至產生 不重復的加密函數(shù)索引隨機串。由于完美加密系統(tǒng)需要滿足密文被截獲后的后驗概率等于其先驗概率,對于任意 確定的明文,至少有一種方式可以被轉換為任意的密文,并且這些轉換方式是完全等概的 (具體內容見文獻 Shannon,Claude (1949). Communication Theory of Secrecy Systems, Bell System Technical Journal 28(4) :656-715)。對于存儲在計算機中的二進制明文和 密文而言,因為所有明文和密文都是由一串數(shù)量確定的二進制數(shù)0或1組成,所以對明文任 意確定的一位數(shù)據(jù)0或1,總有至少一種方式使之轉換為密文中對應位置的0或1,本發(fā)明稱這種轉換方式為轉換路徑。為實現(xiàn)本發(fā)明的完美加密需要,需要找到一個最小的加密函數(shù)集合,使之能夠覆 蓋從明文中任意預定位0,1到密文中對應位置0或1的所有轉換路徑。參見圖5,本發(fā)明采用以下方法選擇最小加密函數(shù)集合,其實現(xiàn)步驟為步驟S501 選擇能覆蓋最多明文到密文的可能轉換路徑的加密函數(shù),記錄加密函 數(shù)覆蓋的可能轉換路徑;步驟S502 判斷可能轉換路徑是否全被完全覆蓋,如果是,則執(zhí)行步驟S505,否 則,執(zhí)行步驟S503 ;步驟S503 確定未被覆蓋的可能轉換路徑,選擇另一能覆蓋最多未覆蓋的可能轉 換路徑的加密函數(shù),并記錄當前加密函數(shù)覆蓋的路徑,重新選擇另一能覆蓋最多未覆蓋的 可能轉換路徑的加密函數(shù),執(zhí)行步驟S504 ;步驟S504 判斷是否未被覆蓋的可能轉換路徑都被覆蓋,如果是,則執(zhí)行步驟 S505,否則,執(zhí)行步驟S503 ;步驟S505 將所有選擇的加密函數(shù)組成最小加密函數(shù)集合。為了驗證該方法的可行性,以下舉出兩例,但是本發(fā)明的保護范圍不限于這兩種 實現(xiàn)。記明文任意預定位置X的數(shù)據(jù)M(X)到密文對應位置X’的數(shù)據(jù)E(x’)的轉換為 M(X)-> E(x,),其中 M(x),E(x,)=0或者1。方法A 通過選擇如下加密函數(shù)和密鑰,加密函數(shù)1 異或運算O(OR)。對應運算規(guī)則是
權利要求
1.一種數(shù)據(jù)加密方法,其特征在于,所述方法包括 對待加密明文進行分組;為每組明文數(shù)據(jù)隨機分配加密函數(shù);用加密函數(shù)分別對所述每組明文數(shù)據(jù)進行加密;將所述加密的數(shù)據(jù)按其對應的所述明文位置排列形成密文。
2.如權利要求1所述的數(shù)據(jù)加密方法,其特征在于,在所述對待加密明文進行分組和 為每組明文數(shù)據(jù)隨機分配加密函數(shù)的步驟之間還包括生成預定長度的真隨機數(shù)和由所述真隨機數(shù)組成的預定長度的隨機種子; 建立加密函數(shù)集合,并對所述集合中的每個加密函數(shù)分配索引; 對所述隨機種子進行數(shù)據(jù)采集,生成加密函數(shù)索引隨機串; 同步遍歷所述加密函數(shù)索引隨機串和待加密明文。
3.如權利要求2所述的數(shù)據(jù)加密方法,其特征在于,所述加密函數(shù)集合包括覆蓋從待 加密明文中任意0、1到密文中對應位置0或1的所有轉換路徑的加密函數(shù),相應地,確定所 述覆蓋從待加密明文中任意0、1到密文中對應位置0或1的所有轉換路徑的加密函數(shù)的 步驟包括選擇覆蓋最多明文到密文可能轉換路徑的加密函數(shù),并記錄所述可能轉換路徑; 判斷所述可能轉換路徑是否被完全覆蓋,如果是,則將所有選擇的加密函數(shù)作為所述加密 函數(shù)集合的元素;否則,選擇另一覆蓋最多未覆蓋的可能轉換路徑的加密函數(shù),并記錄當前 加密函數(shù)覆蓋的路徑,重新選擇覆蓋最多未覆蓋的可能轉換路徑的加密函數(shù),直至所選擇 的加密函數(shù)能覆蓋所有的可能轉換路徑,將所有選擇的加密函數(shù)作為所述加密函數(shù)集合的 元素。
4.如權利要求2所述的數(shù)據(jù)加密方法,其特征在于,所述對所述隨機種子進行數(shù)據(jù)采 集,生成加密函數(shù)索引隨機串的步驟還包括通過信息摘要運算生成所述加密函數(shù)索引隨機串的信息摘要值; 將所述信息摘要值與先前存儲的信息摘要值進行比對,如果一致,則對所述隨機種子 再次進行數(shù)據(jù)采集,生成新的加密函數(shù)索引隨機串,再進行信息摘要值的比對,直至確定不 相同的加密函數(shù)索引隨機串,如果不一致,則保存當前所生成的加密函數(shù)索引隨機串。
5.如權利要求1所述的數(shù)據(jù)加密方法,其特征在于,所述每組明文數(shù)據(jù)包括至少一個 明文比特位。
6.一種數(shù)據(jù)加密裝置,其特征在于,所述裝置包括 分組模塊,用于對待加密明文進行分組;加密函數(shù)隨機分配模塊,用于為所述分組模塊分組后的每組明文數(shù)據(jù)隨機分配加密函數(shù);加密處理模塊,用于用所述加密函數(shù)隨機分配模塊分配的加密函數(shù)對所述明文中的數(shù) 據(jù)進行加密,并將所述加密的數(shù)據(jù)按其對應的所述明文位置排列形成密文。
7.如權利要求6所述的數(shù)據(jù)加密裝置,其特征在于,所述裝置還包括真隨機數(shù)生成模塊,用于生成預定長度的真隨機數(shù)和由所述真隨機數(shù)組成的預定長度 的隨機種子;加密函數(shù)建立模塊,用于建立并存儲加密函數(shù)集合;分配模塊,用于對所述加密函數(shù)建立模塊建立的加密函數(shù)集合中的每個加密函數(shù)分配索引;加密函數(shù)索引隨機串生成模塊,用于對所述真隨機數(shù)生成模塊生成的隨機種子進行數(shù) 據(jù)采集,生成加密函數(shù)索引隨機串;同步遍歷模塊,用于同步遍歷所述加密函數(shù)索引隨機串生成模塊生成的加密函數(shù)索引 隨機串和待加密明文。
8.如權利要求7所述的數(shù)據(jù)加密裝置,其特征在于,所述加密函數(shù)索引隨機串生成模 塊包括數(shù)據(jù)采集單元,用于對所述真隨機數(shù)生成模塊生成的隨機種子進行數(shù)據(jù)采集,并發(fā)送 數(shù)據(jù)采集結果;索引隨機串生成單元,用于根據(jù)接收的所述數(shù)據(jù)采集單元發(fā)送的數(shù)據(jù)采集結果,生成 并保存加密函數(shù)索引隨機串。
9.如權利要求8所述的數(shù)據(jù)加密裝置,其特征在于,所述加密函數(shù)索引隨機串生成模 塊還包括信息摘要值生成模塊,用于通過信息摘要運算生成所述索引隨機串生成單元生成的加 密函數(shù)索引隨機串的信息摘要值;存儲模塊,用于存儲所述信息摘要值生成模塊生成的加密函數(shù)索引隨機串的信息摘要值;比對模塊,用于將所述信息摘要值生成模塊生成的信息摘要值與所述存儲模塊先前存 儲的信息摘要值進行比對,并向所述加密函數(shù)索引隨機串生成模塊發(fā)送比對結果。
10.一種數(shù)據(jù)解密方法,其特征在于,所述方法包括獲取解密信息,并根據(jù)所述解密信息從保存的隨機種子中采集數(shù)據(jù)生成加密函數(shù)索引 隨機串;根據(jù)所述解密信息,確定所述加密函數(shù)索引隨機串的遍歷起始位置,同步遍歷所述加 密函數(shù)索引隨機串及待解密密文;根據(jù)所述解密信息確定所述密文中各個比特位數(shù)據(jù)對應的加密函數(shù);根據(jù)所述加密函數(shù),確定所述密文中各個比特位數(shù)據(jù)對應的解密函數(shù);用所述解密函數(shù)將所述密文中各個比特位的數(shù)據(jù)還原成明文中的各個比特位的數(shù)據(jù);將所述明文中各個比特位的數(shù)據(jù)按其所對應的密文位置排列,形成明文。
11.一種數(shù)據(jù)解密裝置,其特征在于,所述裝置包括 獲取模塊,用于獲取解密信息;隨機種子存儲模塊,用于存儲加密時產生的隨機種子;加密函數(shù)索引隨機串生成模塊,用于根據(jù)所述獲取模塊獲取的解密信息,從所述隨機 種子存儲模塊保存的隨機種子中采集數(shù)據(jù)生成加密函數(shù)索引隨機串;同步遍歷模塊,用于根據(jù)所述獲取模塊獲取的解密信息,確定所述加密函數(shù)索引隨機 串的遍歷起始位置,同步遍歷所述加密函數(shù)索引隨機串及待解密密文;加密函數(shù)確定模塊,用于根據(jù)所述獲取模塊獲取的解密信息,確定所述密文中各個比 特位數(shù)據(jù)對應的加密函數(shù);解密函數(shù)獲取模塊,用于根據(jù)所述加密函數(shù)確定模塊確定的加密函數(shù),確定所述密文中各個比特位數(shù)據(jù)對應的解密函數(shù);明文還原模塊,用于用所述解密函數(shù)將所述密文中各個比特位的數(shù)據(jù)還原成明文中的 各個比特位的數(shù)據(jù),并將所述明文中各個比特位的數(shù)據(jù)按其所對應的密文位置排列,形成 明文。
全文摘要
本發(fā)明涉及數(shù)據(jù)加密解密技術領域,特別涉及一種數(shù)據(jù)加解密方法及裝置。所述加密方法包括對待加密明文進行分組;為每組明文數(shù)據(jù)隨機分配加密函數(shù);用加密函數(shù)分別對每組明文數(shù)據(jù)進行加密;將加密的數(shù)據(jù)按其對應的明文位置排列形成密文。所述加密裝置包括分組模塊、加密函數(shù)隨機分配模塊和加密處理模塊。本發(fā)明還提供了一種數(shù)據(jù)解密方法及裝置。本發(fā)明通過在加密時為待加密的明文隨機分配加密函數(shù),用所分配的加密函數(shù)對明文數(shù)據(jù)進行加密排列形成密文,極大地提高了數(shù)據(jù)存儲的安全性,實現(xiàn)了對數(shù)據(jù)的完美加密。
文檔編號H04L9/08GK102064936SQ201010566289
公開日2011年5月18日 申請日期2010年11月29日 優(yōu)先權日2010年11月29日
發(fā)明者劉慧 申請人:北京卓微天成科技咨詢有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1