2024-10-03
白话解读ZK与TEE:共存而非竞争
终于有时间来写这个了。关于zk与TEE的整个辩论让我意识到,有很多人在CT上发表意见之前,连基本的研究都懒得做。
说一个会取代另一个是绝对愚蠢的,就好像我们生活在一个二元世界一样。它们是完全不同的技术;一个是基于硬件的,另一个是基于软件的。这两者在加密行业诞生之前就已经存在并共存了。它们各自有自己的优势和权衡。这一切都取决于具体项目的使用案例和设计需求。
工作原理:
zk:一方(证明者)可以向另一方(验证者)证明一个陈述是真实的,而不透露任何超出该陈述本身有效性的信息。
TEE:处理器内的一个安全飞地,确保加载其中的代码和数据在保密性和完整性方面得到保护。
使用案例:
zk:(1)隐私 - 例如 @TornadoCash,@penumbrazone,@aztecnetwork;(2)可扩展性 - 所有的zk rollups,例如 @zkSync,@Starknet,@Scroll_ZKP。我会将zk桥、预言机、ML等归类为“可扩展性”,因为它们本质上是在扩展区块链生态系统,但也欢迎不同意见。
TEE:主要是隐私 - 私有L1/L2,例如 @SecretNetwork,@tenprotocol;Flashbots的加密mempool和区块构建器Suave;Web2中使用TEE的私人联邦学习。
附注:在隐私方面,对于zk,证明者可以看到程序和数据。隐私保护是针对除证明者以外的任何一方。对于TEE,甚至运行TEE的计算机都不知道安全飞地内发生的事情。
优势:
zk:可以在无需任何可信第三方的情况下用于去中心化系统;不依赖于硬件
TEE:由于基于硬件的隔离,安全级别高;减少了攻击面。
劣势:
zk:计算密集型
TEE:依赖硬件供应商(例如Intel)和硬件中的潜在漏洞;受限于TEE内可用的计算能力和内存(例如,一些大型ML模型无法在TEE中运行)
TEE并不新鲜。之前的周期中有很多,例如 @OasisProtocol 和一些 @Polkadot 生态系统项目。由于缺乏生态系统,一些已经变得无关紧要。没有实际使用的情况下,讨论哪种技术更优越有点无意义。
此外,它们在某些情况下可以共存。例如,@alignedlayer 将构建TEE证明,这是TEE中的一个重要步骤,允许TEE节点向Aligned证明在TEE内部运行的代码是真实且未被篡改的。
查看更多