CN104268825A - 一种针对图像的加密及密文处理方法 - Google Patents
一种针对图像的加密及密文处理方法 Download PDFInfo
- Publication number
- CN104268825A CN104268825A CN201410508376.3A CN201410508376A CN104268825A CN 104268825 A CN104268825 A CN 104268825A CN 201410508376 A CN201410508376 A CN 201410508376A CN 104268825 A CN104268825 A CN 104268825A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- image
- vector
- pixel
- graph picture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Image Processing (AREA)
Abstract
本发明公开一种对密文图像进行图像处理的方法,包括:步骤S1:提取待处理图像的像素分量值;步骤S2:生成密钥;步骤S3:分量加密;步骤S4:构建密文图像并上传;步骤S5:提取分量密文;步骤S6:密文图像的处理;步骤S7:返回变换后的密文图像;步骤S8:解密密文图像。本发明对SIL同态加密算法进行了改进,用户对要上传的明文图像利用本发明方法进行加密,将生成的密文图像上传至服务端。服务端利用本发明方法可对密文图像进行基于颜色矩阵的颜色变换,图像叠加,以及基于二次线性插值的图像缩放操作,将操作后的密文图像返回给用户。用户再利用本方法进行解密,即可得到相应的处理后的图像,其效果与明文图像直接操作相同。
Description
技术领域
本发明属于外包服务下的用户隐私安全保护领域,涉及对用户密文图像处理时的隐私保护方法。
背景技术
随着手机等职能终端的普及,数字图像已经成为非常流行的用户数据类型。许多云端的图像存储服务也大量兴起,用户可以将图像存储在服务器端,甚至可以对图像进行一些处理,如色彩效果的变换,水印图像的嵌入,以及图像的缩放等。
传统的颜色的变换方法是利用颜色矩阵来改变每个像素的分量值。颜色矩阵CM可以看成是5×5的矩阵(实际只用到了前四列),第i行j列记为mij.则像素P(r,g,b,a)(其中r,g,b,a,分别代表该像素的红绿蓝颜色分量,以及alpha分量,即透明度)经变换后的像素P'(r',g',b',a')满足
r'=r·m00+g·m10+b·m20+a·m30+255·m40
g'=r·m01+g·m11+b·m21+a·m31+255·m41
b'=r·m02+g·m12+b·m22+a·m32+255·m42
a'=r·m03+g·m13+b·m23+a·m33+255·m43
上述过程的运算结果需要取整,此外,运算结果可能会超出[0,255]的范围,通常的处理方式为,当结果为负数时取0,当结果大于255时取255。
两个图像的叠加是将对应位置的两个像素的颜色分量按透明度进行叠加。如将像素P2(r2,g2,b2,a2)按照trp(0≤trp≤1,0表示完全透明,1表示不透明,则该像素真正的透明度为trp·a2)的透明度叠加到P1(r1,g1,b1)上。这里默认下层图像不透明,即P1中的alpha分量不参与运算。则生成的像素P'(r',g',b')满足P'=P1·(1-trp·a2/255)+P2·trp·a2/255。
为保证图像缩放的精度,目前较流行的方法为二次线性插值法。原始图像宽×高为w×h,缩放n倍(n>0)后变为(n·w)×(n·h),则缩放后第i行j列的像素P'i,j需要参考原图中四个相邻像素,分别记为Ps,t,Ps,t+1,Ps+1,t,Ps+1,t+1.其中,则,
P=Ps,t·(1-u)·(1-v)+Ps,t+1·u·(1-v)+Ps+1,t·(1-u)·v+Ps+1,t+1·u·v
其中,u=i/n-s,v=j/n-t.
但是,由于图像往往涉及个人隐私,若要将图像提交给不可信的服务提供商进行处理,用户担心其图像会被非法滥用,因而需要对图像进行加密。然而,传统的图像加密方法不支持对密文图像进行图像处理,使得图像处理服务无法顺利进行。基于像素位置变换的加密技术由于像素值没有变,可以支持颜色变换。但由于像素位置已经乱序,因此不支持图像的叠加和缩放。而且其安全性也较低。因此目前还缺乏能够支持对密文图像进行常见图像处理的图像加密技术。
发明内容
本发明的目的在于克服上述现有技术的缺陷,提供一种对密文图像进行图像处理的方法,对密文图像进行图像处理的同时保障用户图像内容隐私。
为实现上述发明目的,本发明采用的技术方案是:
一种对密文图像进行图像处理的方法,包括以下步骤:步骤S1:提取待处理图像的像素分量值;步骤S2:生成密钥;步骤S3:分量加密;步骤S4:构建密文图像并上传;步骤S5:提取分量密文;步骤S6:密文图像的处理;步骤S7:返回变换后的密文图像;步骤S8:解密密文图像。
优选的,步骤S1中通过读取待处理图像,提取每个像素的RGBA分量值。
优选的,步骤S2生成密钥b,密钥b为n维列向量,每个向量元素为l位的随机数。
优选的,步骤S3中分别对每个像素的每个分量进行加密;RGBA分量值是[0,255]区间内 的整数,记为p,加密过程如下:
1)由p生成列向量t=(t0 t1 t2 t3 t4 t5 t6 t7)T,其中,其中,t3,t4,t5...分别表示p的个位,十位,百位...,t0,t1,t2为三个小数位;以上过程称为明文的向量化,记为t=vector(p);
2)生成n维列向量r,r中每个元素可为l/2位随机数;
3)输入密文c=t+bοr;向量c的每个元素用2l位表示;其中,向量运算"ο"定义如下:
b=(b0,...,bn-1)T,r=(r0,...,rn-1)T,
若(b0,...,bn-1)Tο(r0,...,rn-1)T=(d0,...,dn-1)T,则
4)重复步骤1)-3),用相同的方法加密每个像素的每个分量;像素P(r,g,b,a)加密后的密文记为C(cr,cg,cb,ca)。
优选的,步骤S4具体为:每个明文像素加密后变为新的4×8的子图像,合并步骤S3加密后的所有子图像形成密文图像,然后上传至服务器端。
优选的,步骤S5中服务器端根据密文图像提取每个分量密文值:首先将图像划分为若干4×8的子图像,每个子图像由8×16的二维字节数组表示,代表了一个像素密文C。
优选的,步骤S6中对密文图像进行颜色变换、图像叠加或图像缩放操作;
(1)颜色变换
1)输入明文颜色矩阵CM,对矩阵的每个元素mij进行向量化,当mij≥0时,tmij=vector(mij),否则,tmij=-vector(|mij|);
2)利用变换后的颜色矩阵对每个像素密文C(cr,cg,cb,ca)进行计算,计算后的像素密文C'(c'r,c'g,c'b,c'a)满足
其中,乘法定义如下:
对于两向量u=(u0,...,un-1)T及v=(v0,...,vn-1)T,
若则
或者,乘法采用如下方法实现:在计算得uοv后,将得到的列向量再循环上移3位,使原来向量的第i个元素变为现在的第(i-3mod8)个元素;
(2)图像叠加
1)输入要叠加的明文图像以及叠加的透明度值trp∈[0,1],0表示完全透明,1表示不透明;
2)对输入的明文图像每个像素的颜色分量进行向量化,明文像素P(r,g,b,a)转为
C(cr,cg,cb)=(vector(r),vector(g),vector(b)),
并由trp及a生成两个列向量
t0=vector(1-trp·a/255),t1=vector(trp·a/255);
3)相同位置的两个像素进行叠加,将向量化后的像素C(cr,cg,cb)根据设置的透明度值trp叠加到密文像素C1(cr1,cg1,cb1),叠加后的像素密文C'(c'r,c'g,c'b)满足
其中,下层图像不透明,即C1中的alpha分量不参与运算;
(3)图像缩放
1)步骤S1中待处理图像的宽×高为w×h,缩放n倍后的图像为(n·w)×(n·h),n>0;
2)计算缩放后每个像素密文的值:缩放后第i行j列的像素密文C'i,j参考原密文图像中四 个相邻的像素密文进行计算,这四个像素密文分别记为Cs,t,Cs,t+1,Cs+1,t,Cs+1,t+1;
其中,
设u=i/n-s,v=j/n-t,由此可得
t0=vector((1-u)·(1-v));
t1=vector(u·(1-v));
t2=vector((1-u)·v);
t3=vector(u·v);
则C'i,j(c'r(i,j),c'g(i,j),c'b(i,j),c'a(i,j))满足
优选的,步骤S7中所有像素密文经过变换后,按照步骤S4的方法转换为新的密文图像,返回给用户。
优选的,步骤S8中按照步骤S5提取出每个密文像素C(cr,cg,cb,ca),对每个分量密文进行解密:
1)计算其中表示对向量·中的每个元素四舍五入取整;
2)若将tr的结果表示为tr=(t0 t1 t2 t3 t4 t5 t6 t7)T,则
3)当r<0时,取r=0;当r>255时,取r=255;
4)重复步骤1)至3),以同样的方式解密其他分量g,b,a;
5)解密所有的像素密文,得到处理后的明文图像。
优选的,步骤S2中,定向量维度n=8,每个向量元素的二进制位长度l=16。
本发明的加密算法基于SIL同态加密(Symmetric Homomorphic Encryption Based on Ideal Lattice)算法,SIL可以支持整数明文加密后的密文加法和乘法运算,运算结果解密与明文直接运算的结果相同。但由于颜色处理过程包含小数的运算,因此本发明改进了SIL算法,使其支持对小数明文的加密及密文的运算。
原SIL算法简述如下:
1)生成密钥:密钥b为n维列向量,每个向量元素为l位的随机数。
2)加密:用n维列向量t=(t0 ... tn-1)T分别存储整数明文p二进制的每个位,即ti=(p>>i)&1.生成n维列向量r,r中每个元素可为l/2位随机数,密文c=t+bοr;
3)解密:计算然后计算明文
4)密文运算:对于两个密文c1,c2,密文加(减)法运算为c1±c2,乘法运算为c1οc2。
本发明对图像每个像素的每个RGBA分量分别进行加密,加密算法为对SIL同态加密算法的改进。具体改进内容为:明文p向量化时表示为8维列向量t=(t0 t1 t2 t3 t4 t5 t6 t7)T的形式,其中即t的前三个元素表示明文的小数部分,后五个元素表示整数部分。
对密文图像处理是对每个像素分量的密文进行相应的运算,其中的乘法运算是对SIL的密文乘法运算的改进。具体改进内容为:密文向量在原有乘法操作(即“ο”运算)后,对结果向量的元素循环上移3位,使原来向量的第i个元素变为现在的第(i-3mod8)个元素。这样的改进使得小数类型的明文在向量化后可以正确地参与密文运算。
为了兼顾安全性及运算效率,设置安全参数n=8(表示向量的维度),l=16(表示向量中每个元素的二进制位数)。然后生成8维列向量b作为密钥。
对每个像素的每个分量进行加密。加密时,首先将明文p表示为8维列向量。在本发明中,将明文表示成8维列向量t=(t0 t1 t2 t3 t4 t5 t6 t7)T时,令即t的前三个元素表示明文的小数部分,后五个元素表示整数部分,该过程称为明文的向量化,记为 t=vector(p)。然后对列向量利用密钥加密,得到密文c=t+bοr,其中r为随机生成的8维列向量,运算符"ο"为SIL中定义的密文乘法,即
若(a0,...,an-1)Tο(b0,...,bn-1)T=(d0,...,dn-1)T,则
对每个像素进行加密后,将密文的所有字节看成一个新图像的分量字节,从而构建密文的图像并上传至服务端。
服务端通过密文图像提取出像素的分量密文后,对密文图像进行处理。
本发明方法支持对密文图像进行颜色变换,图像叠加和图像缩放三种操作。由背景技术部分的介绍可知,这三种操作都是将多个分量值pi与小数fi的乘积相加到一起构成新的分量值,即其对应的密文操作为相应的分量密文与小数密文乘积相加到一起,构成新的分量密文。
为支持这种乘法操作,本发明对SIL密文乘法的定义稍作改进,新的乘法定义如下:
若则
上述定义可以用如下方法实现:在原来乘法的操作后,将得到的列向量再循环上移3位,使原来向量的第i个元素变为现在的第(i-3mod8)个元素。
在此定义的基础上进行密文的处理操作。分量密文为ci,小数作为操作时的参数,由服务端给定,无需加密,但需要向量化后才能参与运算,记为tfi=vector(fi).由此可得运算后的分量密文
依次处理每个像素后,将得到的密文图像返回给用户,用户对每个密文像素利用SIL的解密算法解密。得到明文后还需要进行最后的处理,若结果在[0,255]内,则取整得最终明文结果;若结果小于0,则明文结果取值为0;若结果大于255,则明文结果取值为255。
相对于现有技术,本发明具有以下有益效果:本发明通过对SIL同态加密算法进行了改进,用户对要上传的明文图像利用本发明方法进行加密,将生成的密文图像上传至服务端。服务端 利用本发明方法可对密文图像进行基于颜色矩阵的颜色变换,图像叠加,以及基于二次线性插值的图像缩放操作,将操作后的密文图像返回给用户。用户再利用本方法进行解密,即可得到相应的处理后的图像,其效果与明文图像直接操作相同。该方法可在不泄露用户图像内容隐私的前提下,使服务端顺利对用户的密文图像进行处理,弥补了传统图像加密无法对密文图像进行处理的缺陷,具有更好的科学性和更高的实际应用价值。本发明适合于在云计算平台,或者其他需要将图像进行处理但又存在隐私泄露风险的平台。
附图说明
图1是本发明用于进行密文图像处理的流程图;
图2是像素密文与密文子图像相互转换的过程示意图;
图3是一幅输入的原始图像;
图4b为图3加密后的效果图,图4c为图4b的局部放大图,图4a为与图4b等比例缩放下图3的大小示意图;
图5a是图4b所示密文图像经过颜色变换后的效果图(此处为黑白效果操作),图5b为图5a的局部放大图;
图6a为直接变换原图的效果图;图6b为将密文图像颜色变换后解密的效果图,此处为黑白效果操作;
图7a为直接将相框叠加到原图的效果图;图7b为将向量化后的相框图像叠加到密文图像后再解密的效果图,此处设置50%的透明度;
图8a为等比例下原图的大小示意图;图8b为原图直接放大的效果图;图8c为将密文图像放大后再解密的效果图,此处为放大3倍。
具体实施方式
为使本发明的目的、技术方案更加清楚明白,下面结合附图和具体实施方式对本发明做进 一步详细说明。
图1是本发明用于进行密文图像处理的流程图,以下对流程图中的各步骤进行描述。
请参阅图1所示,本发明一种对密文图像进行图像处理的方法,包括以下步骤:
步骤S1:提取待处理图像的像素分量值。
该步骤是加密前的预处理,加密是要将每个像素的每个颜色分量及alpha分量进行加密变换,使得攻击者无法知道真正的分量值,从而起到保护图像隐私的目的。通过读取待处理图像文件,提取每个像素的RGBA分量值。本发明可以处理任何格式的图像,对于不包含A分量的图像格式(如bmp,jpg等),在下面的各步骤中,可以省略对A分量值的加密及密文运算操作。
步骤S2:生成密钥。
加密前,生成密钥。密钥b为n维列向量,每个向量元素为l位(bit)的随机数。为了兼顾安全性和效率,设定向量维度n=8,每个向量元素的二进制位长度l=16。
步骤S3:分量加密。
分别对每个像素的每个分量进行加密。RGBA分量值是[0,255]区间内的整数,记为p,加密过程如下:
1)由p生成列向量t=(t0 t1 t2 t3 t4 t5 t6 t7)T,其中,即,t3,t4,t5...分别表示p的个位,十位,百位...,以此类推。由于在图像处理过程中可能包含小数运算,因此需要设置t0,t1,t2三个小数位(位数多于3时四舍五入保留前3位)。以上过程称为明文的向量化,记为t=vector(p);
2)生成n维列向量r,r中每个元素可为l/2位随机数;
3)输入密文c=t+bοr.向量c的每个元素用2l位表示(即32位)。其中,向量运算"ο"定义如下:
向量b=(b0,...,bn-1)T,r=(r0,...,rn-1)T,
若(b0,...,bn-1)Tο(r0,...,rn-1)T=(d0,...,dn-1)T,则
4)重复步骤1)-3),用相同的方法加密每个像素的每个分量。像素P(r,g,b,a)加密后的密文记为C(cr,cg,cb,ca).
步骤S4:构建密文图像并上传。
如图2中加密箭头方向所示,一个像素的明文包含RGBA四个分量,共4个字节。而每个分量的密文c包含8个32位的整型数,由8行4列的二维字节型数组表示。一个像素密文C(cr,cg,cb,ca)包含RGBA四个分量的密文,则总共需要8行16列的字节数组表示。若每4个字节组成一个像素,则一个像素密文可以由4×8(宽×高)的子图像来表示。其中,子图像第x行y列像素的r分量字节为像素密文中cr的第x行y列字节,g,b,a字节以此类推。则每个明文像素加密后变为新的4×8的子图像。一幅w×h的明文图像在对每个像素加密后,所有密文的子图像将合并为一幅4w×8h的密文图像(如图4a和图4b所示)。生成密文图像后,将其上传至服务器端。
步骤S5:提取分量密文。
该步骤为S4的逆过程,由服务器端根据密文图像提取每个分量密文值,如图2中解密箭头方向所示。首先图像划分为若干4×8的子图像,每个子图像由8×16的二维字节数组表示,代表了一个像素密文C,其中cr的第x行y列字节为子图像第x行y列像素的r分量字节,cg,cb,ca以此类推。
步骤S6:密文图像的处理。
本发明方法支持对密文图像进行颜色变换,图像叠加和图像缩放三种操作。由背景技术部分的介绍可知,这三种操作都是将多个分量值pi与小数fi的乘积相加到一起构成新的分量值,即其对应的密文操作为相应的分量密文与小数密文乘积相加,构成新的分量密文。
为支持这种乘法操作,本发明对SIL密文乘法的定义进行改进,新的乘法定义如下:
对于两向量u=(u0,...,un-1)T及v=(v0,...,vn-1)T,
若则
上述定义可以用如下方法实现:在计算得uοv后,将得到的列向量再循环上移3位,使原来向量的第i个元素变为现在的第(i-3mod8)个元素。
在此定义的基础上进行密文的处理操作。分量密文为ci,小数作为操作时的参数,由服务端给定,无需加密,但需要向量化后才能参与运算,记为tfi=vector(fi),由此可得运算后的分量密文
以下分别介绍三种操作的具体实施步骤:
(1)颜色变换
1)输入明文颜色矩阵CM,对矩阵的每个元素mij进行向量化,当mij≥0时,tmij=vector(mij),否则,tmij=-vector(|mij|);
2)利用变换后的颜色矩阵对每个像素密文C(cr,cg,cb,ca)进行计算,计算后的像素密文C'(c'r,c'g,c'b,c'a)满足
(2)图像叠加
1)输入要叠加的图像(明文图像)以及叠加的透明度值trp∈[0,1](0表示完全透明,1表示不透明)。
2)对输入的明文图像每个像素P(r,g,b,a)的颜色分量进行向量化,转为
C(cr,cg,cb)=(vector(r),vector(g),vector(b)),
并由trp及a生成两个列向量
t0=vector(1-trp·a/255),t1=vector(trp·a/255);
3)相同位置的两个像素进行叠加,将向量化后的像素C(cr,cg,cb)根据设置的透明度值trp叠加到密文像素C1(cr1,cg1,cb1)(这里需要下层图像不透明,即C1中的alpha分量不参与运算),则叠加后的像素密文C'(c'r,c'g,c'b)满足
(3)图像缩放
1)原始图像宽×高为w×h,缩放n倍(n>0)后的图像为(n·w)×(n·h)
2)计算缩放后每个像素密文的值:
缩放后第i行j列的像素密文C'i,j需要参考原密文图像中四个相邻的像素密文进行计算,这四个像素密文分别记为Cs,t,Cs,t+1,Cs+1,t,Cs+1,t+1.其中,设u=i/n-s,v=j/n-t,由此可得t0=vector((1-u)·(1-v)),t1=vector(u·(1-v)),t2=vector((1-u)·v)以及t3=vector(u·v);
则C'i,j(c'r(i,j),c'g(i,j),c'b(i,j),c'a(i,j))满足
步骤S7:返回变换后的密文图像。
所有像素密文经过变换后,按照步骤S4的方法转换为新的密文图像,返回给用户。
步骤S8:解密密文图像。
按照步骤S5提取出每个密文像素C(cr,cg,cb,ca),对每个分量密文进行解密:
1)计算其中表示对向量·中的每个元素四舍五入取整;
2)若将tr的结果表示为tr=(t0 t1 t2 t3 t4 t5 t6 t7)T,则
3)当r<0时,取r=0;当r>255时,取r=255;
4)同样的方式解密其他分量g,b,a;
5)解密所有的像素密文,得到处理后的明文图像。
本发明方法的安全性基于SIL算法的安全性,即是语义安全的,可抵抗选择明文攻击(IND-CPA)。
本发明可以用多种语言编程实现,包括但不局限与C,C++,Java等。
为验证本发明方法的正确性,加密图3所示图像,密文图像如图4b所示,从图像上已经无法看到原图像的内容。此外,图4a为与图4b等比例缩放后图3的大小,以作为参考。可以看到密文图像宽高分别比原图像扩展了4和8倍。
图5a和图5b是按照步骤S6的(1)方法对图4b进行颜色变换处理后的效果,这里选择常用的黑白效果操作,CM取值如下:
图6b图是将图5a按步骤S8解密后得到的明文图像,而图6a是对图3直接进行黑白处理后的效果图,这两幅图用肉眼无法区分,而实际上相同位置的像素也均相同,说明本发明支持对密文图像进行颜色变换操作,解密能够得到正确的结果。
图7b是按步骤S6的(2)方法给图4b叠加指定图像后再解密的效果,而图7a是在图3上直接叠加相同图像的效果图,叠加时透明度设为50%.;这两幅图用肉眼无法区分,而实际上相同位置的像素也均相同,说明本发明支持对密文图像进行图像叠加操作,解密能够得到正确的 结果。
图8c是按步骤S6的(3)方法将图4b放大3倍后再解密的效果,而图8b是将图3放大3倍的效果(图8a是等比例情况下图3的大小,作为参考)。图8b和图8c两幅图用肉眼无法区分,实际上相同位置的像素也均相同,说明本发明支持对密文图像进行图像的缩放操作,解密能够得到正确的结果。
Claims (10)
1.一种对密文图像进行图像处理的方法,其特征在于,包括以下步骤:
步骤S1:提取待处理图像的像素分量值;
步骤S2:生成密钥;
步骤S3:分量加密;
步骤S4:构建密文图像并上传;
步骤S5:提取分量密文;
步骤S6:密文图像的处理;
步骤S7:返回变换后的密文图像;
步骤S8:解密密文图像。
2.根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S1中通过读取待处理图像,提取每个像素的RGBA分量值。
3.根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S2具体采用改进的SIL同态加密算法,生成密钥b,密钥b为n维列向量,每个向量元素为l位的随机数。
4.根据权利要求3所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S3中分别对每个像素的每个分量进行加密;RGBA分量值是[0,255]区间内的整数,记为p,加密过程如下:
1)由p生成列向量t=(t0 t1 t2 t3 t4 t5 t6 t7)T,其中,其中,t3,t4,t5...分别表示p的个位,十位,百位...,t0,t1,t2为三个小数位;以上过程称为明文的向量化,记为t=vector(p);
2)生成n维列向量r,r中每个元素可为l/2位随机数;
3)输入密文c=t+bοr;向量c的每个元素用2l位来表示;其中,向量运算"ο"定义如下:
向量b=(b0,...,bn-1)T,r=(r0,...,rn-1)T,
若(b0,...,bn-1)Tο(r0,...,rn-1)T=(d0,...,dn-1)T,则
4)重复步骤1)-3),用相同的方法加密每个像素的每个分量;像素P(r,g,b,a)加密后的密文记为C(cr,cg,cb,ca)。
5.根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S4具体为:每个明文像素加密后变为新的4×8的子图像,合并步骤S3加密后的所有子图像形成密文图像,然后上传至服务器端。
6.根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S5中服务器端根据密文图像提取每个分量密文值:首先将图像划分为若干4×8的子图像,每个子图像由8×16的二维字节数组表示,代表了一个像素密文C。
7.根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S6中对密文图像进行颜色变换、图像叠加或图像缩放操作;
(1)颜色变换
1)输入明文颜色矩阵CM,对矩阵的每个元素mij进行向量化,当mij≥0时,tmij=vector(mij),否则,tmij=-vector(|mij|);
2)利用变换后的颜色矩阵对每个像素密文C(cr,cg,cb,ca)进行计算,计算后的像素密文C'(c'r,c'g,c'b,c'a)满足
其中,乘法定义如下:
对于两向量u=(u0,...,un-1)T及v=(v0,...,vn-1)T,
若则
或者,乘法采用如下方法实现:在计算得uοv后,将得到的列向量再循环上移3位,使原来向量的第i个元素变为现在的第(i-3mod8)个元素;
(2)图像叠加
1)输入要叠加的明文图像以及叠加的透明度值trp∈[0,1],0表示完全透明,1表示不透明;
2)对输入的明文图像每个像素的颜色分量进行向量化,明文像素P(r,g,b,a)转为
C(cr,cg,cb)=(vector(r),vector(g),vector(b)),
并由trp及a生成两个列向量
t0=vector(1-trp·a/255),t1=vector(trp·a/255);
3)相同位置的两个像素进行叠加,将向量化后的像素C(cr,cg,cb)根据设置的透明度值trp叠加到密文像素C1(cr1,cg1,cb1),叠加后的像素密文C'(c'r,c'g,c'b)满足
其中,下层图像不透明,即C1中的alpha分量不参与运算;
(3)图像缩放
1)步骤S1中待处理图像的宽×高为w×h,缩放n倍后的图像为(n·w)×(n·h),n>0;
2)计算缩放后每个像素密文的值:缩放后第i行j列的像素密文C'i,j参考原密文图像中四个相邻的像素密文进行计算,这四个像素密文分别记为Cs,t,Cs,t+1,Cs+1,t,Cs+1,t+1;
其中,
设h=i/n-s,v=j/n-t,由此可得
t0=vector((1-h)·(1-v));
t1=vector(h·(1-v));
t2=vector((1-h)·v);
t3=vector(h·v);
则C'i,j(c'r(i,j),c'g(i,j),c'b(i,j),c'a(i,j))满足
8.根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S7中所有像素密文经过变换后,按照步骤S4的方法转换为新的密文图像,返回给用户。
9.根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S8中按照步骤S5提取出每个密文像素C(cr,cg,cb,ca),对每个分量密文进行解密:
1)计算其中表示对向量·中的每个元素四舍五入取整;
2)若将tr的结果表示为tr=(t0 t1 t2 t3 t4 t5 t6 t7)T,则
3)当r<0时,取r=0;当r>255时,取r=255;
4)重复步骤1)至3),以同样的方式解密其他分量g,b,a;
5)解密所有的像素密文,得到处理后的明文图像。
10.根据权利要求3所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S2中,定向量维度n=8,每个向量元素的二进制位长度l=16。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410508376.3A CN104268825B (zh) | 2014-09-28 | 2014-09-28 | 一种对密文图像进行图像处理的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410508376.3A CN104268825B (zh) | 2014-09-28 | 2014-09-28 | 一种对密文图像进行图像处理的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104268825A true CN104268825A (zh) | 2015-01-07 |
CN104268825B CN104268825B (zh) | 2017-06-06 |
Family
ID=52160345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410508376.3A Active CN104268825B (zh) | 2014-09-28 | 2014-09-28 | 一种对密文图像进行图像处理的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104268825B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106412593A (zh) * | 2016-12-22 | 2017-02-15 | 北京医视时代科技发展有限公司 | 一种像素级的视频加解密方法及系统 |
CN107862212A (zh) * | 2017-11-27 | 2018-03-30 | 河海大学 | 一种基于像素位的图像置乱方法 |
CN108230219A (zh) * | 2016-12-09 | 2018-06-29 | 中国科学院深圳先进技术研究院 | 增强加密域jpeg图像对比度的方法及系统 |
CN108881663A (zh) * | 2018-06-20 | 2018-11-23 | 暨南大学 | 一种支持隐私保护功能的图像区域复制检测方法 |
CN109272559A (zh) * | 2018-08-20 | 2019-01-25 | 北京佳格天地科技有限公司 | 一种影像矢量化方法、装置、电子设备及介质 |
CN111526148A (zh) * | 2020-04-26 | 2020-08-11 | 中山大学 | 一种云计算环境下加密音频的安全去噪系统及方法 |
CN112580063A (zh) * | 2019-09-27 | 2021-03-30 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101393636A (zh) * | 2008-11-17 | 2009-03-25 | 深圳市同洲电子股份有限公司 | 在图像中加入不可见水印的方法及装置 |
CN102314580A (zh) * | 2011-09-20 | 2012-01-11 | 西安交通大学 | 一种基于向量和矩阵运算的支持计算的加密方法 |
-
2014
- 2014-09-28 CN CN201410508376.3A patent/CN104268825B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101393636A (zh) * | 2008-11-17 | 2009-03-25 | 深圳市同洲电子股份有限公司 | 在图像中加入不可见水印的方法及装置 |
CN102314580A (zh) * | 2011-09-20 | 2012-01-11 | 西安交通大学 | 一种基于向量和矩阵运算的支持计算的加密方法 |
Non-Patent Citations (3)
Title |
---|
PEIJIA ZHENG .ETC: ""An Efficient Image Homomorphic Encryption Scheme with Small Ciphertext Expansion"", 《PROCEEDING OF THE 21ST ACM INTERNATIONAL CONFERENCE ON MULTIMEDIA》 * |
刘艮 等: ""同态加密技术及其在物联网中的应用研究"", 《信息网络安全》 * |
尹春勇 等: ""一种秘密同态的改进模式"", 《贵州工业大学学报(自然科学版)》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108230219A (zh) * | 2016-12-09 | 2018-06-29 | 中国科学院深圳先进技术研究院 | 增强加密域jpeg图像对比度的方法及系统 |
CN106412593A (zh) * | 2016-12-22 | 2017-02-15 | 北京医视时代科技发展有限公司 | 一种像素级的视频加解密方法及系统 |
CN107862212A (zh) * | 2017-11-27 | 2018-03-30 | 河海大学 | 一种基于像素位的图像置乱方法 |
CN108881663A (zh) * | 2018-06-20 | 2018-11-23 | 暨南大学 | 一种支持隐私保护功能的图像区域复制检测方法 |
CN108881663B (zh) * | 2018-06-20 | 2019-12-24 | 暨南大学 | 一种支持隐私保护功能的图像区域复制检测方法 |
CN109272559A (zh) * | 2018-08-20 | 2019-01-25 | 北京佳格天地科技有限公司 | 一种影像矢量化方法、装置、电子设备及介质 |
CN112580063A (zh) * | 2019-09-27 | 2021-03-30 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN112580063B (zh) * | 2019-09-27 | 2023-01-13 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN111526148A (zh) * | 2020-04-26 | 2020-08-11 | 中山大学 | 一种云计算环境下加密音频的安全去噪系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104268825B (zh) | 2017-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kumar et al. | A 2D logistic map and Lorenz-Rossler chaotic system based RGB image encryption approach | |
Zhang et al. | An efficient image encryption scheme based on S-boxes and fractional-order differential logistic map | |
CN104268825A (zh) | 一种针对图像的加密及密文处理方法 | |
Lin et al. | Design and ARM-embedded implementation of a chaotic map-based real-time secure video communication system | |
Gao et al. | EFR-CSTP: Encryption for face recognition based on the chaos and semi-tensor product theory | |
Wang et al. | A new compound mode of confusion and diffusion for block encryption of image based on chaos | |
CN102982499B (zh) | 基于多分数阶混沌系统的彩色图像加密和解密方法 | |
Pareek et al. | Image encryption using chaotic logistic map | |
CN105763762B (zh) | 一种图像加密及解密的方法和装置 | |
CN103491279B (zh) | 超混沌Lorenz系统的4-邻域异或图像加密方法 | |
US20130179690A1 (en) | Method and apparatus for fast image encryption and invisible digital watermark | |
CN109800585B (zh) | 一种图像插值空间完全可逆可分离密文域信息隐藏算法 | |
CN102196320A (zh) | 一种图像加解密系统 | |
CN107239709A (zh) | 一种混沌图像加密的方法、装置及系统 | |
CN106228504A (zh) | 基于明文和密钥构造加密参数的数字图像加密方法 | |
Ni et al. | A novel image encryption algorithm based on bit-level improved Arnold transform and hyper chaotic map | |
Kandar et al. | Visual cryptography scheme for color image using random number with enveloping by digital watermarking | |
CN109618073A (zh) | 一种基于超混沌Chen系统的多图加密方法 | |
CN112800444A (zh) | 基于二维混沌映射的彩色图像加密方法 | |
Debnath et al. | Security analysis with novel image masking based quantum-dot cellular automata information security model | |
JP5689826B2 (ja) | 秘密計算システム、暗号化装置、秘密計算装置及びその方法、プログラム | |
CN108718232A (zh) | 基于aes和混沌的图像加密方法 | |
Tabash et al. | Image encryption algorithm based on chaotic map | |
Kandar et al. | Kn secret sharing visual cryptography scheme on color image using random sequence | |
Debbarma et al. | 2D Chaos based color image encryption using pseudorandom key generation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |