美文网首页
2018-07-23 ETH 账户抽象

2018-07-23 ETH 账户抽象

作者: logz2020 | 来源:发表于2018-07-24 09:56 被阅读35次

背景

Eth包含两类账户, 外部账户和合约账户。
外部账户由私钥控制, 合约账户由合约代码控制。

对于外部账户,发送的每一笔交易,需要包含特定的椭圆曲线(secp256k1)签名,以及nonce,来预防重放攻击。

以太坊的账户抽象,是指统一两种账户类型,以后只有合约一种账户类型。
因此,交易中的需要验证的签名和nonce,不再成为协议的一部分(hard-coded in tx process)。而是由账户通过合约代码自己来保障交易的安全。

The goal of “account abstraction”, is to reduce the number of account types from 2 (EOA and contract) to 1 (just contract), and to move functionality such as signature verification, gas payment and replay protection out of the core protocol and into the EVM.

比如ECDSA 验证合约,提供和当前以太网络类似的交易验证工作。

通过账户抽象,下面是一些可以创新的方向,

  • Bitcoin-sytle mutisig, 账户可以同时验证多个签名,而不是每次存储一个签名到内存。
  • 其他的椭圆曲线。ed25519。
  • 其他的签名算法。环签名/门限签名。
  • 其他的Nonce验证逻辑。
  • UTXO-based token
  • 交易手续费的支付方式。对于dapp而言,相对于交易发送者支付fee,合约账户支付fee 是更合理的模式。通常情况,dapp的用户并没有eth。Dapp合约可以将付费逻辑编码,矿工通过静态的代码分析,从而确保他们会获得交易手续费。

技术规范

EIP 101

  1. Account 只包含code和storage。
  2. Ether 不再存储在Account中。Ether是一个合约token,合约部署在0地址中。
  3. msg.value 不再存在。
  4. Tx 的结构
    现在的Tx,包含9个部分。通过RLP编码后传输。
    [nonce, gasprice, startgas, to, value, data, v, r, s]

未来的Tx,包含4个部分。
[to, startgas, data, code]
startgas - max amount of gas allowed for tx

[expire, ref_block, ref_block_prefix, delay_sec...]

进展

EIP101, in discussion

https://ethresear.ch/t/tradeoffs-in-account-abstraction-proposals/263
EIP101方案,代价比较大,包括开发/迁移/额外存储/兼容等等。
几种折中方案,在讨论。
Lazy full abstration/ Remove nonce abstraction/ 等9种方案。

V主推 gasprice + PANIC , 缺点是牺牲gas payment的抽象,从而无法支持ERC20作为gas费用。

时间点, 君士坦丁堡硬分叉
TBD.

相关文章

  • 2018-07-23 ETH 账户抽象

    背景 Eth包含两类账户, 外部账户和合约账户。外部账户由私钥控制, 合约账户由合约代码控制。 对于外部账户,发送...

  • 以太坊批量控制,多转一工具

    多账户控制,多转一 [94eth工具站](https://tools.94eth.com/metamask/mul...

  • 14-ETH-账户

    声明:本文是要点笔记,介绍和系列笔记均收录在专题:区块链技术与应用[https://www.jianshu.com...

  • EOS中账户、钱包和密钥的关系

    EOS对于账户的设计与ETH有很大的不同,引入了Account账户, Wallet钱包, 钱包密码, Key公私钥...

  • 以太坊命令

    1.解锁账户 personal.unlockAccount(eth.accounts[0])Unlock acco...

  • EOS的问题以及颜氏家族的跌停板(20180508)

    昨天EOS众筹账户又转出了ETH,这次的量是历史最大的。通过以往查询可知,转出的ETH除了放在Polymath里面...

  • 法币交易使用指南

    买入ETH 1.登陆账户后,点击“法币交易”,输入您要购买的ETH数量后,点击“立即买入”。 2.点击“立即买入”...

  • 以太坊私有链搭建(1)-基础

    预挖矿 如果希望在指定的账户中有一定的eth供测试,可以先新建一个账户,将这个账户放到创世区块的配置文件中 这里要...

  • 2022-12-18

    账户抽象与智能钱包的热度已经持续了几个月了,不少朋友对于什么是账户抽象,为什么需要智能钱包依然存在疑问,所以我尝试...

  • 樊登书店

    2018-07-23

网友评论

      本文标题:2018-07-23 ETH 账户抽象

      本文链接:https://www.haomeiwen.com/subject/ipujmftx.html