首页 > 世链号 > 【bitbayapp】丰评区块链 | 第 8 期:区块链 2.0:以太坊
币圈行者  

【bitbayapp】丰评区块链 | 第 8 期:区块链 2.0:以太坊

摘要:就像比特币一样,以太坊不受任何人控制,也不归任何人所有——它是一个开放源代码项目,由全球范围内的很多人共同创建,并且有数以千计的人在他们的个人电脑上运行一个软件来支撑整个网络以运行智能合约。

【课程背景】 为推动区块链的发展,Dipperin
CTO 蔡庆丰推出《丰评区块链》系列课程,分三季,每季 12 集,全面阐述区块链的基础知识与产业发展的机遇,旨在用最通俗的方式向大众普及区块链知识。

【讲师介绍】 蔡庆丰:Dipperin
CTO,1996 年毕业于武汉大学,历任华为系统架构师,MKT 营销经理、产品规划经理,东北欧核心网 MKTG 部长及融合通讯研发部部长。具有多年互联网融合领域带领大型团队的实际经验,是国内首批区块链技术研发者。

微信公众号的朋友们,大家好!欢迎来到我们的栏目——丰评区块链,我是 Dipperin
CTO 蔡庆丰。今天我给大家带来的是另外一个重要的区块链系统——以太坊在前面的课程中,我们了解了比特币的诞生背景,知道了比特币首次实现了点对点的去中心化平台,但是比特币的设计仅适合虚拟货币场景,比特币缺少保存状态的账户概念,协议的扩展性也存在不足,例如比特币网络里只有一种代币符号,用户无法自定义另外的符号用以代表如股票、债务凭证等其他权益。此外,比特币协议使用了一套非图灵完备的脚本语言,这让很多应用场景受到限制,比如说现在大家都已经熟悉了解的加密猫游戏是不可能在比特币上开发出来的。2013 年 19 岁的 Vitalik 对比特币提出了一些改进意见,但是没有被社区采纳;他然后在 2014 年开始研究新一代区块链,试图实现一个新的分布式系统,把比特币的底层区块链技术核心特点抽出来作为一个通用平台,允许开发者写几行代码就可以自主发行一个新的代币,而无需关心底层的共识算法、复杂的加密算法、P2P 通讯网络等等,所有这一切都由平台搞定,由此产生了以太坊。智能合约是以太坊的核心创新点。合约可以认为是以太坊系统中的自动代理人,他有一个自己的以太坊地址,当用户向合约的地址里发送一笔交易后,该合约就被激活,然后根据交易中的额外信息,运行相应的代码。这些代码可能修改了某个用户某种代币的余额,或者向其他合约地址转账以触发其他合约的运行。需要指出的是,以太坊中的交易,不单只是发送以太币而已,还可以嵌入其他的信息,用以创建智能合约或者为智能合约的调用提供参数。图灵完备的语言提供了完整的自由度,让用户得以搭建各种应用。就像比特币一样,以太坊不受任何人控制,也不归任何人所有——它是一个开放源代码项目,由全球范围内的很多人共同创建,并且有数以千计的人在他们的个人电脑上运行一个软件来支撑整个网络以运行智能合约。也就是说,网络中的每个节点、就是每台电脑,都运行一个叫做“以太坊虚拟机”的东西,可以把它想象成是一个操作系统,它能够理解并且执行用以太坊上特定的编程语言编写的软件,而智能合约就是由“以太坊虚拟机”所执行的软件或者应用。在以太坊的技术黄皮书中有这样说到过,以太坊就是一个世界计算机,用户通过向以太坊发送交易,以改变这个计算机中的状态,而这样的状态变化则由运行在网络中的成千上万台机器共同执行,产生一个确定的状态改变。而无论是转账、创建智能合约还是调用智能合约,本质上都是通过交易来促使以太坊网络产生这样的行为,并在区块链上记录状态的改变。智能合约的运行过程,大致可以分为三步:第一步,用户使用以太坊指定的语言编写业务逻辑,其中包括了一些状态数据如各个用户的余额信息等等,还有一些包含了权限控制的函数代码;第二步,用户将这些源代码编译之后产生的字节码整合到交易数据当中,并将此交易信息签名后发送到以太坊网络中等待矿工确认;第三步,交易确认意味着合约被创建,网络中的节点便可以通过向该合约地址发送交易,以调用该合约中的方法实现合约预先定义的一些功能。一个合约写好以后,就无法再被编辑或者修改。因此,你可以保证无论合约的内容是什么,它都会无条件地按照创建时设定的规则执行,不存在事后毁约的情况。真正实现了代码即法律的目标。正是这些独特的可编程性以及可扩展性,以太坊平台上迅速产生了越来越多的去中心化应用,其本质就是利用了智能合约。通过智能合约,这些去中心化应用可以实现如智能投票、众筹、游戏等功能,一定程度上为去中心化应用打开了大门。此外,如果用户想要使用和执行智能合约,就必须要为执行该智能合约付出一定费用,这笔费用是奖励给实际花费了内存、存储、计算和电力等资源来执行合约的节点。虽然以太坊的智能合约推动了区块链创新应用,但是也存在着很多令人诟病的地方:首先,合约的运行需要消耗成本,这也被称作 Gas 机制。Gas 机制对虚拟机上运行的每条指令,依据指令的特性而收取费用,这样设计的初衷是为了防止死循环,以及防止产生大量的垃圾智能合约,但带来的副作用是,极大增加了使用智能合约的成本。其次,智能合约的开发人员需要学习专门的编程语言,也因此提高了人们使用以太坊网络开发智能合约的难度。最后,由于智能合约编写不严谨而带来了的安全问题层出不穷,给用户造成了巨大损失。比较有名的例子就有 2016 年 DAO 事件,导致以太坊出现了硬分叉;2018 年美图旗下的美链合约溢出的漏洞让黑客无限转账,将其交易价格一下子归零。在此之后出现的种种公链,基本上都借鉴了以太坊智能合约的思路,在其基础上进行改进或优化。例如 EOS 将最新的 WebAssembly 这样一种前端技术搬到了区块链的虚拟机上,使得用户可以直接使用 C++进行智能合约的编写而无需另外多学一门编程语言。好的,今天我们主要学习了以太坊的运行逻辑,介绍了智能合约的原理以及应用。明天我们将一起探讨个人参与区块链项目中要注意的公钥、私钥和加密钱包的问题。丰评区块链,期待明天咱们一起学习。丰评区块链,期待明天咱们一起学习。

·END·

 

来源链接:mp.weixin.qq.com

免责声明
世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。