【论文阅读】Iris Template Protection Based on Randomized Response Technique and Aggregated Block INFO

1. 介绍

随机回答技术(RRT)最初是由Warner[13]提出的,用于在调查中提出敏感问题。RRT背后的基本思想是为每个敏感问题添加一个相反的问题。受访者选择以一定的概率p回答敏感问题,而选择以概率1−p回答相反的问题。包括受访者在内的其他人不知道受访者选择了哪个问题,因此,受访者的隐私得到了保护。目前,RRT已被应用于隐私保护数据挖掘[14]、[15]等领域。

本文提出了一种基于RRT和聚集块信息的虹膜模板保护方法。具体来说,首先随机生成一个特定应用的参数,并使用该参数对虹膜数据进行置换;其次,将置换后的数据分成三部分,并分别对这三部分应用RRT(使用不同的参数);最后,将结果分成块,计算并存储每个块中的聚合信息(即所有比特的总和),以代替原始虹膜数据进行隐私保护。我们证明了所提出的方法可以满足不可逆性、可撤销和不可链接性。实验结果表明,该方法在保护原始虹膜数据隐私的同时,对虹膜数据库CASIA-IrisV3-Interval具有较好的识别性能(GAR=97.71%,FAR=0.01%,EER=1.20)。

2. 相关工作

3. 随机响应技术

随机回答技术(RRT)最早是由Warner在1965年提出的[13],用于进行包含受访者不愿回答的敏感问题的调查。

例如,一项调查包含以下敏感问题:

Q1: You have cancer.
A. Yes B. No

不愿透露健康状况的人不会参与调查,也不会在调查中撒谎,这会使调查结果不可靠。为了解决这个问题,RRT在调查中增加了另一个相反的问题,即:

Q2: You do not have cancer.
A. Yes B. No

此外,RRT使用概率参数p,受访者可以使用随机装置来选择以概率p回答问题Q1或以概率1−p回答问题Q2。请注意,包括采访者在内的其他人不知道受访者选择了哪个问题,从而保护了受访者的隐私。在这种情况下,人们可能更愿意参与调查,他们不需要撒谎。面试官只知道受访者的答案,从他的角度来看,受访者的答案是相同的(W.r.t.。不使用RRT的原始调查的答案)以概率p,并以概率1−p改变为相反的答案(即从“是”变为“否”或从“否”变为“是”)。

在本文中,我们使用RRT来保护虹膜模板。虹膜图像被转换成二进制字符串,二进制虹膜数据的每一位要么保持不变,要么以一定的概率改变为相反的值。

4. 提出的方法

A. Basic method

基本方法分为两个阶段:注册阶段和识别阶段。需要注意的是,本文研究的虹膜数据被表示为二值字符串,省略了以前将采集的图像转换为二值虹膜数据的过程,因为这些任务可以由现有的虹膜识别系统来完成。我们主要关注虹膜数据的隐私保护。

1) Enrollment:

如果一个人想成为提供虹膜识别的服务器的有效用户,他应该进行注册阶段。在注册阶段,用户应该首先向服务器提交他的虹膜数据和注册请求。

服务器收到数据后,会检查虹膜数据的有效性(例如,数据是否来自正常的人虹膜,质量是否足够)。如果虹膜数据有效,则服务器会在本地将虹膜数据转换为模板。图1中示出了将虹膜数据转换为模板的简化示例。具体来说,注册阶段如下:

1.个人C向服务器S提交其虹膜数据x和注册请求。

2.服务器S检查x是否为有效的虹膜数据。如果无效,则S将拒绝注册请求,并向C发送注册失败消息。否则,S向C发送注册成功消息和参数(用于转换),并通过以下过程将x转换为模板r:

 

3.C接收I、B、D并将其存储在客户端。

请注意,特定于应用程序的参数I是由S在任何注册之前随机生成的,其中I是一个随机的1,...,m的排列(m=L/d,d是Perm(x,i)中使用的字长)。在RRT中,我们通常将第一部分、第二部分、第三部分分别设置为p1、p2、p3=0.5、0.75、1.0。当p1=0.5时,在第1部分实现了强大的隐私保护,因为第1部分将被转换为随机字符串。当p3=1.0时,x的第3部分保持不变,RRT不会增强该部分的私密性。我们在第二部分使用p=0.75来实现适度的隐私保护。使用l1、l2和l3来控制这三个部分的长度。

2) Recognition:

如果人C已经成为服务器S的合法用户,则他可以进行识别阶段以使用服务器资源。在识别阶段,C需要捕获他的实时虹膜数据x{}',并将x{}'到模板r{}'通过在登记阶段将x转换为r的相同过程(除了使用RRT)。之后,C将发送r{}'转到S以表示认可。具体内容如下所示:

1.C转换他的实时虹膜数据x{}'到模板r{}',将r{}'传送到S。

2.S收到r{}'并估计了距离r{}'和数据库中的每个模板(参见第IV.C节)。如果S发现距离小于阈值R,则授权C使用系统资源。

注意,我们在生成r{}'时不使用RRT,因为我们的主要目标是保护存储在服务器端的虹膜数据(一旦攻击者侵入服务器,他们就可以获取存储在服务器上的整个虹膜数据库,如果不保护虹膜数据,这将导致很大的隐私泄露和财产损失的风险),而使用RRT通常会导致识别性能的下降。然而,攻击者还是很难追回x{}'r{}'因为r{}'仅包含聚合信息。(就是对于x{}'就变换到t{}',而不执行后来的操作了,不用转换到r{}'

B. Permutation

这一部分介绍了Perm(x,i)的细节。排列策略主要用于实现非链接性(如第五节和第六节所示)。具体地说,Perm(x,i)包含以下步骤:

1)将x分成m个字(其中L=m×d,d是字的大小),并将i=l_{1}l_{m}设为1…m的排列。

2)计算t,i=1…L:t_{i}=x_{i{}'}i{}'=\left ( I_{\left \lfloor \frac{i-1}{d} \right \rfloor+1} -1\right )\times d+\left ( i-1 \right )%d+1

请注意,由于RRT和聚合块信息的使用,即使当I被披露时,原始虹膜数据仍然受到保护。

C. Distance

这一部分介绍了如何估计x{}'和来自r{}'的x(用户C提交)和存储在服务器端数据库中的模板r(共x个)。当S进行识别阶段时,它对所有用户使用相同的参数,从而以相同的方式排列每个虹膜数据。

因此,我们有Dis(x,x{}')=Dis(t,t{}'),其中Dis(x,x{}')。计算x和x{}'之间的距离。由于我们只能得到聚合的块信息r和r{}',所以我们选择以下距离公式:

 (可是t不是已经被丢掉了吗???)

 然而S只知道r、r{}',不知道t、t{}'。因此我们找到 r、r{}'和t、t{}'之间的关系:

z_{i}=\sum _{j=\left ( i-1 \right )\times b+1}^{i\times b}t_{j},其中i=1,...,n。r_{i}=\sum _{j=\left ( i-1 \right )\times b+1}^{i\times b}RRT\left ( t_{j} \right )。(z是没经过RRT的,r是经过RRT的和)

假设z_{i}r_{i}是两个变量,对于任意常量u、v(0 ≤ u,v ≤ b)。

z_{i}=u,在用过RRT后r_{i}=v的概率为:

 因此让 r_{i}=v,z_{i}=u的概率为:

在计算距离时,我们使用Pr(zi=u|ri)代替Pr(zi=u|ri=v),因为ri是已知的。因此,给定ri和r{}'_{i},Dis(x,x{}')。可以估计为:

注意,当对t的三个部分应用RRT时,分别使用不同的参数p1、p2、p3,因此对于这三个部分,应将p1、p2、p3分别替换为(4)中的p。不同参数p1、p2和p3的RRT会导致不同程度的失真,所以在计算距离时,我们对不同的部分使用不同的权重w1、w2、w3。

因此,Dis(x,x{}')可以通过以下方式进行估计:

此时A_{1}=1A_{2}=1+\frac{l_{1}}{b}A_{3}=1+\frac{l_{1}+l_{2}}{b}B_{1}=\frac{l_{1}}{b}B_{2}=\frac{l_{1}+l_{2}}{b}B_{3}=\frac{l_{1}+l_{2}+l_{3}}{b}

D. Shifting and masking

1) Shifting:

在虹膜识别中,为了处理拍摄虹膜图像时头部旋转不当和归一化不完善带来的噪声,通常采用移位策略[35]。当将移位策略应用于传统的虹膜识别时,二值虹膜串被循环移位。假设原始虹膜数据为x=x1...x1(不分块),并且ns是移位长度。当计算x和另一虹膜数据x{}'之间的汉明距离时,我们有:

 其中x^{i}=x_{1}^{i}....x_{L}^{i}x_{j}^{i}=x_{\left ( i+j \right )%L},即xi是通过用i比特循环移位x而获得的。

在我们的方法中,虹膜数据被分成块,最终生成模板r=r1...rn。每个值ri是一个整数,对应于x中的一个块,如果出于某些原因(如降低用户端的通信成本和计算成本)需要在服务器端进行移位策略,则不能逐位对模板进行移位。因此,我们需要逐块移位模板,并且将ns设置为块大小的整数倍(即,b)。

 具体地,假设ns=nb×b,则对于实时模板r{}',有:

 其中r{}'^{i}=r_{1}{}'^{i}...r_{n}{}'^{i}r_{j}{}'^{i}=r{}'_{\left ( i+j \right )%n}r{}'^{i}是通过循环移位r{}'  i个位置。

在一些场景中,例如只需要移位很少的比特,可以在用户侧进行移位策略。一些应用可能需要将移位策略与掩蔽策略一起进行,并且可能从原始虹膜串的不同位提取最终移位的模板(由于掩蔽策略)。在这种情况下,在用户侧移动虹膜数据可能更好,因为移动的模板的通信成本可能比原始虹膜串的通信成本更小。因此,距离也可以通过(9)计算,但是,r{}'^{i}的含义被更改为从xi转换的模板。

2) Masking: 

在虹膜识别中,由于可预见的错误或设备缺陷引起的噪声可以被掩码标记出来,我们可以在匹配过程中绕过这些噪声,以提高识别性能。在传统的虹膜识别中,掩蔽策略的使用如下:

其中xm、xm{}'分别是x,x{}'的掩码,并且噪声在一个比特标记为0。kn是x和x{}'都没有噪声的位数,即kn=\sum _{j=1}^{L}\left ( xm_{j}\wedge xm_{j}^{​{}'} \right )。x和x{}'在这里没有分成块。  

在x和x{}'分成块,并将它们转换为模板r和r{}'之后,我们需要划分xm和xm{}'也分成n个块,并获得聚集信息。例如,我们从xm获得rm=rm_{1}...rm_{n},其中rm_{i}(i=1...n)计算如下:

 接下来,x和x{}'之间的距离计算如下:

 

 kn是rm和rm{}'都等于1的位置的个数,

 kn=\sum _{j=1}^{n}\left ( rm_{j}\wedge rm_{j}^{​{}'} \right )

如果fkn=0,则去掩码Dis^{mask}\left ( x, x{}' \right )。将被设置为较大的值(例如,L),并且它将被视为类间匹配。 当同时使用移位策略和掩蔽策略时,x和x{}'之间的距离是多少按以下公式计算:

 5. 安全性和有效性

A. Security

1) irreversibility:

(不知道为什么这篇有点看不下去,可能是有点疲了.........)

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值