主页 > imtoken客户端下载地址 > 以太坊概述
以太坊概述
区块链公链发展史
区块链 1.0(比特币 2008)-> 区块链 2.0(以太坊/智能合约 2014)-> 区块链 3(?2017)
以太坊发展阶段
Frontier - Block #0:以太坊的初始阶段,从 2015 年 7 月 30 日持续到 2015 年 3 月
Homestead - 区块 #1150000:以太坊第二阶段,2016 年 3 月推出
Metropolis - 区块 #4370000:以太坊的第三阶段,2017 年 10 月推出“拜占庭”,2018 年推出“君士坦丁堡”的两个硬分叉
宁静:以太坊的第四个也是最后一个阶段
大叉
区块 #200000:冰河时代引入了难度呈指数增长的硬分叉,促使过渡到股权证明
区块 #1192000:DAO 逆转了被黑客攻击的 DAO 合约,导致以太坊和以太坊经典的硬分叉分裂成两个相互竞争的系统
区块 #2463000:Thangerine Whistle 改变了一些 IO 操作的气体计算,并清除了利用这些操作的低气体成本的拒绝服务攻击的累积状态
区块 #2675000:Spurious Dragon 解决更多拒绝服务攻击向量的硬分叉,以及另一个状态清理,此外还有重放攻击保护机制
以太坊的组成部分
P2P 网络:以太坊在以太坊主网上运行,可在 tcp 端口 30303 上寻址,并运行名为 ÐΞVp2p 的协议
交易:以太坊交易是一种网络消息,包括发送者、接收者、价值和数据有效载荷
以太坊虚拟机 EVM:以太坊状态转换由以太坊虚拟机处理,以太坊虚拟机是一种基于堆栈的执行字节码的虚拟机
数据库:使用以太坊的区块链作为数据库,通常谷歌的leveldb存储在每个节点本地,包括序列化的交易和系统状态
客户端:以太坊中的集中式可互操作客户端软件实现
以太坊的重要概念
账户:包含地址、余额和随机数的对象,以及可选的存储和代码。普通账户存储和代码为空,合约账户,包括存储和代码
地址:可以接收或发送区块链上的交易以太坊2017会涨吗,是ECDSA公钥的keccak hash的最右边160位
交易:可以发送以太坊和信息以太坊2017会涨吗,发送给合约的交易可以调用合约代码,以信息数据为函数参数向空用户发送信息,可以自动生成带有代码块的合约账户
gas:以太坊用来执行智能合约的虚拟燃料。 以太坊虚拟机使用记账机制来计量gas的消耗,限制计算资源的消耗
以太坊挖矿产出
区块奖励:每产生一个新的区块,都会有固定的奖励给矿工
叔叔块奖励:一些块被挖掘得晚了一点,因此不能成为主区块链的一部分。 比特币称这样的块为孤立块并完全丢弃它们,但以太坊称它们为叔块。 并且在后续的块中,可以引用它们。 如果叔块在后续区块链中被引用为叔块,则每个叔块都会产生7/8的区块奖励给矿工,称为Rewards for Uncle Blocks
叔块引用奖励:矿工每引用一个叔块(最多两个叔块)可获得1/32的区块奖励作为奖励
这样一套基于POW(Proof of Work)的奖励机制被称为以太坊的“幽灵协议”
以太坊区块机制由工作量证明pow转换为权益证明pos(protocol Casper)后,以太坊的发行率将远低于幽灵协议(GHOST)的发行率
以太坊区块收益
普通区块收益:固定奖励,该区块包含的所有程序的gas费用总和,若普通区块引用叔块,未引用叔块可获得固定奖励的1/32
叔块收益:叔块收益只有一项,就是叔块奖励(叔块高度+8-参照叔块的块高)*普通块奖励/8
去中心化应用
可以基于以太坊创建智能合约,构建去中心化应用DApp
以太坊是 DApps 编程开发的平台
以太单位
1 以太币 = 10^18wei
以太坊钱包
以太坊钱包是我们进入以太坊系统的门户,包含代表我们创建和广播交易的私钥。
MetaMask:在浏览器中运行的浏览器扩展钱包。
Jaxx:在各种操作系统上运行的多平台、多货币钱包。
MyEtherWallet:可在任何浏览器中运行的基于网络的钱包。
Emerald 钱包:与 ETCP 配合使用,但与其他基于以太坊的区块链兼容。
私钥、公钥和地址
私钥:以太坊私钥实际上只是一个 256 位随机数,用于在发送以太币的交易中创建签名以证明资金的所有权。
公钥:公钥是私钥通过椭圆曲线加密secp256k1算法单向生成的512位数字。
地址:地址是从公钥的 Keccak-256 单向散列派生的标识符,占用最后 20 个字节。
测试网络
主网:主网、公网、以太坊区块链、真正的 ETH。
Ropsten 测试网络:以太坊公共测试区块链网络,使用工作量证明共识挖掘。
Kovan 测试网络:以太坊公共测试区块链和网络,使用 Clique 协议进行权威证明 POA 共识