法律状态公告日
法律状态信息
法律状态
2019-08-20
授权
授权
2017-09-29
实质审查的生效 IPC(主分类):H04N19/467 申请日:20170511
实质审查的生效
2017-09-05
公开
公开
技术领域
本发明涉及一种数字密写技术,尤其是涉及一种在数字彩色图像中实现秘密信息密写及提取的方法。
背景技术
当前,由于通信线路很容易受到监听和恶意干扰,因此安全和隐私问题比以往任何时候都更受人们的关注。传统解决监听和干扰的方案主要是加密。秘密信息通过加密之后,对不拥有正确解密密钥的攻击者将不可读,但是,尽管加密可以使秘密信息的内容得到保护,也无法隐藏正在进行秘密通信这一事实,反而加密的秘密信息更容易引起攻击者的怀疑,进而激发攻击者进行破解的欲望。数字密写技术是利用多媒体载体自身的感知和统计冗余,将秘密信息隐藏其中,能将秘密信息被传输这一事实得到隐藏。
数字图像是最为常见的一种密写载体。目前典型的数字图像密写算法主要有空域密写算法和变换域密写算法两类。空域密写算法是通过直接用秘密信息替代数字图像中的冗余部分来实现密写的;变换域密写算法则是通过修改图像变换系数来实现密写的,其中,典型的图像变换有离散傅立叶变换、离散余弦变换和小波变换等。
数字图像的空域密写算法可以实现大容量秘密信息的隐藏,但是,由于密写操作会明显改变像素点之间的统计规律,因此不可检测性较弱;同时在受到攻击或干扰时,隐藏其中的秘密信息容易丢失,鲁棒性和抗干扰能力较弱。相对的,数字图像的变换域密写算法则可以保持较高的不可检测性,但是,所能密写的容量往往很有限,同时算法的复杂度相对较高。
由此可见,目前尽管已经出现了诸多以数字图像为载体的数字密写算法,但是,在密写容量、不可检测性、算法复杂度等方面仍有一定的提升空间。
发明内容
本发明所要解决的技术问题是提供一种在数字彩色图像中实现秘密信息密写及提取的方法,其密写容量大、不可检测性高、计算复杂度低。
本发明解决上述技术问题所采用的技术方案为:一种在数字彩色图像中实现秘密信息密写的方法,其特征在于包括以下步骤:
①_1、将需要隐藏字符串秘密信息的数字彩色图像定义为待密写图像,记为Sorg;将字符串秘密信息记为W;其中,W的长度为n,1≤n≤Ntotal,Ntotal表示Sorg中包含的像素点的总个数;
①_2、对Sorg进行解码,得到Sorg的编码信息和主数据;然后根据设定的规则,从Sorg的主数据中抽取出n个像素点的主数据;并构建一张属性字符表,属性字符表有字符和属性值两个字段,属性字符表中有2d+f+h个不同的字符、有2d+f+h组不同的属性值组,属性字符表中的每个字符对应一组唯一的属性值组,由属性字符表中的所有字符构成的集合包含了W中的所有字符,属性字符表中的任意一组属性值组包含了x、y、z三个属性值;其中,指数d、f、h的取值为2或3,d、f、h的取值与x、y、z三个属性值一一对应,x∈[0,2d-1],y∈[0,2f-1],z∈[0,2h-1];
①_3、对从Sorg的主数据中抽取出的每个像素点的主数据进行秘密信息密写,具体过程为:
①_3a、将抽取出的当前待处理的像素点的主数据定义为当前主数据;并将当前从W中提取出的字符定义为当前字符;
①_3b、设当前主数据为抽取出的第i个像素点的主数据;设当前字符为W中的第i个字符,并记为wi;其中,1≤i≤n;
①_3c、将当前主数据转换成R、G、B颜色值,对应记为ri、gi、bi;并在属性字符表中找出wi对应的x、y、z三个属性值,提取出对应记为xi、yi、zi;其中,ri∈[0,255],gi∈[0,255],bi∈[0,255];
①_3d、计算
①_3e、将抽取出的下一个待处理的像素点的主数据作为当前主数据,并将下一个从W中提取出的字符作为当前字符;然后返回步骤①_3b继续执行,直至从Sorg的主数据中抽取出的每个像素点的主数据已实现秘密信息密写,得到含秘密信息的数字彩色图像;
①_4、发送属性字符表给秘密信息提取端。
所述的步骤①_2中的设定的规则为:随机抽取或等间隔抽取。
所述的步骤①_2中的属性字符表中的2d+f+h组不同的属性值组的确定过程为:①_2a、任意选取一幅数字彩色图像;①_2b、计算该数字彩色图像中的每个像素点的R颜色值与2d的余数,并计算该数字彩色图像中的每个像素点的G颜色值与2f的余数,计算该数字彩色图像中的每个像素点的B颜色值与2h的余数,得到该数字彩色图像中的每个像素点对应的包含有三个余数的一组余数组;①_2c、从该数字彩色图像中的所有像素点对应的余数组中,取2d+f+h组不同的余数组,将所取的一组余数组作为一组属性值组。
利用密钥对所述的步骤①_1中的W进行置乱处理,将置乱后的字符串秘密信息记为
一种在数字彩色图像中实现秘密信息密写的方法,其特征在于包括以下步骤:
②_1、将需要隐藏字符串秘密信息的数字彩色图像定义为待密写图像,记为Sorg;将字符串秘密信息记为W;其中,W的长度为n,1≤n≤Ntotal,Ntotal表示Sorg中包含的像素点的总个数;
②_2、对Sorg进行解码,得到Sorg的编码信息和主数据;然后根据设定的规则,从Sorg的主数据中抽取出n个像素点的主数据;并构建一张属性字符表,属性字符表有字符和属性值两个字段,属性字符表中有2d+f+h个不同的字符、有2d+f+h组不同的属性值组,属性字符表中的每个字符对应一组唯一的属性值组,由属性字符表中的所有字符构成的集合包含了W中的所有字符,属性字符表中的任意一组属性值组包含了x、y、z三个属性值;其中,指数d、f、h的取值为2或3,d、f、h的取值与x、y、z三个属性值一一对应,x∈[0,2d-1],y∈[0,2f-1],z∈[0,2h-1];
②_3、对从Sorg的主数据中抽取出的每个像素点的主数据进行秘密信息密写,具体过程为:
②_3a、将抽取出的当前待处理的像素点的主数据定义为当前主数据;并将当前从W中提取出的字符定义为当前字符;
②_3b、设当前主数据为抽取出的第i个像素点的主数据;设当前字符为W中的第i个字符,并记为wi;其中,1≤i≤n;
②_3c、将当前主数据转换成R、G、B颜色值,对应记为ri、gi、bi;并在属性字符表中找出wi对应的x、y、z三个属性值,提取出对应记为xi、yi、zi;其中,ri∈[0,255],gi∈[0,255],bi∈[0,255];
②_3d、计算
再令
②_3e、将抽取出的下一个待处理的像素点的主数据作为当前主数据,并将下一个从W中提取出的字符作为当前字符;然后返回步骤②_3b继续执行,直至从Sorg的主数据中抽取出的每个像素点的主数据已实现秘密信息密写,得到含秘密信息的数字彩色图像;
②_4、发送属性字符表给秘密信息提取端。
所述的步骤②_2中的设定的规则为:随机抽取或等间隔抽取。
所述的步骤②_2中的属性字符表中的2d+f+h组不同的属性值组的确定过程为:②_2a、任意选取一幅数字彩色图像;②_2b、计算该数字彩色图像中的每个像素点的R颜色值与2d的余数,并计算该数字彩色图像中的每个像素点的G颜色值与2f的余数,计算该数字彩色图像中的每个像素点的B颜色值与2h的余数,得到该数字彩色图像中的每个像素点对应的包含有三个余数的一组余数组;②_2c、从该数字彩色图像中的所有像素点对应的余数组中,取2d+f+h组不同的余数组,将所取的一组余数组作为一组属性值组。
利用密钥对所述的步骤②_1中的W进行置乱处理,将置乱后的字符串秘密信息记为
一种在数字彩色图像中实现秘密信息提取的方法,其特征在于包括以下步骤:
③_1、将含秘密信息的数字彩色图像定义为待提密图像,记为Smi;其中,Smi中包含的像素点的总个数为Ntotal;
③_2、对Smi进行解码,得到Smi的编码信息和主数据;然后根据与秘密信息密写时相同的规则,从Smi的主数据中抽取出n个像素点的主数据;其中,1≤n≤Ntotal;
③_3、对从Smi的主数据中抽取出的每个像素点的主数据进行秘密信息提取,具体过程为:
③_3a、将抽取出的当前待处理的像素点的主数据定义为当前主数据;
③_3b、设当前主数据为抽取出的第i个像素点的主数据;其中,1≤i≤n;
③_3c、将当前主数据转换成R、G、B颜色值,对应记为ri'、gi'、bi';然后计算
③_3d、令
③_3e、将抽取出的下一个待处理的像素点的主数据作为当前主数据;然后返回步骤③_3b继续执行,直至从Smi的主数据中抽取出的每个像素点的主数据已实现秘密信息提取,提取得到字符串秘密信息,记为W',W'=w1'w2'…wi'…wn';其中,W'的长度为n,w1'w2'…wi'…wn'对应表示提取出的第1个字符、第2个字符、…、第i个字符、…、第n个字符。
利用与秘密信息密写端相同的密钥对提取得到的字符串秘密信息W'进行反置乱处理,将反置乱后的字符串秘密信息记为
与现有技术相比,本发明的优点在于:
1)本发明的密写方法在密写秘密信息的过程中,先抽取出数字彩色图像中的多个像素点的主数据,在每个主数据中密写一个字符,在不影响其他性能的前提下,最多可在数字彩色图像中的每个像素点的主数据中密写一个字符,密写容量大。
2)待密写图像中的像素点的R、G、B颜色值与利用本发明的密写方法密写秘密信息后的像素点的R、G、B颜色值最多只相差3(以二进制数表示只相差后两位)或7(以二进制数表示只相差后三位),即利用本发明的密写方法密写秘密信息后,相对于原始数据改动很小,不可检测性高。
3)本发明的密写方法实现秘密信息的密写,只进行了简单的加、减、求余运算,计算复杂度极低。
附图说明
图1为实施例一和实施例三的在数字彩色图像中实现秘密信息密写的方法的总体实现框图;
图2为实施例一和实施例三的在数字彩色图像中实现秘密信息提取的方法的总体实现框图;
图3为实施例二和实施例四的在数字彩色图像中实现秘密信息密写的方法的总体实现框图;
图4为实施例二和实施例四的在数字彩色图像中实现秘密信息提取的方法的总体实现框图;
图5为在分辨率为20×30的数字彩色图像的主数据中抽取的n=11个像素点的位置示意图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
实施例一:
本实施例提出的一种在数字彩色图像中实现秘密信息密写的方法,其总体实现框图如图1所示,其包括以下步骤:
①_1、将需要隐藏字符串秘密信息的数字彩色图像定义为待密写图像,记为Sorg;将字符串秘密信息记为W;其中,W的长度为n,1≤n≤Ntotal,Ntotal表示Sorg中包含的像素点的总个数。
①_2、对Sorg进行解码,得到Sorg的编码信息和主数据;然后根据设定的规则,从Sorg的主数据中抽取出n个像素点的主数据;并构建一张属性字符表,属性字符表有字符和属性值两个字段,属性字符表中有2d+f+h个不同的字符、有2d+f+h组不同的属性值组,属性字符表中的每个字符对应一组唯一的属性值组,由属性字符表中的所有字符构成的集合包含了W中的所有字符,属性字符表中的任意一组属性值组包含了x、y、z三个属性值;其中,指数d、f、h的取值为2或3,在本实施例中取d=f=h=2,d、f、h的取值与x、y、z三个属性值一一对应,x∈[0,2d-1],y∈[0,2f-1],z∈[0,2h-1]。
在此具体实施例中,步骤①_2中的设定的规则为:随机抽取或等间隔抽取。
在此具体实施例中,步骤①_2中的属性字符表中的2d+f+h组不同的属性值组的确定过程为:①_2a、任意选取一幅数字彩色图像;①_2b、计算该数字彩色图像中的每个像素点的R颜色值与2d的余数,并计算该数字彩色图像中的每个像素点的G颜色值与2f的余数,计算该数字彩色图像中的每个像素点的B颜色值与2h的余数,得到该数字彩色图像中的每个像素点对应的包含有三个余数的一组余数组;①_2c、从该数字彩色图像中的所有像素点对应的余数组中,取2d+f+h组不同的余数组,将所取的一组余数组作为一组属性值组。
①_3、对从Sorg的主数据中抽取出的每个像素点的主数据进行秘密信息密写,具体过程为:
①_3a、将抽取出的当前待处理的像素点的主数据定义为当前主数据;并将当前从W中提取出的字符定义为当前字符。
①_3b、设当前主数据为抽取出的第i个像素点的主数据;设当前字符为W中的第i个字符,并记为wi;其中,1≤i≤n。
①_3c、将当前主数据转换成R、G、B颜色值,对应记为ri、gi、bi;并在属性字符表中找出wi对应的x、y、z三个属性值,提取出对应记为xi、yi、zi;其中,ri∈[0,255],gi∈[0,255],bi∈[0,255]。
①_3d、计算
①_3e、将抽取出的下一个待处理的像素点的主数据作为当前主数据,并将下一个从W中提取出的字符作为当前字符;然后返回步骤①_3b继续执行,直至从Sorg的主数据中抽取出的每个像素点的主数据已实现秘密信息密写,得到含秘密信息的数字彩色图像。
①_4、发送属性字符表给秘密信息提取端。
本实施例提出的一种在数字彩色图像中实现秘密信息提取的方法,其总体实现框图如图2所示,其与上述密写方法对应,其包括以下步骤:
③_1、将含秘密信息的数字彩色图像定义为待提密图像,记为Smi;其中,Smi中包含的像素点的总个数为Ntotal。
③_2、对Smi进行解码,得到Smi的编码信息和主数据;然后根据与秘密信息密写时相同的规则,从Smi的主数据中抽取出n个像素点的主数据;其中,1≤n≤Ntotal。
③_3、对从Smi的主数据中抽取出的每个像素点的主数据进行秘密信息提取,具体过程为:
③_3a、将抽取出的当前待处理的像素点的主数据定义为当前主数据。
③_3b、设当前主数据为抽取出的第i个像素点的主数据;其中,1≤i≤n。
③_3c、将当前主数据转换成R、G、B颜色值,对应记为ri'、gi'、bi';然后计算
③_3d、令
③_3e、将抽取出的下一个待处理的像素点的主数据作为当前主数据;然后返回步骤③_3b继续执行,直至从Smi的主数据中抽取出的每个像素点的主数据已实现秘密信息提取,提取得到字符串秘密信息,记为W',W'=w1'w2'…wi'…wn';其中,W'的长度为n,w1'w2'…wi'…wn'对应表示提取出的第1个字符、第2个字符、…、第i个字符、…、第n个字符。
实施例二:
本实施例提出的一种在数字彩色图像中实现秘密信息密写的方法,其过程与实施例一的密写方法的过程基本相同,不同之外仅在于:其总体实现框图如图3所示,本实施例的密写方法为了提高隐秘通信的安全性,先利用密钥对步骤①_1中的W进行置乱处理,将置乱后的字符串秘密信息记为
由于在密写方法中先对原始的字符串秘密信息进行了置乱处理,因此需对提取出的字符串秘密信息进行反置乱处理,即本实施例提出的一种在数字彩色图像中实现秘密信息提取的方法,其过程与实施例一的提取方法的过程基本相同,不同之外仅在于:其总体实现框图如图4所示,本实施例的提取方法利用与秘密信息密写端相同的密钥对提取得到的字符串秘密信息W'进行反置乱处理,将反置乱后的字符串秘密信息记为
实施例三:
本实施例提出的一种在数字彩色图像中实现秘密信息密写的方法,其总体实现框图如图1所示,其包括以下步骤:
②_1、将需要隐藏字符串秘密信息的数字彩色图像定义为待密写图像,记为Sorg;将字符串秘密信息记为W;其中,W的长度为n,1≤n≤Ntotal,Ntotal表示Sorg中包含的像素点的总个数。
②_2、对Sorg进行解码,得到Sorg的编码信息和主数据;然后根据设定的规则,从Sorg的主数据中抽取出n个像素点的主数据;并构建一张属性字符表,属性字符表有字符和属性值两个字段,属性字符表中有2d+f+h个不同的字符、有2d+f+h组不同的属性值组,属性字符表中的每个字符对应一组唯一的属性值组,由属性字符表中的所有字符构成的集合包含了W中的所有字符,属性字符表中的任意一组属性值组包含了x、y、z三个属性值;其中,指数d、f、h的取值为2或3,在本实施例中取d=f=h=2,d、f、h的取值与x、y、z三个属性值一一对应,x∈[0,2d-1],y∈[0,2f-1],z∈[0,2h-1]。
在此具体实施例中,步骤②_2中的设定的规则为:随机抽取或等间隔抽取。
在此具体实施例中,步骤②_2中的属性字符表中的2d+f+h组不同的属性值组的确定过程为:②_2a、任意选取一幅数字彩色图像;②_2b、计算该数字彩色图像中的每个像素点的R颜色值与2d的余数,并计算该数字彩色图像中的每个像素点的G颜色值与2f的余数,计算该数字彩色图像中的每个像素点的B颜色值与2h的余数,得到该数字彩色图像中的每个像素点对应的包含有三个余数的一组余数组;②_2c、从该数字彩色图像中的所有像素点对应的余数组中,取2d+f+h组不同的余数组,将所取的一组余数组作为一组属性值组。
②_3、对从Sorg的主数据中抽取出的每个像素点的主数据进行秘密信息密写,具体过程为:
②_3a、将抽取出的当前待处理的像素点的主数据定义为当前主数据;并将当前从W中提取出的字符定义为当前字符。
②_3b、设当前主数据为抽取出的第i个像素点的主数据;设当前字符为W中的第i个字符,并记为wi;其中,1≤i≤n。
②_3c、将当前主数据转换成R、G、B颜色值,对应记为ri、gi、bi;并在属性字符表中找出wi对应的x、y、z三个属性值,提取出对应记为xi、yi、zi;其中,ri∈[0,255],gi∈[0,255],bi∈[0,255]。
②_3d、计算
再令
②_3e、将抽取出的下一个待处理的像素点的主数据作为当前主数据,并将下一个从W中提取出的字符作为当前字符;然后返回步骤②_3b继续执行,直至从Sorg的主数据中抽取出的每个像素点的主数据已实现秘密信息密写,得到含秘密信息的数字彩色图像。
②_4、发送属性字符表给秘密信息提取端。
相比实施例一的密写方法,本实施例的密写方法在保证数字彩色图像中的像素点的R、G、B颜色值不溢出的前提下,可达到更好的隐藏效果,即让秘密信息写入后信息与秘密信息写入前信息的差别更小。
本实施例提出的一种在数字彩色图像中实现秘密信息提取的方法,其与上述密写方法对应,其总体实现框图如图2所示,其包括以下步骤:
③_1、将含秘密信息的数字彩色图像定义为待提密图像,记为Smi;其中,Smi中包含的像素点的总个数为Ntotal。
③_2、对Smi进行解码,得到Smi的编码信息和主数据;然后根据与秘密信息密写时相同的规则,从Smi的主数据中抽取出n个像素点的主数据;其中,1≤n≤Ntotal。
③_3、对从Smi的主数据中抽取出的每个像素点的主数据进行秘密信息提取,具体过程为:
③_3a、将抽取出的当前待处理的像素点的主数据定义为当前主数据。
③_3b、设当前主数据为抽取出的第i个像素点的主数据;其中,1≤i≤n。
③_3c、将当前主数据转换成R、G、B颜色值,对应记为ri'、gi'、bi';然后计算
③_3d、令
③_3e、将抽取出的下一个待处理的像素点的主数据作为当前主数据;然后返回步骤③_3b继续执行,直至从Smi的主数据中抽取出的每个像素点的主数据已实现秘密信息提取,提取得到字符串秘密信息,记为W',W'=w1'w2'…wi'…wn';其中,W'的长度为n,w1'w2'…wi'…wn'对应表示提取出的第1个字符、第2个字符、…、第i个字符、…、第n个字符。
实施例四:
本实施例提出的一种在数字彩色图像中实现秘密信息密写的方法,其过程与实施例三的密写方法的过程基本相同,不同之外仅在于:其总体实现框图如图3所示,本实施例的密写方法为了提高隐秘通信的安全性,先利用密钥对步骤②_1中的W进行置乱处理,将置乱后的字符串秘密信息记为
由于在密写方法中先对原始的字符串秘密信息进行了置乱处理,因此需对提取出的字符串秘密信息进行反置乱处理,即本实施例提出的一种在数字彩色图像中实现秘密信息提取的方法,其过程与实施例三的提取方法的过程基本相同,不同之外仅在于:其总体实现框图如图4所示,本实施例的提取方法利用与秘密信息密写端相同的密钥对提取得到的字符串秘密信息W'进行反置乱处理,将反置乱后的字符串秘密信息记为
为验证本发明的密写方法和提取方法的可行性和有效性,对实施例一的密写方法和提取方法进行实验验证。
假设待密写图像Sorg的分辨率为20×30,那么待密写图像Sorg中包含的像素点的总个数Ntotal=600个;并假设字符串秘密信息W为“Password123”,字符串秘密信息W的长度为n=11;以等间隔抽取方式从Sorg的主数据中抽取出n=11个像素点的主数据,即抽取出序号为
表1取d=f=h=2时构建的属性字符表
对从Sorg的主数据中抽取出的第1个像素点的主数据进行秘密信息密写的具体过程为:假设第1个像素点的主数据转换成的R、G、B颜色值对应为r1=200、g1=100、b1=50;在属性字符表中找出的w1=P对应的x1=2、y1=2、z1=1;计算
以相同方式对从Sorg的主数据中抽取出的剩余的像素点的主数据进行秘密信息密写。
待提密图像Smi的分辨率为20×30,即待提密图像Smi中包含的像素点的总个数Ntotal=600个;以等间隔抽取方式从Smi的主数据中抽取出n=11个像素点的主数据,即抽取出序号为
对从Smi的主数据中抽取出的第1个像素点的主数据进行秘密信息提取的具体过程为:假设第1个像素点的主数据转换成的R、G、B颜色值对应为r1'=202、g1'=102、b1'=49;计算
以相同方式对从Smi的主数据中抽取出的剩余的像素点的主数据进行秘密信息提取,提取得到字符串秘密信息为“Password123”。
机译: 用于增强增强型数字图像的电气设备;一种改进的生成地址的方法,用于通过以下方式提取对一个或多个像素随机访问的存储器:输入图像数字电子设备有一个限制;从至少一个输入图像中提取出的数字发生器有一个极限;改进的地址发生器电路,用于在一个或多个像素的随机存取存储器中生成地址。完美处理数字图像的电器;用于处理DA的改进方法至少一个输入图像数字电子设备具有导出输出图像处理的数字电子设备的限制;数字图像处理电路中的随机存取存储器和会议桌中的数字图像处理电路中的随机存取存储器
机译: 一种实时检测手写单词,数字,算术等术语正确性的方法及实现该方法的装置
机译: 一种将数字代码转换为模拟彩色图像半色调彩色光输出和DAC的方法,它实现了