同态加密

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

同态加密

同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。

同态加密的基本概念:同态加密的思想起源于私密同态,代数同态和算术同态是私密同态的子集。

R 和S 是域,称加密函数E:R→S 为:

1)加法同态,如果存在有效算法⊕,E(x+y)=E(x)⊕E(y)或者x+y=D(E(x)⊕E(y))成立,并且不泄漏x 和y。

2)乘法同态,如果存在有效算法,E(x×y)=E(x) E(y)或者xy=D(E(x) E(y))成立,并且不泄漏x 和y。

3)混合乘法同态,如果存在有效算法,E(x×y)=E(x) y 或者xy=D(E(x) y)成立,并且不泄漏x。

4)减法同态,如果存在有效算法○- ,E(x-y)=E(x)○- E(y)或者x-y=D(E(x)○- E(y))成立,并且不泄漏x 和y,则称E 为减法同态。

5)除法同态,如果存在有效算法○/ ,E(x/y)=E(x)○/ E(y)或者x/y=D(E(x)○/ E(y))成立,并且不泄漏x 和y,则称E 为减法同态。

6)代数同态,如果E 既是加法同态又是乘法同态。

7)算术同态,如果E 同时为加法同态、减法同态、乘法同态和除法同态。

同态加密是一种加密形式,它允许人们对密文进行特定的代数运算得到仍然是加密的结果,将其解密所得到的结果与对明文进行同样的运算结果一样。换言之,这项技术令人们可以在加密的数据中进行诸如检索、比较等操作,得出正确的结果,而在整个处理过程中无需对数据进行解密。其意义在于,真正从根本上解决将数据及其操作委托给第三方时的保密问题,例如对于各种云计算的应用。这一直是密码学领域的一个重要课题,以往人们只找到一些部分实现这种操作的方法。而2009年9月克雷格·金特里(Craig Gentry)的论文,从数学上提出了“全同态加密”的可行方法,即可以在不解密的条件下对加密数据进行任何可以在明文上进行的运算,使这项技术取得了决定性的突破。人们正在此基础上研究更完善的实用技术,这对信息技术产业具有重大价值。

2009年,IBM宣布宣布了一项研究成果,称其实现了全同态数据加密方案。研究人员Graig Gentry使用称为”理想格(ideal lattice)”的数学对象,使密文数据得到充分操作。主要方案包括三个关键步骤:1)构建一个受限同态加密算法,该算法支持密文的低阶多形式运算;2)将解密操作“打散”成更小的子操作,这些子操作可以表示成低阶多项式运算;3)利用“引导程序”将受限同态加密算法转变成全同态加密算法。(对于一个加密函数,如果同时满足加法同态和乘法同态,就称其为全同态加密函数,否则称为部分同态加密函数)。该方案密文处理效率低,离实际应用还有较长时间。

K-匿名技术

数据表的k-匿名化( k-anonymization) 是数据发布时保护私有信息的一种重要方法。 k-匿名技术是1998 年由Samarati和Sweeney 提出的,它要求发布的数据中存在一定数量(至少为k) 的在准标识符上不可区分的记录,使攻击者不能判别出隐私信息所属的具体个体,从而保护了个人隐私, k-匿名通过参数k指定用户可承受的最大信息泄露风险。k-匿名化在一定程度上保护了个人的隐私,但同时会降低数据的可用性。因此, k-匿名化的研究工作主要集中在保护私有信息的同时提高数据的可用性。

k匿名技术是一种基于泛化(Generalization)或者抑制(Suppression)操作,使得每条数据记录都无法和其他至少

k-1条数据记录进行区分,从而有效防止链接攻击(linkage attack)的隐私保护技术。k匿名技术属于部分信息隐藏技术的范畴,适用于附加隐私保护功能的数据发布(PPDP)。由于k匿名的简洁性、实用性和易操作性,自从其1998年被提出以来[125],便受到了业界的广泛关注,相关理论发展的非常成熟。

k匿名模型假设每条原始数据记录都包含三种属性:标识符属性,联合标识属性和敏感属性。在k匿名过程中,标识符属性被移除,联合标识属性被泛化或者抑制,使得每条数据记录的联合标识属性都至少和其他k-1条数据记录相同,敏感属性不做任何改变。由于k匿名模型还存在一定缺陷,之后该领域的学者又陆续提出了一些改进模型。根据其针对的链接攻击类型,可以划分为三大类:针对记录链接(record linkage)的模型,针对属性链接(attribute linkage)的模型和针对表链接(table linkage)的模型。

(X,Y)匿名模型。k匿名假定每条数据记录都对应不同的数据拥有者,但是实际情况并非一定如此,有可能多条记录对应同一个数据拥有者。这样就会导致包含了 k条记录的匿名组实际上对应了少于k个数据拥有者,那么每个数据拥有者的隐私就没有得到充分保护。为了解决这个问题,Wang和Fang提出了(X,Y)匿名模型,X和Y是两个不相交的属性集。假设x是映射到X上的属性值,那么x相对于Y的匿名性aY(x)就等于映射到Y属性集中且和x共同出现的不同属性值的个数。假AY(X)=min{aY(X)|x k,}=如果AY(X)≥k,那么发布表T就满足了(X,Y)匿名模型的需求。

(X,Y)匿名模型要求X中的每个属性值都对应Y中的至少k个不同属性值。传统k匿名模型可以看作是(X,Y)匿名模型的一个特例(如果将联合标识属性看作X,将标识符属性看作Y)。(X,Y)匿名模型为定义不同类型的隐私需求提供了一个统一的途径。如果将X看作联合标识属性,将Y看作敏感属性,那么就意味着每个匿名组中包含的敏感属性值必须要有很大的差异度,这样攻击者就无法将攻击目标链接到一个特定的敏感属性值。

k匿名模型、(X,Y)匿名模型和MultiRk匿名模型通过将攻击目标隐藏在联合标识属性相同的一组数据记录中来防御记录链接攻击。然而,处于同一个匿名组内的各条记录的敏感属性值可能非常相似,在这样的情况下,即便攻击者不能确定其中哪一条记录是攻击目标,也基本能够把攻击目标和其敏感属性值联系起来。举例来说,假设某个包含4条记录的匿名组所对应的敏感属性值为〈流感,艾滋病,艾滋病,艾滋病〉,即使攻击者不能够确定攻击目标到底是该组中的哪一条记录,也能够推测出攻击目标患艾滋病的概率为75%。为了弥补这个缺陷,针对属性链接的隐私保护模型应运而生。

相关文档
最新文档