利索能及
我要发布
收藏
专利号: 2016110049282
申请人: 陕西师范大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-02-20
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于EMD-3的多载体密图分存方法,其特征在于包括以下步骤:第1步:输入待嵌入的p比特公开图像 k=0,1,…,l-1,输入待隐藏的q比特密图S=(si,j)m×n,si,j∈{0,1,…,2q-1-1},其中第2步:记S的MD5值和SHA-1值分别为16进制序列SMD5=和SSHA-1=,由SMD5和SSHA-1奇数和偶数索引元素构造16进制序列Sms=,从Sms抽取出It个元素构成序列Sh=,其中It为[24,70]范围内的偶数;

第3步:将Sh划分为奇数序列Sodd和偶数序列Seven,然后将Sodd和Seven映射为10进制小数G0∈[3.57,4];

第4步:由G0和用户给定的密钥参数G1∈(0,1)产生(0,1)范围内的随机数,为消除暂态效应,将迭代的前IT>0次结果抛弃,从第IT次开始生成随机数;

第5步:将第4步生成的6个连续随机数l0,l1,l2,l3,l4,l5∈(0,1)映射为[0,m)范围内的随机整数a,b,e和[0,n)范围内的随机整数c,d,f,其中m,n对应为公开图像的大小;

第6步:反复执行第5步,直至筛选出可用于将公开图像 置乱为置乱图像的l组置乱参数ak,bk,ck,dk,ek,fk,并将 置乱为 其中k=0,1,…,l-1;

第7步:由Sodd和Seven转换为10进制数G2∈(0,1)和用户给定的参数G3∈[3.57,4]生成m·n个随机数作为矩阵R=(ri,j)m×n,ri,j∈(0,1),在迭代时,同样将前IT>0次结果抛弃,从第IT次开始生成随机数;

第8步:利用ri,j和G0生成9个随机数rr0,rr1,…,rr8,在迭代时,同样将前IT>0次结果抛弃,从第IT次开始生成随机数,其中i=0,1,…,m-1,j=0,1,…,n-1;

第9步:将rr0,rr1,…,rr8和Sms映射为起始控制参数Starti,j∈[0,l-1],由ri,j和G3产生

3l个随机数:RR0,RR1,…,RR3l-1,其中前l个随机数映射为报数间隔序列Gapi,j=,Ga0,Ga1,…,Gal-1∈[0,l-1],中间l个随机数映射为报数终值序列Mi,j=,mm0,mm1,…,mml-1∈[0,l-1],最后l个随机数作为报数方向序列Di,j=,D0,D1,…,Dl-1∈(0,1),在迭代时,同样将前IT>0次结果抛弃,从第IT次开始生成随机数;

第10步:将Starti,j,Gapi,j,Mi.j和Di,j作为控制参数产生l个元素的索引顺序序列Sindex=,indu∈{0,1,…,l-1};

第11步:记置乱图像 对应位置元素 构成的向量为Si,j,将长度为l的基向量Gl=<30,31,…,3l-1>置乱为G′l,结合G′l将秘密像素si,j嵌入到Si,j中;

第12步:反复执行第8步~第11步,直至将秘密图像S=(si,j)m×n的所有像素嵌入到置乱后的公开图像 中,其中k=0,1,…,l-1;

第13步:对 进行逆置乱,从而将秘密图像S=(si,j)m×n隐藏到公开图像 中。

2.如权利要求1所述的一种基于EMD-3的多载体密图分存方法,其特征在于:在第2步中由SMD5和SSHA-1奇数和偶数索引元素构造16进制序列Sms=的具体方法为式(1):Sms=odd(SMD5)||even(SSHA-1)||odd(SSHA-1)||even(SMD5)=72       (1);

在第2步中从Sms抽取出It个元素构成序列Sh=的具体方法为按式(2)将Sms,SMD5,SSHA-1映射为初始值xinit和变换参数ainit,binit,将xinit作为式(3)的初始值x0,按式(3)将序列Stemp=〈0,1,…,It-1〉映射为索引位置序列Sx=,从而按式(4)由Sms抽取出Sh=

式(2)中,函数adjust()为随机整数生成函数,用于以输入随机数为随机种子筛选得到(0,len(Sms))范围内的随机整数ainit且满足gcd(ainit,len(Sms))=1;

xn+1=(ainitxn+binit)mod len(Sms)                         (3)Sh=Draw(Sms,Sx)                               (4)式(4)中,Draw()为序列抽取函数,执行的功能是以Sx=中的元素为索引,将Sms中的第xi个元素msxi作为序列Sh的第i个元素hi,其中i=0,1,…,It-1。

3.如权利要求1所述的一种基于EMD-3的多载体密图分存方法,其特征在于:在第3步中将Sh划分为奇数序列Sodd和偶数序列Seven的具体方法为式(5):

在第3步中将Sodd和Seven映射为10进制小数G0∈[3.57,4]的具体方法为式(6),其中符号“\”表示整数除法:

在第4步中由G0和用户给定的密钥参数G1∈(0,1)产生(0,1)范围内的随机数的具体方法为式(7),其中G0为系统参数μ,G1为初始值;

xn+1=μxn(1-xn)                             (7);

在第5步中将第4步生成的6个连续随机数l0,l1,l2,l3,l4,l5∈(0,1)映射为[0,m)范围内的随机整数a,b,e和[0,n)范围内的随机整数c,d,f的具体方法为按式(8)将l0,l1,l2,l3,l4,l5依次转换为[0,m)范围内的整数a,b,e和[0,n)范围内的整数c,d,f:

在第6步中筛选出可用于将公开图像 置乱为置乱图像 的l组置

乱参数ak,bk,ck,dk,ek,fk的具体方法为式(9):

式(9)中,“|”表示或,p=gcd(m,n)为m,n的最大公因子且m=pz1,n=pz2。

4.如权利要求1所述的一种基于EMD-3的多载体密图分存方法,其特征在于:在第6步中将 置乱为 的具体方法为式(10):

在第13步中对 进行逆置乱的具体方法为式(22):

5.如权利要求1所述的一种基于EMD-3的多载体密图分存方法,其特征在于:在第7步中由Sodd和Seven转换为10进制数G2∈(0,1)的具体方法为式(11):

在第7步中生成m·n个随机数作为矩阵R=(ri,j)m×n,ri,j∈(0,1)的具体方法为式(7),其中G2为初始值,G3为系统参数μ;

在第7步中利用ri,j和G0生成9个随机数rr0,rr1,…,rr8的具体方法为式(7),其中ri,j为初始值,G0为系统参数;

在第9步中将rr0,rr1,…,rr8和Sms映射为起始控制参数Starti,j∈[0,l-1]的具体方法为式(12);

在第9步中由ri,j和G3产生3l个随机数:RR0,RR1,…,RR3l-1的具体方法为式(7),其中ri,j为初始值,G3为系统参数;

在第9步中前l个随机数映射为报数间隔序列Gapi,j=,Ga0,Ga1,…,Gal-1∈[0,l-1]的具体方法为式(13):

在第9步中,中间l个随机数按式(15)进行量化作为报数终值序列Mi,j=,mm0,mm1,…,mml-1∈[0,l-1]的具体方法为式(14):

6.如权利要求1所述的一种基于EMD-3的多载体密图分存方法:在第10步中将Starti,j,Gapi,j,Mi.j和Di,j作为控制参数产生l个元素的索引顺序序列Sindex=,indu∈{0,1,…,l-1}的具体方法为式(15):Sindex=fJosephus(l,Starti,j,Gapi,j,Mi,j,Di,j)       (15)式(15)中,函数fJosephus()为约瑟夫遍历的映射函数,用于按约瑟夫遍历映射中的报数先后顺序产生l个元素的索引顺序序列Sindex,其具体执行的功能是以Starti,j作为报数起始位置索引,进行l次间隔报数,由Gapi,j序列中的第u个元素Gau确定第u次间隔报数跳过的元素数,由Di,j序列中的第u个元素Du确定第u次报数的报数方向,其中Du≥0.5为顺时针,反之为逆时针,由Mi.j序列中的第u个元素mmu确定第u次报数终止值,将报数终止值对应的索引位置作为Sindex的第u个元素indu并剔除该索引位置,其中u=0,1,…l-1。

7.如权利要求1所述的一种基于EMD-3的多载体密图分存方法,其特征在于:在第11步中将长度为l的基向量Gl=<30,31,…,3l-1>置乱为Gl′的具体方法为式(16):

式(16)中,gk=3k,即将Gl中的第k个元素映射到索引顺序序列Sindex第k个元素对应的位置;

在第11步中结合Gl′将秘密像素si,j嵌入到Si,j中的具体方法为式(17):S′i,j=EMD(si,j,Si,j,G′l)                           (17);

式(17)中,函数EMD()用于通过调整置乱图像 对应位置元素 构成的向量Si,j来嵌入秘密元素si,j,基向量G′l中的每个元素则对应为Si,j中的每个元素的权重。

8.如权利要求7所述的一种基于EMD-3的多载体密图分存方法,其特征在于:在第11步中式(17)的具体实现方法为在于包括以下步骤:l

第11.1步:记G′l=〈g′0,g′1,…,g′l-1>,按式(18)计算Si,j和G′l内积模3值:

第11.2步:将f与秘密像素si,j比较,若f=si,j,则 不变,否则按式(19)计算si,j和f模3l差值d,如果d<0,d=3l+d;

d=(si,j-f)mod3l                             (19);

第11.3步:记序列G′l中第k个元素 indk∈Sindex,按式(20)计算f(k),按式(21)进行调整:

式(21)中,函数 功能为:若 则调整 继续按式(20)计算f(k),重新按式(21)进行调整;若 则调整 继续按式(20)计算f(k),重新按式(21)进行调整;

第11.4步:反复执行第11.3步,直至序列 中l个元素均调整完毕。

9.一种基于EMD-3的多载体密图重构方法,其特征在于包括以下步骤:第1步:由用户输入嵌入秘密信息的公开图像 待提取秘密

图像S对应的MD5值SMD5=和SHA-1值SSHA-1=,抽取元素数It∈[24,70],Itmod2=0和用户密钥G1∈(0,1),G3∈[3.57,4]以及消除暂态效应的滤除迭代次数IT>0;

第2步:由SMD5和SSHA-1构造16进制序列Sms=,从Sms抽取出It个元素构成序列Sh=

第3步:将Sh划分为奇数序列Sodd和偶数序列Seven,然后将Sodd和Seven映射为10进制小数G0∈[3.57,4];

第4步:由G0和用户给定的密钥参数G1产生(0,1)范围内的随机数,为消除暂态效应,将迭代的前IT>0次结果抛弃,从第IT次开始生成随机数;

第5步:将第4步生成的6个连续随机数l0,l1,l2,l3,l4,l5∈(0,1)映射为[0,m)范围内的随机整数a,b,e和[0,n)范围内的随机整数c,d,f;

第6步:反复执行第5步,直至筛选出可用于将用于将公开图像 置乱为置乱图像 的l组置乱参数ak,bk,ck,dk,ek,fk,并将 置乱为其中k=0,1,…,l-1;

第7步:由Sodd和Seven转换的10进制数G2∈(0,1)和用户给定的参数G3生成m·n个随机数作为矩阵R=(ri,j)m×n,ri,j∈(0,1),在迭代时,同样将前IT>0次结果抛弃,从第IT次开始生成随机数;

第8步:利用ri,j和G0生成9个随机数rr0,rr1,…,rr8,在迭代时,同样将前IT>0次结果抛弃,从第IT次开始生成随机数,其中i=0,1,…,m-1,j=0,1,…,n-1;

第9步:将rr0,rr1,…,rr8和Sms映射为起始控制参数Starti,j∈[0,l-1],由ri,j和G3产生

3l个随机数:RR0,RR1,…,RR3l-1,其中前l个随机数映射为报数间隔序列Gapi,j=,Ga0,Ga1,…,Gal-1∈[0,l-1],中间l个随机数映射为报数终值序列Mi,j=,mm0,mm1,…,mml-1∈[0,l-1],最后l个随机数作为报数方向序列Di,j=,D0,D1,…,Dl-1∈(0,1),在迭代时,同样将前IT>0次结果抛弃,从第IT次开始生成随机数;

第10步:将Starti,j,Gapi,j,Mi.j和Di,j作为控制参数产生l个元素的索引顺序序列Sindex=,indu∈{0,1,…,l-1};

第11步:将长度为l的基向量Gl=<30,31,…,3l-1>置乱为G′l,结合G′l从Si,j中提取出秘密像素值si,j;

第12步:反复执行第8步~第11步,直至得到完整密图S=(si,j)m×n。

10.如权利要求9所述的一种基于EMD-3的多载体密图重构方法,其特征在于:在第11步中从Si,j中提取出秘密像素值si,j的具体方法为式(18):