为什么以太坊能成为区块链2.0的代表之作?

链客,专为开发者而生,有问必答!

此文章来自区块链技术社区,未经允许拒绝转载。

区块链的学习进入到第四天,前三天学习比特币,分别从比特币的前世、货币属性和背后的区块链技术学习。

比特币是区块链的1.0版本,而以太坊正是区块链的2.0版本。从1.0走向2.0,为什么以太坊能成为2.0版本的代表?创新在哪里?与比特币相比,以太坊标志性的创新即智能合约。因此,对于以太坊的学习,先从智能合约开始。

什么是智能合约?继续寻找其来有自,它在解决什么问题。继续从比特币和区块链说起。

『正文』

在本系列1和3两篇文章,我们已经认识到:

比特币背后的区块链技术相当于分布式账簿系统,系统拥有记账总账簿,这个账簿对所有节点(所有满足规则要求的计算机)公开,所有节点拥有读写及下载拷贝的权力(即分布式计算、存储),包括第一次交易信息在内的所有交易信息都会按时间顺序(也即时间戳)被一个不落地记录在这个账簿(区块)上,账簿信息定期更新确认(分布式存储)并形成连续账簿(区块链),账簿信息的更新确认不再经过中心。

从而实现由中心向分布式的计算与存储转变,点对点的数据传输,公开透明,无法篡改,而且可追溯,陌生人在不经过任何第三方信用背书的情况下,依赖此系统建立了彼此信任关系,使得交易成为可能。

基于上述内容,可以简化理解为:区块链技术解决了由“点对点”带来的信任问题,比特币的账簿(区块链)是把所有的关于比特币的支付信息都记录了下来。

1、智能合约

从1.0到2.0,升级来自于哪里?从上面的内容来看,升级的空间在于:

应用场景的拓宽:除了支付之外,还有哪些场景存在“点对点”的可能性?账簿的内容除了交易信息外还能记录什么?

拓展下我们的想象力,当这个账簿上记录的不是交易信息,而是一组可以运行的程序和基于这个程序运行后的账户状态时,这个账簿会是什么样子?

在想像账簿记录的是运行程序是什么样子之前,先看一个词——合约。

合约:类似于我们平时的合同,约定了合同方在一定条件下的责权利体系。一旦触发条件,合同将会被执行。就像违约合同或者竞业合同一样,当你出现违约行为时,依据合同对方可以对你索赔。这是传统的合约及执行方式。

如果这个合约不是人工执行,而是可以被程序自动执行的呢?这正是我们今天所要讨论的智能合约。

程序:是当你输入符合规则的内容时,电脑依据已设定的规则进行运算,从而得到相应的输出结果。

智能合约是一个编程程序,程序内有相应的触发条件,一旦触发,合约程序会被自动执行,并且所有执行都将记录在账簿上。同时,还可以给这个程序设置个账户,类似于人的账户,合约执行完毕后会有相应的账户状态(有点类似于账户余额概念)显示。这个程序我们称之为智能合约。

众所周知的是,任何程序都需要在一个操作系统中完成,而上述的智能合约程序也不例外。以太坊正是充当操作系统的角色,用户可以在以太坊系统中运用以太坊提供的编程语言编写这个程序。

如果仅仅只是提供一个新的系统和编码程序,那以太坊还不足以称之为区块链的2.0代表。这里,更重要的是,这些程度是在这个系统中运行执行的,所谓的运行执行也就是当智能合约触发条件发生后,合约将会自动执行,更改状态状态,这个过程将会被记录下来形成区块和区块链。区块记录是由矿工(分布式节点)完成, 矿工挖矿类似于比特币系统有以太坊币的奖励。

比特币可以说是创造了一个潜在的货币,对现有的金融体系可能是一大冲击,具有极大的意义。那智能合约又能有什么作用呢?

2、智能合约的应用

我们来看两个例子:

两个人关于明天的天气打个赌。我赌明天天晴,你赌明天下雨。我们约定输家必须给赢家100美元。我们如何打这个赌,还要确保输家会履行诺言呢?我能想出以下三种不同方法:

1、互相信任

最简单的方法是互相信任。如果我们已经是老朋友了,很容易信任对方。我知道你的家庭住址而你知道我的黑历史。然而,如果我们是陌生人的话,那就难办多了。你没理由信任我,我也没理由信任你。

2、签署法定合同

另一个可行的方法是根据我们之间的赌约制定一份法定合同。我们双方会签署一份详细规定了赌约条款的合同——包括关于输家违约的规定。该合同会让我们有向赢家支付赌金的法律义务,却不具实用性。因为如果通过法律途径强迫对方履行合同,其代价高出赌金本身。

3、寻求共同朋友的帮助

我们可以找一个双方都信任的共同朋友,各交100美元在他/她那里保管。第二天,他/她会查看天气情况,将这200美元都交给赢家。这种方式简单明了,除非出现一种情况:要是这位可信的朋友卷款而逃该怎么办呢?

现在我们有三种不同的打赌方法,不过各有都缺陷。因为我们是陌生人,无法互相信任。迫使对方履行法定合同的成本太高,此举并不可行。寻求共同朋友的帮助又会引发信任问题。

以太坊的智能合约在这种情况下就可以派上用场了。智能合约就像是寻求共同朋友的帮助,不过是被编写成了代码。通过以太坊,我们可以编写一款软件,向两方各收取价值100美元的以太币。第二天打开接入天气应用的API查看天气情况,并将总价值为200美元的以太币转给赢家。

再举一个例子:

前段时间极其火爆的ICO,也就是首次公开募币就是基于以太坊的一堆智能合约。发币者设立一个账户及智能合约程序,这段程序可以实现募资的全流程。程序将自动识别募资的进行状态,在申购者发起申请后,程序依据兑换比例等已设置好的规则将发行的新币添加在申购者的账户,将申购者支付的以太币添加到发行者的账户中。并且可以记录全部的兑换信息,当ICO结束时,智能合约程序可自动销毁。

通过智能合约程序,可以实现兑换比例计算、不同币种的兑换划转等的自动化,而这是比特币系统所无法实现的。比特币系统里只能记录关于比特币的交易信息,它无法兑换不同的币种,也无法记录不同币种之间的交易信息。

相比较于固化的比特币系统,在以太坊的系统上,所有的人都可以依据自己的需求设计不同的程序,对于程序赋予不同的规则,之后一切的操作都变得自动化,而这将带来安全与高效。

三、小结

通过上述两个例子,我们能看到,以太坊或者说智能合约的好处。

比特币实现了几乎无风险的点对点支付,而以太坊则是把这一特性扩展到几乎所有的场景里。只要在场景中,“点对点”运作方式会有风险。那么就可以通过智能合约这样的程序,来实现公平且无风险的履约。

以太坊创建了一个虚拟底层操作系统,大家可以在这个虚拟操作系统上自行设立与运行多个智能合约,而这极大了提高了这个系统的适用性和灵活性。

因此,自2017年以后,以以太坊为基础的智能合约如雨后春笋般产生,而且是走向区块链技术商业运用里程碑事件。

你可能感兴趣的:(区块链)