第二代区块链技术——以太坊的生存之路
以太坊的建设背景和历程
比特币开创了去中心化加密货币的先河,经过近五年的技术沉淀,也充分验证了区块链的可行性和安全性;在去中心化领域,比特币网络的建立和运行也验证了其可行性。
然而,比特币也并不完美,其缺点也非常明显,在前面我们也谈过,比特币总量稀少,且在比特币网络中只能存在比特币,但是全世界的业务繁多,单靠少量的比特币无法解决现实中的诸多问题,因此,比特币网络只有比特币,比特币也只存在于比特币自己的世界中。
2013年末,俄罗斯程序员Vitalik Buterin受比特币的启发,提出以太坊的理念,以太坊建设的目的是为了解决比特币扩展性不足的问题,并且以太坊币是无限量,其中的智能合约理念至今仍被广泛使用。
举个简单的例子:比特币就像是一个人在战斗,无法有第二个比特币网络与比特币网络共存;但是以太坊不同,他是在一个平台上,通过自定义的符号来区分网络,这样在一个区块链平台上可以建立多个实例出来,就像一个印章的模板,你可以自己设定印章的大小、形状,每个人都按照印章的要求来设定自己想要的印章。由此看来,以太坊更像是一群人在战斗,每个人都有不同的样貌、能力。
以太坊的这种特性其意义非常深刻,比如有了以太坊,各个企业单位都可以在以太坊上建立自己的虚拟货币(自己取名、自己设定总量、自己管理发行),同样是基于区块链技术,但是此时的理念已经能支持更高级的需求。
2014年7月24日开始,以太坊进行了为期42天的以太币预售。
2015年7月,以太坊发行初期试验版本,此时以太坊只有命令行界面,开发者可以在上面进行智能合约和去中心化应用(Dapp)的开发。
2016年3月14日,以太坊发行了图形化界面的钱包,易用性得到很大改善。
2016年初,由于虚拟币的火爆,市场的需求越来越多,很多国内外企业的区块链技术还未落地就开始发行货币,以便能及时跟进区块链热潮,因此都愿意使用以太坊作为代币发行平台,因此在2016年间,以太坊得到了市场的高度认可,价格开始暴涨。
因此,以太坊被认定为“第二代区块链技术”。
2017年10月16日,以太坊完成拜占庭(Byzantium)硬分叉,以太坊虚拟机里加入了EVM指令,更方便开发者编写智能合约。同时,以太坊的区块奖励从5ETH减少到3ETH(奖励减半)。
以太坊的特性
以太坊有两点特性:智能合约、以太坊虚拟机。
智能合约可以理解为分散在区块链上的应用程序,智能合约具有高度安全性、完全数字历史记录、可审计、去信任化、不可拦截等特点。因此只要开发出智能合约后,应用程序的运行将有区块链网络开承载。
以太坊在其中作为数据交互燃料来使用,这也是为了促进以太坊网络的稳定性(促进矿工保持网络稳定运行)。
为了避免垃圾应用程序(智能合约)的产生,在以太坊上网络上建立和运行智能合约,均需要支付一定量的以太坊作为合约费用。
以太坊虚拟机可以理解为开发环境,就像java虚拟机一样,其中封装了很多功能,因此在以太坊上开发程序,不会像在BTC网络上开发代码那样,需要把整个BTC代码下载下来并理解其代码,然后再进行二次改进及开发。在以太坊虚拟中开发时可以直接调用它的封装函数,因此极大的简化了开发过程。
以太坊的技术线路
以太坊从设计之初就定下了四个阶段的规划:
Frontier(前沿)
该阶段时期以太坊发行初期,在这个阶段里,以太坊是以POW模式挖矿运行,在这个时期开发者可以在上面开发智能合约和去中心化应用(Dapp),该阶段以2015年7月发布的命令行实验版本为开端。
Homestead(家园)
该阶段时期以太坊仍以100%采用POW挖矿模式运行,但是在这个时期加入了一个额外的难度因子,并且难度因子将呈指数增加,这就是以太坊网络的难度炸弹(Difficulty Bomb)。
加入难度炸弹的原因是由于POS模式的挖矿方式门槛太低,一次性从POW转向POS模式将会引起矿工的联合抵制,从而可能导致以太坊分叉出两条链网络,因此难度炸弹出现的目的是为了缓和这一过程,给矿工一个平滑过渡的目的。
此处需要普及一下什么是POW和POS模式:
POW:即算力挖矿,矿工通过运算实现多劳多得、不劳不得。
POS:即投入挖矿,矿工通过占有资产越多从而获取越多、没有占有就没有获得(类似于分红)。
因此在POW时期,矿工可能会购买大量硬件作为付出,而专项POS时期时,这些硬件将无用武之地,因此肯定会引起款公告的不满,这就是可预见的矛盾产生。
那难度炸弹是什么?
难度炸弹是指在计算难度时,除了根据出块时间和上一个区块难度进行调整外,加上了一个每十万个区块就呈指数型增长的难度因子,从而增加挖矿难度。
该阶段于2016年3月份发布的以太坊钱包时同期进入,这也是第一个稳定版的以太坊网络,被成为以太坊1.0版本。在此阶段,以太坊受到了广泛认同,矿工数量不断增加,这是一个令人兴奋也令人担忧的事情。令人兴奋是因为以太坊得到了更多的共识,令人担忧的是过多的矿工将影响以太坊从POW模式向POS模式的转型,在POS模式下以太坊网络将不在需要挖矿的矿工。
Metropolis(大都会)
大都会阶段被分成两个部分:Byzantium(拜占庭)和Constantinople(君士坦丁堡)。
Byzantium(拜占庭)
拜占庭时期,难度炸弹延迟和区块奖励减少将被执行,该阶段自2017年10月16日以太坊网络硬分叉完成时正式进入。在此时期,以太坊为开发者提供了一个新的隐私工具——链上高效验证zk-SNARK(零知识证明)的能力,同时增加可预测gas的收费能力,另外提高了挖矿难度,减低了出块奖励(每个区块奖励从5个ETH减少为3个ETH)
Constantinople(君士坦丁堡)
君士坦丁堡时期主要引入POW和POS的混合链模式(两种模式共存),来完成POW向POS模式转型的目的,同时,POW挖矿奖励将减少到每个区块2ETH。
君士坦丁堡时期从2019年2月份正式升级进入,目前以太坊正处于该阶段。
Serenity(宁静)
在此阶段,以太坊已完成POW向POS的转型过程,以太坊网络将完全采用POS模式挖矿,并且将算法更改为Casper,解决POW挖矿模式对能源的浪费,但同时预计此时以太坊币币数量将大幅减少,该时期将成为以太坊2.0版本的开端。
在该时期,以太坊可能通过分片(Sharding)和子母链(Plasma)等方式增强网络的可扩展性。
但遗憾的是,以太坊的进化之路明显不那么顺利,由于各方面的原因,以太坊从2018年6月被“完全重写”,这个重大转变的原因是由于以太坊进化的过程过于缓慢,无法赶上Casper和分片的速度,当然,这个转变过程发生从过往的经验来看,在许多系统中都有发生,因此只有找到比原有团队更有能力和经验的团队来执行才能成功,因此目前以太坊2.0还尚未达到开发和改进的开始阶段,所以这一过程如何推进尚不可知。
以太坊的优缺点
优点:
1.去中心化,以太坊仍然保持去中心化理念,由全网共同记账,账本公开透明且不可篡改
2.智能合约,以太坊提出智能合约理念,通过简单的设定即可发行自己的数字资产。
3.以太坊虚拟机,虚拟机可以看作是开发环境,以太坊平台对底层区块链技术进行了封装,让区块链开发者可以在以太坊虚拟机中进行开发,而开发者只需关注应用本身的业务需求,而无序过多关注区块链的实现,这样极大程度降低了区块链应用程序的开发难度,也促进了以太坊的生态落地。
4.支持扩容
5.总量无限制
6.第一条被认可的公链
缺点:
1.性能不足,交易速度慢,TPS仅为15/S左右
2.交易费高
3.代码安全难保障,因为所有的Dapp均需在以太坊网络上开发,因此不利于企业代码资产保护。
相关阅读