[发明专利]基于混合加密机制的自适应图像加密域可逆隐藏方法有效

专利信息
申请号: 201810174630.9 申请日: 2018-03-02
公开(公告)号: CN108566500B 公开(公告)日: 2021-02-26
发明(设计)人: 陈帆;和红杰;郑梦阳;嫣舒;尹帮旭 申请(专利权)人: 西南交通大学
主分类号: H04N1/32 分类号: H04N1/32;H04L9/08;H04L29/06;H04L29/08
代理公司: 成都博通专利事务所 51208 代理人: 陈树明
地址: 610031 四*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 混合 加密 机制 自适应 图像 可逆 隐藏 方法
【权利要求书】:

1.一种基于混合加密机制的自适应图像加密域可逆隐藏方法,包括如下步骤:

A、图像加密

A1、像素类型标识矩阵生成:

用户通过下式算出原始图像X,X={xi,j|i=1,2,…,I,j=1,2,…,J}中的像素xi,j的预测值

其中I为原始图像X的行数,J为原始图像X的列数,xi,j为原始图像X中第i行,第j列的像素,表示向下取整操作,∪表示集合的并运算;

如果像素xi,j的最高有效位与像素xi,j的预测值的最高有效位相同,则像素xi,j的类型标识pi,j的值为0;否则,像素xi,j的类型标识pi,j的值为1;将所有的类型标识pi,j拼接,得到像素类型标识矩阵P,P={pi,j|i=1,2,…,I,j=1,2,…,J};

A2、块类型标识矩阵生成:

找出原始图像X的行数I和列数J的公约数,去掉其中的最小公约数和最大公约数,将剩余的公约数作为分块大小值并从小到大依次排列,组成分块大小值序列H,H={H1,H2…Hk…HK},其中k为序列H中分块大小值Hk的序号,K为序列H中分块大小值Hk的个数;

用户根据第k个分块大小值Hk,将像素类型标识矩阵P划分成Mk×Nk个不重叠的、大小为Hk×Hk的像素类型标识块Pk,m,n,其中m为大小为Hk×Hk的像素类型标识块Pk,m,n在像素类型标识矩阵P中的横向序号,m=1,2…,Mk;Mk=I/Hk;n为大小为Hk×Hk的像素类型标识块Pk,m,n在像素类型标识矩阵P中的纵向序号,n=1,2,…,Nk;Nk=J/Hk;r为大小为Hk×Hk的像素类型标识块Pk,m,n中元素的行序号,c为大小为Hk×Hk的像素类型标识块Pk,m,n中元素的列序号;

如果大小为Hk×Hk,横向序号为m,纵向序号为n的像素类型标识块Pk,m,n中的所有元素全为0,则大小为Hk×Hk,横向序号为m,纵向序号为n的像素类型标识块Pk,m,n的块类型标识tk,m,n的值为0;否则,大小为Hk×Hk,横向序号为m,纵向序号为n的像素类型标识块Pk,m,n的块类型标识tk,m,n的值为1;

进而将所有大小为Hk×Hk的像素类型标识块Pk,m,n的块类型标识tk,m,n组成块类型标识矩阵Tk,Tk={tk,m,n|m=1,2…,Mk,n=1,2,…,Nk};

A3、最佳块类型标识矩阵生成:

计算大小为Hk×Hk的像素类型标识块Pk,m,n对应的原始图像隐写容量ECk,k=1,2…K;sum(.)表示矩阵中元素值的求和操作;

如k=k0,即大小为Hk0×Hk0的像素类型标识块Pk0,m,n的对应原始图像隐写容量ECk0为所有大小为Hk×Hk的像素类型标识块Pk,m,n对应的原始图像隐写容量ECk,k=1,2…K中的最大值;则令第k=k0个分块大小值Hk0为像素类型标识矩阵P的最佳分块大小值Hk0;进而得到最佳分块大小值Hk0对应的最佳块类型标识矩阵Tk0,Tk0={tk0,m,n|m=1,2…,Mk0,n=1,2,…,Nk0};其中tk0,m,n为大小为Hk0×Hk0,横向序号为m,纵向序号为n的像素类型标识块Pk0,m,n的块类型标识;

A4、加解密用像素类型标识矩阵生成:

如果最佳块类型标识矩阵Tk0中的横向序号为m,纵向序号为n的像素类型标识块Pk0,m,n的块类型标识tk0,m,n=0,则用户将大小为Hk0×Hk0,横向序号为m,纵向序号为n的像素类型标识块Pk0,m,n中所有的元素置为0;否则,将大小为Hk0×Hk0横向序号为m,纵向序号为n的像素类型标识块Pk0,m,n中所有元素置为1;再将所有大小为Hk0×Hk0的像素类型标识块Pk0,m,n按其横向序号m,纵向序号n进行拼接,得到重构像素类型标识矩阵P′,P′={p′i,j|i=1,2,…,I,j=1,2,…,J},并根据下式更新重构像素类型标识矩阵P'中的元素p'i,j,得到加解密用像素类型标识矩阵P″,P″={p″i,j|i=1,2,…,I,j=1,2,…,J},

A5、异或分类置乱加密:

在加解密用像素类型标识矩阵P″中,如果元素p″i,j的值为0,则将原始图像X中同一位置的像素xi,j定义为可变像素;否则,将原始图像X中同一位置的像素xi,j定义为固定像素;原始图像X中所有可变像素组成可变像素线性表同时将原始图像X中所有的固定像素组成固定像素线性表

然后,用户根据随机数R生成密钥流,分别对可变像素线性表和固定像素线性表依次做“按位异或解密”和“置乱解密”,得到加密的可变像素线性表Lc和加密固定像素线性表Lu;接着,将加密可变像素线性表Lc和加密固定像素线性表Lu拼接,得到加密图像X′,X′={x′i,j|i=1,2,...,I,j=1,2,…,J};

A6、关键信息组成:

用户根据随机数R从最佳块类型标识矩阵Tk0中选取元素,组成对称待加密线性表Ta,其长度为na,最佳块类型标识矩阵Tk0中的剩余元素组成公钥待加密线性表Tb,其长度为nb

再将随机数R用二进制表示,得到长度为nR的随机数序列Rbin;将像素类型标识矩阵的最佳分块大小值Hk0用二进制表示,得到长度为的最佳分块大小值序列将随机数序列Rbin,公钥待加密线性表Tb和像素类型标识矩阵的最佳分块大小值序列拼接得到长度为nC,的公钥待加密信息C,其中||为拼接操作;最后,将公钥待加密信息C和对称待加密线性表Ta拼接组成关键信息E,E=C||Ta,关键信息E的长度为nE,nE=nC+na

A7、关键信息加密:

使用随机数R异或加密对称待加密线性表Ta,得到长度为la的对称加密线性表Ta′;

用户用接收端的长度为nkey的公钥Kp将公钥待加密信息C分为α组进行加密,其中将加密后α组密文串接组成长度为lC的公钥加密信息C′;

串接公钥加密信息C′和对称加密线性表Ta′,得到关键信息密文E′,E′=C′||Ta′,关键信息密文E′的长度为lE,lE=lC+la

A8、关键信息密文隐藏:

用户统计加解密用像素类型标识矩阵P″中元素p″i,j值为0的元素个数,记为

然后计算加密图像X'的总像素个数的最小二进制表示的位数a,进而得到加密图像X'的最大嵌入比特数nmax

将关键信息密文E'嵌入到加密可变像素线性表Lc的后lE个像素即至像素的最高有效位中得到嵌入关键信息密文E′后的加密可变像素线性表Lc′;接着,将嵌入关键信息密文E′后的加密可变像素线性表Lc′和加密固定像素线性表Lu拼接,得到隐藏关键信息密文的加密图像X″,X″={x″i,j|i=1,2,...,I,j=1,2,…,J};

A9、加密图像生成:

用户计算出隐藏关键信息密文的加密图像X″的最大嵌入比特数Nmax,Nmax=nmax-lE,再将隐藏关键信息密文的最大嵌入比特数Nmax的二值编码替换嵌入关键信息密文E′后,加密可变像素线性表Lc′的前a个像素即至像素的最高有效位,得到首部替换后的加密可变像素线性表拼接首部替换后的加密可变像素线性表与加密固定像素线性表Lu,得到上传的加密图像Y,Y={yi,j|i=1,2,…,I,j=1,2,…,J};

最后将上传的加密图像Y传送给云端;

B、信息隐藏

云端将上传的加密图像Y按行扫描得到一维加密像素数组LY,LY={yi′|i′=1,2,…,I×J},i′为一维加密像素数组LY中像素yi′的序号;

将待隐藏的额外信息S用信息隐藏密钥K进行对称加密,得到长度为lS的额外信息密文S′;提取一维加密像素数组LY的前a个像素即y1至ya像素的最高有效位,即提取到上传的加密图像Y的最大嵌入比特数Nmax;如果最大嵌入比特数Nmax不小于额外信息密文S'的长度ls,则将额外信息密文S′嵌入一维加密像素数组LY中ya+1至像素的最高有效位,得到含额外信息密文的一维加密像素数组

将含额外信息密文的一维加密像素数组按行扫描还原为矩阵,即生成含额外信息密文的加密图像Z,Z={zi,j|i=1,2,…,I,j=1,2,…,J};

C、图像解密

C1、提取关键信息密文:

接收端从云端接收到含额外信息密文的加密图像Z,=={zi,j|i=1,2,…,I,j=1,2,…,J},再按行扫描还原得到含额外信息密文的一维加密像素数组提取含额外信息密文的一维像素数组中前a个像素的最高有效位,即y1至ya像素的最高有效位,提取得到最大嵌入比特数Nmax;提取至像素的最高有效位,即得到长度为lE的关键信息密文E′;

C2、解密关键信息密文:

用私钥Ks解密关键信息密文E'中长度为lC的公钥加密信息C′得到公钥待加密信息C;利用随机数R解密关键信息密文E′中长度为la的对称加密线性表Ta′得到对称待加密线性表Ta

C3、组成最佳块类型标识矩阵:

将对称待加密线性表Ta和公钥待加密线性表Tb拼接,还原得到最佳分块大小值Hk0对应的最佳块类型标识矩阵Tk0,Tk0={tk0,m,n|m=1,2…,Mk0,n=1,2,…,Nk0};

C4、生成初始解密图像:

接收端执行步骤A4的加解密用像素类型标识矩阵生成操作,得到加解密用像素类型标识矩阵P″,P″={p″i,j|i=1,2,…,I,j=1,2,…,J};

然后,接收端将含额外信息密文的加密图像Z按行扫描,还原得到含额外信息密文的一维加密像素数组将其中的前个像素,组成含额外信息密文的加密可变像素线性表其余像素组成含额外信息密文的加密固定像素线性表对含额外信息密文的加密可变像素线性表依次做“置乱解密”和“按位异或解密”,得到解密可变像素线性表对含额外信息密文的加密固定像素线性表依次做“置乱解密”和“按位异或解密”,得到解密固定像素线性表

建立初始解密图像D′,D′={d′i,j|i=1,2,…,I,j=1,2,…,J},其中所有像素d′i,j均为1;如果加解密用像素类型标识矩阵P″中的元素p″i,j=0,且为第β个为0的元素,则将初始解密图像D'中第i行,第j列的像素d′i,j的替换为解密可变像素线性表中的第β个元素;如果加解密用像素类型标识矩阵P″中的元素p″i,j=1,且为第γ个为1的元素,将初始解密图像D′中位置的像素d′i,j的替换为解密可变像素线性表中的第γ个元素;

C5、恢复解密图像:

按从上至下,从左至右的顺序对初始解密图像D'中第i行,第j列初始解密像素d'i,j进行如下的操作:

计算初始解密图像D'中第i行,第j列初始解密像素d′i,j的预测值若像素类型标识矩阵P′中,第i行,第j列的元素p′i,j的值为1,则用第i行,第j列解密像素d′i,j的预测值的最高有效位更新解密像素d′i,j的最高有效位,否则解密像素d′i,j保持不变;

当第I行,第J列的初始解密像素d′I,J完成以上操作,令di,j=d′i,j,初始解密图像D′成为解密图像D,D={di,j|i=1,2,…,I,j=1,2,…,J},di,j为解密图像D中第i行,第j列解密像素;

C6、生成含额外信息密文的明文图像:

用含额外信息密文的加密图像Z的最高有效位平面替换解密图像D的最低有效位平面,则得到含额外信息密文的明文图像W,W={wi,j|i=1,2,…,I,j=1,2,…,J};

D、额外信息提取

D1、明文域额外信息提取:

按行扫描含额外信息密文的明文图像W,得到含额外信息密文的明文一维像素数组LW,LW={wi|i=1,2,…,I×J},并提取wa+1至像素的最低有效位,得到额外信息密文S′;再用信息隐藏密钥K对称解密额外信息密文S′,得到额外信息S;

D2、密文域额外信息提取:

按行扫描含额外信息密文的加密图像Z,得到含额外信息密文的一维像素数组并提取ya+1至像素的最高有效位,得到额外信息密文S′;用信息隐藏密钥K对称解密额外信息密文S′,得到额外信息S。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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