“Web3云服务知识图谱”是我们针对Web3云服务从零到一的入门级文章,我们希望这个栏目能让大家全方位了解到Web3云服务的内容,也让刚接触这个领域的人能够快速掌握Web3云服务相关知识。今天是该栏目的第4期,我们将在本文中介绍什么是多方安全计算以及它所包含的关键技术理论或协议。
什么是多方安全计算
物联网、移动网络、大数据和云计算等技术日新月异,人们的生活方式也随之发生巨变。但是,这些技术也带来了隐私信息和秘密数据泄露的风险,在多方场景中对于数据处理过程的隐私保护成为迫在眉睫的课题。
多方安全计算(Secure Multi-Party Computation,MPC)便是解决这一安全问题的技术之一,它可以让多个参与方在不泄露各自的隐私数据的前提下,共同计算一个目标函数。
这个概念最早由中国计算机科学家、2000年图灵奖获得者姚期智院士在1982年提出,用于解决百万富翁问题。这是个非常经典的问题:两个百万富翁在街头偶遇,双方想竞奢,但他们都不愿暴露自身资产,如何在没有第三方的情况下,推断出谁更富有?
自那以后,多方安全计算的理论和实践研究不断发展,涉及了多种协议、密码学理论和应用领域。
目前,多方安全计算理论已经衍生出多个技术分支,包括秘密共享、 不经意传输 、混淆电路 、同态加密、零知识证明等关键技术理论或协议。
(一)秘密共享
秘密共享(Secret Sharing)是一种将秘密信息分割成多个份额,分发给不同的参与者的技术,目的是保护秘密信息不被丢失、破坏或泄露。其基本思想是,只有当足够多的参与者合作时,才能恢复出原始的秘密信息,而少于一定数量的参与者则无法获得任何有关秘密信息的线索。
(二)不经意传输
不经意传输(Oblivious Transfer)在1981年由Michael O. Rabin提出,消息发送方发信息给接收方,接收方以1/2的概率接受信息,因此协议交互结束后,消息发送方并不知道接受方是否接受了信息,而接收方能准确地知道自己是否得到了信息,从而保护了接受者的隐私安全,也保证了数据传输过程的正确性。
(三)混淆电路
混淆电路(Garbled Circuit)又称姚氏电路(Yao's GC),是姚期智教授针对百万富翁问题提出的解决方案,其核心技术是将两方参与的安全计算函数编译成布尔电路的形式,并将真值表加密打乱,从而实现电路的正常输出而又不泄露参与计算的双方私有信息。
(四)同态加密
同态加密(Homomorphic Encryption)是一种在加密数据上进行运算的方法,使得运算结果在解密后与在明文数据上进行相同运算的结果相等。同态加密可以保证数据的可计算性和安全性,同时防止运算过程中的数据泄露。使用同态加密,我们就可以把一些敏感的数据加密后交给别人帮我们处理,而不用担心数据被泄露或者被篡改。
(五)零知识证明
零知识证明(Zero-Knowledge Proof)是一种让证明方向验证方证明一个陈述是真实的方法,使得验证方能够信服证明方拥有某个知识或满足某个条件,而不需要证明方透露任何其他信息。零知识证明可以保证数据的正确性和最小化,同时防止验证过程中的信息泄露。
作为密码学领域的核心方向之一,多方安全计算已经展现出了它独有的魅力。而随着技术的进一步发展,多方安全计算将广泛应用于各个行业和领域,如医疗、金融、能源等,为社会带来更多的便利和安全性。