CN116961904A - 一种基于双置乱与受控dna编码的企业信息图像加密方法 - Google Patents
一种基于双置乱与受控dna编码的企业信息图像加密方法 Download PDFInfo
- Publication number
- CN116961904A CN116961904A CN202310998017.XA CN202310998017A CN116961904A CN 116961904 A CN116961904 A CN 116961904A CN 202310998017 A CN202310998017 A CN 202310998017A CN 116961904 A CN116961904 A CN 116961904A
- Authority
- CN
- China
- Prior art keywords
- sequence
- chaotic
- image
- scrambling
- dna
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000000739 chaotic effect Effects 0.000 claims abstract description 152
- 108020004414 DNA Proteins 0.000 claims abstract description 91
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 77
- 108091028043 Nucleic acid sequence Proteins 0.000 claims abstract description 34
- 238000012545 processing Methods 0.000 claims abstract description 8
- 239000011159 matrix material Substances 0.000 claims description 16
- 125000004122 cyclic group Chemical group 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000013178 mathematical model Methods 0.000 claims description 4
- 239000002773 nucleotide Substances 0.000 claims description 4
- 125000003729 nucleotide group Chemical group 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 abstract description 3
- 238000004891 communication Methods 0.000 abstract description 3
- 238000004458 analytical method Methods 0.000 description 11
- 238000009792 diffusion process Methods 0.000 description 11
- 238000009826 distribution Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 10
- 230000009466 transformation Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 8
- 238000000546 chi-square test Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000035945 sensitivity Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 235000002566 Capsicum Nutrition 0.000 description 5
- 239000006002 Pepper Substances 0.000 description 5
- 241000722363 Piper Species 0.000 description 5
- 235000016761 Piper aduncum Nutrition 0.000 description 5
- 235000017804 Piper guineense Nutrition 0.000 description 5
- 235000008184 Piper nigrum Nutrition 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 150000003839 salts Chemical class 0.000 description 5
- 238000010206 sensitivity analysis Methods 0.000 description 5
- 230000000295 complement effect Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000005520 cutting process Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000010219 correlation analysis Methods 0.000 description 2
- OPTASPLRGRRNAP-UHFFFAOYSA-N cytosine Chemical compound NC=1C=CNC(=O)N=1 OPTASPLRGRRNAP-UHFFFAOYSA-N 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- UYTPUPDQBNUYGX-UHFFFAOYSA-N guanine Chemical compound O=C1NC(N)=NC2=C1N=CN2 UYTPUPDQBNUYGX-UHFFFAOYSA-N 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004445 quantitative analysis Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- RWQNBRDOKXIBIV-UHFFFAOYSA-N thymine Chemical compound CC1=CNC(=O)NC1=O RWQNBRDOKXIBIV-UHFFFAOYSA-N 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 229930024421 Adenine Natural products 0.000 description 1
- GFFGJBXGBJISGV-UHFFFAOYSA-N Adenine Chemical compound NC1=NC=NC2=C1N=CN2 GFFGJBXGBJISGV-UHFFFAOYSA-N 0.000 description 1
- 108091026890 Coding region Proteins 0.000 description 1
- 102000053602 DNA Human genes 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 229960000643 adenine Drugs 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 229940104302 cytosine Drugs 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 208000035475 disorder Diseases 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 235000012434 pretzels Nutrition 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 229940113082 thymine Drugs 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/123—DNA computing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/001—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using chaotic signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/44—Secrecy systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Genetics & Genomics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Power Engineering (AREA)
- Image Processing (AREA)
Abstract
本发明提出了一种基于双置乱与受控DNA编码的企业信息图像加密方法,步骤为:对图像P进行SHA‑256算法处理得到密钥,计算3D混沌系统的两组初始参数;将两组初始参数分别带入到3D混沌系统中进行迭代得到混沌序列;从一混沌序列中截取序列与一混沌序列对图像P的子块进行随机螺旋置乱得到图像P 1;从一混沌序列中截取序列对图像P 1进行比特交叉置乱得到图像P 2;根据受控DNA编码方法分别对图像P 2和一个混沌序列进行编码得到两个DNA序列;对两个DNA序列进行密文反馈;根据一个混沌序列选择的DNA编码规则进行解码,得到密文图像。本发明可以有效抵抗统计攻击、差分攻击、噪声攻击、裁剪攻击等,且安全有效,可以广泛使用于图像的通信传输。
Description
技术领域
本发明涉及数字图像加密的技术领域,尤其涉及一种基于双置乱与受控DNA编码的企业信息图像加密方法。
背景技术
随着信息技术的飞速发展,企业日常业务涉及大量的图像数据,比如,企业之间签署的合同备案信息等。这些图像数据可能包含机密的商业信息、个人身份信息、交易记录等敏感内容。因此,确保这些图像数据的安全性和保密性对于企业来说变得至关重要。
在过去,企业信息系统中的图像数据安全主要依靠传统的加密技术,如对称加密和非对称加密。这些方法在某些情况下可以很好地保护图像数据,但在图像加密中也面临一些挑战。传统的加密方法可能会导致图像加密后的体积增加、加密解密速度较慢,并且可能存在安全性方面的漏洞。
图像加密技术可以保证高水平的保密程度,具有很高的研究价值。图像加密技术简单来说就是尽可能地使图像产生混淆,混淆程度越高加密效果就越好,加密后图像一般表现出噪点图的特征,使得攻击者难以破解。图像加密是一种可以有效保护图像信息不被泄露的技术,目前使用的置乱方法对降低相邻像素的相关程度有限。
当前图像加密方案结构大多采用基于混沌的“置乱+扩散”的方法,经此方法加密后的图像安全等级较高。基于混沌的图像加密方案发展迅速,在20世纪混沌被科学家发现,成为了社会发展的重要影响因素。R.Matthews在1989年推导得出Logistic混沌映射,并将混沌映射用于图像加密之中,开启了基于混沌的图像加密方案的研究进程。混沌映射经过数十年的发展,其随机性、系统复杂性等优点用于图像加密方案之中可以使得加密方案的效率大幅度提升,目前图像加密技术大多基于混沌系统。
置乱是对数字图像进行像素位置变换、像素值替换或二者结合。像素位置变换大多采用路径扫描、空间填充曲线、分块置乱等达到置乱目的;像素值替换大多采用一定的规则,将原图像中的像素值替换成给定规则对应的像素值,达到置乱目的。Wang等人在2021年提出的基于动态行加扰和之字形变换的图像加密方案中,根据不同上下三角矩阵以及不同的方向顺序进行之字形变换,该方法可以迅速扫描像素,但是扫描出的像素序列随机性较低。Erdal等人在2023年提出了一种基于Durstenfeld随机洗牌算法和之字形变换的图像加密方案,在之字形扫描的基础上加入随机洗牌算法,提升了算法的随机性。Wang等人在2020年提出了基于动态螺旋变换的图像加密算法,通过混沌系统生成的混沌序列来随机选取每层螺旋扫描方向,来对图像像素进行置乱。Xian等人在2022年提出了螺旋变换与分形排序矩阵结合的图像加密方案,通过螺旋的模式生成分型矩阵,再根据分型矩阵来置乱整个图像实现加密图像。Wang等人在2023年提出了一个基于双向螺旋变换的图像加密算法,改善了螺旋变换的路径单一的问题,有效提升了加密方法的效率。但是螺旋变换的路径单一和随机性差的问题仍需要进一步解决,以达到更好的加密效果。在比特级置乱方面,Zhou等人提出了一种将像素值转为比特位平面的图像加密方案,可以快速有效地改变数字图像的像素值。Zhao等人提出了一种基于比特位的循环位移图像加密方案。大多数的比特级置乱方法都是行列单独进行,也就是行操作完再对列进行操作,具有较强的规律性。
扩散环节可以快速将图像中的微小变化传播至整个密文图像中,提升密文图像的混淆程度。目前有基于代数运算、DNA编码运算和卷积运算等扩散方法。DNA编码是将图像信息转为DNA序列,将DNA序列结合DNA加法、减法或异或操作进行运算,之后再将得到的DNA序列转换为图像完成加密。基于DNA编码运算的扩散方式由于其运算速度较快、加密效果良好的优点受到了专家学者们的关注,DNA编码已广泛运用于图像加密算法中。Huang等人介绍了基于DNA编码和Galois field混沌映射计算的彩色图像加密方案,该方案通过Galoisfield混沌系统产生混沌序列,利用混沌序列来实现DNA编码排列过程,并通过混沌序列来完成像素的扩散。Liu等人提出了一种使用PWLCM混沌映射生成的混沌矩阵来置乱明文图像,再通过DNA编码与DNA编码的异或操作来扩散图像像素,完成加密过程。Zefreh提出了一种基于DNA编码的图像加密算法,利用DNA的左移和右移规则和DNA加、减、异或操作对图像进行加密,其中DNA编码的规则是通过混沌序列随机选择,加密方案的安全性较高。以上基于DNA碱基互补规则的DNA编码方法得到的DNA序列的碱基分布具有规律性。
申请号为202111045260.7的发明专利公开了一种基于超混沌系统和DNA编码的位平面图像压缩加密方法,主要步骤包括:根据压缩比,采用压缩感知算法对明文图像进行采样;基于压缩后的图像,通过超Lorenz系统得到指定长度的4组伪随机序列;对压缩后的图像进行分解得到8个位平面,结合整数化伪随机序列分别对其进行置乱,将置乱后的8个位平面重组得到置乱图像;对置乱图像以及整数化伪随机序列进行DNA编码,对两者应用基于DNA编码的异或运算,得到密文图像。上述发明所提供的加密算法具有很强的明文相关性,在保证安全性的同时也提高了算法的执行效率。但是上述发明的位平面置乱部分不够充分,以及DNA编码扩散环节较为简单,加密系统易受到外部攻击而被破解。
发明内容
针对现有图像加密方法中的置乱对降低相邻像素的相关程度有限,安全性效果不够优越的技术问题,本发明提出一种基于双置乱与受控DNA编码的企业信息图像加密方法,可以快速有效地将明文图像进行加密,且提高图像的安全性。
为了达到上述目的,本发明的技术方案是这样实现的:一种基于双置乱与受控DNA编码的企业信息图像加密方法,其步骤如下:
Step 1:输入大小M×N的图像P,对图像P进行SHA-256算法处理后得到密钥K,根据密钥K计算3D混沌系统的两组初始参数;
Step 2:将两组初始参数分别带入到3D混沌系统中进行迭代,得到2组共6个长度为M×N的混沌序列,对混沌序列进行重构操作得到混沌序列SeqU、SeqV、SeqW、SeqX、SeqY、SeqZ;
Step 3:依次从混沌序列SeqU中截取序列U1、U2、U3,利用序列U1、U2、U3和混沌序列SeqV对图像P的子块进行随机螺旋置乱,得到置乱后的图像P1;
Step 4:依次从混沌序列SeqW中截取序列W1、W2、W3、W4、W5,利用序列W1、W2、W3、W4、W5对图像P1进行比特交叉置乱,得到置乱后的图像P2;
Step 5:将混沌序列SeqX转为二进制序列,利用二进制序列根据受控DNA编码方法分别对图像P2和混沌序列SeqY进行编码,分别得到DNA序列P3和DNA混沌序列DY;对DNA序列P3和DNA混沌序列DY进行密文反馈,得到DNA序列P4;
Step 6:根据混沌序列SeqZ选择的DNA编码规则对DNA序列P4进行解码,得到密文图像C。
优选地,所述计算3D混沌系统的两组初始参数的方法为:根据SHA-256算法得到输入的图像P的散列值,将散列值转为二进制形式得到256位的序列,序列分为32组,每组包含8位二进制数,得到密钥K={k1,k2,…k32},计算两组3D混沌系统的初始参数:
其中,{u0,v0,w0}和{x0,y0,z0}为得到的两组初始参数,k1-k32是密钥K中的8位二进制数,为异或运算,α、β、γ、δ、ε、∈均为中间计算参数,mod为取模运算,u′0、v′0、w′0、x′0、y′0、z′0均为预设的初始值。
优选地,所述3D混沌系统的数学模型为:
其中,x,y,z为当前状态的值,为下一状态的值,a,b为控制参数,当控制参数取值为a=2.6、b=1.5时3D混沌系统进入混沌状态,在混沌状态中输出的混沌值均在0~1间;
将两组初始参数{u0、v0、w0}和{x0、y0、z0}分别带入到3D混沌系统中分别迭代M×N+1000次,舍弃前1000个混沌序列值,得到2组共6个长度为M×N的混沌序列。
优选地,所述对混沌序列进行重构操作为对第二组混沌序列进行奇偶交叉重构。
优选地,所述奇偶交叉重构是对第二组混沌序列中的3个混沌序列的奇数位与偶数位的数据分别提取出来并重组成长度为M×N的一维序列;
对6个混沌序列进行数值处理,得到取值范围为[0,255]的混沌序列SeqU、SeqV、SeqW、SeqX、SeqY、SeqZ,方法为:
其中,SeqU1、SeqV1、SeqW1为生成的第一组混沌序列,SeqX1、SeqY1、SeqZ1为第二组混沌序列进行奇偶交叉重构后得到的序列。
优选地,所述随机螺旋置乱的方法为:将图像P分为m个大小为n×n的子块{B1,B2,…Bm},其中n<128,当m为非整数时,对图像P进行补零,使得M×N=m×n×n;从混沌序列SeqU中依次截取长度为m的混沌序列U1、U2、U3,混沌序列U1的元素用于选择子块{B1,B2,…Bm}螺旋扫描的起点,混沌序列U2的元素用于选择子块的螺旋扫描方向,混沌序列U3的元素用来对各个子块进行索引置乱,混沌序列SeqV的元素用于各个子块内像素进行索引置乱。
优选地,定义0、1、2、3分别代表子块的左上、右上、左下、右下四个位置;混沌序列U1的元素的值对4取模操作得到的结果分别用于选择子块{B1,B2,…Bm}螺旋扫描的起点;混沌序列U1的元素的值对2取模操作得到的计算结果分别用于选择子块{B1,B2,…Bm}的螺旋扫描方向,0、1分别代表顺时针、逆时针扫描方向;对混沌序列SeqV中依次截取与大小为n×n子块像素数总数相同的数据对子块进行索引排序,利用索引序列对每个子块内的像素进行索引置乱,利用混沌序列U3对各个子块{B1,B2,…Bm}进行索引置乱,得到置乱后的图像P1。
优选地,所述比特交叉置乱的方法为:依次从混沌序列SeqW中截取2个长度为M的混沌序列W1、W2和3个长度为N的混沌序列W3、W4、W5;混沌序列W1的元素对2取模操作计算得到的结果用于选取行的循环移位方向,0、1分别代表行进行左移、右移循环;混沌序列W3的元素对2取模操作计算得到的结果用于选取列的循环移位方向,0、1分别代表列进行上移、下移循环;混沌序列W2和混沌序列W4分别用于选取行和列的循环移位距离,混沌序列W5用于选取当前像素列需要进行循环移位的比特平面;
将图像P1的像素值转化为二进制得到二进制矩阵,二进制矩阵的第i2行根据混沌序列W1的第i2个元素对2取模的值向左或右循环移动W2(i2)位,然后对循环移动后的二进制矩阵的第i2列二进制数的第W5(i2)列根据混沌序列W3的第i2个元素对2取模的值向下或上循环移动W4(i2)位,一直到i2等于M或者N结束循环;然后将二进制数转化为十进制得到置乱后的图像P2;其中,W2(i2)、W5(i2)、W4(i2)分别为混沌序列W2、W5、W4的第i2个元素。
优选地,所述受控DNA编码方法的实现方法为:通过编码类别S判断图像二进制序列的相邻两位比特位c、d的组别,再通过混沌序列SeqX作为控制位来对像素进行编码;然后将混沌序列SeqX转为二进制序列X,根据二进制序列X的值和受控DNA编码规则来选择对应的DNA编码规则。
优选地,所述编码类别
所述受控DNA编码规则为:
其中,S代表第i3对二进制数的编码类别,c代表第i3对二进制数的第一个数,X代表是混沌序列的第i3个数,来选择第i3对二进制数对应的编码,i3=1,2,…4×M×N;
符合碱基互补规则的DNA编码规则为:
基于碱基互补规则的DNA异或操作规则为:
其中,A、C、G、T是DNA中的四种核苷酸;
所述密文反馈的方法为:
其中,i4=1,2,…4×M×N;P3(i4)、DY(i4)和P4(i4)分别表示DNA序列P3、DNA序列DY和DNA序列P4的第i4个元素的值;
根据rules=mod(SeqZ(i5),8)+1选择DNA编码规则对扩散后的DNA序列P4进行解码,i5=1,2,…M×N。
与现有技术相比,本发明的有益效果:
首先通过SHA-256算法来得到输入图像的散列值,从而得到混沌系统的初始参数来产生混沌序列;其次对输入图像进行分块,通过混沌序列对子块间进行索引置乱以及子块内进行随机螺旋置乱与索引置乱;然后再根据比特交叉置乱方法对图像进一步地比特级置乱,充分降低图像中相邻像素之间的相关性。最后在扩散环节中通过受控DNA编码、DNA操作规则来对图像进行扩散,从而得到密文图像,DNA编码方式和DNA操作规则皆是随机选择得到,在解码的时候采用常规DNA编码方式进行解码,提升加密算法的安全性。仿真结果与安全性分析表明,本发明可以快速有效地将明文图像进行加密,且能够有效抵抗噪声攻击、裁剪攻击等。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的流程图。
图2为本发明像素级置乱的示例图。
图3为本发明比特级置乱的示例图。
图4为本发明受控DNA编码的示例图。
图5为本发明图像加密和解密结果的对比图,其中,(a)为Lena的原图、加密图与解密图,(b)为Face的原图、加密图与解密图,(c)为Finger的原图、加密图与解密图,(d)为Mail的原图、加密图与解密图,(e)为Saturn的原图、加密图与解密图。
图6为本发明的敏感性分析的加密结果图,其中,(a)为Key1组加密结果,(b)为Key2组加密结果,(c)为Key3组加密结果,(d)为Key4组加密结果,(e)为Key5组加密结果,(f)为Key6组加密结果。
图7为本发明密钥敏感性分析的解密结果图,其中,(a)为Key1组解密密文图像,(b)为Key2组解密密文图像,(c)为Key3组解密密文图像,(d)为Key4组解密密文图像,(e)为Key5组解密密文图像,(f)为Key6组解密密文图像。
图8为本发明图像加密和解密结果的对比图,其中,(a)为Lena原图、原图直方图、密文图与密文图的直方图,(b)为Face原图、原图直方图、密文图与密文图的直方图,(c)为Finger原图、原图直方图、密文图与密文图的直方图,(d)为Mail原图、原图直方图、密文图与密文图的直方图,(e)为Saturn原图、原图直方图、密文图与密文图的直方图。
图9为本发明加密前后的图像相邻像素相关性的对比图,其中,(a)为原图的垂直方向相关性,(b)为原图的水平方向相关性,(c)为原图的对角方向相关性,(d)为密图的垂直方向相关性,(e)为密图的水平方向相关性,(f)为密图的对角方向相关性。
图10为本发明椒盐噪声攻击结果的对比图,其中,(a)为噪声强度0.01,(b)为噪声强度0.05,(c)为噪声强度0.1,(d)为噪声强度0.01,(e)为噪声强度0.05,(f)为噪声强度0.1。
图11为本发明裁剪攻击结果的对比图,其中,(a)为密图1/16数据丢失,(b)为密图1/8数据丢失,(c)为密图1/4数据丢失,(d)为(a)的解密图像,(e)为(b)的解密图像,(f)为(c)的解密图像。
图12为本发明对全黑、全白图像的加密结果与直方图分析结果,其中,(a)为全黑图像的加密图像,(b)为全黑加密图的直方图,(c)为全白图像的加密图像,(d)为全白加密图的直方图。
图13为本发明加密的全黑和全白加密图像相关性分析结果,其中,(a)为垂直方向,(b)为水平方向,(c)为对角方向。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种基于双置乱与受控DNA编码的企业信息图像加密方法,包括密钥生成、像素置乱、比特交叉置乱、受控DNA编码和DNA扩散五个环节,具体步骤如下:
Step 1:输入大小M×N的图像P,对图像P进行SHA-256算法处理后得到密钥K,根据密钥K计算得到3D混沌系统的两组初始参数。
SHA-256算法可以将任何长度的信息压缩成数据量较小的摘要。在图像加密算法中,将经过SHA-256算法得到的明文图像信息散列值作为密钥,可以使得密钥与明文图像之间具有强相关性,加密算法的密钥敏感性会大幅度提升,而加密算法的安全性也会显著提升。
根据SHA-256算法得到包含输入的图像P信息的散列值,将散列值转为二进制形式得到256位的序列,序列分为32组,每组包含8位二进制数,命名为密钥K={k1,k2,…k32},通过公式(1)和公式(2)计算得到两组3D混沌系统的初始参数:
得到的两组初始参数为{u0,v0,w0}和{x0,y0,z0}。其中,k1-k32是密钥K中的8位二进制数,为异或运算,α、β、γ、δ、ε、∈均为中间计算参数,mod为取模运算,u′0、v′0、w′0、x′0、y′0、z′0是预设的初始值为{0.2,0.2,0.2,0.2,0.2,0.2}。
Step 2:将两组初始参数分别带入到3D混沌系统中迭代M×N+1000次,舍弃前1000个值得到2组共6个长度为M×N的混沌序列SeqU、SeqV、SeqW、SeqX、SeqY、SeqZ,并对混沌序列进行重构操作。
根据混沌系统的混沌性能可以很好的提升图像加密算法的安全性。本发明使用3D混沌系统来产生混沌序列,其数学模型中包含3个非线性函数,其中一个为绝对函数非线性,该混沌系统具有复杂的混沌特性。3D混沌系统的数学模型为:
其中,x,y,z为当前状态的值,为下一状态的值,a,b为控制参数,当控制参数取值为a=2.6、b=1.5时3D混沌系统进入混沌状态,此时具有正的李雅普诺夫指数和稳定的混沌状态,在混沌状态中输出的混沌值均在0~1间。
将两组初始参数{u0,v0,w0}和{x0,y0,z0}分别带入到3D混沌系统中分别迭代M×N+1000次,舍弃前1000个混沌序列值以去除瞬时效应,得到2组共6个长度为M×N的混沌序列:SeqU、SeqV、SeqW、SeqX、SeqY、SeqZ。其中第二组混沌序列对其进行奇偶交叉重构,即分别将3个混沌序列SeqX、SeqY、SeqZ的奇数位与偶数位的数据提取出来,将奇数位序列和偶数位序列拼接成长度为M×N的一维序列,以避免和第一组混沌序列产生类似的混沌周期,进而导致加密效果降低的局面出现。之后根据公式(4)对6个混沌序列进行数值处理:
上述数值处理将混沌序列SeqU、SeqV、SeqW、SeqX、SeqY、SeqZ的取值范围为[0,255]。
Step 3:依次从混沌序列SeqU中截取序列U1、U2、U3,利用序列U1、U2、U3和混沌序列SeqV对图像P的子块进行随机螺旋置乱,得到置乱后的图像P1。
像素级置乱的目的是快速将明文图像的像素位置打乱,掩盖像素之间的高相关性。将图像分为m个大小为n×n的子块,定义为B={B1,B2,…Bm},其中n<128,当m为非整数时,对图像P进行补零,使得M×N=m×n×n,定义0、1、2、3分别代表子块左上、右上、左下、右下四个位置。从混沌序列SeqU中依次截取长度为m的混沌序列U1、U2、U3,序列U1通过公式(5)得到的结果用于选择子块螺旋扫描的起点,序列U2通过公式(6)得到的计算结果用于选择子块的螺旋扫描方向,0、1分别代表顺时针、逆时针扫描方向。其中,i1=1,2,…m。序列U3用来对各个子块进行索引置乱,混沌序列SeqV用于各个子块内像素进行索引置乱。
U′1(i1)=U1(i1)mod 4 (5)
U′2(i1)=U2(i1)mod 2 (6)
图2给出了像素级置乱的置乱过程示例,其中序列U3={6,3,2,7,1,4,9,5,8},对混沌序列SeqV每9个数进行索引排序,得到的索引序列为{8,3,5,2,6,1,4,7,9},{7,1,2,6,9,4,8,3,5},{7,9,5,8,3,4,6,1,2},{6,1,4,8,7,3,9,2,5},{2,8,4,3,5,9,6,7,1},{3,2,8,6,4,7,1,9,5},{7,8,1,9,2,6,3,4,5},{7,4,2,8,6,9,3,1,5},{7,2,1,5,4,8,9,3,6},利用索引序列对每个子块内的像素进行索引置乱,然后利用序列U3对各个子块进行索引置乱。从图2可以看出,图像像素间的相关程度发生由紧密到稀疏的变化,表明上述像素级置乱可以快速有效地对图像进行置乱。
Step 4:依次从混沌序列SeqW中截取序列W1、W2、W3、W4、W5,对图像P1进行比特交叉置乱,得到置乱后的图像P2。
经过像素级置乱的图像相邻像素之间相关性已经大幅度降低,但置乱后的图像容易被穷举方法破解,通过比特级置乱可以很好地将比特位平面扰乱,提升加密效果。比特级置乱算法是利用比特矩阵的行列进行交叉循环移位来同时改变像素位置与像素值。
使用混沌序列SeqW来控制实现行列比特交叉置乱,行将随机进行左右循环移位,列随机进行上下循环移位。依次从混沌序列SeqW中截取2个长度为M的混沌序列W1、W2和3个长度为N的混沌序列W3、W4、W5。序列W1根据公式(7)计算得到的结果用于选取行的循环移位方向,0、1分别代表行进行左移、右移循环,序列W3根据公式(8)计算得到的结果用于选取列的循环移位方向,0、1分别代表列进行上移、下移循环,序列W2和序列W4分别用于选取行和列的循环移位距离,序列W5用于选取当前像素列需要进行循环移位的比特平面。其中,若M>N则i2=M结束循环,反之则i2=N结束循环即若M>N,i2=1,2,…M,反之,i2=1,2,…N。
r=W1(i2)mod 2 (7)
c=W3(i2)mod 2 (8)
图3给出4×4矩阵的比特级置乱示例,i2=4,其中W1(i2)={3,6,1,5},W2(i2)={3,10,4,7},W3(i2)={6,2,4,1},W4(i2)={2,3,1,0},W5(i2)={3,7,1,4}。将图像P1的像素值转化为二进制,具体过程为:图像的二进制矩阵的第i2行根据W1(i2)mod 2的值向左或右循环移动W2(i2)位,然后对循环移动后的二进制矩阵的第i2列二进制数的第W5(i2)列根据W3(i2)mod 2的值向下或上循环移动W4(i2)位,循环上述过程直到i2达到最大值,然后将二进制数转化为十进制得到置乱后的图像P2。通过图3可以得知比特级置乱后矩阵像素间的高相关性被有效减弱。
Step 5:将混沌序列SeqX转为二进制序列,根据受控DNA编码方法分别对图像P2和混沌序列SeqY进行编码,分别得到DNA序列P3和DNA混沌序列DY;对DNA序列P3和DNA混沌序列DY进行密文反馈,得到DNA序列P4。
DNA分子具有高存储容量、低功耗、高并行性等特点,目前已广泛用于图像加密算法中。在生物学中DNA包含A(腺嘌呤)、C(胞嘧啶)、G(鸟嘌呤)、T(胸腺嘧啶)四种核苷酸,在二进制中0和1的排列也可以分为以下4种:‘00’、‘01’、‘10’、‘11’,与四种核苷酸对应。A、C、G、T一共有24种排列方式,在加密算法中一般需要根据DNA碱基互补规则来对DNA序列进行代数运算,所以符合碱基互补规则的编码规则仅有8种如表1所示,表2显示了基于碱基互补规则的DNA异或操作规则。
表1.DNA编码规则
表2.DNA异或规则
经过像素、比特级双重置乱后,图像像素间的相关性已经大幅度降低,最后通过DNA编码来扩散图像,使得所有的像素都被改变。大多算法使用的DNA编码是基于碱基互补规则得到的,其得到的DNA编码序列的比特位分布具有规律性,本发明提出了一种新的编码规则,先通过公式(9)判断图像二进制序列的相邻两位比特位c、d的组别,再通过混沌序列SeqX作为控制位来对像素进行编码。
然后将混沌序列SeqX转为二进制序列X,根据二进制序列X的值和表3来选择对应的DNA编码规则。其中表3中S代表第i3对二进制数的编码类别,c代表第i3对二进制数的第一个数,X代表是混沌序列的第i3个数,来选择第i3对二进制数对应的编码,i3=1,2,…4×M×N。
表3.受控DNA编码规则
图4给出了2×2大小矩阵的受控DNA编码示例,用于控制编码的混沌序列的二进制形式为‘1101011101010010’,图4中第一组二进制数为‘11’,对应S=0,c=1,对应的第一个混沌序列二进制数为‘1’,通过表3可以得出,由混沌值‘1’控制的二进制数‘11’对应编码为‘T’,以此类推得到编码后的序列。
最后通过扩散环节将使图像中的微小变化传播至整个密文图像中。图像经过受控DNA编码被转换为DNA序列P3,混沌序列SeqY经过受控DNA编码得到的DNA序列DY,通过公式(10)进行扩散操作:
i4=1,2,…4×M×N。P3(i4)、DY(i4)和P4(i4)分别表示DNA序列P3、DNA序列DY和DNA序列P4的第i4个元素的值。
Step 6:根据混沌序列SeqZ选择的DNA编码规则对DNA序列P4进行编码,得到密文图像C。
之后根据混沌序列SeqZ通过公式(11)的计算结果结合表1来选择的DNA编码规则对扩散后的DNA序列P4进行解码。
rules=mod(Z(i5),8)+1 (11)
i5=1,2,…M×N。
解密过程与加密过程操作相反,执行加密操作的逆运算即可解密。
本发明的仿真实验是在11代i7 CPU、16GB运存的Microsoft Windows 11电脑的MATLAB R2020a平台进行的,测试图像选自部分企业信息图像和常用标准测试图像Lena等。加密图像大小为256×256的图像,共选取了5组图像,初始值{u′0、v′0、w′0、x′0、y′0、z′0}设置为{0.2,0.2,0.2,0.2,0.2,0.2}。图5显示了5组图像的加密与解密结果,可以得知加密图像为噪点图,且解密图像与原图像完全一致,说明本发明图像加密方法是可以有效对图像进行加密的。下面对加密系统密钥空间、密钥敏感性、抵抗统计攻击、鲁棒性攻击能力进行了分析。
密钥空间指的是可以使用的全体密钥集合,只有加密算法的密钥空间尽可能地大,加密算法抵御暴力攻击的可能性就越高。暴力攻击是攻击者遍历所有可能的密钥来试出正确的密钥,当加密算法的实际密钥空间足够大并远大于理论密钥空间时,暴力攻击将会超出攻击时效性,这样加密算法可以保持相对安全。目前暴力破解攻击的极限是2100,本发明的密钥空间是1015×6,远大于暴力破解攻击的范围,因此加密算法具有较强抵御暴力攻击的能力。
密钥敏感性分析是用来评价加密系统在不同密钥作用下生成的系统初始值之间的差别。图像加密算法的密钥需具有较高的敏感性,当密钥发生微小变化,加密算法的初始值将会与正确密钥产生较大差异,加密结果也会大不相同,解密得到的图像与原图像也完全不同,密钥敏感性可以用来分析加密算法的安全性。密钥敏感性分析中每次只改变一个密钥值,其他密钥保持不变,改变的密钥共有6组数据,如表4所示。
表4.密钥发生微小改变
根据表4中的密钥对Lena图像进行加密,加密结果如图6所示。从图6中可以看出,加密图像很难看出其区别。NPCR和UACI可以用来衡量两张密文图像之间的变化像素数和像素的平均变化强度数,可以通过数据直观得出两个加密图像之间的区别。所有用NPCR和UACI来对不同密钥加密的密文图像与正确密钥加密的密文图像之间进行定量分析,在理想状态下,NPCR的值应该为99.6094%,UACI的值为33.4635%,其表达式如下:
其中,M和N分别为两幅图像的宽度和高度,D(i,j)的定义如式(14)所示:
表5给出了NPCR和UACI的数据结果,通过数据可知NPCR与UACI值都接近理想值。可见本发明的加密算法对加密密钥具有很高的灵敏度。
表5.不同密钥组加密结果与原加密图像的NPCR与UACI值
根据表4中密钥组对Lena密文图像进行解密,解密图像如图7所示,可以得知密钥的微小变化并不能正确解密还原出原始图像,可以得知该加密算法具有较高安全性。通过密钥敏感性分析证明密钥在加密、解密过程中都是具有高敏感性的,可以得知加密算法的密钥具有高度敏感性。
由于明文图像统计规律,当攻击者发现的规律越多,加密算法被破解的风险就越高,所以密文图像需要尽可能地隐藏信息,使攻击者不能从密文图像中获得有效的信息。通过直方图得到像素分布情况从而判断在加密算法抵抗攻击的能力,安全的加密算法可以生成得到均匀分布直方图特征的加密图像,原始图像与加密图像的直方图如图8所示。由图8可以得知密文图像的直方图几乎是均匀分布的,而原图像的直方图分布呈现高低不平分布,通过均匀分布的直方图可知本发明的加密算法的加密效果是比较好的,加密图像的安全性也较高。
由于明文图像的相邻像素之间存在高相关性,且像素值差别较小,安全的加密算法必须具有相邻像素之间低相关性的特征,加密算法才能避免被破解。相邻像素的相关性由相关系数来表示,相关系数的值越接近1,则像素间的相关性越高,对应的密文图像质量较低,反之像素间的相关性较低,对应的密文图像质量越高,也就意味着加密算法的加密效果较好。相关性分析中通过计算Lena原图与Lena密文图像中相邻像素在水平、垂直与对角三个方向上的相关系数值,并观察其值来判断密文图像是否被有效降低像素间的相关性。相关系数的计算由公式(15)来计算,表6显示出了相关系数值计算结果,像素间相关性的散点图如图9所示。
其中,x和y是图像中的一对相邻像素,E(x)和E(y)分别是像素x和y的期望,D(x)和D(y)分别是像素x和y的方差,N为样本中所有像素的个数。
表6.灰度图像的相邻像素相关性
由表6可知,密文图像的相关性接近0。由图9可知,密文图像的散点图相关性大幅度降低。结合两组数据可知本发明的加密算法是可以有效降低图像相邻像素间的高相关性,得到安全性较高的加密结果。
差分攻击是通过对原图像进行微小的改变,利用加密算法对改动前后的两张图分别加密,再通过对比两幅加密图像,来分析得知两幅图像之间的联系,最后通过找到的前后改变的规律破解加密算法。良好的加密算法必须可以很好地抵抗差分攻击,需要在图像发生细微变化时,加密结果需要发生大幅度的变化。
对加密算法的抵御差分攻击能力的分析通过计算两幅加密图像的NPCR与UACI值来衡量两幅加密图像之间的差异。被加密的两个图像之间的差异只存在一个像素值不一样,通过式(13)和式(14)来计算加密结果之间的NPCR与UACI值,结果如表7所示。结果表明,本发明加密算法对明文图像的微小改变具有高敏感性,可以得知本发明是可以很好地抵御差分攻击。
表7.差分攻击的NPCR和UACI结果
图像信息在传输过程中受到干扰时,密文图像可能会存在部分信息丢失的情况,导致解密时难以解密成原图像,良好的加密算法需要具有较强的抵抗噪声干扰的能力。在分析加密算法的抗噪声干扰能力时,可以在加密图像中加上不同强度的椒盐噪声,再对其进行解密得到解密图像。图10(a)-(c)分别给出了添加椒盐噪声密度为0.01、0.05与0.1的Lena图像的密文图像,(d)-(f)给出了对应的解密图像。由图10可知,密文图像经过了噪声攻击之后,可以由算法解密回原图像,且图像的内容仍可以清晰可见
接下来通过量化分析来分析噪声攻击的影响,峰值信噪比(PSNR)是用来分析原图像与解密图像相似性的重要指标,均方误差(MSE)是原图像与加密图像之间的累计平方误差,PSNR值越大,加密算法的鲁棒性就越大,在通过PSNR来分析加密算法的鲁棒性。PSNR计算公式如式(16)所示:
其中,M和N分别代表了图像的高度与宽度,P(i,j)和D(i,j)分别代表(i,j)处原图像与解密图像的灰度值。
密文图像经过椒盐噪声密度为0.01、0.05与0.1的攻击的解密图像与原图像之间计算PSNR值,计算结果如表8所示,通过对比分析可知,本发明的加密算法是具有较好的抗椒盐噪声攻击能力,算法安全性较高。
表8.原图与经过椒盐噪声攻击的密文图像对应的解密图像的PSNR结果
通过安全性较高的加密算法得到的加密图像,再经过不同程度的裁剪攻击之后,仍然可以解密得到原图像。如图11中的(a)-(c)所示,分别显示的是加密图像被裁剪1/64、1/16和1/4部分,然后对三个被裁剪的加密图像进行解密,解密结果如图11(d)-(f)所示,从图中可以得知经过裁剪攻击后的图像经过解密,是可以恢复普通图像的特征的。之后对原图像与解密图像计算PSNR值,计算结果如表9所示,通过分析,可以得出加密算法具有良好的裁剪攻击。
表9.原图与经过裁剪攻击后的解密图像之间的PSNR结果
卡方检验可以用来测试原文图像和密文图像中像素强度值的分布,也可以看作计算灰度图像中像素值出现的频率,通过卡方检验结果可以判断像素分布是否均匀,卡方值越大,像素分布越不均匀。根据卡方检验理论可知,在灰度为0-255范围内的图像中,卡方检验的有效值为293.2478。表10显示了明文图像与密文图像的卡方值,从表10中可知密文图像的卡方检验值均小于卡方检验的有效值,而明文图像的卡方检验值很大,表明本发明的加密算法可以有效地将图像进行加密,且密文图像中的像素值分布均匀。
表10.卡方检验结果
信息熵表示在不确定的事件中,将所有可能发生的事件产生的信息量的期望。可以用来描述图像的不确定性,而分析密文图像的安全性就是要衡量图像中的信息量,就是要消除信息中的不确定性,所以图像的信息熵是将信息中排除了冗余部分后的平均信息量,通过信息熵来其来衡量加密系统的混淆程度。根据公式(17)计算信息熵与局部信息熵:
其中,p(x)是灰度值为i的概率。本发明中图像灰度为N=256。加密图像的理论值为8。结果如表11所示,其值接近8,说明图像被加密之后信息量比较均匀,图像的加密效果良好。
下一步对加密图像进行局部信息熵分析,局部信息熵分析就是将图像分为一个一个区域,对每一个区域进行计算再融合成为图像的信息分布图,分析结果如表12所示,可以得知通过局部信息熵分析,加密结果仍然接近8,说明本发明的加密算法是具有较高安全性的。
表11.不同图像的信息熵
表12.不同图像的局部信息熵
已知明文攻击是攻击者利用已知信息来尝试获取相关密码或其他隐藏信息,选择明文攻击是攻击者对特定图像进行加密,对加密结果进行分析,尝试找到加密与解密图像之间的联系,从而破解加密系统。加密算法中由输入图像来生成密钥,也就是每一个输入图像的密钥是一次性的,所以攻击者无法从已知明文和选择明文攻击来获取有关密钥的信息,因此加密算法可以有效抵抗已知明文和选择明文攻击。
选择明文攻击中,攻击者通常对全白或全黑图像进行加密分析,由于图像像素只有0和255两种,完全没有替换和置乱的过程。图12给出了加密的全白和全黑图像及其直方图,图13中显示了加密的全白和全黑图像中相邻像素在水平、垂直和对角方向上的相关性。
由图12和图13中可以看出,加密后的图像直方图分布十分均匀,加密后的图像相关性分布呈散点图。之后对全黑、全白图像进行了定量分析结果显示在表13和表14。统计结果显示本发明的加密算法可以使得加密图像相邻像素相关性无限接近于0,以及像素的随机性和均匀的直方图。
表13.加密后的全黑全白图像统计分析
表14.加密后的全黑全白图像的差分攻击分析
在对比分析中将本发明和其他加密算法进行了比较。选用尺寸大小为256*256的Lena图像,如表15所示,对相关性、信息熵、NPCR和UACI等指标进行对比分析。可以得知本文提出的加密算法具有较高优越性,其加密效果通过统计分析、差分攻击、噪声攻击等攻击对比后可得,基于双置乱的受控DNA编码的图像加密方案安全性较高,可以广泛使用与图像文件的通信。但是本文提出的算法的仿真时间比一些研究算法较高,在将来我们会对此方面进行改进,以实现更高效率的图像加密。
表15.与其他文献对比
其中,对比算法1来自于文献[Zou CY,Wang XY,Zhou CJ,Xu SJ,Huang C(2022)Anovel image encryption algorithm based on DNAstrand exchange anddiffusion.Applied Mathematics and Computation.],对比算法2来自于文献[Wang XY,Liu L(2020)Image encryption based on hash table scrambling and DNAsubstitution.IEEE Access 99:1-1.],对比算法3来自于文献[Chai X,Gan Z,Yuan Y,Chen Y,Liu X(2021)A novel image encryption scheme based on DNA sequenceoperations and chaotic systems.Neural Comput.Appl.31(1):219-237.]。
本发明基于SHA-256算法处理后的包含图像信息的散列值与3D混沌系统得到了两组共6个一维混沌序列,根据混沌序列随机选取子块螺旋置乱的起点和扫描方向对图像进行了像素级置乱,再根据比特级交叉置乱的方法对图像进行了比特级置乱,最后基于受控DNA编码方法对图像进行DNA编码来实现像素的扩散完成加密。对5幅不同的图像进行了实验测试,结果表明本发明加密后得到的密文图像具有分布平均的直方图,密文图像的相关性接近于0、信息熵值为7.9972,且具有足够大的密钥空间来抵抗穷举攻击,并且可以有效抵抗统计攻击、差分攻击、噪声攻击、裁剪攻击等,是一种安全有效的图像加密算法,可以广泛使用于图像的通信传输。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,其步骤如下:
Step 1:输入大小M×N的图像P,对图像P进行SHA-256算法处理后得到密钥K,根据密钥K计算3D混沌系统的两组初始参数;
Step 2:将两组初始参数分别带入到3D混沌系统中进行迭代,得到2组共6个长度为M×N的混沌序列,对混沌序列进行重构操作得到混沌序列SeqU、SeqV、SeqW、SeqX、SeqY、SeqZ;
Step 3:依次从混沌序列SeqU中截取序列U1、U2、U3,利用序列U1、U2、U3和混沌序列SeqV对图像P的子块进行随机螺旋置乱,得到置乱后的图像P1;
Step 4:依次从混沌序列SeqW中截取序列W1、W2、W3、W4、W5,利用序列W1、W2、W3、W4、W5对图像P1进行比特交叉置乱,得到置乱后的图像P2;
Step 5:将混沌序列SeqX转为二进制序列,利用二进制序列根据受控DNA编码方法分别对图像P2和混沌序列SeqY进行编码,分别得到DNA序列P3和DNA混沌序列DY;对DNA序列P3和DNA混沌序列DY进行密文反馈,得到DNA序列P4;
Step 6:根据混沌序列SeqZ选择的DNA编码规则对DNA序列P4进行解码,得到密文图像C。
2.根据权利要求1所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,所述计算3D混沌系统的两组初始参数的方法为:根据SHA-256算法得到输入的图像P的散列值,将散列值转为二进制形式得到256位的序列,序列分为32组,每组包含8位二进制数,得到密钥K={k1,k2,…k32},计算两组3D混沌系统的初始参数:
其中,{u0,v0,w0}和{x0,y0,z0}为得到的两组初始参数,k1-k32是密钥K中的8位二进制数,为异或运算,α、β、γ、δ、ε、∈均为中间计算参数,mod为取模运算,u′0、v′0、w′0、x′0、y′0、z′0均为预设的初始值。
3.根据权利要求1或2所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,所述3D混沌系统的数学模型为:
其中,x,y,z为当前状态的值,为下一状态的值,a,b为控制参数,当控制参数取值为a=2.6、b=1.5时3D混沌系统进入混沌状态,在混沌状态中输出的混沌值均在0~1间;
将两组初始参数{u0、v0、w0}和{x0、y0、z0}分别带入到3D混沌系统中分别迭代M×N+1000次,舍弃前1000个混沌序列值,得到2组共6个长度为M×N的混沌序列。
4.根据权利要求3所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,所述对混沌序列进行重构操作为对第二组混沌序列进行奇偶交叉重构。
5.根据权利要求4所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,所述奇偶交叉重构是对第二组混沌序列中的3个混沌序列的奇数位与偶数位的数据分别提取出来并重组成长度为M×N的一维序列;
对6个混沌序列进行数值处理,得到取值范围为[0,255]的混沌序列SeqU、SeqV、SeqW、SeqX、SeqY、SeqZ,方法为:
其中,SeqU1、SeqV1、SeqW1为生成的第一组混沌序列,SeqX1、SeqY1、SeqZ1为第二组混沌序列进行奇偶交叉重构后得到的序列。
6.根据权利要求1、2、4或5中任一项所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,所述随机螺旋置乱的方法为:将图像P分为m个大小为n×n的子块{B1,B2,…Bm},其中n<128,当m为非整数时,对图像P进行补零,使得M×N=m×n×n;从混沌序列SeqU中依次截取长度为m的混沌序列U1、U2、U3,混沌序列U1的元素用于选择子块{B1,B2,…Bm}螺旋扫描的起点,混沌序列U2的元素用于选择子块的螺旋扫描方向,混沌序列U3的元素用来对各个子块进行索引置乱,混沌序列SeqV的元素用于各个子块内像素进行索引置乱。
7.根据权利要求6所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,定义0、1、2、3分别代表子块的左上、右上、左下、右下四个位置;混沌序列U1的元素的值对4取模操作得到的结果分别用于选择子块{B1,B2,…Bm}螺旋扫描的起点;混沌序列U1的元素的值对2取模操作得到的计算结果分别用于选择子块{B1,B2,…Bm}的螺旋扫描方向,0、1分别代表顺时针、逆时针扫描方向;对混沌序列SeqV中依次截取与大小为n×n子块像素数总数相同的数据对子块进行索引排序,利用索引序列对每个子块内的像素进行索引置乱,利用混沌序列U3对各个子块{B1,B2,…Bm}进行索引置乱,得到置乱后的图像P1。
8.根据权利要求1或6所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,所述比特交叉置乱的方法为:依次从混沌序列SeqW中截取2个长度为M的混沌序列W1、W2和3个长度为N的混沌序列W3、W4、W5;混沌序列W1的元素对2取模操作计算得到的结果用于选取行的循环移位方向,0、1分别代表行进行左移、右移循环;混沌序列W3的元素对2取模操作计算得到的结果用于选取列的循环移位方向,0、1分别代表列进行上移、下移循环;混沌序列W2和混沌序列W4分别用于选取行和列的循环移位距离,混沌序列W5用于选取当前像素列需要进行循环移位的比特平面;
将图像P1的像素值转化为二进制得到二进制矩阵,二进制矩阵的第i2行根据混沌序列W1的第i2个元素对2取模的值向左或右循环移动W2(i2)位,然后对循环移动后的二进制矩阵的第i2列二进制数的第W5(i2)列根据混沌序列W3的第i2个元素对2取模的值向下或上循环移动W4(i2)位,一直到i2等于M或者N结束循环;然后将二进制数转化为十进制得到置乱后的图像P2;其中,W2(i2)、W5(i2)、W4(i2)分别为混沌序列W2、W5、W4的第i2个元素。
9.根据权利要求8所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,所述受控DNA编码方法的实现方法为:通过编码类别S判断图像二进制序列的相邻两位比特位c、d的组别,再通过混沌序列SeqX作为控制位来对像素进行编码;然后将混沌序列SeqX转为二进制序列X,根据二进制序列X的值和受控DNA编码规则来选择对应的DNA编码规则。
10.根据权利要求9所述的基于双置乱与受控DNA编码的企业信息图像加密方法,其特征在于,所述编码类别
所述受控DNA编码规则为:
其中,S代表第i3对二进制数的编码类别,c代表第i3对二进制数的第一个数,X代表是混沌序列的第i3个数,来选择第i3对二进制数对应的编码,i3=1,2,…4×M×N;
符合碱基互补规则的DNA编码规则为:
基于碱基互补规则的DNA异或操作规则为:
其中,A、C、G、T是DNA中的四种核苷酸;
所述密文反馈的方法为:
其中,i4=1,2,…4×M×N;P3(i4)、DY(i4)和P4(i4)分别表示DNA序列P3、DNA序列DY和DNA序列P4的第i4个元素的值;
根据rules=mod(SeqZ(i5),8)+1选择DNA编码规则对扩散后的DNA序列P4进行解码,i5=1,2,…M×N。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310998017.XA CN116961904B (zh) | 2023-08-09 | 2023-08-09 | 一种基于双置乱与受控dna编码的企业信息图像加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310998017.XA CN116961904B (zh) | 2023-08-09 | 2023-08-09 | 一种基于双置乱与受控dna编码的企业信息图像加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116961904A true CN116961904A (zh) | 2023-10-27 |
CN116961904B CN116961904B (zh) | 2024-04-12 |
Family
ID=88449140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310998017.XA Active CN116961904B (zh) | 2023-08-09 | 2023-08-09 | 一种基于双置乱与受控dna编码的企业信息图像加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116961904B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579756A (zh) * | 2023-11-18 | 2024-02-20 | 郑州轻工业大学 | 基于分块选取Zigzag置乱和轮盘旋转编码的图像加密方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109241755A (zh) * | 2018-08-17 | 2019-01-18 | 中国矿业大学 | 基于三维置乱模型和混沌的图像加密方法 |
CN111682931A (zh) * | 2020-06-05 | 2020-09-18 | 中国矿业大学 | 基于混沌的多音频高维加密方法 |
CN115665340A (zh) * | 2022-10-24 | 2023-01-31 | 郑州轻工业大学 | 一种远程故障诊断系统中的图像加密方法 |
CN116346302A (zh) * | 2023-02-13 | 2023-06-27 | 郑州轻工业大学 | 基于混沌系统和生物进化策略的企业信息图像加密方法 |
-
2023
- 2023-08-09 CN CN202310998017.XA patent/CN116961904B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109241755A (zh) * | 2018-08-17 | 2019-01-18 | 中国矿业大学 | 基于三维置乱模型和混沌的图像加密方法 |
CN111682931A (zh) * | 2020-06-05 | 2020-09-18 | 中国矿业大学 | 基于混沌的多音频高维加密方法 |
CN115665340A (zh) * | 2022-10-24 | 2023-01-31 | 郑州轻工业大学 | 一种远程故障诊断系统中的图像加密方法 |
CN116346302A (zh) * | 2023-02-13 | 2023-06-27 | 郑州轻工业大学 | 基于混沌系统和生物进化策略的企业信息图像加密方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579756A (zh) * | 2023-11-18 | 2024-02-20 | 郑州轻工业大学 | 基于分块选取Zigzag置乱和轮盘旋转编码的图像加密方法 |
CN117579756B (zh) * | 2023-11-18 | 2024-05-24 | 郑州轻工业大学 | 基于分块选取Zigzag置乱和轮盘旋转编码的图像加密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116961904B (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhu et al. | A chaos-based symmetric image encryption scheme using a bit-level permutation | |
Wang et al. | An image encryption scheme based on double chaotic cyclic shift and Josephus problem | |
CN110570344B (zh) | 基于随机数嵌入和dna动态编码的图像加密方法 | |
CN112422266B (zh) | 一种基于约瑟夫遍历和位平面重构的超混沌加密方法 | |
CN115665340B (zh) | 一种远程故障诊断系统中的图像加密方法 | |
CN112714235B (zh) | 一种基于填充曲线和相邻像素比特置乱的图像加密方法 | |
CN116233331B (zh) | 基于分块置乱和dna运算的图像加密方法 | |
CN112769545B (zh) | 基于相邻像素约瑟夫变换和Mealy状态机的图像加密方法 | |
CN110086600B (zh) | 一种基于超混沌系统和变步长约瑟夫问题的图像加密方法 | |
CN116961904B (zh) | 一种基于双置乱与受控dna编码的企业信息图像加密方法 | |
CN112202545B (zh) | 基于y型填充曲线和变步长约瑟夫遍历的图像加密方法 | |
CN109376793B (zh) | 一种基于四维陈氏超混沌系统与K-means聚类的图像加密方法 | |
Kang et al. | Fast image encryption algorithm based on (n, m, k)-PCMLCA | |
CN115955298A (zh) | 基于明文的超混沌图像统一密钥加密方法 | |
Rahul et al. | Dynamic DNA cryptography-based image encryption scheme using multiple chaotic maps and SHA-256 hash function | |
CN117499005A (zh) | 基于4d混沌系统的图像加密方法 | |
Alawida | A novel DNA tree-based chaotic image encryption algorithm | |
CN113300827B (zh) | 一种基于拉丁方的混沌图像加密方法 | |
Dong et al. | Color Image Compression and Encryption Algorithm Based on 2D Compressed Sensing and Hyperchaotic System. | |
Xu | A multiple-image encryption algorithm based on orthogonal arrays with strength 3 | |
Xie et al. | An image encryption algorithm based on novel block scrambling scheme and Josephus sequence generator | |
CN116318615B (zh) | 基于超混沌系统与dna编码结合的图像加密方法和解密方法 | |
CN115442492B (zh) | 基于一维正弦混沌映射和离散u变换嵌入方式的视觉安全图像加密方法 | |
Shakir | A Color‐Image Encryption Scheme Using a 2D Chaotic System and DNA Coding | |
Wang et al. | A novel image shift encryption algorithm based on the dynamic Joseph ring problem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |