一种基于3D BacterialGrowth迷宫的数字置乱方法技术

技术编号:11045093 阅读:123 留言:0更新日期:2015-02-18 11:23
本发明专利技术提供一种基于3D BackterialGrowth迷宫的数字置乱方法,预先对BackterialGrowth迷宫生成区域进行人为限定,从而可用于人为指定的任意3D封闭连通区域,同时按迷宫节点更新顺序对迷宫设定区域的每个节点赋予唯一的编号,由此产生迷宫设定区域所有节点的排列,在此基础上构造了基于3D BackterialGrowth迷宫节点更新序列和节点更新序列复合的置乱方法,从而可将所有节点置乱。本发明专利技术所给出的置乱方法具有普适性和灵活性,在使用过程中不存在任何限制,不仅能应用于传统置乱方法所针对的规则区域,例如正方形和矩形区域,也可用于任意选定的3D封闭连通不规则区域置乱。本发明专利技术也给出了用于图像位面立方体,RGB立方体和RGB通道立方体的图像置乱方法。

【技术实现步骤摘要】
-种基于3D Backter i a I Growth迷宫的数字置乱方法
本专利技术主要涉及信息安全和数字信号处理等交叉研究领域,具体为 基于BackterialGrowth迷宫生成策略的数字置乱方法,特别涉及。
技术介绍
近年来,伴随着计算机和网络技术的发展,越来越多的图像在网络中传输,在给用 户提供方便的同时,也带来了一系列的安全隐患。对图像的不当使用和恶意篡改,不仅涉及 个人隐私,也会给社会带来严重负面影响。保障图像的核心技术是数字图像加密。 在数字图像加密领域,研究最为广泛和灵活的一类图像加密方法,就是在同一空 间内,对图像的重编码技术,即图像置乱技术。 随着计算机技术的飞速发展,数字图像置乱技术已成为数字安全传输和保密的主 要手段。其基本思路就是把一幅图像经过一定的数学变换,转变成面目全非的另一幅图像, 以起到对图像的安全保密作用。 数字图像置乱也是目前隐密术、数字水印、信息分存和可视密码技术中,一项关键 预处理技术。已受到国内外学者的普遍重视,并取得丰硕的研究成果。 数字图像置乱最初来源于有线电视信号加密,早期的置乱在位置空间进行,用于 对图像像素位置打乱,这些置乱方法包括行倒置置乱、行平移置乱、行置换置乱、行循环置 舌U行分量切割置乱等。随着置乱技术的不断发展,目前已提出的置乱方法多种多样,既可 用于位置置换,也可用于灰度替代。 当前已提出的置乱方法主要有:基于离散元素序列的置乱方法、基于扫描路线的 置乱方法、基于遍历矩阵的置乱方法、基于迭代函数系统的置乱方法、基于离散混沌映射的 置乱方法、基于中国拼图的置乱方法和基于矩阵变换的置乱方法等。 目前尽管已提出了多种置乱方法,但传统置乱方法大多只能用于规则区域置乱, 例如正方形和长方形区域,而不能对图像选定的任意不规则区域进行置乱。 例如基于Fibonacci序列和Lucas序列的置乱方法将置乱图像的宽、高拘泥为 Fibonacci序列和Lucas序列元素;基于SCAN语言和Hilbert曲线的置乱方法将置换图像 的大小约束为2 nX2n的正方形图像;由于并非所有图像都存在骑士巡游路径,由此导致了 基于骑士巡游的置乱方法只能用于图像宽、高在特定尺度上的图像;对于奇数阶幻方,其置 乱图像边长为奇数,对于双偶阶幻方,其置乱图像边长为4的整数倍;由于任意阶的拉丁方 并非都存在,基于拉丁方的置乱方法只能用于置乱图像边长为特定尺度的图像,例如边长 为P n且P为素数的图像;对于离散Kolmogorov Flows Map和亚仿射变换,只能用于置乱正 方形图像;传统的基于矩阵的图像置乱方法,其基本表示形式为X[i] = (AX[H])mod N,但由 于只有一个尺度参数N,由此决定了基于矩阵的图像置乱方法只能用于置乱特定尺度的图 像,例如正方形图像或和对矩形图像的灰度进行置乱。 在文献二维非等长图像置乱变换(电子学报,2007, 35 (7) : 1290-1294), 二维三角映射及其在图像置乱上的应用(Information Technology Journal,2008, 7 (I) :40-47),二维双尺度矩形映射及其在图像置乱上的应用(计 算机辅助设计与图形学报,2009, 21 (7) : 1026-1034)和多尺度三角映射及其在 变尺度置舌L 上的应用(International Journal of Computer Applications in Technology, 2010, 38(1-3) :74-85),我们将 Xm = (AX[i-1])mod N 拓展为 X[i] = (AX[i-1]) modN,N为有限个尺度构成的尺度向量,提出了 2维非等长变换存在性判据,2维双尺度矩形 映射的特殊形式-2维三角映射,以及2维双尺度矩形映射一般性构造方法和多尺度三角映 射。尽管X m= (AX[H])m〇dN可用于任意矩形图像置乱,并可对图像位置和灰度同时置乱, 但所提出的方法只能对规则区域进行置乱,不能用于任意选定的不规则区域置乱。 传统的迷宫生成方法在人工智能和优化计算领域应用较广,一般用于动态复杂场 景的模拟和仿真,在信息安全领域涉及较少,在文献基于迷宫置换和Logistic混沌映射的 图像加密算法(计算机应用,2014, 34 (7) : 1902-1908),我们探讨了基于DFS迷宫节点入栈 顺序和行优先扫描顺序高效产生置换的方法,将迷宫生成方法应用于任意矩形图像加密, 但所提出的方法不能应用于图像的任意连通不规则封闭区域加密。
技术实现思路
本专利技术的目的在于克服现有技术缺陷,提供一种基于3D BackterialGrowth迷宫 的数字置乱方法,该方法可用于3D任意连通封闭区域数据置乱。 为实现上述目的,本专利技术采用以下技术方案: -种基于3D BackterialGrowth迷宫的数字置乱方法,包括以下步骤: 第1步:设定迷宫初始范围为 Sinit - OmXnXl 和迷宫有效区域3_= (Si^k)mxnxl, 对于#/,*,|. = ^?5爾-1,/ = @?,》_!,4=0,*,, - 1,若气./.*迗5<紙-..,贝1』初始31,丄,=-1, 反之则标记si;j,k = 0表示该节点未访问,若SukX)表示该节点已访问,统计有效区域范围 内的节点数量 Numniaze = Count(Sniaze); 第 2 步:对于 eS.,r.,,! = 0,-.·,/? -1,./ = 0,..·,《 -I,* = 0,*··,1 - 1 ,记8^· d,d = 0, 1,2, 3, 4, 5依次为节点Si, j,k的下方、右方、上方、左方、底部和顶部墙,初始化Suk. d = -1,d = 0, 1,2, 3, 4, 5, -1表示有墙,0表示无墙; 第3步:选择特定的随机数发生器y = RG(X),设定随机数发生器初始值RG. init =seed,初始化已访问迷宫节点列表Aupdate = Φ,记当前已访问节点数量Numvisited,Numvisited =〇 ; 第4步:随机选取約,标记.?Λι>Λ,^=】,将气Μ.-加入Aupdate,即 j^upjah- Zli) > Numvisited - Numvisited+l ; 第5步:若Numvisited < Nummaze,则循环执行第6步?第9步; 第6步:初始化临时缓冲列表Ateaiip = Φ,将Ateaiip = Aupdate,按随机数发生器随机产 生 a, b e [0, Atemp. length-1],并且满足 gcd (a, Atemp. length) = 1,即 a 和 Atemp. length 互 素; 第 7 步:对于每个 index = (a · i+b) modAtemp· length, i e [0, Atemp. length-1],取 索引位置的节点 sx,y,z = Atemp. at(index); 第8步:若sx,y,z的周围相邻节点 Sx+1,y,Z,SX,y本文档来自技高网
...

【技术保护点】
一种基于3D BackterialGrowth迷宫的数字置乱方法,其特征在于包括以下步骤:第1步:设定迷宫初始范围为Sinit=()m×n×l和迷宫有效区域Smaze=(si,j,k)m×n×l,对于∀si,j,k,i=0,...,m-1,j=0,...,n-1,k=0,...,l-1,]]>若si,j,k∉Smaze,]]>则初始si,j,k=‑1,反之则标记si,j,k=0表示该节点未访问,若si,j,k>0表示该节点已访问,统计有效区域范围内的节点数量Nummaze=count(Smaze);第2步:对于∀si,j,k∈Smaze,i=0,...,m-1,j=0,...,n-1,k=0,...,l-1,]]>记si,j,k.d,d=0,1,2,3,4,5依次为节点si,j,k的下方、右方、上方、左方、底部和顶部墙,初始化si,j,k.d=‑1,d=0,1,2,3,4,5,‑1表示为有墙,0表示无墙;第3步:选择特定的随机数发生器y=RG(x),设定随机数发生器初始值RG.init=seed,初始化已访问迷宫节点列表Aupdate=Φ,记当前已访问节点数量Numvisited,Numvisited=0;第4步:随机选取标记将加入Aupdate,即Aupdate=Aupdate.add(sx0,y0,z0),]]>Numvisited=Numvisited+1;第5步:若Numvisited<Nummaze,则循环执行第6步~第9步;第6步:初始化临时缓冲列表Atemp=Φ,将Atemp=Aupdate,按随机数发生器随机产生a,b∈[0,Atemp.length‑1],并且满足gcd(a,Atemp.length)=1,即a和Atemp.length互素;第7步:对于每个index=(a·i+b)modAtemp.length,i∈[0,Atemp.length‑1],取索引位置的节点sx,y,z=Atemp.at(index);第8步:若sx,y,z的周围相邻节点sx+1,y,z,sx,y+1,z,sx‑1,y,z,sx,y‑1,z,sx,y,z‑1,sx,y,z+1存在Smaze范围内未访问节点,则按随机数发生器随机选择1个未访问的节点,记为sx′,y′,z′;第9步:将sx,y,z和sx′,y′,z′之间的分割墙标记为0,标记sx′,y′,z′=1,将sx′,y′,z′加入Aupdate,即Aupdate=Aupdate.add(sx′,y′,z′),Numvisited=Numvisited+1;第10步:利用Aupdate构造Smaze=(si,j,k)m×n×l范围内所有节点间的映射关系,从而将Smaze=(si,j,k)m×n×l范围内所有节点置乱。...

【技术特征摘要】
1. 一种基于3D BackterialGrowth迷宫的数字置乱方法,其特征在于包括以下步骤: 第1步:设定迷宫初始范围为Sinit= Omxnxl和迷宫有效区域Smaze= (Si,j,k)mXnX1,对于 約,#卜〇,…,,卜W' = 0,-U=0,…1 ,若气,^*5^ ,则初始si;J,k = -1,反之 则标记si;j,k = 0表示该节点未访问,若SukX)表示该节点已访问,统计有效区域范围内的 节点数量 Numniaze = Count(Sniaze); 第2步:对于外.,/_4€足瞭,/ =(),?,/?-1,7 = 0,,,計1,灸=0,?91-1,记士」少 =0, 1,2, 3, 4, 5依次为节点Si,」,k的下方、右方、上方、左方、底部和顶部墙,初始化Si,」, k. d =-1,d = 0, 1,2, 3, 4, 5, -1表示为有墙,0表示无墙; 第3步:选择特定的随机数发生器y = RG(X),设定随机数发生器初始值RG. init = seed,初始化已访问迷宫节点列表Aupdate =①,记当前已访问节点数量Numvisited, Numvisited = 〇 ; 第4步:随机选取eS,标记、善2#=1 ,将气:加入Aupdate,艮P j^updalt I .〇 鱗V.,,.:15),Num visited =Numvisited+1 ; 第5步:若Numvisited < Nummaze,则循环执行第6步?第9步; 第6步:初始化临时缓冲列表A_ = O,将A_ = Aupdate,按随机数发生器随机产生 a, b G [〇, Atemp. length-1],并且满足 gcd (a, Atemp. length) = 1,即 a 和 Atemp. length 互素; 第 7步:对于每个 index = (a ? i+b) modAtemp. length, i G [〇, Atemp. length-1],取索引 位置的节点 sx,y,z = Atemp. at(index); 第8步:若sx,y,z的周围相邻节点 Sx+l,y,Z,SX,y + l,Z,Sx- 1,y,z,Sx,y -1,z,Sx,y,z -I,Sx,y,Z+1 范围内未访问节点,则按随机数发生器随机选择I个未访问的节点,记为Sx,,y,,z,; 第9步:将sx,y,jPsx,,y,, z,之间的分割墙标记为0,标记sx,,y,,z, = 1,将&,y,,z, 加入Aupdate,即A update ^-update* add (sx、y、z' ),Numvisited = Numvisited+1 ; 第10步:利用Aupdate构造 Smaze = (si j k)mXnX1范围内所有节点间的映射关系,从而将 Smaze - (Si, j, k) mXnX 1 范围内所有节点置乱。2. 如权利要求1所述的基于3D BackterialGrowth迷宫的数字置乱方法,其特征在于 第10步中映射方法具体包括以下步骤: 第10. 1步:选取整数作为映射偏移量11,IlmodAupdate. length尹0,将其按式⑴规范 至1J (_Aupdate. Ieng^Aupdate. length)范围内的整数,按式⑵计算 index ;弟 10. 2 步:将 Sinit 复制为 T = (I^jk)mxnxl ; 第 10. 3 步:对于V(l;/乂 ,按式⑶将 Si,j,k 赋值给 tx,y,z ; (i,j,k) = AupdateQi), ii = 0, ...,Aupdate. Iength-I (x, y, z) =A update (kk),kk = 0, ...,Aupdate. length-1 (3) kk = (ii+index)modAupdate. length 第 10. 4 步:输出 T = Cti j, Jnixnxltj3. 如权利要求1所述的基于3D BackterialGrowth迷宫的数字置乱方法,其特征在于: 选取两个随机数发生器y = RGci(X),y = RG1(X),设定随机初始值RGci. init = Seedci, RG1. init = Seed1分别生成迷宫节点更新序列 第10步中映射方法具体包括以下步骤:第 10. 4 步:输出 T = Cti j, Jnixnx...

【专利技术属性】
技术研发人员:邵利平祝莹李苑梦
申请(专利权)人:陕西师范大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1