一组学术研究人员发布了一种新型协议,旨在为以太坊等基于账户的智能合约平台提供机密性和匿名性。
问题
在加密货币世界中,为用户创建保护隐私的系统一直是一个基本问题所在。在早期,比特币的匿名性足以保护交易隐私。然而,随着区块链分析公司的崛起,这种错误的想法很快就被揭穿了。
此后开发了许多以隐私为中心的协议。其中许多协议为创建以隐私为中心的加密货币奠定了基础。这些例子包括Monero、PIVX和Zcash。此外,一些开发商还试图在更流行的数字货币中加入隐私保护协议,比如比特币。
虽然这些注重隐私的数字货币提供了交易隐私,但在为基于账户的平台创造同样的机会方面存在差距。目前存在的许多以隐私为中心的协议只能在UTXO交易模型中实现。
UTXO表示未使用的交易输出。这是比特币以及大多数关注隐私的加密货币网络中使用的交易跟踪模型。这个模型与传统银行跟踪余额的方式不同,因为它跟踪的是未使用的余额。虽然UTXO模型非常优雅,可以为比特币的许多独特功能提供支持,但它的缺点是无法支持在其上构建更复杂的系统。
相比之下,以太坊网络使用了一个帐户模型。这种交易模式与传统的银行系统类似,它类似于资产负债表。这个更简单、更传统的模型可以支持像Solidity这样的复杂脚本语言。此外,它可以为已知的以太坊网络的智能合约提供 *** 作支持。
不幸的是,以隐私为中心的协议集中在UTXO模型上,这使得它们在以太坊网络以及其他基于帐户的区块链网络上无法使用。
进入Zether
在一篇名为《Zether:走向智能合约世界的隐私》(Zether: to Privacy In a Smart Contract World)的新论文中,四名研究人员公布了一种专为基于账户的网络设计的新协议。Zether协议已经准备好在以太坊网络上部署,不需要对底层软件进行任何广泛的更改。它也可以在任何其他帐户模型上实现,而不考虑网络中使用的协商共识机制。
Zether由Benedict Bunz、Shashank Agrawal、Mahdi Zamani和Dan Boneh开发,是一个完全分散式的、保密的支付机制,兼容以太坊和其他智能合约平台。Zether采用了一种新的智能合约的形式,它可以隐藏账户中的余额,同时隐藏使用该协议进行交易的人的身份。
通过这种方式,Zether协议能够同时支持机密性和隐私性。密码学中的保密性是指转移的金额被隐藏的交易质量。这也与交易后保留的余额有关。匿名性是指当事人的素质,而发送方和接收方则是模糊的。Zether使用加密证明来保护事务的隐私。
正如前面提到的,Zether可以通过智能合约的形式进行 *** 作。在以太坊网络中,它被称为Zether智能合约(ZSC)。为了使资金从一方转移到另一方,智能合约有一个称为Zether token (ZTH)的代币。这些代币通过在智能合约中创建和持有的帐户在用户之间传输。钱包地址采用ElGamal公钥的形式。
它是如何工作的
要将ether转换为ZTH,用户需要将资金发送到与智能合约相关的钱包中。ETH随后在智能合约中持有,但用户收到相同数量的ZTH。为了获得ETH,用户执行burn函数,然后销毁他们的ZTH,并在ETH中给他们相同数量的积分。也可以将ZTH绑定到智能合约,就像在智能契约中绑定ETH一样。反之亦然。
为了演示,用户A使用以太坊地址创建一个ElGamal密钥对。密钥对包括公钥和私钥。然后用户A将提交资金转移,将ETH存入Zether智能合约,同时附上其公钥。
Zether智能合约使用用户A的公钥创建一个帐户,并将他们在初始融资承诺中发送的ZTH金额记入该帐户。用户A现在可以将ZTH转移到Zether智能合约上的其他账户,同时保护他们的隐私。隐藏的数额是通过加密完成的。
为了提供匿名性,用户A必须将他们的交易包含在一个匿名集中。这是一组Zether帐户,它们也在网络上进行交易。但是,观察者将无法识别交易从哪里来。从匿名设置中可以很容易地看到,一个帐户在其中进行了金额隐藏的交易。
就像在一些以隐私为中心的数字货币中常见的那样,Zether严重依赖于零知识证明。Zether协议还使用了创新的防d协议的修改版本。 新的叫做Σ-Bullets ZK-proof机制。正如白皮书中所解释的,修改“允许我们有效地将基于Bulletproofs验证与ElGamal加密结合起来”。
虽然Zether适用于任何账户模型,但研究人员已经成功地在以太坊网络上实现了它。在印刷的时候,机密的ZTH交易花费0.014 ETH。此外,研究人员相信“Zether在今天是实用的,而且已经计划好的对以太坊的增强将变得更加有效。”
Zether协议代表着账户模型朝着正确的方向迈出了一步,如果它成功了,将很可能促进以太坊和其他采用它的区块链网络的更多参与。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)