浅浅社区知识小课堂——隐私保护(一)

我们通常提到的隐私保护,例如耳熟能详的同态加密(Homomorphic Encryption)、安全多方计算(Secure Multi-Party Computation)、密文搜索等方案均为基于密码学的隐私保护。

其中同态加密的原理在浅浅社区建设贴中有类似的提法,当时以用户发布的文章(动态)为例,给出明确的过程梳理。

这里我们所提到的同态加密,是指我们使用了某个加密函数,该函数允许用户直接对密文进行特定的代数运算,所得到的结果,仍然是加密的结果。

举个例子,浅浅在数自己有多少个LAT,这个时候发现第一个钱包里有10个LAT,第二个钱包里有20个LAT,但是她不想让计算器知道自己有多少个LAT,于是她找到了一个加密函数。这个函数特别神奇,当然对某个数字加密之后得到密文时,1号密文加上2号密文所得到的结果密文,竟然就是1号原文加上2号原文的结果原文加密之后的内容。

这里我们就称这个加密函数,具有加法同态的性质,乘法同态的道理跟这个类似,这里就不过多赘述了。

如果当一个加密函数,同时满足加法同态乘法同态,我们就称这个加密函数为全同态加密函数。Gentry在他2009年发表的论文 Fully Homomorphic Encryption Using Ideal Lattices 中提出了首个全同态加密的解决办法,此后有很多很多密码学家在他的工作基础上不断地钻研、拓展,直到今天。

我们还可以站在巨人的肩膀上,探索非密码学方向的抗大数据分析的隐私保护,其中就包含数据扰乱、匿名模型还有PPDM。

数据扰乱,是指利用某些特定的方法或策略对当前已有的数据样本做出干扰,防止有心人的非分之想。比如 l-diversity: privacy beyond k-anonymity 中提到的数据泛化,利用数值型或者枚举型的属性值来代替样本中的真实数据,降低样本中的信息粒度。

我举个简单的泛化案例。前几天期末考试的成绩出来了,我语文考了86分,按照五级积分制,我属于乙,这个时候有个男生特讨厌,跑来跟我说,他考了85分,然后问我考多少,我不想理他。我就说,我考了乙级,也就是80~89那一档。这样子我就把我的成绩数据粒度降低了。

但其实这种方法,是有问题的,尤其是在高维向低维泛化的时候,从高到低很简单,从低到高就很困难。这就是另外一个方向要讨论的内容,这里不再展开。

除此之外,数据扰乱还包含数据扭曲、数据清洗以及数据屏蔽。数据扭曲很好理解,就是对原始数据叠加随机数,可能是加法叠加或者乘法叠加,从而实现隐私保护;数据清洗其实跟数据脱敏差不多,就是把这批数据中的稠密关联项去掉,让攻击者很难利用统计学方法去挖掘数据内的关联规则,从而实现隐私保护;数据屏蔽则是利用符号来代替隐私数据中的部分属性值。

3 个赞

学习了,谢谢分享 :+1:

1 个赞

匿名模型中,有静态数据和动态数据的区分,本质上是因为静态数据在单次发布之后不做修改,而动态数据则会出现多版本发布、相继发布、连续数据发布以及联合发布等情况。在静态匿名模型下,我们通常是采用k-匿名的方案,这里可以参考 k-anonymity: a model for protecting privacy,该方案将用户数据匿名化,使得用户的隐私数据无法被攻击者/截获者所识别,但是存在敏感属性约束缺失的问题,很容易受到同质性攻击【对于同质性攻击,我们后续小课堂再提】。

于是很多计算机科学家,就哼哧哼哧地对这个只约束标识符属性的k-匿名方案提出不同的改进策略,目的在于修复对敏感属性的约束。比如Anonymizing sequential releases提出的基于置信度边界的匿名模型,以及后来的(a,k)、(k,e)、(ε,m)、(n,t)-closeness等匿名策略。需要注意的是,这里的静态匿名方案,只适用于特定场景下的数据发布或者一次性发布。

浅神V5!浅神真的是女生么

是的 :slightly_smiling_face:

哈哈哈哈哈,我刚放学,浅浅社区知识小课堂,由算法部和社区气氛组统筹