一种基于云环境的多智能终端共享人脸隐秘识别方法

文档序号:10725648阅读:427来源:国知局
一种基于云环境的多智能终端共享人脸隐秘识别方法
【专利摘要】本发明提出的基于云的多智能终端共享人脸隐秘识别方法,能够在一个安全的协议下进行,与此同时可以同时保护用户图像数据的隐私和第三方人脸检测器的隐私。本发明首次将安全内积算法应用到云环境下的安全人脸检测当中,这不仅实现了用户图像的密文存储,提供了在密文状态下查询所需图像的功能,也保证了第三方的人脸检测器不被泄露。此外,由于用户图像存储的形式是以标准加密算法进行加密的,可以保证数据安全的可靠性,而每次查询时使用的是安全内积算法,算法复杂度与选择的加密矩阵维度相关,算法复杂度低且可以依据计算能力、安全需求灵活配置。本地计算计算量小,将大量的运算依托于计算能力强大的云来处理,有效缩短了检测时间。并且该加密方法很容易通过软件实现,本发明可广泛应用推广到云计算、人脸识别等中。
【专利说明】
一种基于云环境的多智能终端共享人脸隐秘识别方法
技术领域
[0001 ]本发明属于密码学、计算机视觉领域,特别是隐秘人脸检测与识别的方法,具体地 说是一种基于云环境的多智能终端共享人脸隐秘识别方法。
【背景技术】
[0002] 在移动互联网时代,激增的移动用户备份他们的照片至云端服务器。当庞大数量 的图像存储在云端服务器上时,用户的隐私成为一个不可忽视的问题,例如,家庭成员的面 貌信息,可能的人物关系,拍摄照片的地理位置,家庭住址,工作单位,学校,等等都将曝露 给未知的危险人物,威胁人身和财产安全。所以图像应以密文而非明文的形式进行存储。同 时,云端服务器提供的人脸图像检索服务所用到的人脸检测器也是由第三方训练提供的, 该算法及参数的隐私也要受到保护。
[0003] 安全人脸识别计算系统是为了安全人脸识别而开发的。这个系统使用两种加密工 具(同态加密和不经意传输)对两个二进制向量实现隐私保护的汉明距离计算。近来,许多 研究人员着眼于隐私保护的计算机视觉问题,他们大多利用的密码学工具都不是高效的。 安全内积算法是一种由加密数据库的安全kNN(k-nearest neighbor)方案发展的非对称加 密算法,提供了一种隐秘计算两个向量内积而不泄露原始向量信息的方法。在云环境下,这 种方法可以有效地保护数据的隐私。

【发明内容】

[0004] 本发明要解决技术问题为:克服现有技术的不足,提供一种基于云环境的多智能 终端共享人脸隐秘识别方法,该方法能够以密文形式将用户图像存储在云端,并在密文状 态下完成图像检索功能,同时保护用户图像隐私和第三方检测器的隐私。
[0005] 本发明采用的技术方案为:一种基于云环境的多智能终端共享人脸隐秘识别方 法,如图1所示,实现步骤如下:
[0006] (1)第三方提供加密的人脸检测器和内积密钥;
[0007] (2)客户端的用户使用步骤(1)中的内积密钥加密图像,然后上传加密图像到云 端;
[0008] (3)在云端上对加密的图像和加密的检测器使用安全人脸检测协议,检测到的人 脸窗口将返还给客户端的用户;
[0009] (4)用户调用本地的人脸识别算法来生成标记向量;
[0010] (5)所有共享图像的用户的所有图像都被加密后和加密的标记向量一起上传至云 存储空间;
[0011] (6)检索图像时,用户对查询图像重复第(1)(2)(3)(4)步,得到查询图像的标记向 量,并将标记向量加密后上传至云端,和第(5)步中所有的标记向量使用安全人脸匹配协议 进行检测;
[0012] (7)将匹配的加密图像返回用户,用户解密图像后获得明文图像。
[0013] 所述步骤(1)所述加密的人脸检测器和内积密钥采取以下步骤:
[0014] a)第三方随机生成内积密钥51((11,12,5),并将密钥发送给用户,其中,11,1 2是随 机矩阵,S是随机序列;
[0015] b)使用该密钥加密人脸检测器,并将加密后的人脸检测器发送给云端。
[0016] 所述步骤(2)中,加密图像采取以下方法:为了检测一个窗口是否为人脸,用户使 用密钥SIUM^M^S)加密检测窗然后上传至云端,是随机矩阵,S是随机序列。
[0017] 所述步骤(3)中,安全人脸检测协议采取以下步骤:
[0018] a)云端对加密的人脸检测器的分类器和安全检测窗使用安全内积算法,得到每一 步的结果,并与阈值进行比较;
[0019] b)使用Viola-Jones人脸检测算法,经过一系列的迭代后,云端输出检测结果:返 回检测到的人脸。
[0020] 所述步骤(4)中,本地人脸识别算法采取以下步骤:
[0021] a)用户在本地调用基于稀疏表示的人脸识别算法,识别该人脸对应于某位成员;
[0022] b)为每张图像生成人脸标记向量uelojr,第j位为1表示第j个成员包含在这张 图像中。
[0023]所述步骤(5)中,图像和标记加密采取以下步骤:
[0024] a)用户生成私钥?抓(见,犯,〇,并用该私钥加密每个图像的标记向量,其中,他,犯 是随机矩阵,t是随机序列;
[0025] b)用户选择标准加密算法对图像进行加密;
[0026] c)用户将所有图像都被加密后和加密的标记向量一起上传至云端。
[0027]所述步骤(6)中,检索图像采取以下步骤:
[0028] a)用户使用密钥SK(Mi,M2,S)加密查询图像检测窗后上传至云端;
[0029] b)云端运行步骤(3)的安全人脸检测协议检测查询图像中的人脸,并将结果返回 给用户;
[0030] c)用户运行步骤(4)的本地人脸识别算法,识别该人脸属于某位成员,并生成相应 的标记向量;
[0031] d)用户使用私钥PrlUNhNht)加密查询图像的标记向量,上传至云端;
[0032] e)云端运行安全人脸匹配协议,将加密的查询图像的标记向量与所有标记向量进 行匹配查找,得到符合阈值要求的匹配结果。
[0033] 所述步骤(7)中,解密图像采取以下步骤:
[0034] a)云端将符合阈值要求的结果返回给用户;
[0035] b)用户使用步骤(5)中标准加密算法的密钥解密图像,获得明文图像。
[0036] 本发明与现有的技术相比,其优势在于:
[0037] (1)用户图像数据和第三方检测器在云端以密文方式进行存储,保护了图像数据 不会以明文的方式被不可信第三方获取;
[0038] (2)利用云端隐秘内积算法实现用户图像在云端密文状态下的检索,保护了数据 在查询过程中的安全性;
[0039] (3)本发明流程结构简单,算法复杂度低,易于实现。
【附图说明】
[0040] 图1是本发明方案流程图;
[0041] 图2是本发明步骤流程图。
【具体实施方式】:
[0042] 下面结合附图和【具体实施方式】对本发明作进一步详细的说明。
[0043] 人脸检测器拥有如下形式的强分类器:
[0044] H(x) = sign(En=d hn(x)) (丨)
[0045] hn(x)是如下类型的阈值函数
[0047 ] 其中,ynG F1是阈值函数hn(x)的超平面。hn(x)的参数cinG F,βηε F,θηε F在训练时 确定;Ν是弱分类器的数量,ne(〇,N-l)。
[0048] 隐秘内积算法由公式(3),公式(4)和公式(5)描述:
[0049] 对于向量集Y=yi,…yn,第三方将每个向量yi,ie(l, n),按以下原则分解为两个向量 {y^y^}:X^^yhyijeyi,^:Sjes,Sj=l,My /ij=y//ij=yij;?rM.>ij =?? =iyM +r, 其中,r e R是一个随机数。然后,用(Mi,M2)加密γ i,y' A}为Mlyf }。输出为:
[0050] ΕΥ = {Miyi, Mjyf (.3)
[0051 ] 其中,Mi,M2erXm是随机可逆矩阵,se {〇,l}m是随机向量
[0052]对于向量w,按以下原则分解为两个向量{w7,w〃}:对于每个WjGw,若Sjes,sj = 0, 则w'j=w〃j = wj;否则,
其中,V eR也是一个随机数。然后,用 (Ml,M2)加密{W',w〃 }为{Mfw',崎1有〃 } e输出为
[0053] EW = {Mf1w,, M2 } (4)
[0054] 其中,是与(1)相同的随机可逆矩阵,se{〇,l}m是与(1)相同的随机向 量。
[0055] = Miyi Mpw' +. = w Ο)
[0056] 其中,ti就是两原始向量yi和w的内积yj1" · W'd
[0057] 参阅图2步骤流程图,本发明备份过程可以分为以下五个步骤:
[0058] (1)加密的人脸检测器和内积密钥
[0059]给定一个参数m是人脸检测器中分类器的最大长度,输出内积密钥SlUMi,M2,S),其 中此身印1^是随机可逆矩阵,se{〇,i}m是随机向量。然后,第三方通过安全信道将内积密 钥发送给用户。
[0060]第三方通过内积密钥将人脸检测器中的分类器按公式(3)中方法进行加密,然后 将它上传至云端。
[0061 ] (2)使用内积密钥加密图像
[0062]为了检测图像中的人脸,人脸检测器需要迭代计算不同的检测窗口。用户在本地 将检测窗按公式(4)中的方法使用SIUM^M^S)进行加密,然后上传至云端。
[0063] (3)进行安全人脸检测
[0064]在云上对第(1)步和第(2)步上传的数据按公式(5)中的方法进行解密,得到两原 始向量的内积,再根据公式(1)和公式(2)进行判决和迭代,最终输出检测结果。
[0065] (4)人脸识别算法和生成标记向量
[0066] 用户在本地运行基于稀疏表示的人脸识别算法,并为每张图像生成人脸标记向量 uelojr,它描述了某个成员是否在这张图像中。用户将标记向量集{Ll}作为图像集的索 引。
[0067] (5)上传加密图像和索引
[0068]用户在本地使用标准加密算法,如AES,使用私钥SK将图像数据进行加密。
[0069] 用户在本地生成私钥PrK(Ni,N2,t),其中,N!,N2 e Rtxt是随机可逆矩阵,T e {〇,1} t 是随机向量。为了加密标记向量集中的向量Li,用户将每个Li按如下原则分解为两个向量 {L i,L i}:对于母个 Li,jGLi,右 tjGT,t=l,则L i,j = L i,j = Li,j,否则, .Lj,j = - U,Ly + u,其中,ueR是一个随机数。然后,用(Ni,N2)加密{!/i,L〃:l}为 ,输出为
[0070] EL = {咐 L;, NK }i=1...t (6)
[0071] 然后,用户将加密后的图像和加密后的索引EL上传至云端。
[0072] 参阅图2步骤流程图,本发明查询过程可以分为以下四个步骤:
[0073] (6)识别查询图像中的人脸
[0074]选定了待查询的图像后,用户在本地运行基于稀疏表示的人脸识别算法,生成标 记向量= 1表示某个人脸是第i个成员的。
[0075] (7)加密查询图像的索引
[0076] 将向量Q按以下原则分解为两个向量{Q',Q〃}:对于每若4ΕΤ,4 = 0,则 Q' j=Q〃j=Qj;否则,Qj = $.Q:j ' v,Qj = $Qj + ν,其中,νeR也是个随机数。然后,用(N,fe) 加密{Q',Q〃}为{NrW, Nf Q"} 4俞出为
[0077] EW = [Nf1 Q', Nf Q"} (7)
[0078] 然后,用户将加密后的图像索引上传至云端。
[0079] (8)安全人脸匹配
[0080]在云端接收到第(5)步的加密图像和索引集和第(7)步的查询图像索引后,进行安 全人脸匹配查询:
[0081 ] reti = Ν?ζ NfQ' + Njli NpQ" (8)
[0082] 如果reti = A,云端将标记Li对应的第i张图像作为一个匹配结果,其中λ表示查询 图像中人脸的数量。
[0083] (9)返回查询结果和解密
[0084]完成第(8)步的匹配查询后,云端返回查询到的加密图像至客户端,用户使用私钥 SK将密文图像解密,得到最终的明文图像。
[0085] 总之,本发明中提出的基于云的多智能终端共享人脸隐秘识别方法能够在一个安 全的协议下进行,与此同时可以同时保护用户图像数据的隐私和第三方人脸检测器的隐 私。本发明首次将安全内积算法应用到云环境下的安全人脸检测当中,这不仅实现了用户 图像的密文存储,提供了在密文状态下查询所需图像的功能,也保证了第三方的人脸检测 器不被泄露。此外,由于用户图像存储的形式是以标准加密算法进行加密的,可以保证数据 安全的可靠性,而每次查询时使用的是安全内积算法,算法复杂度与选择的加密矩阵维度 相关,算法复杂度低且可以依据计算能力、安全需求灵活配置。本地计算计算量小,将大量 的运算依托于计算能力强大的云来处理,有效缩短了检测时间。并且该加密方法很容易通 过软件实现,本发明可广泛应用推广到云计算、人脸识别等中。
[0086] 以上所述仅为本发明的一些基本说明,依据本发明的技术方案所做的任何等效变 换,均应属于本发明的保护范围。
【主权项】
1. 一种基于云环境的多智能终端共享人脸隐秘识别方法,其特征在于实现步骤: (1) 第三方提供加密的人脸检测器和内积密钥; (2) 客户端的用户使用步骤(1)中的内积密钥加密图像,然后上传加密图像到云端; (3) 在云端上对加密的图像和加密的检测器使用安全人脸检测协议,检测到的人脸窗 口将返还给客户端的用户; (4) 用户调用本地的人脸识别算法来生成标记向量; (5) 所有共享图像的用户的所有图像都被加密后和加密的标记向量一起上传至云存储 空间; (6) 检索图像时,用户对查询图像重复第(1)(2)(3)(4)步,得到查询图像的标记向量, 并将标记向量加密后上传至云端,和第(5)步中所有的标记向量使用安全人脸匹配协议进 行检测; (7) 将匹配的加密图像返回用户,用户解密图像后获得明文图像。2. 根据权利要求1所述的一种基于云环境的多智能终端共享人脸隐秘识别方法,其特 征在于:所述步骤(1)所述加密的人脸检测器和内积密钥采取以下步骤: a) 第三方随机生成内积密钥31((11屬,5),并将密钥发送给用户,其中屬屬是随机矩 阵,S是随机序列; b) 使用该密钥加密人脸检测器,并将加密后的人脸检测器发送给云端。3. 根据权利要求1所述的一种基于云环境的多智能终端共享人脸隐秘识别方法,其特 征在于:所述步骤(2)中,加密图像采取以下方法:为了检测一个窗口是否为人脸,用户使用 密钥SIUM^M^S)加密检测窗然后上传至云端,是随机矩阵,S是随机序列。4. 根据权利要求1所述的一种基于云环境的多智能终端共享人脸隐秘识别方法,其特 征在于:所述步骤(3)中,安全人脸检测协议采取以下步骤: a) 云端对加密的人脸检测器的分类器和安全检测窗使用安全内积算法,得到每一步的 结果,并与阈值进行比较; b) 使用人脸检测算法,经过一系列的迭代后,云端输出检测结果:返回检测到的人脸。5. 根据权利要求1所述的一种基于云环境的多智能终端共享人脸隐秘识别方法,其特 征在于:所述步骤(4)中,本地人脸识别算法采取以下步骤: a) 用户在本地调用基于稀疏表示的人脸识别算法,识别该人脸对应于某位成员; b) 为每张图像生成人脸标记向量UelOjr,第j位为1表示第j个成员包含在这张图像 中。6. 根据权利要求1所述的一种基于云环境的多智能终端共享人脸隐秘识别方法,其特 征在于:所述步骤(5)中,图像和标记加密采取以下步骤: a) 用户生成私钥PrK(Λ,N2,t),并用该私钥加密每个图像的标记向量,其中,他,N2是随 机矩阵,t是随机序列; b) 用户选择标准加密算法对图像进行加密; c) 用户将所有图像都被加密后和加密的标记向量一起上传至云端。7. 根据权利要求1所述的一种基于云环境的多智能终端共享人脸隐秘识别方法,其特 征在于:所述步骤(6)中,检索图像采取以下步骤: a)用户使用密钥SIUM^M^S)加密查询图像检测窗后上传至云端; b) 云端运行步骤(3)的安全人脸检测协议检测查询图像中的人脸,并将结果返回给用 户; c) 用户运行步骤(4)的本地人脸识别算法,识别该人脸属于某位成员,并生成相应的标 记向量; d) 用户使用私钥PrK (Λ,N2,t)加密查询图像的标记向量,上传至云端; e) 云端运行安全人脸匹配协议,将加密的查询图像的标记向量与所有标记向量进行匹 配查找,得到符合阈值要求的匹配结果。8.根据权利要求1所述的一种基于云环境的多智能终端共享人脸隐秘识别方法,其特 征在于:所述步骤(7)中,解密图像采取以下步骤: a) 云端将符合阈值要求的结果返回给用户; b) 用户使用步骤(5)中标准加密算法的密钥解密图像,获得明文图像。
【文档编号】G06K9/62GK106096548SQ201610407625
【公开日】2016年11月9日
【申请日】2016年6月12日
【发明人】金鑫, 马铭鑫, 宋承根, 赵耿, 李晓东, 袁鹏, 田玉露, 刘妍
【申请人】北京电子科技学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1