区块链技术学习笔记(14) 以太坊账户

比特币系统中采用的是基于交易的账本,在这个模式下并不会显式记录每个账户上会存在多少钱,而是根据UTXO推断余额,既计算拥UTXO中有私钥的币总和,隐私保护较好,使用并不太方便(在交易的时候要证明每一个币的来源,并且在一次交易收到的币UTXO,消费的时候必须全部都花出去,不能只花一部分)

以太坊中采用的账户模式:转账的时候不需要说明币的来源,能够很好的防御双花攻击,对于重放攻击(收款者不诚实,交易时。发出两次交易信息),解决方法:加一个交易计数器nonce,记录这个账户有史以来,一共发布过多少交易,在转账的时候要将nonce作为交易的一部分。也就是在系统中,节点维护账户的状态,不仅仅是balance,还有nonce的值。

同时以太坊支持智能合约,所以相对比特币地址会更加稳定

以太坊账户类型:

1.外部账户(普通账户)

        用公私钥控制,本地产生一队公钥和私钥,私钥掌握账户控制权

        账户状态:余额balance、nonce

2.合约账户

        合约账户状态:balance和nonce、代码code、相关存储状态storage(包括每个存储到链上变量的取值)

        合约账户无法主动发起交易,只能由外部账户发起。如果是外部账户调用合约账户A,夜月账户A能够发送一个message调用另外的合约,这种情况是允许的

        合约账户如何被调用:创建合约的时候会返回一个地址,能够通过合约地址调用这个合约,调用的过程中状态会发生变化(storage)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值