一种针对图像的加密及密文处理方法

文档序号:6628779阅读:255来源:国知局
一种针对图像的加密及密文处理方法
【专利摘要】本发明公开一种对密文图像进行图像处理的方法,包括:步骤S1:提取待处理图像的像素分量值;步骤S2:生成密钥;步骤S3:分量加密;步骤S4:构建密文图像并上传;步骤S5:提取分量密文;步骤S6:密文图像的处理;步骤S7:返回变换后的密文图像;步骤S8:解密密文图像。本发明对SIL同态加密算法进行了改进,用户对要上传的明文图像利用本发明方法进行加密,将生成的密文图像上传至服务端。服务端利用本发明方法可对密文图像进行基于颜色矩阵的颜色变换,图像叠加,以及基于二次线性插值的图像缩放操作,将操作后的密文图像返回给用户。用户再利用本方法进行解密,即可得到相应的处理后的图像,其效果与明文图像直接操作相同。
【专利说明】一种针对图像的加密及密文处理方法

【技术领域】
[0001] 本发明属于外包服务下的用户隐私安全保护领域,涉及对用户密文图像处理时的 隐私保护方法。

【背景技术】
[0002] 随着手机等职能终端的普及,数字图像已经成为非常流行的用户数据类型。许多 云端的图像存储服务也大量兴起,用户可以将图像存储在服务器端,甚至可以对图像进行 一些处理,如色彩效果的变换,水印图像的嵌入,以及图像的缩放等。
[0003] 传统的颜色的变换方法是利用颜色矩阵来改变每个像素的分量值。颜色矩阵CM 可以看成是5X5的矩阵(实际只用到了前四列),第i行j列记为mij.则像素 P(r,g,b,a) (其中r,g,b,a,分别代表该像素的红绿蓝颜色分量,以及alpha分量,即透明度)经变换后 的像素 P'(r',g',b',a')满足
[0004] r' = r · m00+g · m10+b · m20+a · m30+255 · m40
[0005] g,= r · m01+g · mn+b · m21+a · m31+255 · m41
[0006] b,= r · m02+g · m12+b · m22+a · m32+255 · m42
[0007] a' = r · m03+g · m13+b · m23+a · m33+255 · m43
[0008] 上述过程的运算结果需要取整,此外,运算结果可能会超出[0, 255]的范围,通常 的处理方式为,当结果为负数时取〇,当结果大于255时取255。
[0009] 两个图像的叠加是将对应位置的两个像素的颜色分量按透明度进行叠加。如将像 素 P2 (r2, g2, b2, a2)按照trp (0彡trp彡1,0表示完全透明,1表示不透明,则该像素真正的 透明度为trp*a2)的透明度叠加 bD上。这里默认下层图像不透明,即Pi中的 alpha分量不参与运算。则生成的像素 P'(r',g',b')满足P' =卩丨·(Ι-trp ·82/255)+Ρ2 ρ · a2/255〇
[0010] 为保证图像缩放的精度,目前较流行的方法为二次线性插值法。原始图像宽X高 为wXh,缩放η倍(n>0)后变为(η · w) X (η · h),则缩放后第i行j列的像素 P' u需要 参考原图中四个相邻像素,分别记为Ps,t,Ps,t+1,P s+1,t,Ps+1,t+1?其中,5 = L, Z ?」,? = L/ ?」. 则,
[0011] Ρ = Ps t · (1-U) · (1-V)+Ps,t+1 · u · (l-v)+ps+1,t · (1-U) · v+Ps+1,t+1 · u · ν
[0012] 其中,u = i/n_s,v = j/n_t.
[0013] 但是,由于图像往往涉及个人隐私,若要将图像提交给不可信的服务提供商进行 处理,用户担心其图像会被非法滥用,因而需要对图像进行加密。然而,传统的图像加密方 法不支持对密文图像进行图像处理,使得图像处理服务无法顺利进行。基于像素位置变换 的加密技术由于像素值没有变,可以支持颜色变换。但由于像素位置已经乱序,因此不支持 图像的叠加和缩放。而且其安全性也较低。因此目前还缺乏能够支持对密文图像进行常见 图像处理的图像加密技术。


【发明内容】

[0014] 本发明的目的在于克服上述现有技术的缺陷,提供一种对密文图像进行图像处理 的方法,对密文图像进行图像处理的同时保障用户图像内容隐私。
[0015] 为实现上述发明目的,本发明采用的技术方案是:
[0016] 一种对密文图像进行图像处理的方法,包括以下步骤:步骤S1 :提取待处理图像 的像素分量值;步骤S2 :生成密钥;步骤S3 :分量加密;步骤S4 :构建密文图像并上传;步 骤S5 :提取分量密文;步骤S6 :密文图像的处理;步骤S7 :返回变换后的密文图像;步骤 S8 :解密密文图像。
[0017] 优选的,步骤S1中通过读取待处理图像,提取每个像素的RGBA分量值。
[0018] 优选的,步骤S2生成密钥b,密钥b为η维列向量,每个向量元素为1位的随机数。

【权利要求】
1. 一种对密文图像进行图像处理的方法,其特征在于,包括以下步骤: 步骤Sl:提取待处理图像的像素分量值; 步骤S2 :生成密钥; 步骤S3 :分量加密; 步骤S4:构建密文图像并上传; 步骤S5 :提取分量密文; 步骤S6 :密文图像的处理; 步骤S7 :返回变换后的密文图像; 步骤S8 :解密密文图像。
2. 根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤Sl 中通过读取待处理图像,提取每个像素的RGBA分量值。
3. 根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S2 具体采用改进的SIL同态加密算法,生成密钥b,密钥b为n维列向量,每个向量元素为1位 的随机数。
4. 根据权利要求3所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S3 中分别对每个像素的每个分量进行加密;RGBA分量值是[0, 255]区间内的整数,记为p,加 密过程如下: 1) 由P生成列向量t= (tQht2t3t4t5t6t7)T,其中,
,其 中,t3,t4,t5...分别表示p的个位,十位,百位...,tut2为三个小数位;以上过程称为 明文的向量化,记为t=vector(p); 2) 生成n维列向量r,1中每个元素可为1/2位随机数; 3) 输入密文c=t+b〇r;向量c的每个元素用21位来表示;其中,向量运算〃 〇 〃定义 如下:
向Mb= (b。,? ? ?,IDlri)T,r= (r。,? ? ?,IV1)T, 右(b0, ? ? ?,IDrrl) 〇 (r0, ? ? ?,= (d0, ? ? ?,U,则 4) 重复步骤I)-3),用相同的方法加密每个像素的每个分量;像素P(r,g,b,a)加密后 的密文记为C(q,cg,cb,ca)。
5. 根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S4 具体为:每个明文像素加密后变为新的4X8的子图像,合并步骤S3加密后的所有子图像形 成密文图像,然后上传至服务器端。
6. 根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S5 中服务器端根据密文图像提取每个分量密文值:首先将图像划分为若干4X8的子图像,每 个子图像由8X16的二维字节数组表示,代表了一个像素密文C。
7. 根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S6 中对密文图像进行颜色变换、图像叠加或图像缩放操作; (1)颜色变换 1)输入明文颜色矩阵CM,对矩阵的每个元素进行向量化,当时,tmij = vector(Inij),否则,tmij =-vector(IHiijI); 2)利用变换后的颜色矩阵对每个像素密文C(q,Cg,Cb,ca)进行计算,计算后的像素密 文C'(C'C'g, C'b, C' a)满足
其中,乘法S定义如下: 对于两向量U = (U。,? --,Un-)1及V = (V。,? --,Vlri)1, 若
或者,乘法5采用如下方法实现:在计算得U〇V后,将得到的列向量再循环上移3位, 使原来向量的第i个元素变为现在的第(i-3mod8)个元素; (2) 图像置加 1) 输入要叠加的明文图像以及叠加的透明度值trpG[〇,1],〇表示完全透明,1表示 不透明; 2) 对输入的明文图像每个像素的颜色分量进行向量化,明文像素P(r,g,b,a)转为 C(cr,cg,cb) =(vector(r),vector(g),vector(b)), 并由trp及a生成两个列向量 t〇 =vector(1-trp?a/255), =vector(trp?a/255); 3) 相同位置的两个像素进行叠加,将向量化后的像素C(q,Cg,cb)根据设置的透明度 值trp叠加到密文像素C1 (crt,cgl,cbl),叠加后的像素密文C'(c\,c'g,c' b)满足
其中,下层图像不透明,即C1中的alpha分量不参与运算; (3) 图像缩放 1) 步骤Sl中待处理图像的宽X高为wXh,缩放n倍后的图像为(n*w)X(n^h), n>0; 2) 计算缩放后每个像素密文的值:缩放后第i行j列的像素密文C'u参考原密文图像 中四个相邻的像素密文进行计算,这四个像素密文分别记为Cs,t,Cs,t+1,Cs+1,t,Cs+1,t+1 ; 其中,
设h=i/n-s,v=j/n-t,由此可得t〇 =vector((l~h) ? (l~v)); =vector(h? (l_v)); t2 =vector((l_h) ?v);t3 =vector(h?v); 则Ci,j(C r(i,j),C g(i,j),C b(i,j),C a(i,j)) W足
8. 根据权利要求I所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S7 中所有像素密文经过变换后,按照步骤S4的方法转换为新的密文图像,返回给用户。
9. 根据权利要求1所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S8 中按照步骤S5提取出每个密文像素C(^,cg,cb,ca),对每个分量密文进行解密: 1) 计算
'其中H表示对向量?中的每个元素四舍五入取整; 2) 若将tr的结果表示为tr = (tQht2t3t4t5t6t7)T,则
3) 当r〈0 时,取r= 0 ;当r>255 时,取r= 255 ; 4) 重复步骤1)至3),以同样的方式解密其他分量g,b,a; 5) 解密所有的像素密文,得到处理后的明文图像。
10. 根据权利要求3所述的一种对密文图像进行图像处理的方法,其特征在于,步骤S2 中,定向量维度n= 8,每个向量元素的二进制位长度1 = 16。
【文档编号】G06T1/00GK104268825SQ201410508376
【公开日】2015年1月7日 申请日期:2014年9月28日 优先权日:2014年9月28日
【发明者】桂小林, 杨攀, 田丰, 安健, 林建财, 杨建伟, 姚婧 申请人:西安交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1