CN107481294A - 一种基于混沌映射的图像加密算法及系统 - Google Patents
一种基于混沌映射的图像加密算法及系统 Download PDFInfo
- Publication number
- CN107481294A CN107481294A CN201710671183.3A CN201710671183A CN107481294A CN 107481294 A CN107481294 A CN 107481294A CN 201710671183 A CN201710671183 A CN 201710671183A CN 107481294 A CN107481294 A CN 107481294A
- Authority
- CN
- China
- Prior art keywords
- processing unit
- modules
- module
- data
- address
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Facsimile Transmission Control (AREA)
Abstract
本发明请求保护一种基于混沌的图像加密算法并对其进行硬件实现,涉及混沌密码学领域。该方法包括:先对图像进行预处理,将其分成若干处理单元(PE),再对一个处理单元进行四种加密操作,即加变换(Addition)、混合变换(Mixing)、S盒置换(S‑Box)和K变换(Kolmogorov flow),一次加密完成四个运算,简称为一轮MASK操作。为了达到更好的加密效果,本发明可以进行多轮加密。解密算法的结构与加密算法的结构不必改变,因为MASK四个操作可以变换位置而使得结果不变,此性质也使得硬件设计更加简单。
Description
技术领域
本发明属于基于混沌的图像加密算法领域,具体涉及一种基于混沌映射的图像加密算法及系统。
背景技术
基于混沌的图像加密算法即利用混沌映射实现对图像的加密,隐藏明文图像中的信息的目的。
随着近年来互联网技术的发展,电子银行、APP、网络会议飞速发展,信息安全领域得到越来越多的关注。私密信息的安全也引起人们的注意。与传统的加密算法相比,基于混沌的加密算法工作在无限的连续实数集上,传统的加密系统有时并不适合图像加密领域,因此基于混沌的图像加密算法为数字图像加密提供了新的思路。
基于混沌的图像加密算法的过程通常包括两个阶段,即像素位置的置乱和灰度值的扩散两个阶段,并通过不断重复以上两个阶段达到增强安全性的目的。
发明内容
本发明旨在解决以上现有技术的问题。提出了一种加密和解密过程不需要对硬件基本模块进行修改并且大大节省FPGA实现所需的资源的基于混沌映射的图像加密算法及系统。本发明的技术方案如下:
一种基于混沌映射的图像加密算法,其包括以下步骤:
101、对明文图像进行预处理分割成若干处理单元PE;
102、对每个处理单元PE中的元素进行混合操作;即将处理单元PE中的每个元素peij加起来得到Sum(PE),即:
Sum(PE)=∑∑peij (2.1)
然后将Sum(PE)与每个元素进行加操作后的结果替代此元素;即:
peij=Sum(PE)+peij (2.2)
103、对每个处理单元PE中的元素进行加变换;生成与处理单元PE大小相同的密钥K,让K与PE进行加操作,即:
C=PE+K (2.3)
104、以处理单元PE中每个元素的值做为S盒的地址,取出S盒地址的值来替换原元素,即:
peij=Sbox(peij) (2.4);
105、对每个处理单元PE进行Kolmogorov变换,将处理单元PE中位于坐标(x,y)的元素置乱到处理单元PE中的另一位置Tno(x,y),即:
Tno(x,y)=(ps(x-Fs)+(ymodps),Fs+(ydivps)) (2.5),
其中,o=(n1,n2,…nk),即将PE分为以o为长的单元块;Ps=1/ns;Fs=n1+n2+…+ns,当s=0时,F0=0;
106、针对加密的需求对每个处理单元PE重复步骤102-105若干轮次,直到
进一步的,所述步骤104以处理单元PE中每个元素的值作为S盒的地址具体包括:将处理单元PE中的8个像素作为一个数据来置换S-Box内的一个新数据,如果所用到的显示器是支持256级灰度图像的,则只需要将每个象素作为一个数据来进行S-Box变换。
一种基于混沌映射的图像加密系统,其包括主控Control模块、混合变换M模块、加变换A模块、S盒置换模块、K变换模块和LCD模块,所述主控Control模块是整个系统的控制模块,分别通过五条主控制线启动混合变换M模块、加变换A模块、S盒置换模块、K变换模块和LCD模块的使能信号并输入是否解密操作信号,使得上述模块从RAM中读取原数据,在各操作模块中处理原数据,最后再将结果存入RAM中;所述混合变换M模块,用于将处理单元PE中的每个元素加起来,得到Sum(PE),然后将Sum(PE)与每个元素进行加操作后的结果替代此元素;加变换A模块,进行完混合变换之后生成与PE的长度大小相同的密钥K,让K与PE进行加操作,即位的XOR异或操作;S盒置换模块,以PE中每个元素的值做为S盒的地址,取出此地址的值来替换原元素;K变换模块,用于将每个PE进行Kolmogorov变换,即将PE中位于坐标(x,y)的元素置乱到PE中的另一位置Tno(x,y);LCD模块,用于将RAM内数据显示在液晶显示器上。
进一步的,所述RAM模块仅有一个PE大小的数据空间,存储每个元素的值,通过读写控制线来决定操作,读信号来时,从地址线读取地址,取出RAM中的数据放到地址线上;写信号来时,将数据线上的数据写入地址线对应的位置。读写控制线都是由外部模块控制的。
本发明的优点及有益效果如下:
本发明由于MASK四个操作可以变换位置而使得结果不变,该性质也使得解密过程与加密过程完全相同。此外,四个加密操作计算效率较高。这两个特点节省了FPGA实现所需的计算资源。
附图说明
图1是本发明的硬件实现的微控制/运算流程架构;
图2是本发明提供优选实施例的算法流程图;
图3是原始图像经过各个加密变换后的结果,(a)原始图像;(b)密钥图像;(c)M变换;(d)A变换;(e)S变换;(f)K变换;
图4是多轮加密的结果,(a)MASK2;(b)MASK3;(c)MASK4。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
本发明的目的在于提供一种基于混沌的图像加密算法,利用类似AES的算法结构实现一种易于进行硬件实现的加密算法完成图像加密的任务,并对这个算法进行硬件的实现,本发明的技术方案如下:一种基于混沌映射的图像加密算法,使得明文图像能够通过此算法完成对其信息的隐藏,并对这个算法提供了一个硬件实现方案,针对这个方案进行了硬件实现,其特征在于加密和解密过程不需要对硬件基本模块进行修改并且大大节省FPGA实现所需的资源,包括以下步骤:
S1、将图像分割为若干个处理单元(PE)。
S2、混合变换(M):将PE中的每个元素加起来,即:
Sum(PE)=∑∑peij (公式2.1)
然后将Sum(PE)与每个元素进行加操作后的结果覆盖此元素,即:
peij=Sum(PE)+peij (公式2.2)
此变换可以达到一个元素的变化影响到整个PE的目的。
S3、加变换(A):生成与PE大小相同的密钥K,让K与PE进行加操作,即:
C=PE+K (公式2.3)
在硬件实现中,加操作相当于位的XOR(异或)操作。此操作的安全性来自于密钥的安全。
S4、S盒置换(S):以PE中每个元素的值做为S盒的地址,取出此地址的值来替换原元素,即:
peij=Sbox(peij) (公式2.4)
此变换为是四个操作唯一一个非线性变换,有很好的安全性[3]。
S5、K变换(K):Kolmogorov变换,又被称为generalized Baker映射[4],原理是将PE中位于坐标(x,y)的元素置乱到PE中的另一位置Tno(x,y),即:
Tno(x,y)=(ps(x-Fs)+(ymodps),Fs+(ydivps)) (公式2.5)
其中,o=(n1,n2,…nk),即将PE分为以o为长的单元块;Ps=1/ns;Fs=n1+n2+…+ns,当s=0时,F0=0。
S6、针对加密的需求对每个PE进行多轮MASK操作。
针对MASK加密算法同时提出了一个硬件解决方案并对其进行了硬件实现。其微控制/运算流程架构如图一所示,其中Control模块是整个系统的控制模块,分别通过五条主控制线启动M、A、S、K和LCD模块的使能信号并输入是否解密操作信号,使得各模块从RAM中读取原数据,在各操作模块中根据不同的功能处理原数据,最后再将结果存入RAM中。
RAM模块仅有一个PE大小的数据空间,存储每个元素的值。通过读写控制线来决定操作,读信号来时,从地址线读取地址,取出RAM中的数据放到地址线上;写信号来时,将数据线上的数据写入地址线对应的位置。读写控制线都是由外部模块控制的。
整个数据流的走向如下:
(1)显示原始数据。Control模块启动LCD模块的使能信号;LCD模块初始化,并将数据从RAM中读出写入LCD液晶显示器的DRAM中。
(2)加密操作。Control模块依次启动M、A、S和K模块的使能信号;在加密模块内部,先从RAM中读取要加密的数据,将加密后的数据存入RAM,最后返回一个操作完成信号给Control,以便启动下一模块。(3)一轮加密结束操作。若是所有加密轮数完成,Control模块在得到全部加密完成的返回信号后,启动LCD模块的使能信号,将RAM内数据显示在液晶显示器上。若是还未完成所有的加密轮数,回到2步骤。
如前所述,解密步骤与加密步骤是相反的,因此在解密时需要Control模块发出一个解密信号指示各个模块加密操作与解密操作的区别,并控制基本操作的顺序,并不需要修改四个基本模块,通过这种方式可以大大节省FPGA实现所需的资源。
本发明构思及优点:由于MASK四个操作可以变换位置而使得结果不变,此一性质也使得硬件设计更加简单,同时在解密的过程中并不需要修改四个基本模块,通过这种方式可以大大节省FPGA实现所需的资源。
在各个模块的设计中,M与A模块的运算主要运用了“+”操作,在硬件实现中,“+”操作选择用整数的按位XOR运算来实现。
S模块是以数据的值为地址找到S-Box内的新值来替换旧值,所以并没有复杂的操作,值得注意的是,二值图像是以一个位为像素单位,每位只有0或1两种选择,此设计所选择的是16*16每单元8位的S-Box,所以需要将PE中的8个像素作为一个数据来置换S-Box内的一个新数据。如果所用到的显示器是支持256级灰度图像的,则只需要将每个象素作为一个数据来进行S-Box变换。
K模块起到的是置乱功能,将PE中的某个单元从一个位置通过K映射的算法放到另一个位置上去。根据公式5,此算法使用到了“+”、“-”、“*”、“/”和“mod”运算。然而后三种运算在硬件中属于高消费运算,即占用相当大的处理时间,在硬件设计中应尽量避免。在我们的设计中,根据K映射的特殊性,可以将PE中以o划分的,ns长、Ps宽的块映射到新PE中的一行中。当o确定时,每个元素映射的位置就可以确定,而不需要付出高消费的运算。此系统中所用的o=(4,4,4,4,…4),简化了运算。
实现结果:
图3显示了32*32的原始图像经过各个加密变换后的结果。
多轮加密的结果见图4(MASKi代表第i轮加密的结果):从加密结果来看,密文呈现很强的随机性。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。
Claims (4)
1.一种基于混沌映射的图像加密算法,其特征在于,包括以下步骤:
101、对明文图像进行预处理分割成若干处理单元PE;
102、对每个处理单元PE中的元素进行混合操作;即将处理单元PE中的每个元素peij加起来得到Sum(PE),即:
Sum(PE)=∑∑peij (2.1)
然后将Sum(PE)与每个元素进行加操作后的结果替代此元素;即:
peij=Sum(PE)+peij (2.2)
103、对每个处理单元PE中的元素进行加变换;生成与处理单元PE大小相同的密钥K,让K与PE进行加操作,即:
C=PE+K (2.3)
104、以处理单元PE中每个元素的值作为地址,取出S盒在该此地址上的元素替换原元素,即:
peij=Sbox(peij) (2.4);
105、对每个处理单元PE进行Kolmogorov变换,将处理单元PE中位于坐标(x,y)的元素置乱到处理单元PE中的另一位置Tno(x,y),即:
Tno(x,y)=(ps(x-Fs)+(ymodps),Fs+(ydivps)) (2.5),
其中,o=(n1,n2,…nk),即将PE分为k个长度不等的单元块,每个块的长度依次为n1,n2,...,nk;定义Fs=n1+n2+…+ns,当s=0时,F0=0;ps=Fk/ns
106、针对加密的需求对每个处理单元PE重复步骤102-105若干轮次。
2.根据权利要求1所述的基于混沌映射的图像加密算法,其特征在于,所述步骤104以处理单元PE中每个元素的值做为S盒的地址具体包括:将处理单元PE中的8个像素作为一个数据来置换S-Box内的一个新数据,如果所用到的显示器是支持256级灰度图像的,则只需要将每个象素作为一个数据来进行S-Box变换。
3.一种基于混沌映射的图像加密系统,其特征在于,包括主控Control模块、混合变换M模块、加变换A模块、S盒置换模块、K变换模块和LCD模块,所述主控Control模块是整个系统的控制模块,分别通过五条主控制线启动混合变换M模块、加变换A模块、S盒置换模块、K变换模块和LCD模块的使能信号并输入是否解密操作信号,使得上述模块从RAM中读取原数据,在各操作模块中处理原数据,最后再将结果存入RAM中;所述混合变换M模块,用于将处理单元PE中的每个元素加起来,得到Sum(PE),然后将Sum(PE)与每个元素进行加操作后的结果替代此元素;加变换A模块,进行完混合变换之后生成与PE长度相同的密钥K,让K与PE进行加操作,即位的XOR异或操作;S盒置换模块,以PE中每个元素的值做为S盒的地址,取出此地址的值来替换原元素;K变换模块,用于将每个PE进行Kolmogorov变换,即将PE中位于坐标(x,y)的元素置乱到PE中的另一位置Tno(x,y);LCD模块,用于将RAM内数据显示在液晶显示器上。
4.根据权利要求3所述的基于混沌映射的图像加密系统,其特征在于,所述RAM模块仅有一个PE大小的数据空间,存储每个元素的值,通过读写控制线来决定操作,读信号来时,从地址线读取地址,取出RAM中的数据放到地址线上;写信号来时,将数据线上的数据写入地址线对应的位置。读写控制线都是由外部模块控制的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710671183.3A CN107481294A (zh) | 2017-08-08 | 2017-08-08 | 一种基于混沌映射的图像加密算法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710671183.3A CN107481294A (zh) | 2017-08-08 | 2017-08-08 | 一种基于混沌映射的图像加密算法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107481294A true CN107481294A (zh) | 2017-12-15 |
Family
ID=60599967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710671183.3A Pending CN107481294A (zh) | 2017-08-08 | 2017-08-08 | 一种基于混沌映射的图像加密算法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107481294A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108833733A (zh) * | 2018-06-04 | 2018-11-16 | 河南师范大学 | 一种基于混沌s盒的图像加密算法的解密方法 |
CN109412784A (zh) * | 2018-10-17 | 2019-03-01 | 哈尔滨工业大学(威海) | 一种基于s盒的wsn动态复合混沌加密方法 |
CN110213552A (zh) * | 2019-06-25 | 2019-09-06 | 桂林电子科技大学 | 一种用于视频传输的宽带通信系统 |
CN112311522A (zh) * | 2020-09-23 | 2021-02-02 | 中国人民解放军火箭军工程大学 | 一种基于混合电路系统的信号压缩加密方法 |
CN115277161A (zh) * | 2022-07-22 | 2022-11-01 | 国科华盾(北京)科技有限公司 | 一种基于大数据的网络加密系统 |
-
2017
- 2017-08-08 CN CN201710671183.3A patent/CN107481294A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108833733A (zh) * | 2018-06-04 | 2018-11-16 | 河南师范大学 | 一种基于混沌s盒的图像加密算法的解密方法 |
CN109412784A (zh) * | 2018-10-17 | 2019-03-01 | 哈尔滨工业大学(威海) | 一种基于s盒的wsn动态复合混沌加密方法 |
CN110213552A (zh) * | 2019-06-25 | 2019-09-06 | 桂林电子科技大学 | 一种用于视频传输的宽带通信系统 |
CN112311522A (zh) * | 2020-09-23 | 2021-02-02 | 中国人民解放军火箭军工程大学 | 一种基于混合电路系统的信号压缩加密方法 |
CN115277161A (zh) * | 2022-07-22 | 2022-11-01 | 国科华盾(北京)科技有限公司 | 一种基于大数据的网络加密系统 |
CN115277161B (zh) * | 2022-07-22 | 2024-09-17 | 国科华盾(北京)科技有限公司 | 一种基于大数据的网络加密系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | A novel bit-level image encryption algorithm based on chaotic maps | |
CN107481294A (zh) | 一种基于混沌映射的图像加密算法及系统 | |
Xu et al. | A novel chaotic image encryption algorithm using block scrambling and dynamic index based diffusion | |
Wang et al. | Image encryption using partitioned cellular automata | |
Ye et al. | An efficient pixel-level chaotic image encryption algorithm | |
Kumar et al. | A 2D logistic map and Lorenz-Rossler chaotic system based RGB image encryption approach | |
Wen et al. | Cryptanalysis of an image encryption algorithm using quantum chaotic map and DNA coding | |
Pareek et al. | Image encryption using chaotic logistic map | |
Wang et al. | Cryptanalysis of a parallel sub-image encryption method with high-dimensional chaos | |
Xu et al. | Image encryption based on synchronization of fractional chaotic systems | |
Wang et al. | Novel image encryption algorithm based on cycle shift and chaotic system | |
Souyah et al. | An image encryption scheme combining chaos-memory cellular automata and weighted histogram | |
Zhang et al. | Chaotic image encryption based on circular substitution box and key stream buffer | |
Wang et al. | A novel image encryption scheme based on 2-D logistic map and DNA sequence operations | |
Zhou et al. | Parallel image encryption algorithm based on discretized chaotic map | |
CN102546181B (zh) | 基于密钥池的云存储加解密方法 | |
Zhang et al. | On the security of symmetric ciphers based on DNA coding | |
CN112291056B (zh) | 加密密钥生成器及传输系统 | |
Chao et al. | XOR-based progressive visual secret sharing using generalized random grids | |
Wang et al. | A new image encryption algorithm based on Latin square matrix | |
US20070064933A1 (en) | Method of symmetric key data encryption | |
CN105324956A (zh) | 加密明文数据的方法及设备 | |
Hu et al. | An improved piecewise linear chaotic map based image encryption algorithm | |
CN106651734A (zh) | 二值二维码图像加密、解密的方法和装置 | |
CN105207772A (zh) | 安全地交换消息的加密方法及实现该方法的设备和系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171215 |
|
RJ01 | Rejection of invention patent application after publication |