1️⃣ 参考
- 北京大学肖臻老师《区块链技术与应用》
- P14 - ETH概述篇
- P15 - ETH账户篇
1️⃣4️⃣ETH概述
① 比特币与以太坊的对比
比特币(区块链 1.0) | 以太坊(区块链 2.0) | |
---|---|---|
出块时间 | 大约10 min | 十几秒 |
mining puzzle | 计算密集型 | Memory Hard ,对内存要求高(ASIC Resistance ) |
最小单位 | Satoshi ,一聪(中本聪) | Wei (Vitalik Buterin ) |
去中心化 | decentralised currency | decentralised contract 智能合约(smart contract ) |
设计目的 | 通过技术手段来实现取代政府对于货币的职能 | 通过技术手段来实现取代政府对于合约的职能 |
好处 | 区中心化货币(fiat currency )好处:跨国转账 | 区中心的合同有哪些好处? 1) 若合同签署方并非仅来自一个国家,没有统一的司法部门(如:众筹)。保证了每个人都只能按照规则来执行 2)其次就算这个合同的参与方都是在同一个司法管辖权之下的,打官司也很费神 3)使用技术手段保证合同的参与方从一开始就不可能违约 |
-
未来,以太坊还将会用权益证明(
POS
,poorf of stake
)替代工作量证明(POW
,proof of work
) -
此外,并不是所有的合约都可以量化,简单的可以
② 补充:以太坊坎昆升级后对比
以太坊于2024 年 3 月 13 日完成坎昆升级(一系列旨在提高以太坊可扩展性和降低交易费用的更新),一下是对比
特性 | 比特币 | 以太坊 | 以太坊坎昆升级后 |
---|---|---|---|
主要用途 | 存储价值、支付 | 智能合约平台、去中心化应用 | 智能合约平台、去中心化应用 |
共识机制 | 工作量证明 (PoW) | 工作量证明 (PoW) / 权益证明 (PoS) | 权益证明 (PoS) |
可扩展性 | 每秒约 7 笔交易 | 每秒约 15-30 笔交易 | 每秒数百至数千笔交易 |
交易费用 | 相对较高 | 相对较高 | 相对较低 |
总供应量 | 2100 万枚 | 无限(取决于网络状况) | 无限(取决于网络状况) |
智能合约 | 不支持 | 支持 | 支持 |
可编程性 | 有限 | 高 | 高 |
应用领域 | 主要用于存储价值和支付 | 金融、游戏、供应链管理等 | 金融、游戏、供应链管理等 |
坎昆升级亮点 | 无 | 降低交易费用、提高吞吐量 | 降低交易费用、提高吞吐量、改善用户体验 |
1️⃣5️⃣ ETH账户
① 与比特币的转账对比
比特币系统 | 以太坊系统 | |
---|---|---|
特点 | 基于交易的账本,系统中并未显示记录账户有多少钱,只能通过UTXO进行推算 | 基于账户的账本(account-based ledger ) |
优点 | 隐私保护 | 天然的防御了双花问题(double spending attack)(你花两次就扣两次) 【花钱的人不诚实,以前花的又想再花一遍】 |
缺点 | A转给B钱的时候,需要说明币的来源。实际中(在银行)存钱需要说明来源,花钱不用 | 重放攻击(reply attack)(A向B转账,过一段时间,B将A的交易重新发布,从而导致A账户被扣钱两次) 【收钱的人不诚实,收过想再收一次】 |
- 怎么解决重放攻击 ?
- 账户:为了防范重放攻击,给账户交易添加计数器(
nonce
)记录该账户交易过多少次,转账时候将转账次数计入交易的内容中。- 系统中全节点: 维护账户余额和该计数器的交易数,从而防止本地篡改余额或进行重放攻击。
② 以太坊账户分类
外部账户(externally owned account ) | 合约账户(smart contract account ) | |
---|---|---|
属性 | 1. 账户余额 balance 2. 计数器 nonce | 1. 账户余额 balance 2. 计数器 nonce (调用另外合约的次数)3. 代码 code 4. 相关状态-存储 storage |
特点 | 1. 通过公私钥对控制 2. 所以交易只能由外部账户发起 | 1. 不通过公私钥对控制 2. 不能主动发起交易,只能接收到外部账户调用后才能发起交易或调用其他合约账户 |
- 为什么要设计基于账户的模型?
- 以太坊是为了支持智能合约,对于合约账户来说,需要保持稳定状态。