为什么要隐私交集
安全多方计算技术是现在国家极为重视的技术,在数据要素市场的建设中也扮演了非常重要的角色。运用安全多方计算算法,可以实现数据不出库前提下做到数据价值传递,是一种统筹数据资源的重要手段。在安全多方计算的家族中,隐私交集是非常重要的一个部分,也是目前为止使用最为广泛的算法之一。
什么是隐私交集
所谓隐私交集,就是在不暴露隐私的情况下求出两个集合的交集。怎么才能不暴露隐私呢?首先可以确定,我们想要的数据的“交集”不属于隐私的部分,在此可以认为除了“交集部分”的信息都是“隐私信息”。
回头看我们的标题——“悄悄地发现共同点”,我们可以从实际生活中找到一个隐私交集的例子。假设现在小明和小红在进行相亲,两人之前是没有任何的交集的陌生人,小明担心双方会尴尬,希望找些话题。
最好的话题当然就是两人之间的共同爱好,比如美食、电影等,小明决定从一个相对他来说比较好切入的点——美食,进行进一步沟通。小明不知道小红喜欢吃什么,但又希望尽可能避开雷区。
民盟中央建议加速元宇宙科普和立法:3月4日消息,民盟中央已起草了《关于“元宇宙”技术发展的提案》,并将提交全国政协十三届五次会议。在提案中,民盟中央建议,在科普层面需加速知识传播,法律层面则需加快立法步伐。民盟中央拟提交的提案指出,目前,在新兴网络层面,相关政策法规相对缺失。“元宇宙”在未来将会带动形成全新的网络形态,当遇到突发舆情,全虚拟的环境、场景将更难进行源头追踪、问题疏导。因此建议应尽早加快立法研究,尽快形成与技术、市场发展相适应的治理模式和法律基础,全面提升我国社会治理的水平。建议组织相关部门,针对“元宇宙”相关需求、风险进行立法研究,并尽快发布。此前消息,民进中央拟向全国政协十三届五次会议提交《关于积极稳妥推进元宇宙技术和产业发展的提案》。建议推进元宇宙技术产业发展,建立相关监管治理体系。(华夏时报)[2022/3/4 13:37:12]
最稳妥的办法是直接问小红“你喜欢吃什么”,小红把自己喜欢吃的东西都说一遍,小明从里面挑几个自己也喜欢吃的东西然后展开话题。但小红也有和小明一样的顾虑,把自己喜欢吃的东西都告诉小明也可能会引起激烈的冲突。
动态 | 链客社区联合北京交通广播推出区块链技术科普节目:12月11日15:15—16:00,区块链技术社区——链客区块链技术社区将联合北京交通广播FM103.9从零开始为大众科普解码区块链技术,蜻蜓FM及北京广播网同期进行全球直播。首期做客嘉宾为链客区块链技术社区创始人郄建军和百度区块链产品负责人于雅楠。[2019/12/11]
在这种情况下最稳妥的办法就是隐私交集,双方都不告诉对方自己所有喜欢的美食是什么,最后双方却能知道两个人共同喜欢的美食是什么。
怎么做
▲?简单算法
说到这里,可能就有人会好奇了,那该怎么去做这个问题呢?
最简单的一个做法是双方约定一个方法,比如双方记录自己喜欢的美食的汉字总共多少笔,然后交换笔画,之后双方看看笔画是不是一样多,如果一样多的话那就就说明我们喜欢的美食是一个东西。
看到这里你可能会说了,等等,可是很多美食的笔画是一样多的呀,比如面条和苹果都是16笔。那这个时候你可能就需要修改你的算法了,比如说每个字多少笔。
声音 | 上海股交所总经理:区块链想要大规模发展要做好社会科普工作:金色财经报道,上海股交所总经理张云峰表示,区块链当前还处于一个“概念”的阶段,距离成熟应用,影响到百姓的日常生活还有很长的路要走。对于“区块链”和其会带来的社会和经济效果,沈阳应当持审慎的态度。区块链想要大规模发展,一方面要做好这项复杂技术的社会科普工作,加快社会大众对区块链的了解。另一方面,要充分发挥市场的作用,让企业用实实在在的技术创新,赋能实体经济的发展。[2019/11/17]
在计算机中,苹果和香蕉这些食物你可以认为是字符串,而这里的算法就是哈希函数。上面提到的算法中,面条和苹果作为输入,输出都是16,这就是哈希碰撞。哈希碰撞是简单算法会出现的第一个问题,但是其问题不仅仅这一点,现在的密码学算法已经足够强大,哈希碰撞发生的概率其实不是很高,最为重要的是安全性问题。
我们知道其实美食的种类听起来很多,但又不是很多,如果小明知道了小红有一个喜欢的食物总共24笔,其实他自己去网上搜一下食物的名称,很快就能发现,比如香蕉,就是24笔,那么小明就知道了小红是喜欢吃香蕉的。这就是简单算法的暴力破解问题。随着计算机运算能力的增强,暴力破解也成为了需要防备的攻破方式之一。比如现实生活中,两个人想要看号码簿的交集,如果只是简单使用哈希函数计算然后进行比较,因为手机号只有11位,对于现在的计算机来说在可接受时间内进行破解也并非难事。
声音 | 中科院姚建铨:要加快推进区块链与物联网融合的科普 培训:据新华网消息,日前,在区块链与物联网融合发展峰会上,中国科学院院士姚建铨说,关注区块链技术里面的大数据,跟区块链技术结合起来进行测量和检测,能更好地提升激光清洗技术。姚建铨建议,无锡今后要加快推进区块链与物联网融合的科普、培训,正确引导广大人民群众对技术的认知;同时,建立专业、权威,但又普适、成套的理论体系和标准,以此切入区块链的实际应用。[2018/9/18]
▲?双重加密
简单算法既然不够安全,那么该用什么样的办法规避这种不安全的问题?其实之前的算法中只有一方进行了加密,且加密的方法双方都是知道的,这样确实会存在暴力破解的危险,那么如果让双方同时进行加密可以吗?
比如双方事先准备一张图片,双方事先约定如果喜欢吃苹果呢就把图片顺时针旋转10度,香蕉的话就是顺时针旋转20度等等,对所有的美食都对应着一个相应的旋转角度。
然后小明先把图片按照自己喜欢的食物按照约定好的规则进行旋转,但这个时候小明不能直接把图片发送给小红,因为这样的话小红知道原始图片,又知道各个食物对应的角度,那她立刻就知道了小明喜欢的食物是什么。
声音 | 火星人朋友圈科普RAM:火星人在朋友圈发文称,“什么是RAM?简单来说就是EOS这个国家的土地,所有的经济行为都离不开土地。只要EOS的BP们能投票形成一个稳定的供给预期,并且不改变目前的Bancor算法,那么RAM后续的价格有可能会像北上广深的房价走势。房价下跌不行,房价过快上涨也不行,EOS的生态越来越像某国了,真有意思。”[2018/7/6]
所以小明会自己偷偷定一个旋转,比如逆时针旋转20度,在第一次根据食物对图片进行旋转后,再偷偷的按照自己的规则去旋转一次。
因为小红并不知道小明自己偷偷定下的规则中具体是旋转多少度,所以这个时候小红就算拿到了图片也不知道具体对应的是什么食物,因为这个时候不论什么食物都是有可能的。
小红看到小明的做法,感觉小明很聪明,也学小明偷偷定了一个自己的旋转角度,比如顺时针旋转10度。拿到了小明发给自己的图片以后就按照自己定下的角度再旋转一次。
同样的,小红也把图片按照自己自己喜欢的食物对应的角度旋转一下,再按照自己偷偷定下的角度旋转一下,然后发给小明,小明也将这个图片按照自己偷偷定下的角度进行旋转。
然后两个人就直接比较旋转后的图片,如果图片一模一样那就说明两个人喜欢吃的食物是一样的,否则就说明两个人喜欢吃的食物是不一样的。
通过两次加密的方式,我们就杜绝了穷举破解的问题,因为双方都不知道对方的秘密旋转角度是多少。
▲?非对称加密
刚刚的算法乍一听看似有点道理,但是实际上是有一点问题的,如果稍微观察一下就会发现,在最后比较的时候其实小红或者小明是拿到了两个人手里最后的结果的。
假设小明拿到了小红手里的图片,我们先回忆一下小红手里的图片是怎么构成的。首先是小明根据自己的食物选择旋转的角度,然后再按照自己偷偷定下的角度进行旋转,最后小红再按照自己偷偷定下的角度进行旋转。
那么小明其实已知三次旋转中的两次角度是什么、图片的初始状态是什么,此时小明就可以很容易地推断出小红的秘密旋转角度是什么,得到小红的秘密旋转角度后通过自己手上的另一张图片就可以很容易知道小红喜欢吃的食物是什么了。
之前提出的算法其实是基于对称加密的一个双重加密方法,因为对称加密的局限性,故双重加密总会有一个问题,即最后获取结果后比较结果时的信息泄露问题。
这个问题有三种解决办法。
?第一种是有一个居中调节方,调节方来比较最后的结果。
因为调节方并不知道双方的秘密角度,故调节方没有办法获知双方具体喜欢的食物是什么,但是居中调节方只要愿意与任何一方进行合作,那么另外一方的数据会立刻暴露,无疑是有风险的,其次如果有居中协调方那么整个算法无疑不再是分布式的了。
?第二种是在最后一步比较结果的时候使用隐私比较的技术进行比较,即保护双方数据的情况下进行比较是否相等。
但是这样会存在两个问题:首先无法确认再引入一个新的算法去解决问题,效率上是否会有问题;其次,如果两者结果相等的话,双方都能获取对方的秘密角度,在下次进行比较的时候又需要重新生成一个新的秘密角度,这也会增加每次比较时的工作量。
第三种是使用非对称加密的方式进行比较。通过非对称加密,我们可以使用最简单的办法完成这个问题。
还是刚刚的场景,如果小明和小红都有各自的公钥,相对应的,也有一份私钥。非对称加密下,如果使用公钥对数据进行加密,那么加密后的数据是只能通过对应的私钥进行解密的。
通过这种方式我们就可以规避之前的双重加密方法的问题,在算法的最后即使小明或者小红获得了两重加密的结果,但是因为加密的结果只能通过私钥解密,故无法反推出小红喜欢的食物是什么。
总结
通过上述的描述我们可以知道交集算法最简单即为明文计算,之后使用简单算法可以保护一点隐私,但是会存在暴力破解的可能,双重加密可以解决暴力破解的可能,但是由于对称加密的局限性,最后要么丢失安全性,要么会丢失分布式的特性,非对称加密的算法则可以克服以上的所有缺点。
如果你熟悉密码学,一定知道大名鼎鼎的RSA算法就是使用非对称加密进行运算的,其中存在大量的模指运算,故效率较低,想要完成大规模数据的运算还需要对算法进一步的升级。
作者简介
刘毅恒
来自数据网格实验室BitXMesh团队一个鲜为人知的知名程序员
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。