專利名稱::基于混沌理論和dna剪接模型的圖像加密方法
技術領域:
:本發明屬于信息安全領域,具體涉及關于隱秘圖像加密的一種方法。種數字圖像的加密方法,是信息安全領域
背景技術:
:隨著數字技術以及計算機網絡的快速發展,人們可以通過網絡便捷的傳輸各種多媒體信息。然而,由于數字產品極易被復制、篡改、非法傳播和蓄意攻擊,為了保證信息在傳輸過程中不會受到竊取和篡改,人們在享受信息傳遞的快捷便利的同時,也對信息傳輸的安全性和保密性提出了更高的要求。與此同時,當今的世界格局發生了翻天覆地的變化,國際關系日趨復雜,各種勢力之間的斗爭愈演愈烈,國防軍隊也加快了信息化建設的步伐,信息安全問題越來越受到各方關注。信息安全問題的解決主要依賴于現代科學理論和高技術手段,依賴現代密碼學核心理論研究、安全體系結構、網絡安全通信協議等成果和關鍵技術以及借助于此生產的安全產品。多媒體數據,尤其是圖像,比傳統的文字蘊涵更大的信息量,因而成為人類社會在信息利用方面的重要手段。因此針對圖像的信息安全保護技術研究也顯得尤為重要,圖像信息安全是集數學,密碼學,信息論,概率論,計算復雜度理論和計算機網絡,以及其它計算機應用技術于一體的多學科交叉的研究課題。目前這個領域的主要研究方向有數字圖像加密技術、數字圖像分存技術、數字圖像隱藏技術和數字水印技術,而隨著科技的發展,信息安全技術的發展也日新月異,各種信息安全新技術層出不窮。信息加密技術就是將原來為明文的信息按某種算法進行處理,使其成為不可讀的一串代碼,通常稱為密文,以達到保護信息不被他人非法閱讀、竊取的目的。該過程的逆過程為解密,即將該編碼信息轉化為原信息的過程。密碼技術是信息安全技術的核心,計算機網絡環境中信息的保密性、完整性、可用性和抵抗性,都需要采用密碼技術來解決,而在信息傳輸過程中引入加密技術能有效的提高信息的安全性。雖然目前關于信息加密的研究正處于蓬勃發展的階段,但信息加密又是一門新興的學科,理論并沒有十分成熟,許多理論模型還在探索中,許多關鍵性問題都亟待解決,基于DNA的信息加密就是其中的一種。DNA加密是近年來伴隨著DNA計算的研究而出現的密碼學新領域,其特點是以DNA為信息載體,以現代生物技術為實現工具,挖掘DNA固有的高存儲密度和高并行性等優點,實現加密、認證及簽名等密碼學功能,但現有關于DNA加密的研究主要集中在如何采用DNA生物鏈進行信息的加密存儲,而由于設備及生物操作技術方面的局限性,該方法在技術上并不具有真正的實用性。目前,DNA密碼在國際上剛剛起步,有效的DNA密碼方法較少,但是由于其所具有的超大規模并行計算能力、超低的能量消耗和超高密度的信息存儲能力,使得DNA密碼在對實時性要求不高的大規模并行數據加密、安全數據存儲、身份認證、數字簽名和信息隱藏等密碼學應用中具有獨特的優勢,并逐漸成為信息加密領域中的一個重要研究方向。
發明內容針對隱藏圖像信息的加密問題,本發明結合DNA計算中的剪接模型與混沌理論,3提出一種基于混沌理論和DNA剪接模型的圖像加密方法,該方法研究基于DNA序列的圖像信息分組加密技術,增強秘密圖像的隱秘性,實現圖像信息的加密。本發明的技術方案是首先設定DNA編碼規則,將秘密圖像進行DNA編碼,獲得DNA明文序列,并生成相應的混沌序列;根據生成的混沌序列及DNA明文序列,基于DNA剪接計算模型,設計DNA序列分組加密算法實現圖像信息加密。其具體步驟如下步驟1、首先根據需要進行加密的圖像大小,確定所需DNA序列的長度和數量,并將灰度圖像轉化為二值序列;步驟2、設計DNA編碼規則單鏈DNA序列由四種堿基A(adenine)、C(cytosine)、G(guanine)、T(thymine)組成,其中A與T、C與G互補。用00、01、10、11分別對DNA序列中的四個堿基進行二進制編碼,共有4!=24種編碼組合。由于二進制數字0與1互補,從而OO與11互補,Ol與10互補,故在24種數字編碼中,有8種編碼滿足編碼準則,選擇其中一種作為當次編碼的規則,具體的編碼規則見表l。表lDNA序列的8種編碼、解碼映射準則<table>tableseeoriginaldocumentpage4</column></row><table>步驟3、根據選擇的DNA編碼規則,將圖像的二值矩陣轉化成DNA明文序列,如圖1所示;步驟4、根據生成的DNA明文序列的長度,設計其序列分割方法,將DNA明文序列分割成DNA明文子序列組。為了實現基于DNA剪接模型的加密,即實現DNA序列的剪接與拼接,需要將DNA明文長序列分割成若干的DNA明文子序列,即生成DNA明文子序列組,以DNA明文子序列進行DNA序列的剪接計算。本發明采用的是將DNA序列長度進行開方的方式來選擇子序列的分組數,比如一個256X256的DNA序列,就被割成256個子序列,每個序列的DNA堿基數為256個。步驟5、針對秘密圖像生成的DNA明文子序列組,設計相應的混沌置換矩陣,其中生成混沌置換矩陣的初始參數作為加密的密鑰保存。混沌是確定性系統中的一種貌似隨機的運動。混沌系統具有確定性、有界性、對初始條件的敏感性、拓撲傳遞性和混合性等性質,產生的混沌序列是一種具有良好隨機性、相關性和復雜性的偽隨機序列,其結構復雜,難以分析和預測。因此,利用混沌動力系統產生混沌序列來進行隱秘圖像的加密,可以滿足加密算法的安全性要求。本發明的混沌序列是采用典型的Logistic映射所產生,其定義如下xn+1=iixn(l-xn)(4)其中iiG,xnG(O,l),n=0,1,2,…。當0<ii《3.569945時,該動力系統從穩定狀態分叉產生倍周期;當3.569945<y《4時,該動力系統進入混沌狀態,即由初始條件x。在Logistic映射的作用下所產生的序列{xn|n=0,l,2,*"}是非周期、不收斂的,且對初始條件非常敏感。實驗表明,初始條件任意的改變都會呈現出完全不同的迭代軌跡,因此我們設定混沌序列參數及初值K={,x。,s}作為加密算法的密鑰,以Logistic混沌映射算法生成混沌序列。在獲得相應的混沌序列之后,將該混沌序列進行二值化,即設定一個閾值,序列中的數值大于等于該閾值的設為l,小于該閾值的設為O,進而獲得混沌二值序列。而由于基于DNA剪接模型的圖像加密算法需要的是混沌置亂矩陣,因此,采用與DNA序列分割同樣的方式,將該混沌二值序列也轉化成相應于DNA子序列組的混沌置換矩陣。步驟6、基于DNA剪接模型制定分組加密規則表,并結合混沌置換矩陣對此信息進行加密,獲得DNA密文序列;剪接模型被用來描述DNA計算,就是將實際的DNA重組抽象為數學上的剪接操作,目前剪接系統已被證明具有計算完備性。剪接模型可以用一個四元組A=(V,T,A,R)表示出來。對信息進行加密的最根本目的是將原有的信息(明文)通過一定的過程變為完全不同的一種形式(密文)再進行傳輸,從而保證信息傳輸的安全性。對剪接模型的分析可以看到,如果將剪接規則作用于兩個信息序列x=XlulViyi和y=x2u2v2y2,切片重組后可以得到另外兩個序列z=xlUlv2y2和w=x^v仏,過程如圖2所示。在加密時,只要將要處理的明文轉化為一組子序列,并將其作為剪接模型中要處理的序列集合A,而將生成的混沌置亂矩陣作為變換的催化酶,依照系統的重組規則集合R進行剪接處理,經過系統處理后A中的序列將被重組而得到L(A),再將L(A)中的序列連接起來就形成密文序列組。明文序列組和密文序列組將有足夠的不同,從而實現了保密的目的。步驟7、根據獲得的DNA密文序列,以編碼算法的逆過程進行解碼,得到加密圖像信息;首先將獲取的DNA密文子序列組進行拼接,生成新的DNA密文序列,然后按步驟2的編碼規則,對DNA密文序列進行解碼,得到圖像的二值序列并將其轉化成灰度圖像,完成圖像的加密過程。在獲得加密圖像之后,我們可以采用相應的算法和密鑰對加密圖像進行解密,具體步驟如下步驟1、根據需要進行加密的圖像大小,確定所需DNA序列的長度和數量,并將灰度圖像轉化為二值序列;步驟2、選擇與加密過程相同的編碼規則,將二值序列轉化為DNA密文序列,并將其以同樣的方式分割成DNA密文子序列組;步驟3、根據獲得的密鑰和混沌映射算法,將密鑰作為混沌映射算法的初始參數,重新生成混沌序列,并以同樣的方式將其轉換為混沌二值置亂矩陣;步驟4、基于DNA剪接模型的加密算法的逆過程,對DNA密文序列進行解密,獲得DNA明文子序列組,并將其拼接成DNA明文序列;步驟5、以加密過程中的編碼規則進行DNA序列解碼,獲得圖像二值明文序列,并轉換成隱密圖像的灰度圖。本發明與現有技術相比具有以下優點1、由于DNA計算具有的超大規模并行計算能力、超低的能量消耗和超高密度的信息存儲能力,而混沌系統具有保密性強、隨機性好、密鑰量大、更換密鑰方便等優點。結合DNA密碼和混沌理論的優點,采用混沌映射的方式生成密鑰,以DNA剪接系統的方式來實現圖像的DNA序列加密,進而實現圖像加密,大大降低了解密的可能性,有效的提高了圖像的加密強度。2、該方法通過將圖像以DNA偽碼的方式進行加密,具有很強的新穎性,為將來基于生物操作的DNA加密方法提供了一種可能。同時,該方法還有密鑰空間大,加密效果好,加密圖像能有效抵抗窮舉攻擊和統計分析攻擊等優點,能有效的實現圖像加密保護。圖1是本發明的圖像編碼圖;圖2是本發明的DNA剪接模型示意圖;圖3是本發明的基于DNA剪接模型的圖像加密系統流程圖;圖4是本發明的直方圖分析結果圖;圖5是本發明的密鑰敏感性分析圖;圖6是本發明的水平方向相關系數分析圖。具體實施例方式結合圖3對本發明的實施過程作詳細說明,但本發明的保護范圍不限于下述實施例。實施例采用了Lena彩色圖像,圖像大小為512X512,具體的加密過程如下1、圖像預處理本發明所涉及的是灰度圖像的加密,因此采用Matlab的rgb2gray函數將Lena圖像轉化為灰度圖像。2、圖像的DNA編碼(1)圖像灰度矩陣轉化為二進制Lena的灰度圖像像素大小為512X512,灰度值在之間,采用Matlab的dec2bin函數,將該圖像矩陣轉化成二進制矩陣。(2)選擇編碼規則由技術方案步驟2可知,可選編碼規則共有8種,通過設置初始參數的方式選擇其中的一種作為當次加密的編碼規則,比如選取規則1作為本次實驗的編碼規則。(3)DNA編碼按上述步驟獲得圖像的二進制矩陣和編碼規則之后,將該圖像進行DNA編碼,獲得DNA明文序列,該序列長度為512X512X8/2=1048576,部分序列編碼過程如圖1所示;(4)DNA序列分割采用將DNA序列長度進行開方的方式來選擇子序列的分組數,將長度為1048576的DNA明文序列分割成1024個DNA子序列,每個子序列的長度為1024。為K:3、混沌置換矩陣生成(1)混沌序列生成由技術方案步驟5可知,該置換矩陣的由Logistic映射產生,設置其參數及初值ii,x。,s}={3.99998,0.3256362528,150},獲得1024X1024的混飩序列。(2)混沌序列二值化設置閾值為Th=0.5,將混沌序列轉化為二值序列,其中大于等于Th的值設為1,小于Th的值設為O。(3)將混沌序列轉換成1024X1024的混沌置換矩陣B。4、DNA序列加密基于剪接系統,以混沌置換矩陣對DNA子序列組進行加密,加密規則如下如果Bij=O,無操作;如果By=1,i>j,將第i個DNA子序列的前三分之一(四舍五入)與第j個子序列的前三分之一(四舍五入)進行互換;否則如果By=1,i<j,將第i個DNA子序列的后三分之一(四舍五入)與第j個子序列的后三分之一(四舍五入)進行互換;否則如果By=1,i=j將第i個DNA子序列的所有堿基取補,即實現堿基的A和T互換,C和G互換。之后,為了進一步實現DNA序列的加密,將每一個子序列再次分割成128X8的子子序列,以相同的方式,生成128X128的混沌置換矩陣,并進行子子序列的加密,最終完成DNA序列的加密過程。5、DNA序列解碼以分割過程的逆過程,將DNA密文子序列拼接成DNA密文序列,并以編碼的逆過程進行DNA密文序列的解碼,生成加密圖像。加密性能評價分別采用直方圖分析,密鑰敏感性分析以及相關性分析等方法對加密圖像進行性能評測。直方圖分析是最為常見的一種統計攻擊方法,攻擊者可以利用像素灰度值的統計特性來恢復原圖像,該方法的評測結果如圖4所示。密鑰敏感性分析主要針對初始密鑰來進行攻擊,較常用的有窮舉攻擊法,而本加密方法對密鑰極為敏感,只要解密密鑰和加密密鑰稍有不同,將無法正確解密,而且錯誤解密結果不能反映與明文有關的信息。因此,該方法也具有較好的抗窮舉攻擊能力,實驗結果如圖5所示。相關性分析是另一種統計攻擊方法,它主要采用相鄰像素之間的相關性來進行統計分析攻擊,而相鄰像素的相關性越小則說明該加密算法的抗攻擊能力越好,具體的實驗結果如表2及圖6所示表2原圖與加密后圖像的相關系數結果原始圖像加密圖像水平方向0.97540.03947<table>tableseeoriginaldocumentpage8</column></row><table>由評測結果可以看出,該方法具有很好的加密效果,對密鑰具有很高的敏感性,同時也能有效的抵抗直方圖和相關性分析等統計分析攻擊。權利要求一種基于混沌理論和DNA剪接模型的圖像加密方法,其特征在于,該方法包括圖像的DNA編碼、用于加密的混沌置換矩陣生成及基于DNA剪接模型的DNA序列加密算法,其主要的加密步驟如下(1)根據需要進行加密的圖像大小,確定所需DNA序列的長度和數量,并將灰度圖像轉化為二值序列;(2)設定DNA編碼規則,并基于該編碼規則將圖像二值序列編碼成DNA明文序列;(3)根據生成的DNA明文序列的長度,設計其序列分割方法,將DNA明文序列分割成DNA明文子序列組;(4)按DNA明文子序列個數及其長度,選擇混沌映射算法及參數,生成相應的混沌置換矩陣,其中生成混沌置換矩陣的初始參數作為密鑰;(5)基于DNA剪接模型計算方式,設計加密算法,以混沌置換矩陣對DNA明文子序列組進行加密,生成DNA密文子序列組,并將其進行拼接,生成DNA密文序列;(6)將DNA密文序列按相應的編碼規則進行解碼,獲得加密圖像,完成隱秘圖像的加密過程。2.—種基于混沌理論和DNA剪接模型的圖像解密方法,其特征在于,具體解密步驟如下(1)根據需要進行加密的圖像大小,確定所需DNA序列的長度和數量,并將灰度圖像轉化為二值序列;(2)選擇與加密過程相同的編碼規則,將二值序列轉化為DNA密文序列,并將其以同樣的方式分割成DNA密文子序列組;(3)根據獲得的密鑰和混沌映射算法,將密鑰作為混沌映射算法的初始參數,重新生成混沌序列,并以同樣的方式將其轉換為混沌二值置亂矩陣;(4)基于DNA剪接模型的加密算法的逆過程,對DNA密文序列進行解密,獲得DNA明文子序列組,并將其拼接成DNA明文序列;(5)以加密過程中的編碼規則進行DNA序列解碼,獲得圖像二值明文序列,并轉換成隱密圖像的灰度圖,完成圖像的解密過程。全文摘要本發明公開了一種基于混沌理論和DNA剪接模型的圖像加密技術。DNA加密是近年來伴隨著DNA計算的研究而出現的密碼學新領域,其特點是以DNA為信息載體,以現代生物技術為實現工具,挖掘DNA固有的高存儲密度和高并行性等優點,實現加密、認證及簽名等密碼學功能。而混沌系統由于其所具有的寬頻譜、類隨機性、對結構參數及初始狀態的極端敏感性等一系列性質,具有難以重構和預測的特點,是密碼學研究的一個重要領域。結合DNA密碼和混沌理論的優點,我們提出了一種基于混沌與DNA剪接模型的圖像分組加密技術。該方法首先設定DNA的編碼規則,將秘密圖像進行DNA編碼及優化,獲得DNA明文序列,并生成相應的混沌序列;根據生成的混沌序列及DNA明文序列,基于DNA剪接計算模型,設計DNA序列分組加密算法實現圖像的信息加密,有效的提升了圖像信息的加密效果。文檔編號H04L29/06GK101719908SQ200910220330公開日2010年6月2日申請日期2009年11月26日優先權日2009年11月26日發明者周昌軍,張強,魏小鵬申請人:大連大學