(1)

以太坊的前世

以太坊是什么鬼?

我们前面聊到了区块链的概念,比特币是全世界第一个成功应用区块链技术的产品,且从2009年诞生至今成功运行了8年之久。而比特币的整体系统架构如下图。

技术架构图中的“应用层”其实就是比特币自己,当然这个程序或叫系统,是通过一系列技术及协议完成的。

以太坊的创始人V神是在比特币的基础上进行了独立的“重新开发”,目的是这样的,我们可以从以太坊的白皮书查找一二

以太坊的目的,就是让人们更加方便的编写类似“比特币”这种系统,而且这种系统比比特币系统更加牛逼了一些。

牛逼在哪呢

比特币的区块里记录的仅仅是交易数据,就是一条一条的数据,仅此而已

而用以太坊编制的系统,系统里的区块,记录的可以是程序了,什么意思呢,这个程序像人一样,更加智能了,比如,它能够通过接收外部的信息,如果外部的信息是1,那么有一个A动作,如果外部信息是2,那么动作就变成了B,能够更加的智能。

我们可相对推出以太坊的架构

以太坊虚拟机(EVM)是以太坊中智能合约的运行环境。它不仅被沙箱封装起来,事实上它被完全隔离,也就是说运行在EVM内部的代码不能接触到网络、文件系统或者其它进程。甚至智能合约之间也只有有限的调用。

实际上,以太坊在比特币基础上主要升级的重点内容包括以下几个部分:

1.拓展脚本的功能,即开发出了智能合约。并且开发了一套工具EVM,方便人们通过这个工具去开发各种区块链应用程序

2.V神认为PoW的共识机制是有问题的,所以更侧重PoS机制,虽然刚开始的时候以太坊是通过PoW机制来开始的(另外比特是平均10分钟产生一个区块,而以太坊是平均12秒产生一个区块)

3.以太坊的底层架构时基于用户机制的,而比特币系统是基于UXTO机制的。

另外需要注意的是比特币是往货币、金融方向去发展的,而以太坊是向一套开发工具方向发展的,所以他们俩并没有直接的竞争关系,甚至很多协议、底层技术都是螺旋成长的。

其他比特币发展到现在,其实已经被很多人认可可以充当一般等价物来使用了。

(2)

以下是以太坊诞生的原因,及以太坊系统的发展理念

为啥需要新的协议?

1)

在比特币协议之上构建智能合约、去中心化的机构的解决方案,构建不了。

比特币协议对对于货币,基础多方签名契约和智能合约的简单版本是足够的,但应用的业务特征非常受限

比特币有一个适度灵活的脚本系统,在里面放简单的交易信息是没有问题的,但是如果放一个“条件语句”(比如一个赌约),比特币就不行了

总之,在比特币协议之上构建的系统,并不能满足人们生活中充分拓展性的需求。

以太坊解决拓展性的问题

以太坊想做的是下一代智能合约和去中心化应用平台(但目前来看,第三方开发的过程中仍然存在不少问题,还需要时间来解决)

2)

以太坊的目的,并不以取代谁为目的,而是旨在成为一个提供超强脚本系统的优秀底层协议,在其上可以创建任何高级的合约,货币及其他去中心化应用。

使用以太坊,哪些想出可能极大改变加密货币应用现状的点子的人,将不再需要去启动他们自己的块链,他们可以简单的用以太坊脚本编码实现他们的想法。

致力于成为通用智能合约平台和去中心化的应用平台

以太坊协议不“支持”多重签名交易、多重输入和输出、哈希代码、锁定时间、以及另外一些就连比特币都支持的特性,相反,它的全部复杂性都来自于一门通用的图灵完备的脚本语言,这语言可以通过合约机制来建立几乎任何可以以数学方式表述的特性。

设计原则

1.简洁(容易让其他的人更简单的学会使用以太坊这个开发工具,来开发各种程序、应用)

2.通用(能够让开发者发挥自己的想象去开发,以太坊只做底层的基础,通用的部分)

3.模块化(把整个系统模块化,让所有开发者更容易理解区块链技术,其实就是分层思维)

4.无歧视(对于,比人用这个系统用来干什么,以太坊不做“歧视”,一律同仁,即使是做赌博)

(3)

下图是以太坊技术架构

以太坊的矿工(Miner)在一个分布式的网络(Network)中进行着挖矿操作,就是实现POW(以后POS)的一个共识算法过程,这个过程network的sync大概就是指各矿工共识过程需要同步,共识后产生新区块(blockchain)后账本也需要通过网络在个节点间实现同步等,而产生一个新blockchain过程中需要对区块验证(blockvalidator),就是共识过程需要验证(签名、定序等)。因此blockchain、共识算法、miner、network是以太坊产生和维护区块链的核心组成。

以太坊平台上的各种应用(DAPPS)中编写的智能合约代码通过与虚拟机EVM交互处理blockchain与共识的相关事务,同时通过RPC(它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议)协议进行挖矿和网络层事务的交互,从而实现各种交易转账等具体商业活动的完整过程。

(4)

以太坊到底是个什么鬼?

是个开放平台,允许人们通过以太坊开发Dapp(是个匿名网络)(赌博合约)

可编程的区块链,基于EVM和智能合约,可以实现各种功能

现在再回来理解以太坊,是不是更透彻的明白这几句话了呢

什么是区块链?——分布式账本(特点:不可篡改、可追溯、去中心化)

什么是以太坊?——以太坊是一个全新开放的区块链平台,它允许任何人在平台中建立和使用通过区块链技术运行的去中心化程序

区块链(这里指以比特币代表的传统区块链)VS 以太坊的区别?——以太坊是区块链的一种;他们类似于“计算器VS智能手机”的区别

(5)

以太坊有多种开发语言客户端

Python、ruby都支持

即使是作为基础链、开发工具,其实也是不同的,会向着越来越简单的方向去发展。

我们可以看看互联网世界的例子。

开发环境系统,比如.NET WordPress,他们其实都是开发网站工具,只不过难易程度不同、界面化程度不同

WordPress就是非常傻瓜式的

WordPress新建一个项目后,也会有非常多的各种文件夹,来存各种内容,并把文件的分类分的非常的清晰明了

.NET环境中,用的就是.NET语言来看法,意味着你需要编写代码,才能开发出网站

WordPress是用鼠标直接点击来开发(当然如果你会写代码,它当然也是支持的,不过你不会也没关系,仍然可以开发软件/网站)

而未来的区块链世界,也终将会走向不需要敲代码,只需要用鼠标就能开发区块链应用的······

results matching ""

    No results matching ""