okx

比特币资讯网分享以太坊多重签名技术分析:以Ownbit与Gnosis为例

时间:2023-08-12|浏览:256

欧易

欧易(OKX)

用戶喜愛的交易所

币安

币安(Binance)

已有账号登陆后会弹出下载

通过阅读合约源码,我们可以理解Ownbit和Gnosis这两种以太坊多签方式的实现原理和优缺点。

近期,Ownbit多签在管理的资金总额方面增长迅速,目前单单ETH/ERC20多签的资金总额已经超过了1亿美金。而Gnosis是另一种较为广泛使用的ETH/ERC20多签钱包

Ownbit和Gnosis都是通过合约账户来实现以太坊多签,但是它们的实现逻辑却有很大的差异。它们分别代表了当前两种主流的实现方式。我们通过阅读合约源码来解析它们的实现原理和各自的优缺点。

首先,我们在etherscan上选择一个Ownbit和Gnosis多签地址,并在“Contract”页面上查看相应的源码。Ownbit多签合约的名称是OwnbitMultiSig,而Gnosis多签合约的名称是MultiSigWallet。

一个M-N多签的含义是,在有M个人管理资产的情况下,当其中N个人同意时,可以花费该笔资产。在以太坊中,一个地址(私钥)代表一个人。要表示您同意花费某笔资产,有两种方式:

- 用您的私钥对相应的花费(金额、目标地址等)进行签名,并给出签名结果; - 用您的私钥发送一笔以太坊交易,调用特定的接口,并提供特定的参数。

Ownbit多签使用了第一种方法,而Gnosis多签使用了第二种方法。

Ownbit多签和Gnosis多签在构造函数上几乎一致,只是在一些细节处理上Ownbit做了一些优化。构造函数验证传入的owner地址的唯一性和非零性,以及owner人数和最少签名人数的常规检查。

Gnosis实现多签的逻辑如下:任意一方通过submitTransaction方法提交交易,得到一个交易号。value是将要转移的以太币数量,data是该交易的数据。data可以传入任何数据,从而实现任意功能。其他参与方通过confirmTransaction方法提交交易确认,当满足最低要求的确认人数时,执行交易的内部逻辑。

Ownbit实现多签的逻辑与Gnosis不同。Ownbit可以理解为一种线下方式,参与方在线下对即将执行的交易进行签名,生成签名结果。任意一方发送以太币交易,调用合约的spend或spendERC20方法,并将签名结果验证通过后,相关转币逻辑将被执行。

这两种实现方式各有优缺点。Gnosis方式的优点是避免了复杂的签名计算,同时具有更好的审计性。但其缺点是每个参与方都需要发送交易,导致多次花费手续费,以及交易逻辑隐藏在data中,可欺骗性大。而Ownbit方式的优点是经济性,使用更为广泛。但其缺点是不具备线上审计性。

了解这两种实现方式的原理对于理解以太坊多签是非常有帮助的。多签资产的安全关乎几百行代码之间的逻辑,因此理解并掌握这些实现方式都是开发和使用以太坊多签的必要技能,也是对智能合约编程能力的提升。

热点:以太 以太坊 太坊 比特币 比特币资讯 比特币资讯网 特币

« 上一条| 下一条 »
区块链交流群
数藏交流群
区块链币圈-全球区块链数字货币行情、比特币虚拟货币资讯,狗狗币以太坊环保币柚子币莱特币瑞波币等加密数字货币价格非交易行情查询,金色财经巴比特范非小号快讯平台。
趣开心资讯 Qukaixin.cn ©2020-2024版权所有 桂ICP备19010284号-1