[发明专利]一种基于Chen系统和细胞自动机的数字图像加密方法有效

专利信息
申请号: 201710947062.7 申请日: 2017-10-12
公开(公告)号: CN107886463B 公开(公告)日: 2020-03-24
发明(设计)人: 张伟;朱志良;于海;赵玉丽 申请(专利权)人: 东北大学
主分类号: G06T1/00 分类号: G06T1/00
代理公司: 大连理工大学专利中心 21200 代理人: 陈玲玉;梅洪玉
地址: 110819 辽宁*** 国省代码: 辽宁;21
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 chen 系统 细胞 自动机 数字图像 加密 方法
【权利要求书】:

1.一种基于Chen系统和细胞自动机的数字图像加密方法,其特征在于,

定义细胞自动机:

其中n+1为式(1)的元素个数;细胞自动机CA在t时刻的状态,即CAt,由其n+1个元素在t时刻的状态所决定;细胞自动机CA的下一个时刻t+1的状态,表示为CAt+1,由其n+1个元素在t+1时刻的状态决定,即其中每一个元素的下一个时刻的值都与其当前时刻的若干邻居的状态值相关;更新过程定义为:

其中为更新算法,r为影响半径;采用更新算法,即在公式(2)中r定义为1,且采用元素间的异或操作进行更新,即:

即当前元素的下一个状态值等于它当前状态下前一个邻居的值异或后一个邻居的值;

BMP格式的彩色图像包括R、G和B三个相对独立的色彩空间;

加密过程中,使用Logistic map、Chen system作为随机序列发生器,Logistic map定义为:

xn+1=sxn(1-xn) (4)

当s∈[3.57,4]时,Logistic map进入混沌状态;Chen system定义为:

当a=35,b=3,c∈[20,28.4]时Chen系统进入混沌状态;

第一步:利用Logistic map输入前三个秘钥key1,key2,key3生成三个随机的实数序列rla,gla,bla,其长度为N*N,其中N为图像的高和宽;将三个序列rla,gla,bla进一步量化成范围在[0,255]的整数随机序列qrla,qgla,qbla;

第二步:计算每一个随机序列的更新次数;计算公式为:

其中total_r、total_g、total_b分别为三个色彩空间的像素值总和;

第三步:利用Logistic map计算对应3个色彩空间的3个随机位置(rx,ry),(gx,gy),(bx,by),其值分别为:rx=log_ran(0),ry=log_ran(1),gx=log_ran(2),gy=log_ran(3),bx=log_ran(4),by=log_ran(5),其中log_ran为由logisitc map迭代产生的随机序列并且将其元素量化到值域[0,N-1];

第四步:由第三步产生的随机位置对明文像素点重新排序;对于R色彩空间,重新排序后的明文R’,以原始图像R中的(rx,ry)为第一个像素点,顺序访问像素点,并以(rx,ry-1)为R’的最后一个像素点;对于G色彩空间,重新排序后的明文G’,以原始图像G中的(gx,gy)为第一个像素点,顺序访问像素点,并以(gx,gy-1)位G’的最后一个像素点;对于B色彩空间,重新排序后的明文B’,以原始图像B中的(bx,by)为第一个像素点,顺序访问像素点,并以(bx,by-1)为B’的最后一个像素点;

第五步:对第一步中得到的三个随机序列qrla,qgla,qbla进行更新,三个序列对应的更新次数,由第二步得到的roundr,roundg,roundb决定;

第六步:对重排后的R’G’B’三个色彩空间的像素点转换成1维序列,并进行加密操作;扩散如公式为:

其中cipher1_r(i),cipher1_g(i),cipher1_b(i)分别为R’G’B’所对应的中间密文的一维序列;R’1d,G’1d,B’1d分别为R’G’B’对应的一维序列,update_qrla(i),update_qgla(i),update_qbla(i)为第五步中更新后的随机序列;

第七步:对cipher1_r(i),cipher1_g(i),cipher1_b(i)进行正向扩散操作;定义随机值ran1,ran2,ran3,该三个随机值由秘钥控制或者由混沌系统产生;对cipher1_r(i)的扩散操作如公式(8)所示;

其中temp_value为中间变量,cipher2_r(i)为扩散后的R空间的中间密文;使用相同的方法对cipher1_g(i)和cipher1_b(i)进行扩散操作;最终得到cipher2_r(i),cipher2_g(i),cipher2_b(i);

第八步:利用Chen system对cipher2_r(i),cipher2_g(i),cipher2_b(i)进行逆向加密;首先利用第三步得到的二维随机位置(rx,ry),(gx,gy),(bx,by)转换成一维随机位置,转换公式为r_random=rx*N+RY,g_random=gx*N+gy,b_random=bx*N+by;利用r_random,g_random,b_random对cipher2_r(i),cipher2_g(i),cipher2_b(i)进行重新排列;以cipher2_r(i)为例,以r_random为第一个像素点,逆向访问cipher2_r(i)直到最后一个元素为r_random+1,排序后的一维序列定义为cipher3_r(i),使用相同的方法和r_random,b_random可以得到对应的cipher3_g(i)和cipher3_b(i);

第九步:利用三维混沌系统Chen system产生三个随机序列,并且量化到值域[0,255],得到序列chen_x,chen_y,chen_z,每一个序列的长度均为N2;对chen_x,chen_y,chen_z进行更新,三个序列对应的更新次数,由第二步得到的roundr,roundg,roundb决定;得到rachen_x,rachen_y,rachen_z;

第十步:利用随机序列rachen_x,rachen_y,rachen_z对中间密文cipher3_r(i),cipher3_g(i)和cipher3_b(i)进行异或加密操作;如公式(9)所示;

其中cipherfinal_r(i),cipherfinal_g(i),cipherfinal_b(i)为最终的密文的一维形式;将其转换成对应的二维矩阵并最终得到密文。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东北大学,未经东北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710947062.7/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top