新四季網

用隨機子序列加密數字圖像的方法

2023-05-15 05:11:31

專利名稱:用隨機子序列加密數字圖像的方法
技術領域:
本發明涉及數字圖像的加密,防止數字圖像中的信息被未經許可者窺視。
背景技術:
將數字圖像的數據重新排序可以使數字圖像面目全非,Arnold變換、幻方算法和混沌圖像置亂算法等引起人們的普遍關注(例如北方工業大學學報第11卷第1期1999年3月「關於Arnold變換的周期性」和「矩陣變換及其在圖像信息隱藏中的應用研究」、中國圖象圖形學報第10卷第5期2005年「基於排序變換的混沌圖像置亂算法」等)。打亂數字圖像的最直接方法莫過於將數字圖像數據字節按照隨機序列重新排列,而由程序語言逐次調用隨機函數rnd就能方便地製造隨機序列的元素Rn=int(L*rnd),其中L是數字圖像的長度(以字節為單位),int是取整數。可是有兩個問題需要解決一是簡單地利用公知的隨機序列加密數字圖像容易破解;二是剔除數值上重複的序列元素要花費許多時間。本發明解決了這兩個問題,有利於數字圖像加密的普及應用。

發明內容
本發明的目的是提高利用已有隨機序列加密數字圖像的破解難度,提高含數字圖像的系統的安全性能。已有的隨機序列可以是公知的隨機序列也可以是其他隨機序列。
為了達到發明的上述目的,首先提供了從已有的隨機序列構造子序列的方法,然後提供了用子序列加密數字圖像的方法即子序列控制圖像數據字節重新排序和用字節值與255之差隨機替代字節值的方法。


圖1為連續錄用母序列元素構造子序列的方框2為在子序列控制下從母序列產生新子序列的方框3為產生用於指定映像空位的子序列的方框4為用子序列加密數字圖像的方框5是數字圖像加密和解密的流程圖。
圖6示例待加密的RGB24格式的數字圖像圖7示例保留了.bmp文件頭的加密後圖像圖8示例待加密的JPEG格式的數字圖像圖9示例保留了.jpg文件頭和標記的加密後圖像具體實施方式
把已有的隨機序列稱為母序列,從母序列構造子序列就是從已有的隨機序列構造子序列。截取母序列的有限長度的一段,丟棄其中一些元素並錄用其餘部分就成為子序列。
構造子序列的最簡單方法就是連續錄用母序列的t個元素,t為整數,如圖1所示。在圖1中,常數C為選用的整數,它限制母序列和子序列的元素取值範圍為0到C-1。函數rnd的所有各次調用確定了母序列Rr的元素R0,R1,R2,....,Rn,....,其中首次調用函數rnd確定了R0=int(C*rnd),第n次調用函數rnd確定了Rn=int(C*rnd)等等。子序列Sa連續錄用了母序列從Rn到Rn+t-1的t個元素A0=Rn;A1=Rn+1;.....;At-1=Rn+t-1這樣產生的子序列與母序列的某一段相吻合,若直接用於加密較易破解,但可以用於控制母序列元素的丟棄或錄用從而產生新的子序列。
利用已經產生了的子序列控制母序列元素的丟棄或錄用,由此產生的新子序列用於加密就難以猜破。圖2說明用子序列控制母序列元素的丟棄或錄並產生新子序列的原理。作為例子,其中用於控制的已有子序列Sa的元素An取值小於4的整數,相當於圖1中的C=4所產生的子序列。圖2中的常數D為選用的整數,它限制母序列和新子序列Sb的元素取值範圍為0到D-1,L是新子序列Sb的指定長度。在圖2中,參數可以自由選擇,參數值不同使得所產生的新子序列也不同。
參數n指定截取母序列的起點;控制規則例如可將圖中的「Ai=0或Ai=3」改為當Ai=1時錄用母序列的元素;子序列Sa的元素取值範圍例如圖中的「Ai可能取值0,1,2,3」可改為取值0或1;
控制規則應與子序列Sa元素的取值範圍相配合。參數成為恢復數字圖像的「鑰匙」的一部分。產生子序列Sa的參數(例如連續錄用母序列的起點)通過影響子序列Sa進而影響新子序列Sb,所以也成為「鑰匙」的一部分。當子序列Sa是由幾段較短序列拼接而成時影響新子序列Sb的參數就更多了。參數越多、參數可選擇的範圍越大使得破解的難度也越大。
用子序列將數字圖像重新排序最容易想到的方案是要求子序列長度等於圖像數據的長度L、子序列元素的取值應為0到L-1並且子序列元素的取值不能重複。這並不難實現,例如在圖2中取D=L並在X點插入一個核查方框子序列新賦值的元素若與已有元素在數值上相同,丟棄這個新賦值的元素並重新尋找下一個可錄用的母序列元素。可是這個方法隨著子序列已有元素的增加,因為數值重複而丟棄新賦值元素越來越頻繁,運行消耗很長時間。
本發明另闢新途預備一個與待加密數字圖像的大小(字節數)相等的圖像,以下稱為映像。映像中的圖像數據字節都作為空位並將被待加密的數字圖像的字節逐個替代,以L表示映像中初始空位總數。映像中的空位按其字節序號的先後編號,稱為空位號。初始的空位號與字節序號一致。子序列Sb的第0個元素B0的數值代表待加密數字圖像中字節序號0對應映像的L個空位中的一個空位號,該字節從待加密數字圖像填入映像的對應空位使得映像的空位總數減少為L-1個,因而映像中的空位號變得與字節序號不盡相同。子序列Sb的第1個元素B1的數值代表待加密數字圖像中字節序號1對應映像的L-1個空位中的一個空位號,該字節從待加密數字圖像填入映像的對應空位並使映像中的空位總數減少為L-2個並且空位號再次變化。以此類推,直到待加密數字圖像中最後一個(第L-1個)字節填入映像剩餘的第0個空位,填滿數據的映像就是加了密的數字圖像。可以看出,子序列Sb的每一個元素的值都唯一地指定映像中的一個空位,元素間數值上可能的重複並不影響加密操作。圖3說明用於指定映像空位的子序列Sb的產生過程。隨著待加密數字圖像的數據字節逐個填入映像使得映像中的空位數目逐個減少,所以子序列Sb的元素取值範圍是隨元素序號遞減的。圖4說明用子序列加密數字圖像的原理。變量V作為載體把待加密數字圖像的字節傳遞給映像的空位。圖4中使用了兩個子序列,都與圖像數據等長(L)。其中子序列Sb用於指定映像空位,是按照圖3構成的。子序列Sc則用於控制圖像數據字節的值V是否用255-V替代。子序列Sc是按照圖2構成的,元素取值0或1(D=2)。電腦程式遷移數據總是按字節序號來遷移數據的,因此有必要把子序列Sb的元素指定的映像空位號「翻譯」成映像字節序號。標誌序列Ff具有L個初始值為0的元素。映像中每有一個空位被填入數據,依據該空位在映像中的字節序號,將Ff的相同序號的元素賦值為1作為標誌。對Ff的數值為0的元素計數S與元素序號j的關係正是映像中空位號與字節序號的對應關係。填滿後的映像就是加了密的數字圖像。
要從映像恢復原數字圖像,預備一個與待加密數字圖像的大小(字節數)相等的圖像,以下稱為反映像。反映像中的圖像數據字節都作為空位並將被映像的字節逐個替代。用上述加密的逆過程把數據字節從映像逐個填入反映像。填滿後的反映像就是解密圖像並且與加密前的數字圖像完全相同。加密過程和解密過程共享產生各子序列的所有參數,各自產生子序列。加密過程和解密過程產生的子序列完全相同。加密過程和解密過程的不同僅僅在於圖像數據的遷移方式。加密過程是把依字節序號大小排列的數據字節填入由子序列指定的映像中的空位從而打亂了數據字節原有的排列。解密過程是把由子序列指定的映像中尚未提取過的的字節依反映像的字節序號順序填入反映像從而恢復了數據字節原有的排列。圖5是數字圖像加密和解密的流程圖。
圖像數據的排列是有格式的,例如常用的RGB格式(.bmp文件)和JPEG格式(.jpg文件),不同格式通常有各自的文件頭和標記。本發明的加密方法允許把文件頭和標記都當成圖像數據一起加密,使用非常簡單,但是加密後的數字圖像因為破壞了文件頭和標記所以在解密之前不能顯示,只有解密之後才能顯示。在實際應用中經許可的觀看者並不需要在解密之前顯示打亂了的圖像。可是破譯高手有可能將竊取到的數據嵌入一幅正常圖像中來窺視竊取到的數字圖像。為此在考察加密效果時有必要保留文件頭和標記,僅將色彩和灰度數據加密,不經解密直接顯示,看原圖像的信息是否已經完全隱藏。圖6是待加密的RGB24格式的數字圖像,圖7是保留了文件頭的加密後圖像,解密後圖像與圖6完全相同。圖8是待加密的JPEG格式的數字圖像,圖9是保留了文件頭和標記的加密後圖像,解密後圖像與圖8完全相同。從圖7和圖9看不出原圖像的痕跡。
權利要求
1.一種加密數字圖像的方法,其特徵是利用已有的隨機序列作為母序列,先從母序列產生子序列,然後用子序列而非母序列對數字圖像加密,包括以下步驟預備一個與待加密數字圖像的大小(字節數)相等的圖像,以下稱為映像,映像中的圖像數據字節在待加密的數字圖像數據填入之前稱為空位;連續錄用母序列的一段元素產生子序列,再用由此產生的子序列控制對於母序列元素的錄用或丟棄從而產生兩個新的子序列用於加密數字圖像;依待加密圖像的字節序號順序逐個提取待加密圖像的字節,上一步驟產生的用於加密數字圖像的兩個子序列中的一個子序列用於控制每個字節的數值替代為(255-字節數值)或不替代,然後填入另一個子序列指定的映像中的空位,填滿後的映像就是已經加了密的數字圖像,以上是加密步驟;以下是解密步驟,預備一個與待加密數字圖像的大小(字節數)相等的圖像,以下稱為反映像;採用與加密時相同的參數和相同的方法產生兩個子序列用於解密數字圖像,它們與加密時產生的用於加密數字圖像的兩個子序列完全相同;上一步驟產生的用於解密數字圖像的兩個子序列中的一個子序列用於指定逐個提取映像中尚未提取的字節,另一個子序列控制每個字節的數值替代為(255-字節數值)或不替代,然後依反映像的字節序號順序填入反映像,填滿後的反映像就是已經解了密的數字圖像。
2.根據權利要求1的一種加密數字圖像的方法,其中所說的待加密圖像的字節填入另一個子序列指定的映像中的空位和一個子序列用於指定逐個提取映像中尚未提取的字節填入反映像,所說的這兩個子序列的元素取值範圍是隨元素序號遞減的,並且容許元素之間在數值上重複。
3.根據權利要求1的一種加密數字圖像的方法,其中所說的將待加密圖像的字節填入子序列指定的映像中的空位,是通過對映像中的空位計數取得該空位在映像中的字節序號,然後按該字節序號填入來實現的。
4.根據權利要求1的一種加密數字圖像的方法,其中所說的在解密時採用與加密時相同的參數和相同的方法產生兩個子序列用於解密數字圖像,所說的參數包括截取母序列的起點、控制錄用和丟棄母序列元素的規則以及子序列元素的取值範圍,還包括產生這兩個子序列時用於控制對於母序列元素的錄用或丟棄的子序列的這些參數,參數是解密與加密共享的鑰匙的一部分。
全文摘要
利用已有的隨機序列作為母序列,從母序列產生子序列。子序列又可以用於控制對於母序列元素的錄用或丟棄從而產生新的子序列。產生子序列的參數越多、參數可選擇的範圍越大,則破解的難度也越大。兩個子序列用於加密數字圖像。其中一個子序列為圖像的數據字節指定新位置實現重新排序,該子序列的元素取值範圍是隨元素序號遞減的,並且容許元素之間在數值上重複。另一個子序列控制數據字節的值是否替代為該值與255之差。對一幅圖像的RGB24格式文件和JPEG格式文件加密後,都看不到原圖像的痕跡。
文檔編號G06T1/00GK1787009SQ20051020076
公開日2006年6月14日 申請日期2005年12月5日 優先權日2005年12月5日
發明者徐原能 申請人:徐原能

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀