隐私计算基础
为什么隐私计算需要区块链
区块链与隐私计算相辅相成。在隐私计算领域,区块链、联邦学习和安全多方计算已然成为三大关键核心技术,而且这三大技术之间互有侧重,也有许多重合和联系。其中,从区块链的角度出发,我们可以看到,一方面,区块链上的数据需要采用隐私算法来保护;另一方面,区块链也可以成为隐私计算协作里的底座和枢纽:采用区块链技术去记录、追溯多方协作中的数据集、算法模型、计算过程,并对最终结果进行评估和共识,持续优化协作效率。下文从两个部分详细解答为什么隐私保护需要区块链。
什么是区块链
区块链技术最初是被应用在比特币[1]系统中,随后在密码货币领域得到快速发展,并迅速扩展到物联网、知识产权保护等领域,被认为是继移动互联网之后的第五代互联网颠覆性技术。区块链并不是一种单一的技术,而是多种技术整合的结果,包括但不限于分布式存储、共识机制、智能合约、对称/不对称加密等等。这些技术以新的结构组合在一起,形成了一种新的数据记录、存储和表达方式。从一般结构出发,区块链妈祖的基本特点有:
- 自治(透明):系统节点对等,可以自由选择加入或离开;去中心化,无管理机构或第三方仲裁。
- 分布式(共享):只需要连接到最近的节点就可以获取所有账本信息,同样交易发布也仅需提交给临近节点,依次转发下去直至遍及整个网络。
- 不可篡改(永久):基于密码学技术保证上链交易合法,每个节点都本地同步一份附有时间戳的账本副本,保证数据不可篡改。
- 按合约执行(公平):所有节点都按照一个规则或合约行事并达到共识(例如智能合约或账本同步)。
区块链与 Fidelius 结合
在区块链中,所有数据(包裹交易类别、交易双方的地址、交易金额等)都是公开的,这在一定程度上提高了参与者对数据真实可靠的信心。大多数区块链系统会将所有交易数据记录在公共账本中,任何用户均可查询。一笔交易的有效性需要经过区块链中大部分节点的认可,而验证结果取决于交易数据(例如交易金额,携带数据及其签名)。 早期区块链系统(以公链为代表),依赖于公开透明的交易,所有节点同步账本,这种方式导致了严重的隐私泄露。此后产生了许多具有匿名区块链系统,例如ZCash15、Monero16等等,其主要采用了混淆服务和环签名等技术。上述匿名技术主要是用于保护用户身份隐私,这一方面是由于公链属于非许可区块链,用户对于匿名的需求更强烈;另一方面,大部分公链所承载的应用仍然为数字货币交易,即链上行为多数为普通转账交易,在此基础上,用户身份匿名化即可满足隐私保护需求。然而联盟链的应用场景更为广泛,其链上主要数据不再是代币(Token)转账信息,更多的是业务相关数据,此时公开所有数据在某些关键应用场景下是不可行的,例如金融、医疗等数据敏感性高的场合。因此,区块链本身并不能直接满足交易数据的隐私保护需求。 近年来也涌现出一些隐私保护技术,可以对区块链的更多交易信息(例如智能合约)实现隐藏,例如zk-SNARK、WeDPR 等技术。然而在Fidelius 的设计哲学中,我们并没有将 Fidelius 设计成与区块链紧耦合的关系,原因在 Fidelius 介绍中的 Fidelius 和 区块链中做了解释。
参考文献
【1】S.Nakamoto, "Bitcoin: A peer-to-peer electronic cash system," tech.rep., Manubot,2019.