广告位

您现在的位置是:今价网 > 交易所 >

ETHeip-3074剖析:一般用户不需要eth即可发送不信赖的买卖

2021-10-04 02:37交易所 人已围观

简介Eip-3074旨在消除元事务,减少合同的复杂性,并使通用竞价推广账户(EOA)可以发送批量事务、截止日期事务和无序事务。...

“类字节”是EIP 2718的常量字节,值为0x03。此字节的目的是防止与其他签名机制冲突,比如eip2930的访问列表事务、eip1559的成本市场事务、eip191的0x19签名消息等。

调用方地址将用户的调用绑定到特定的约定。用户签名仅对呼叫者合约有效。因此,用户可以选择他们信赖的呼叫者,就像他们选择智能合约钱包来存储资产一样。

大家期望只有少数呼叫者存在,由于假如呼叫者契约的达成出错,用户可能会遭受损失(请注意,呼叫者选择自己加入)。开发一个安全的呼叫者契约的本钱非常高,需要多方审计和静态证明。

但和今天的做法没什么不一样。智能合约钱包也应该在很多存款前经过全方位审核和认证。不少大去中心化的金融项目也是这样。

最后一个签名参数是commit Hash(或commit)。这使呼叫者和设计者可以更灵活地开发很多不一样的解决方法。

此提交限制调用者仅实行特定操作并创建特定验证需要来处置调用。用户可以信赖调用者遵循此过程,由于他们可以验证链上的代码。这就是区块链的优势。

让大家看一个容易的例子。用户期望通过呼叫者发送呼叫。为了防止它们的呼叫被无限中继,它们需要提供一个nonce和其他不可更改的值。用户散列这部分值以获得提交,并将提交包含在签名消息中,以便可以用auth验证契约。

调用程序用传入的值重新生成提交哈希。如此,假如付款人更改了其中一个值,则调用者计算的提交哈希将与外部帐户签名的提交哈希完全不同,从而致使auth恢复垃圾地址,如下图所示:

我期望你目前相信,来电者就像一个智能合约钱包,可以被任何一般竞价推广账户用。目前让大家看看怎么用commit构建一个更有趣的解决方法。

一般,“一个操作对应一个签名”已成为一条经验法则。这是一个相对容易的理解。签名是基于事务的哈希值创建的。大家为何不合并多个事务进行散列计算呢?原来,eip3074可以做到这一点。

只须一个帐号可以通过auth验证,调用者就可以依据帐号的需要进行任意次数的authcall。这是可以的,由于大家相信调用者将按原样实行代码。大家可以设计一个策略,将多个调用散列到commit中。

在上图所示的策略中,调用者将合并所有值(nonce1、nonce2等)以散列并生成提交。调用者将用此提交和用户签名来调用auth。Auth验证用户是不是实质签署了这部分参数。

然后,调用者遍历每一个调用并验证nonce和其他参数,然后将经过身份验证的调用数据(calldata)发送到许可地址。

在此基础上,大家可以构建更多的解决方法。比如,假设你添加了一个新参数“shelf life”。将此参数与其他参数散列以获得提交。除此之外,在验证过程中,调用者将验证过期时间block.number。目前,可以用外部帐户在期限内进行买卖!

eip3074将在不引入额外信赖假设的状况下带来更流畅的客户体验。假如你想阅读eip3074的全部内容,请点击此链接。

goETH的原达成在这里维护。

大家正在与一些对该机制有兴趣的团队合作。假如你觉得这个机制是有用的,请让大家知晓,让大家一块努力!欢迎对提案提供反馈,很感谢!点击链接留下你的反馈。

最后,假如你对大家的工作有兴趣,大家的团队正在紧锣密鼓地招聘。大家致力于ETH核心协议的中长期改进。有关更多信息,请发送@lightclients给我。

版权保护: 本文由 今价网 原创,转载请保留链接: http://www.haibao114.cn//jiaoyi/267.html

Tags: 钱包  以太坊 

广告位
    广告位
    广告位

标签云

站点信息