一种基于多特征融合的加密图像检索技术*

2020-06-26 02:42林子萱金思静
海峡科学 2020年4期
关键词:同态明文密文

林子萱 金思静 刘 颖 周 勇 程 航

(福州大学数学与计算机科学学院,福建 福州 350108)

1 概述

多媒体技术的飞速发展和广泛应用使得智能手机和数码相机等成像设备得以不断普及,其产生的数字图像规模也急剧膨胀,在这种情况下,海量存储和高效检索给资源受限的用户带来极大的挑战。随着云计算时代的到来,越来越多的用户和企业倾向于外包海量数据到云端进行存储和处理。在这种情况下,外包操作会致使图像拥有者失去对图像数据的直接保护,可能会导致图像数据隐私泄露和滥用的风险。为了隐私保护,图像所有者在外包前就对图像数据进行加密以防止隐私泄露,但这在一定程度上限制了图像数据的后续检索操作。因此,如何高效地管理和检索数以亿计的密文图像数据成为一个亟待解决的问题。

目前明文域图像检索的方法主要包括两种类型:基于文本的图像检索(TBIR)和基于内容的图像检索(CBIR)。其中,TBIR技术已接近成熟,具有速度快、实现简单等优点,但受限于人工标注效率低。而CBIR方法能更好地捕捉语义的信息,优于TBIR,使其成为当前图像检索研究的热点。特征的有效性直接影响着CBIR方案的检索精度,如果仅采用单一的特征(例如颜色、纹理、形状等)进行检索,将使得检索的效率和检索结果的准确性难以满足检索用户的需求。在明文域中,已有部分学者对纹理特征和颜色信息融合技术展开研究[1-2],并取得不错的效果。为此,本文将明文纹理和颜色特征融合思想引入密文图像检索中,以此提高检索性能。其中,纹理特征主要采用差分直方图统计的方法,在文献[3]所采用方法的基础上优化了图像矩阵分块和灰度差分运算方向的方案,实现纹理特征的统计和提取。除此之外,本文采用图像累积直方图的方式提取颜色特征向量,并采用文献[4]使用的可逆数据隐藏技术,将颜色特征向量嵌入加密后的图像中。根据颜色和纹理特征的各自优势设置相应的权重值,以此作为图像的特征索引,最后分别采用巴氏系数算法、夹角余弦距离算法计算差分直方图的距离和颜色特征向量间的距离,从而计算出图像间的相似性。

2 研究方案

本文研究一种基于多特征融合的加密图像检索技术。主要考虑使用场景如下:用户仅需提交加密后的图像库给云端服务器;当云端服务器接收到用户密文域查询请求时,服务器在不知道检索图像和图像库明文内容的情况下,能够计算出密文检索图像与密文图像库中图像的相似度,并按相似度排序,返回最相似的密文图像给用户;用户能够利用私钥,解密检索结果,恢复出明文图像。

文献[3]提出了一种基于Paillier同态加密算法[5]的密文域图像检索方法,该方法利用Paillier同态加密算法对图像进行加密,将加密后的矩阵按照3×3的大小分为若干个模块,在每个模块中取4个方向进行差分运算,统计出该密文图像的差分直方图。计算检索图像与图库图像两者的差分直方图之间的相似度,从而判断出图像之间的相似度。本文在文献[3]的基础上进行改进,提出一种基于纹理特征及颜色特征的加密图像检索方法。在文献[3]所运用方法的基础上,对差分的计算进行优化,将加密后的图像按照5×5的大小进行分块,且在每个模块中进行6个方向上的差分运算。同时在明文域提取出图像的颜色特征向量(采用数据随机化处理方法可进一步提高其安全性),图像加密后,利用文献[4]所运用的可逆数据隐藏技术,将向量嵌入到密图中,以实现特征免独立存储。对于云端来说,可以利用可逆数据隐藏技术提取出图像的颜色特征向量作为颜色特征索引,再计算加密图像的差分直方图作为纹理特征索引,结合两者计算图像间的相似度,从而达到提高检索精确度的目的。下文分别就Paillier同态加密算法、特征提取、可逆数据隐藏技术、图像检索进行详细介绍。

2.1 Paillier 同态加密算法

Paillier于1999年提出了一种具有同态性质的加密技术,利用该算法加密后的密文可直接进行算术运算,运算结果解密后与在明文域中进行对应运算所得的结果一致,是可靠的密文处理手段。本文基于Paillier加密算法的思想提出了一种新的同态加密域图像检索方法。以下对Paillier加密算法思路进行简要介绍。

2.1.1 加密

c=E[m,r]=(gm×rn) modn2

(1)

在进行固定明文m的加密过程中,利用r的随机性,能够将明文m加密成永不相同的密文c,由此确保密文内容隐私的保护。

2.1.2 解密

(2)

2.1.3 Paillier同态加密算法的同态性质

本文侧重讨论 Paillier加密体制的加法同态和减法同态性质。

(1)加法同态性质

满足加法同态的条件为密文相乘等于明文相加,且Paillier拥有在未知明文的情况下可以直接对密文进行算数运算的功能,即

E[(m1+m2) modn,r]=(E[m1,r1]×E[m2,r2]) modn2

(3)

故Paillier密码体制满足加法同态性质。

(2)减法同态性质

本文采用乘法的逆E[m,r]-1表示除以E[m,r]的运算,逆的性质为:

E[m,r]×E[m,r]-1=E[m,r]-1×E[m,r]=e(其中e为群单位元)

(4)

故可以推出:

E[(m1-m2) modn,r]=(E[m1,r1]×E[m2,r2]-1) modn2

(5)

此时,Paillier同态加密算法满足减法同态性质。

2.2 特征提取

特征提取是基于多特征融合的图像检索技术中的关键一步,本文主要采用纹理和颜色两种特征进行图像检索。

2.2.1 纹理特征提取

首先介绍纹理特征的提取。文献[3]采用差分直方图表示图像的纹理特征,加密后的图像为一个加密矩阵,将加密矩阵分为若干个3×3大小的矩阵,称其为模块矩阵。在每个模块矩阵上进行4个方向的差分计算,并统计各个方向上差分值的频数,生成差分直方图。由于Paillier加密算法的同态性质,明文域与密文域所计算出的差分直方图相同。实验表明,将加密矩阵分为若干个3×3大小的矩阵,由于分块过小,导致计算差分值时出现的无效值过多,从而影响结果的精确性。本文在文献[3]所用方法的基础上进行改进,提出一种精确度更高的差分直方图计算方法。将加密矩阵分为若干个5×5大小的矩阵,并进行6个方向上的差分运算。

图1为模块矩阵的示意图,其中cd(x,y)表示点(x,y)加密后的值。记单个模块矩阵在四个方向上的差分值分别为cd1,cd2,cd3,cd4,cd5,cd6,计算公式分别为:

cd1=cd(x-2,y-2)×[cd(x,y)]-1modN2

(6)

cd2=cd(x+2,y-2)×[cd(x,y)]-1modN2

(7)

cd3=cd(x-2,y+2)×[cd(x,y)]-1modN2

(8)

cd4=cd(x+2,y+2)×[cd(x,y)]-1modN2

(9)

cd5=cd(x,y-2)×[cd(x,y+2)]-1modN2

(10)

cd6=cd(x-2,y)×[cd(x+2,y)]-1modN2

(11)

统计所有模块矩阵在相同方向上差分的频数,生成差分直方图,共6张差分直方图,这些差分直方图蕴含了图像的纹理特征。

cd(x-2,y-2)cd(x-1,y-2)cd(x,y-2)cd(x+1,y-2)cd(x+2,y-2)cd(x-2,y-1)cd(x-1,y-1)cd(x,y-1)cd(x+1,y-1)cd(x+2,y-1)cd(x-2,y)cd(x-1,y)cd(x,y)cd(x+1,y)cd(x+2,y)cd(x-2,y+1)cd(x-1,y+1)cd(x,y+1)cd(x+1,y+1)cd(x+2,y+1)cd(x-2,y+2)cd(x-1,y+2)cd(x,y+2)cd(x+1,y+2)cd(x+2,y+2)

图1 模块矩阵示意图

2.2.2 颜色特征提取

利用图像累积直方图描述图像的颜色特征。将像素值分为8个等分区间,统计每个区间中像素值出现的频数在图像中的占比,绘制成累积直方图。分别在R、G、B三个颜色通道上统计累积直方图,得到24个统计值,按顺序排列为向量

(r0,r1,r2,r3,r4,r5,r6,r7,g0,g1,g2,g3,g4,g5,g6,g7,b0,b1,b2,b3,b4,b5,b6,b7)

该向量即为图像的颜色特征向量。

2.3 自盲算法实现可逆数据隐藏

本文运用可逆数据隐藏技术将图像颜色特征嵌入加密图像中,加密图像传输到云端后,云端管理者可以提取出颜色特征作为图像检索的参考之一,从而达到提高检索精确度的目的。本文利用文献[4]提出的自盲算法实现可逆数据隐藏。

自盲算法利用Paillier同态加密算法的自盲特性,在不改变明文值的情况下对密文值进行修改,以达到将额外数据嵌入加密图像的目的。在Paillier同态加密系统中,由于数据加密的随机性,同一个明文值可能被加密为多种不同的密文值。也就是说,明文值m的密文值不是唯一的,且不同的密文值可以被解密为同一明文值,这就是Paillier加密算法的自盲性质。自盲性质表明,每一个密文值都可以在不改变所对应的明文值的情况下进行修改。

(12)

利用公式(13)可提取隐藏的二进制数,

(13)

(14)

将提取出的颜色特征向量转化为二进制数向量,按上述方式嵌入加密后的图像中,传输到云端后可利用该方式提取颜色特征向量进行相似度计算。

2.4 密文域图像检索

用户将加密后的图像和公钥传输到云端,云端存储加密图像,并利用可逆数据隐藏技术提取图像的颜色特征向量,建立图像的颜色特征索引;再利用Paillier特点提取差分直方图,建立图像的纹理特征索引。用户将检索密图发送至云端,云端提取出检索密图的颜色特征向量和差分直方图,分别运用巴氏系数、夹角余弦距离计算法计算图像差分直方图、颜色特征向量之间的相似度,结合两个相似度的值得出两张图像间的相似度,将相似度高的密图返回给用户。

2.4.1 差分直方图相似度计算

本文采用巴氏系数计算法计算直方图的相似度。巴氏系数是对两个统计样本的重叠量的近似计算,其计算公式如下:

(15)

其中,a、b为两个样本,n是分块数,ai、bi分别是在a、b中第i部分的元素。巴氏系数越接近1,表示两个样本越相似,越接近0,表示样本越不相似。

通过巴氏系数计算法计算两个不同加密矩阵在相同方向上差分直方图的相似度,得到6个方向上差分直方图的相似度,取这6个值的平均值作为两个加密矩阵在纹理上的相似度,记为d1。

2.4.2 颜色特征向量相似度计算

本文采用夹角余弦距离计算法来计算两个颜色特征向量之间的相似度。夹角余弦距离衡量两个样本点所对应的向量之间的夹角的大小,设两个样本点为A(x11,x12,...,x1n)和B(x21,x22,...,x2n),其计算公式如下:

(16)

(17)

在使用夹角余弦距离计算公式前,需先将提取出的二进制数向量转化为十进制数向量。因参与计算的数据均为正数,故夹角余弦的取值范围为[0,1]。夹角余弦越大,表示两个向量的夹角越小,样本点间的相似度越高;夹角余弦越小,表示两个向量的夹角越大,样本点间的相似度越低,记为d2。

2.4.3 根据特征检索图像

用户将检索密图发送至云端,云端根据纹理特征索引及颜色特征索引检索相似密图。设纹理特征的权重值为α,颜色特征的权重值为β,图像的相似度S,其计算公式如下:

S=α×d1+β×d2

(18)

云端按相似度由高到低对图库中密图进行排序,将相似度高的前几张密图返回给用户,完成本次检索。

3 实验结果与分析

为验证该方法的有效性和可行性,本文从图库中选取200张彩色图像,进行实验,以下仅显示部分结果。

图2为待检索图像。采用文献[3]的方法计算差分直方图检索得到最相似的图像为图3、图4、图5,按照相似度由高到低的顺序列出。其中图4所显示的检索结果与原图像明显不相似。

图2 原图像

图3 检索结果(1)

图4 检索结果(2)

图5 检索结果(3)

利用本文提出的改进算法再对图2进行检索,可得到不同结果。按照相似度从高到低的顺序显示检索得到最相似的3张图像,如图6、图7、图8所示。

图6 检索结果(4)

图7 检索结果(5)

图8 检索结果(6)

在对分块方法和差分方向进行改进后,检索性能有明显提高,检索结果显示的3张图像均与原图像较为吻合。观察两次检索结果的差别,可以证实算法改进的合理性。

在此基础上增加颜色特征,实验中为了方便,将纹理特征与颜色特征的权值设置为α=β=1,则图像相似度定义为:

S=α×d1+β×d2

(19)

根据式(19)计算相似度S并返回相似度最高的3张图像,按照相似度从高到低的顺序显示检索得到最相似的3张图像,检索结果如图9、图10、图11所示。

图9 检索结果(7)

图10 检索结果(8)

图11 检索结果(9)

在结合颜色特征后检索性能进一步提升,检索结果中的图像不仅与原图像轮廓较为相似,且颜色也相近,说明了颜色特征在图像检索中的重要作用,证实该方法的合理性和精确性。

4 结论与存在的不足

本文提出了一种基于多特征融合的加密图像检索方法,该方法在明文域利用累积直方图提取图像的颜色特征向量,运用Paillier同态加密算法加密图像后,在密文域提取加密矩阵的差分直方图作为图像的纹理特征。此外,本文基于Paillier加密算法的自盲性质,运用可逆数据隐藏的方法将颜色特征向量嵌入加密后的图像中,实现特征免独立存储。云端结合纹理和颜色特征建立特征索引,以提高图像检索精确度。但本文还存在一些不足之处:所采用的特征提取算法较为简单、实验数据集较小且性能对比实验不够充分。在未来的研究中需对以上不足不断修正。

猜你喜欢
同态明文密文
相对于模N的完全不变子模F的N-投射模
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
小R-投射模
基于网络报文流量的协议密文分析方法
D4-δ-盖及其应用
拉回和推出的若干注记
密钥共享下跨用户密文数据去重挖掘方法*
奇怪的处罚
奇怪的处罚