原文作者:biconomy研究员Nishil?
以太坊的主要缺点之一是用户体验复杂,让我们了解一下由nethermind以及opengsn研究者提出的EIP4337?是如何尝试用账户抽象来解决这个问题的。
那么,让我们从帐户抽象的意义开始。
一、帐户抽象的定义
帐户抽象可以为用户提供了简化使用帐户的能力,从而降低对底层流程的了解要求。
就像我们使用一个gmail帐户,而不需要知道它是如何工作的一样。
有了帐户抽象,我们就有机会远离可怕的助记词世界。
我们可以启用不同的签名选项,gas费用可以由Dapp赞助或通过法定货币支付等等。
金色财经挖矿数据播报:BTC今日全网算力下降2.14%:金色财经报道,据蜘蛛矿池数据显示:
BTC全网算力146.722EH/s,挖矿难度18.60T,目前区块高度664718,理论收益0.00000755/T/天。
ETH全网算力307.098TH/s,挖矿难度3955.46T,目前区块高度11598210,理论收益0.00786130/100MH/天。
BSV全网算力0.655EH/s,挖矿难度0.09T,目前区块高度668742,理论收益0.00137435/T/天。
BCH全网算力1.167EH/s,挖矿难度0.21,目前区块高度669028,理论收益0.00077146/T/天。[2021/1/6 16:31:45]
现在,我们知道了帐户抽象的定义是什么,让我们了解如何将它带到以太坊。
金色热搜榜:LEND居于榜首:根据金色财经排行榜数据显示,过去24小时内,LEND搜索量高居榜首。具体前五名单如下:LEND、BHD、ICX、STORJ、IOST。[2020/8/25]
二、如何为以太坊实现账户抽象
目前以太坊上有两种类型的账户:
外部拥有账户(EOA)
智能合约账户
所谓外部拥有账户(EOA),是指这些帐户由用户的密钥对控制,这是大多数用户用来与以太坊交互的方式,Metamask等服务充当与这些帐户交互的接口。
智能合约账户则不受任何私钥控制,而是由其代码控制。例如,所有的DeFi协议都由智能合约账户控制。
以太坊的问题在于,外部拥有账户(EOA)获得了智能合约账户所没有的特权。最显着的例子是发起交易的能力。目前,只有外部拥有账户(EOA)可以做到这一点。
DeFi流动性挖矿项目kani.finance上线,Initial Pool 3分钟锁仓700ETH:9月6日凌晨,创新型流动性挖矿项目kani.finance上线,Initial Pool 3分钟锁仓700ETH。
据了解,kani.finance是在基于YFI、YFII、Balancer的基础上,创造性地提出了initial Pool、AIP Pool、与Claim即挖矿的玩法。项目完全0预挖,0私募。Initial Pool的占比为5% ,分发KANI数量50万,接受的ETH上限为1000个。请在控制风险的情况下谨慎参与。[2020/9/6]
这是一个问题,因为EOA功能被硬编码到以太坊协议中,并且没有定制空间。
例如:Gmail为你提供了在你的帐户上启用2FA的选项。而今天在以太坊上无法实现类似的可定制性。
比特币出块平均时间超过13分钟,为2018年后首次:据bitinfochart显示,比特币网络平均出块时间近期有所增加,平均区块时间在13分钟,一度超过了14分钟。
比特币的平均出块时间是10分钟,一般不会准时出块,而是在10分钟上下范围内波动。但平均出块时间超过13分钟在历史上并不常见。
据bitinfochart数据,从2010年开始,比特币出块平均时间超过13分钟仅在2018年第四季度出现过,当时比特币价格也出现了大跌现象,可以推测这种现象或由于币价下跌导致的。此前消息,在3月12日,比特币短时急跌近30%的时候,比特币网络曾出现了1个小时未出块的情况。[2020/3/21]
以太坊上的EOA有以下限制:
用户不能使用自定义签名方案。ECDSA是以太坊用来生成公私密钥对的典型签名方案。
Gas费必须以原生加密货币($ETH)支付。
刷新纪录 120万BUC理财额度3分钟抢空:今天下午15:00,区块链资产私人银行BitUN正式对外开启首款高收益区块链理财产品“丘比特I号”的第二轮发售,总额度120万BUC,预期年化收益20%。上线仅仅3分26秒,120万BUC的理财限额就被一抢而空,刷新了昨日9分37秒的纪录。据“丘比特I号”的理财规则显示,用户可在4月13日-4月15日每天15:00参与理财份额的抢购,最低投资额度为1BUC。4月15日为“丘比特I号”最后一期的理财产品发售日,最大限额为200万BUC,满额即结束。据悉,BitUN的理财资金将交由来自香港上市集团的专业团队进行操作,团队成员有着丰富的股票以及数字货币市场交易实战经验。[2018/4/14]
因为你的私钥就是你的账户,丢失你的密钥就意味着丢失你的账户。
所有这些问题都可以通过智能合约钱包轻松解决,因为它们允许使用自定义逻辑。
但如前所述,以太坊上的交易只能通过ECDSA保护的外部拥有账户(EOA)发起,而不能通过智能合约钱包发起。
现在你可能会问——我们为什么不改变它呢?
好吧,EIP2938?是解决此问题的一种途径。它引入了以太坊协议更改,允许交易从智能合约而不是EOA发起。
但问题在于,它需要对协议进行重大更改。
因此,nethermind以及opengsn的研究人员在VitalikButerin的帮助下提出了EIP4337。
该提案提出了一种解决方法,无需更改任何共识层协议,就能为以太坊带来“账户抽象”。
它没有修改共识层本身的逻辑,而是将当前tx存储池的功能复制到更高level的系统中。
流程有很多活动部分,其中包括:
用户操作
捆绑者
Paymaster
接下来,让我们一一了解这几个概念。
该提案引入了“用户操作”的概念,这些操作允许我们将自定义功能编码到我们的智能合约钱包中。
用户操作将用户的意图、签名以及其他数据打包以进行验证。
相关图像:
以下是通过智能合约钱包发起一笔交易的一般流程:
1、Alice发起一个“用户操作”并包含它想要执行的tx;
2、她将该操作发送到一个高level的“用户操作存储池”。
3、该操作被部分验证,并广播到P2P存储池节点网络。
4-操作由“Bundler”选择执行,任何人都可以成为Bundler,例如MEV搜索者、验证者、你或我等等。
5-然后Bundler将所有操作捆绑到一笔大的tx中。
6-Bundler将区块与其他tx一起包含在以太坊区块中。
现在让我们尝试分解Bundler的功能,以了解如何执行和验证tx。
1-Bundler将tx路由到一个全局“入口点”智能合约。
2-全局合约通过每个用户操作并调用智能合约钱包中的“验证函数”。
3-钱包运行此函数来验证用户操作的签名并补偿bundler捆绑这些交易。
4-钱包运行一个执行操作以执行操作中指定的交易。
5-然后在执行操作后将剩余的gas退还给钱包。
该EIP还提出了“付款人”的概念。
用户现在可以不再依赖他们的钱包,而是可以让付款人赞助他们的交易费用。
赞助交易功能有很多用例,最常被引用的用例是:
允许应用开发人员代表其用户支付费用;
允许用户以ERC20代币支付费用,合约充当收取ERC20的中介;
三、账户抽象对我们意味着什么
所有这一切都非常令人兴奋,但我们为什么要关心呢?好吧,有多种原因。
提案允许我们使用自定义签名方案。用户现在可以使用iOS和Android设备的内置方案,将每部手机变成硬件钱包。
它允许在以太坊上为多个签名者提供原生支持。两个或更多用户现在可以批准单笔交易,从而提高安全性。
可以启用社交恢复。如果用户不知何故丢失了他的密钥,那么他可通过简单地让他的朋友和家人为他恢复账户。
好了,以上就是该提案的全部内容。
这个提案引入了多种创新途径,我希望我解释地清楚了它们。看到团队构建的用例,为用户提供更好的用户体验,将是令人兴奋的。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。