译者按:如果用户在与自己喜欢的dApp进行交互时,需要支付底层区块链网络的通证(例如以太币),那么这个dApp及其底层网络将难以被大规模应用,这也是伯克利大学区块链组织成员Leland Lee所要探索的问题,在这篇文章中,作者提出了一种转移ERC20通证的机制,它与智能合约进行交互,并且不需要用到始发钱包中的以太币。
原文标题为:《基础层网络经济抽象化-Layer 1 Economic Abstraction》
以下为正文:
在当前的区块链交易费用模型中,如何通过抽象化基础层经济(economic abstraction)来驱动更多的区块链和dApp使用?
全服务加油站(Full Service Gas Station)
序言
你需要了解的是,当你提取一些ERC20 通证,并将其发送到一个新地址时,那你是无法直接使用这些ERC20 通证的(因为新地址里没有以太币)… 或者当你想和dApp交互,但你的钱包当中只有ERC20 通证时,你也会遇到这种情况。
这类情况几乎发生在每一个人身上,并且阻碍了区块链的用户体验及可用性。我们需要对底层区块链进行经济抽象化,以鼓励通证和dApp的使用,从而推动大众采用区块链和dApp。
用户关心的是:
- 独立于底层链,与dApp或 服务进行交互;
- 防止交易费用的损失;
- 每笔交易的资本收益会计核算;
- 与抗审查协议进行交互;
没法发送?
当你尝试发送 ERC20通证时,有一些方式会导致失败,另一些则会成功
我们设计了一个转移ERC20通证的机制[1],它与智能合约进行交互,并且不需要用到始发钱包中的以太币。这是通过一个链外的delegator
代表signer
支付交易费而实现的。作为感谢,委托人会接收到底层通证的一笔费用。
用户的需要
用户通常只能使用原生通证与区块链进行交互。在一个价值存储链中,这无关紧要,因为这只涉及到一种交易,并且交易所支付的费用,与转移的价值,同属一种通证,但这仅涉及非常少数的区块链。大多数区块链允许并鼓励资产和应用建立在其之上。在这类情况下,用户感兴趣的,是与区块链上的应用进行交互,如果dapp拥有自己的通证,为什么用户需要使用底层的区块链通证?
如果区块链真的成为了未来的基础设施,那么每个人都必须要关心多种原生通证,这样他们才能够和去中心化web进行交互?
经济抽象化用例
经济抽象化的几个用例
1、与一个dApp进行交互→通常情况下,最终用户只希望与特定的dApp进行交互,而不会关心这个dApp位于哪条区块链上。开发人员可以构建一个服务,并成为委托人,让所有的费用都以dApp的功能型通证进行支付。这也提供了区块链可移植性的附加好处,即开发人员可在不影响底层用户体验的情况下,切换底层区块链。
2、空投→ 简单的通证空投情况下,除非用户在自己的地址中拥有以太币,否则,他们就无法使用这些空投币。相反,发送给用户经处理的通证,那么用户就可以立即使用dApp或者服务。
3、稳定币的会计核算→ 有一种情况,一个公司或者个人希望用稳定币,而不是底层的区块链通证进行所有的会计核算工作,因为每一笔交易都会是一起应税事件。
如何推动采用
通过将dApp绑定到一个底层链,它本质上是将用户与底层链联系起来。用户必须始终确保他们具有足够的以太币或其它原生通证,以便在各种网络条件下进行交易。这增加了会计工作和复杂性,使得应用更加困难。困难在于,用户必须更多地依靠自己来满足基本需求。通过减少用户体验中的心理复杂性,最终用户可更容易地与dApp进行交互。通过消除损失厌恶( loss aversion),将大大降低摩擦。这消除了以前存在的使用障碍。
1、企业采用:如果一个大型企业使用了一个dApp,那如何为所有用户提供会计工作?设想一个去中心化的订单系统,每当一个人需要更多的paper时,他们将不得不提交一笔链上订单。企业必须按顺序向每个用户的钱包分发以太币(或其它原生通证)。这增加了一层会计的复杂性和浪费,因为用户将以不同的速率来使用他们的以太币,并且有部分人会丢失粉尘数量的通证。但有了交易费用委托的情况下,只需要有一个以太账户,并且由于每个用户都有一个公私钥对,这个企业仍可使用链上的方式作为可信来源。
2、个人用户采用:每一笔交易,都会伴有协议要求的交易费用,而用户需要为dApp的使用支付相应的费用。相比支付两种不同的通证,开发者可以成为其用户的委托者,并支付所有的区块链交易费用。这鼓励新用户尝试dApp,并鼓励现有用户进行更多的交易。开发者可以实现这样一个模型:其中前n笔交易是免费的,而随后的任何交易则需要付费。很多来自传统app / SaaS世界的模型都可以在这里应用:广告、免费增值、付费、订阅、即付即用等鼓励增长的模型。用户宁愿在订阅模型中支付稍多一点的费用,也不愿意承担跟踪每笔交易费用的开销。
标准
为了鼓励这种发展,我们就需要用于发送通证和智能合约执行的委托交易费用支付标准。一些区块链已在尝试这样的行为,例如VeChain和Stellar[2]。VeChain称其为多方支付,并允许第三方支付费用。在它们[1][2]的实现当中,master address
向所有users
提供credit
,这些credit
在他们每次转账时从他们的余额中扣除。在以太坊中类似的存在是一种ERC20 allowance
。VeChain的实现优点在于抗审查,users
无需通过链外层网络委托交易,而是可直接向区块链提交交易。Stellar的功能则被称为通道,其中source
账户不同于交易发起者的账户。
已经有人尝试在以太坊平台上创建这类标准,例如 ERC-1077、ERC-777、ERC-865以及ERC-1228;
但最大的问题是,为什么这个标准会依存于智能合约层?理想情况下,它应该是在协议层中实现的,这可使dApp使用变得更容易。因此,用户可直接将交易提交给矿工或验证者,而不是链外的委托人。
减少摩擦
这些系统的唯一目的,就是减少摩擦并鼓励采用。如果用户在与自己喜欢的应用进行交互时,需要付各种各样的费用,那么区块链就无法成为下一代的互联网。一个简单的预测:未来,几乎所有的dApp都会为他们的用户支付相关的费用,并且实现更多用户所习惯的系统,如订阅费等。
技术细节:
你可以查看GitHub仓库:https://github.com/lelandlee/pay-with-DAI#technical-details
替代选择
对于链上交易而言,它需要很多价值委托费用,但如果用户的交易不需要在链上完成,那么还有其它方法可提供类似的功能。这包括:状态通道、Plasma以及Oracles(这些可被认为是二层经济抽象:)).
进一步阅读:
反对经济抽象 — Vlad Zamfir
关于抽象 — Vitalik Buterin
注释 (↵ returns to text)- :Leland Lee, Alan Lai(伯克利大学区块链)和Phillip Liu Jr. (JD Capital)在MakerDAO和Wyre赞助的黑客大会上完成了这个项目;↵
- 作者不持有VeChain 或 Stellar。↵