1.一种基于像素矩阵信息辅助的低失真隐写方法,包括如下定义:将用于信息隐藏的原始像素矩阵,记为Cover图像,简称C,其中Cover图像是具有三个不同的像素矩阵的彩色RGB图像;在C中隐藏信息之后得到的像素矩阵,称为Stego图像,简称S;在C中用于信息隐藏的最小操作单元,是图像中每个像素的单色分量,记为CP;将CP最低位记为LSB;将待嵌入的私密信息Message,简称为M;称将信息隐藏到图像C的为隐写方,将信息从S中读出的为解读方;
其特征在于,包括以下步骤:
步骤1,基于输入图像C尺寸的系统初始化;具体实现方式如下,步骤1.1,基于安全信道,隐写方及解读方共享密钥K,共同约定规范化矩阵T的生成规则F;
步骤1.2,隐写方输入待隐藏信息M,输入用于隐写信息的CP矩阵C,设C的尺寸为H行W列,记为H×W;
步骤1.3,由密钥K,生成规则F,H及W值生成规范矩阵T;具体实现包括以下子步骤:步骤1.3.1,取r=log2(W+1);取Wr=2r;
步骤1.3.2,基于K值生成的随机映射,将0,1,…,(2r-2),(2r-1)进行重排;
步骤1.3.3,将重排的数表示为二进制列,这些列构成T;
步骤1.4,构造C的LSB矩阵P,记为P←LSB(C);
步骤1.5,基于T规范化P得到
步骤2,基于像素矩阵尺寸参数对待隐写信息进行压缩与混淆,分割编码;
步骤2的具体实现包括以下子步骤:
步骤2.1,基于K对M进行加密混淆与压缩,记M1=EncK(M),M2=Co(M1),记M2为M″;
步骤2.2,当|M″|>(H-1)r,异常报错并退出,其中|M″|表示M″的bit数;
步骤2.3,将M″按r bit长度进行按序的分组分割,得到有序编码{m1,...,mn+1},步骤3,在图像C中标记被编码的像素LSB,得到S,即将{m1,...,mn+1}隐写到图片C的 矩阵中,具体实现包括以下子步骤:步骤3.1,在T中依次找到mi,i∈[1,n+1],对应的列值j,即mi等于T矩阵第j列的列向量转换得到的十进制数值,这一操作简记为j←T(mi);
步骤3.2,更新 i∈[1,n+1];其中 为 矩阵的第i行j列,得到更新后的步骤3.3,用 矩阵覆盖C中的P矩阵,得到隐写后的S,并将S发送给解读方;
步骤4,从图像S中读取M恢复标记CP,低失真的恢复图像C;具体实现包括以下子步骤:步骤4.1,解密方从S中取出其LSB矩阵即 即步骤4.2,由密钥K,生成规则F,以及S的尺寸H及W值生成规范矩阵T;
步骤4.3,记 从 中恢复{m1,...,mn+1},其中 表示 与T的转置相乘;步骤
4.3的具体实现包括以下子步骤,
步骤4.3.1,依次取 的第i∈[1,H]行步骤4.3.2,当 找到 记mi=j;当 记mi=0,得到整数有序集合{m1,...,mH};
步骤4.3.3,在{m1,...,mH}中从右到左清除掉连续零值,直到第一个非零值,得到{m1,...,mn+1};
步骤4.3.4,当mn+1=r,{m1,...,mn}为输出,将{m1,...,mn}转换为等长(r)bit串其按顺序拼接即得M;
步骤4.3.5,当mn+1≠r,取 得到新的{m1,...,mn},将{m1,...,mn-1}转换为等长(r)bit串,mn保持长度不变,将其按顺序拼接即得M;
步骤4.4,解密,解压;此步骤由隐写方与解读方约定,记M1=Dco(M”),M=DecK(M1),其中Dco(·)是Co(·)的逆操作,DecK(·)是EncK(·)的逆操作;
步骤4.5,基于 从S中读取M低失真恢复C。
2.根据权利要求1所述的一种基于像素矩阵信息辅助的低失真隐写方法,其特征在于:步骤1.4的具体实现过程为,取C的前Hr=H行Wr列CP的所有LSB,构成Hr行Wr列P,即P中每行每列的元素,与C对应行列CP的LSB相同;
步骤1.5,基于T规范化P得到 具体实现包括以下子步骤:步骤1.5.1,依次取第i∈[1,H]行的P,记为Pi,与T的转置相乘,得到Ei=PiT′;
步骤1.5.2,记 记所有 行按序排列所得矩阵为 其中 表示Wr×Wr阶单位阵的第Ei行。
3.根据权利要求1所述的一种基于像素矩阵信息辅助的低失真隐写方法,其特征在于:步骤2.3的具体实现包括以下子步骤,
步骤2.3.1,当|mn|<r时,更新 并记mn+1=r-|mn|;
步骤2.3.2,当|mn|=r时,记mn+1=r;
步骤2.3.3,得到整数有序集合{m1,...,mn+1}。
4.根据权利要求1所述的一种基于像素矩阵信息辅助的低失真隐写方法,其特征在于:步骤4.5的具体实现包括以下子步骤,
步骤4.5.1,记 找到 i∈[1,H],记mi=j;得到{m1,...,mH};
步骤4.5.2,当mi≠0,依次更新 得到新的步骤4.5.3,用新的 覆盖S中的 最低失真程度恢复C。