主权项 |
一种基于混沌系统与核酸序列库的数字图像加密方法,其特征在于,其步骤如下:(1)将灰度图像I转换为大小为M×N的二维图像矩阵I<sub>1</sub>;(2)利用三维Lorenz混沌系统产生的索引序列X,置乱二维图像矩阵I<sub>1</sub>,得到图像像素位置矩阵I<sub>2</sub>;(3)利用DNA编码规则,将图像像素位置矩阵I<sub>2</sub>中的每个像素灰度值编码成含有4个碱基的DNA序列,得到一个基于DNA编码的图像矩阵I<sub>3</sub>;(4)从核酸编码库中选择一个DNA序列,随机从该序列的R处截取M×N×4个碱基序列;并转换成与图像矩阵I<sub>3</sub>对应的DNA序列的编码矩阵I’;(5)根据碱基运算规则,将图像矩阵I<sub>3</sub>与编码矩阵I’对应的碱基序列进行异或运算,并与前一个像素的密文进行加运算得到新的编码矩阵I<sub>4</sub>;利用三维Lorenz混沌系统产生的索引序列Y置乱编码矩阵I<sub>4</sub>,得到图像的编码矩阵I<sub>5</sub>;其中,前一个像素的密文是指编码矩阵I<sub>4</sub>中的前一个元素;(6)利用超混沌Chen系统产生长度为M×N×4的四进制超混沌序列P={p<sub>1</sub>,p<sub>2</sub>,…,p<sub>n</sub>},根据p<sub>i</sub>的值,确定编码矩阵I<sub>5</sub>中每个碱基被置换的次数,根据碱基置换规则,对编码矩阵I<sub>5</sub>进行碱基置换,得到新的编码矩阵I<sub>6</sub>;选择DNA编码规则,将编码矩阵I<sub>6</sub>中的碱基转换为二进制编码,然后将8位的二进制灰度值转换成十进制的灰度值,得到M×N的图像像素位置矩阵I<sub>7</sub>;(7)根据三维Lorenz混沌系统产生的索引序列Z,置乱图像像素位置矩阵I<sub>7</sub>,得到加密的图像矩阵I<sub>8</sub>并输出;所述四进制超混沌序列P={p<sub>1</sub>,p<sub>2</sub>,…,p<sub>n</sub>}的生成方法为:超混沌Chen系统的方程为:<img file="FDA0001238604120000011.GIF" wi="326" he="247" />其中,x、y、z和ω为系统的状态变量;a,b,c,d和r为系统的控制参数,在a=35、b=3、c=12、d=7和0.085≤r≤0.798时,系统表现为超混沌运动;通过迭代,可以得到4个离散实数值超混沌序列A1:{a<sub>11</sub>,a<sub>12</sub>,…,a<sub>1n</sub>},A2:{a<sub>21</sub>,a<sub>22</sub>,…,a<sub>2n</sub>};A3:{a<sub>31</sub>,a<sub>32</sub>,…,a<sub>3n</sub>},A4:{a<sub>41</sub>,a<sub>42</sub>,…,a<sub>4n</sub>};取4个超混沌序列A1、A2、A3和A4的小数部分:<img file="FDA0001238604120000012.GIF" wi="344" he="305" />其中[x]表示取x的整数部分,分别得到新的序列B1:{b<sub>11</sub>,b<sub>12</sub>,…,b<sub>1n</sub>},B2:{b<sub>21</sub>,b<sub>22</sub>,…,b<sub>2n</sub>},B3:{b<sub>31</sub>,b<sub>32</sub>,…,b<sub>3n</sub>},B4:{b<sub>41</sub>,b<sub>42</sub>,…,b<sub>4n</sub>};根据序列中元素的大小关系,定义四进制超混沌序列P={p<sub>1</sub>,p<sub>2</sub>,…,p<sub>n</sub>}为:<maths num="0001"><math><![CDATA[<mrow><msub><mi>p</mi><mi>i</mi></msub><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mn>0</mn><mo>,</mo></mrow></mtd><mtd><mrow><msub><mi>b</mi><mrow><mn>1</mn><mi>j</mi></mrow></msub><mo>≤</mo><msub><mi>b</mi><mrow><mn>2</mn><mi>j</mi></mrow></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><msub><mi>b</mi><mrow><mn>3</mn><mi>j</mi></mrow></msub><mo>≤</mo><msub><mi>b</mi><mrow><mn>4</mn><mi>j</mi></mrow></msub><mo>;</mo></mrow></mtd></mtr><mtr><mtd><mrow><mn>1</mn><mo>,</mo></mrow></mtd><mtd><mrow><msub><mi>b</mi><mrow><mn>1</mn><mi>j</mi></mrow></msub><mo>≤</mo><msub><mi>b</mi><mrow><mn>2</mn><mi>j</mi></mrow></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><msub><mi>b</mi><mrow><mn>3</mn><mi>j</mi></mrow></msub><mo>></mo><msub><mi>b</mi><mrow><mn>4</mn><mi>j</mi></mrow></msub><mo>;</mo></mrow></mtd></mtr><mtr><mtd><mrow><mn>2</mn><mo>,</mo></mrow></mtd><mtd><mrow><msub><mi>b</mi><mrow><mn>1</mn><mi>j</mi></mrow></msub><mo>></mo><msub><mi>b</mi><mrow><mn>2</mn><mi>j</mi></mrow></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><msub><mi>b</mi><mrow><mn>3</mn><mi>j</mi></mrow></msub><mo>≤</mo><msub><mi>b</mi><mrow><mn>4</mn><mi>j</mi></mrow></msub><mo>;</mo></mrow></mtd></mtr><mtr><mtd><mrow><mn>3</mn><mo>,</mo></mrow></mtd><mtd><mrow><msub><mi>b</mi><mrow><mn>1</mn><mi>j</mi></mrow></msub><mo>></mo><msub><mi>b</mi><mrow><mn>2</mn><mi>j</mi></mrow></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><msub><mi>b</mi><mrow><mn>3</mn><mi>j</mi></mrow></msub><mo>></mo><msub><mi>b</mi><mrow><mn>4</mn><mi>j</mi></mrow></msub><mo>;</mo></mrow></mtd></mtr></mtable></mfenced><mo>.</mo></mrow>]]></math><img file="FDA0001238604120000013.GIF" wi="611" he="270" /></maths> |