隐私的三元平衡

从实用性角度讲,完美的匿名防护似乎并不经济,不论是基于同态加密还是基于安全计算芯片。有不少团队在两个方向上分别探索,追寻隐私、高效、通用性的三元平衡。2018年大量的行业应用也在这个领域爆发,从目前的技术选型上可以分为加密派和安全计算派。加密派主要基于前面介绍过的同态加密,以零知识证明应用为主,我们简称为ZKP阵营。而安全计算主要基于计算机环境,利用多方计算协议和芯片安全区,我们统称TEE阵营。在介绍具体项目前,我们先对本章节介绍过的知识点做一个简单的总结,ZKP阵营的技术对比如下表:

Proof system zk-SNARKs zk-STARKs Bulletproofs
Proof size Short Large Short
Prover time FFT + Elliptic Curve FFT Linear
Verifier time Efficient Efficient Linear
Trusted setup Required Not required Not Required
Practical Yes improving Yes

从zk-SNARKs到zk-STARKs是空间换时间的取舍,虽然都不完美,但都在持续进化。这一方案最大的优点是不挑机器,可以在任何矿工网络运行,以数学来保证隐私。但最大的缺点就是性能不足,目前大规模应用仅限在匿名交易平台,还无法支撑更加复杂的场景。所以在平衡三角里,ZKP阵营选择了隐私+通用性。站在这一阵营的首先有扩展智能合约匿名计算的Origo,迈出了从交易匿名到计算匿名的重要一步。为了达到这个效果,需要将智能合约代码与ZKP系统在编译层进行整合。通过Arithmetic Circuits计算门电路的抽象,将复杂的代码还原到基础计算流程,并在流程里生成对应的同态证明和验证。为此他们对EVM也进行了改造,可以兼容一般代码的执行,和加密执行与验证。这个概念2016年Hawk的论文就以剪刀石头布等为例进行了推演。游戏双方的“出招”作为合约输入,分别同态加密起来防止作弊。智能合约执行的时候,分多次循环匹配可能的结果。通过验证后进行裁决,保证参与多方的匿名性和结果的有效性。

把这个模式进一步推广就是通用数据流的安全计算,热门项目covalent.ai就是2018年成立在这个方向的探索。其中除了尝试完全同态加密(FHE)和零知识证明(zk-STARK版本)外,也包含了可信执行环境(TEE)。一方面他链上第一个应用是医疗数据交易平台medata,利用同态加密来保护交易,用IPFS实现分布式存储,最终想定义去中心化数据交易的标准。另一方面他又有AI的野心,涉及智能算力(运行Caffe RNN这样的深度学习模型),所以基于TEE的沙盒必不可少。这里就会发现,真正大规模算力的应用,是TEE阵营的专长,他们选择了隐私+高效。这个方案的优点不言而喻,在安全环境内,不存在共识和加解密验证的负担,可以最大效率转化芯片的算力。但缺点也很明显,参与贡献的矿工必须使用TEE技术的芯片,而芯片的缓存大小直接限制了安全区的使用效能。

ZKP基于数学基础,大厦建的牢固,暂时没有发现严重漏洞。但TEE作为软硬件结合的芯片环境,构成更为复杂,最近走红以后更是受到大量计算机安全专家的高度关注。后来也确实爆出漏洞,能够通过Spectre Attack盗取SGX enclave安全区的数据。漏洞虽然能够修复,但市场信心遭遇打击。例如PlatON项目团队就不认为TEE足够安全,他们选择聚焦在其他技术的整合。使用基于非交互证明的Verifiable Computing,加上MPC和同态加密,再通过逻辑门电路做并行化和链下执行以提升效率。经过两年研发,他们推出的这套庞大解决方案,也在等待市场的验证。在多元平衡中没有唯一答案,总是有不同解针对不同场景。从大量该类项目看来,传统计算机专业的团队,似乎更加青睐TEE硬件保护或者编译过程保护的方案。除了智能算力章节介绍的Golem平台外,2018年还有多家热门项目发布。其中软硬结合的Oasislabs由UC Berkeley 和 MIT的明星团队打造,初期就融到$45M。为了弥补TEE可能存在的漏洞,他们开源了Keystone安全计算区软件,开放给领域“守门人”检验。同期上海交通大学软件学院夏教授带队的项目TEEX也获得了红杉资本的青睐,在这一领域展开角逐。一个私密又高效的区块链网络,值得期待。

results matching ""

    No results matching ""