中国领先的IT技术网站
|
|

2.1.1 以太坊

《白话区块链》第2章区块链应用发展,在本章中,由于限于篇幅,我们不能一一介绍所有的应用场景。作为一名技术人员,真切地期望一种好的技术思想能够对社会的生产发展以及人们的生活带来促进作用。本节为大家介绍以太坊。

作者:蒋勇/文延/嘉文来源:机械工业出版社|2017-11-24 14:00

开发者大赛路演 | 12月16日,技术创新,北京不见不散


2.1.1 以太坊

以太坊(Ethereum)是一个开源的、基于区块链技术的、具有智能合约功能的公开分布式计算平台。以太坊有自己的编程语言,智能合约(脚本语言)是以太坊的最大亮点。以太坊提供了一个去中心化的“图灵完备”的虚拟机——以太坊虚拟机(Ethereum Virtual Machine,EVM),这个虚拟机可以将分散在全网的公共节点组合成一个“虚拟”的机器来执行这个图灵完备的脚本语言。

通常我们说以太坊(Ethereum),其实包含三层涵义:

以太坊价值协议;

由以太坊价值协议搭建起来的以太坊价值网络;

在以太坊价值网络上运行的分布式应用及其生态。

以太坊也发行数字货币以太币来支持技术生态。以太坊的数字货币以太币(Ether)可以用来在以太坊价值网络的节点间传递,同时也可以用作参与节点共识计算活动的“助燃剂”,俗称“汽油”(Gas)。Gas是以太坊内部交易成本机制,用来防止过度无用交易,防止垃圾交易和网络资源浪费。每一笔交易背后都包含着成本,这点让以太坊成为众多去中心化的分布式应用喜欢的底层区块链基础构架——任何流转都有费用,可以打上价格的标签出售!

(1)以太坊的版本

正式的发布版本是Frontier版本。之前的版本主要是概念验证版,统称为Olympic版本。正式的稳定版本是Homestead,稳定版本包含了交易处理、交易费用和安全性等特征。Metropolis版本的使命是减少以太坊虚拟机EVM的复杂度,让智能合约开发更简单、高效、快捷。Serenity版本则打算将共识算法从现在的通过硬件算力来决定的工作量证明(Proof-of-Work,PoW)转到权益证明(Proof-of-Stake,PoS),并致力提高以太坊的分布式计算高可用、高可延展能力。

2016年因为去中心化自治组织DAO项目资产被盗事件造成以太坊硬分叉分成现在的以太坊ETH和经典以太坊ETC。

以太坊的版本信息总结如下:

(2)以太币

以太坊区块链中的价值代币叫以太币,在加密数字货币交易所中挂牌一般是ETH。以太币用来支付以太坊价值网络中的交易费用和计算服务费用。

(3)以太坊虚拟机

以太坊虚拟机(EVM)是以太坊智能合约的运行环境,正式的EVM定义由Gavin Wood撰写的以太坊黄皮书做了详细的描述。EVM建立一个沙盒,将运行环境与所寄宿机器的文件系统、网络和各种运算进程隔离开了。目前这个EVM已经正在被很多种编程语言实现。

(4)智能合约

智能合约是以太坊的灵魂,它承载着不信任节点之间传递价值逻辑的使命。在以太坊价值网络中,智能合约是自动执行的脚本,并且是带着业务和资产的状态进行流转的。智能合约的发布、流转都需要以太币作为费用(即Gas),并且能被多种图灵完备的编程语言实现。

(5)以太坊的性能

以太坊所有的智能合约都存储在公网上的每一个节点,以保证公正、透明、去中心化和不被篡改,当然也导致性能损失很大。每一个节点都要做大量的计算去流转和存储智能合约,导致全网价值流转速度变慢。研发人员曾经考虑过对区块链数据进行“分区”存储,但是没有很好的方案。到2016年1月,以太坊公网上的交易处理能力大概是每秒25个交易。所以网络性能、高可用及可延展性逐渐成为2017年以来以太坊最重要的技术话题。

(6)以太坊客户端和钱包

Geth:Go语言实现的以太坊客户端,也是以太坊基金会的官方客户端;

Jaxx:网页版及手机版以太坊钱包;

KeepKey:硬件钱包;

Ledger Nano S:硬件钱包;

Mist:以太坊桌面版钱包;

Parity:用Rust编程语言写成的以太坊客户端。

(7)企业级以太坊

以太坊独特的智能合约技术和代币发行自动化的技术使得以太坊逐渐成为很多分布式应用的孵化器,正在逐渐成为分布式去中心化应用的首选技术。

大部分人选择以太坊有两个原因:

1)应用程序工程技术开发人员选择使用以太坊技术来创建分布式产品和各类服务;

2)非工程技术人员看重以太坊及其技术可以应用在金融、保险、银行、法务、游戏、社交、政府监管、物流、物联网、人工智能等很多领域。

对比比特币及其他区块链技术构架和生态,以太坊同时极大满足了技术人员和非技术人员的共同需要。工程技术人员使用以太坊可以快速创建、设计、发布、部署和维护分布式的去中心化应用。使用以太坊开发应用不需要了解太多的密码学知识、大型分布式系统设计构架等,工程成本和技术要求相对低于比特币类技术构架。而对于非工程技术人员,可以很轻松地直接通过以太坊的区块链浏览器和价值网络,特别是可通过工程人员另行使用脚本语言进行编程修改智能合约从而对商业逻辑进行定制化,从而达到在自己的行业快速进行现代数字货币化技术升级,进行行业颠覆等。


喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢
24H热文
一周话题
本月最赞

读 书 +更多

网管员必读——网络安全(第2版)

本书是在《网管员必读—网络安全》第1版的基础上修改而成的。新版在保留第1版实用内容的基础上增加了大量新的实用内容,同时删除了一些过时...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× 51CTO学院双十二活动