zkRollup和Validium都是以太坊Layer 2的扩展性解决方案,其交易有效性通过使用零知识证明来实现,不过一个的数据可用性保持在链上,一个是保持在链下。这个看似微小的差别导致两者在资产的安全级别上存在较大差异。当然,这也导致了两者在吞吐量量上也存在较大差异。Validium可能更适合于对无须信任要求没那么高的较为高频应用(如游戏dApp),而zkRollup更适合于对安全要求较高的支付和交易所等场景。本文作者Alex Gluchowski,由“蓝狐笔记”社群的“SIEN”翻译。 DeversiFi最近推出了新版的交易所,它是由StarkEx交易引擎提供的支持。这是一项了不起的技术成就,它提高了用户从加密货币交易所期望的安全级别。这也标志着一个历史性的转折点:这是有史以来第一个在产品系统中应用STARK(无须信任设置的简洁零知识证明)。 从背景上说,StarkEx是Validium:它是一种Layer 2扩展性解决方案,其中所有的交易有效性都使用零知识证明来强制执行,而数据可用性保持在链下。这可以防止Validium中的资金被盗,因为从特定用户账户发生的每次价值转移都必须得到用户的授权 有没有一种方法可以阻止Validium中的数据保留攻击?从2016年提出Plasma概念以来,这个问题就被大家讨论。同时,zkRollup也是在这一研究结果上诞生出来的。Non-rollup试图无须信任地确保数据可用性,这将导致失去Validium的大部分竞争优势。 尽管不能完全解决问题,但StarkEx通过引入许可的数据可用性委员会(DAC)来缓解这一情况。 DAC必须通过其委员会成员的法定人数签署对状态的每次更新,以此来确认它已经接收到数据。在StarkEx中,DAC由8位参与者组成(添加太多成员会不利于系统的活性)。它们都是在已建立的法律管辖区中众所周知的富有声望的组织。对他们来说,几乎不太可能去尝试滥用其权力。这就是其构建的逻辑。 矛盾的是,众所周知、富有声望、且处在强大国家的司法管辖区正是让它们变得脆弱的原因。一种可能的麻烦情况是:运营者要求执行KYC/AML法规,并有义务冻结(可能是永远)交易记录超过1万美元的账户的所有资金。 随着我们研究的深入,StarkEx实施了“验证者合约升级”机制,它允许运营者立即将新项添加到链上的验证者合约。它不能使任何旧的逻辑失效,例如,你不能删除用户签名检查。相反,它允许增加其他约束(就Solidity而言,你可以将约束视为?`require()`语句)。 这是很好的安全功能:如果在StarkEx的STARK circuit逻辑中发现任何缺失的约束,则可以快速修复它,同时不引入新的漏洞。但是,这一功能可以用作为隐藏的审查后门。 简言之,StarkEx运营者始终可以部署合约逻辑的扩展,这样就存在引入黑名单的扩展可能,而无须事先警告用户。从其文档中还无法完全弄清楚这一点,但是看上去执行新规则似乎并不需要得到DAC(蓝狐笔记:数据可用性委员会)的同意。 (责任编辑:admin) |