ETH-以太坊 简介详情

Ethereum(以太坊)是一个平台和一种编程语言,使开发人员能够建立和发布下一代分布式应用。 Ethereum可以用来编程,分散,担保和交易任何事物:投票,域名,金融交易所,众筹,公司管理, 合同和大部分的协议,知识产权,还有得益于硬件集成的智能资产。

 

以太坊将使用混合型的安全协议,前期使用工作量证明机制(POW),用于分发以太币,然后会切换到权益证明机制(POS)。自上线时起,每年都将有0.26x,即每年有60102216 * 0.26 = 15626576个以太币被矿工挖出。转成POS后,每年产出的以太币将减少。

 


 

以太坊的产生背景

 

比特币开创了去中心化密码货币的先河,五年多的时间充分检验了区块链技术的可行性和安全性。比特币的区块链事实上是一套分布式的数据库,如果再在其中加进一个符号——比特币,并规定一套协议使得这个符号可以在数据库上安全地转移,并且无需信任第三方,这些特征的组合完美地构造了一个货币传输体系——比特币网络。

然而比特币并不完美,其中协议的扩展性是一项不足,例如比特币网络里只有一种符号——比特币,用户无法自定义另外的符号,这些符号可以是代表公司的股票,或者是债务凭证等,这就损失了一些功能。另外,比特币协议里使用了一套基于堆栈的脚本语言,这语言虽然具有一定灵活性,使得像多重签名这样的功能得以实现,然而却不足以构建更高级的应用,例如去中心化交易所等。以太坊从设计上就是为了解决比特币扩展性不足的问题。

 


 

以太坊开启“区块链2.0时代”

 

区块链技术是比特币的底层技术,这一技术第一次被描述是在中本聪2008年发表的白皮书“比特币:点对点电子现金系统”中。区块链技术更多的一般性用途在原书中已经有所讨论,但直到几年后,区块链技术才作为通用术语出现。一个区块链是一个分布式计算架构,里面的每个网络节点执行并记录相同的交易,交易被分组为区块。一次只能增加一个区块,每个区块有一个数学证明来保证新的区块与之前的区块保持先后顺序。这样一来,区块链的“分布式数据库”就能和整个网络保持一致。个体用户与总账的互动(交易)受到安全的密码保护。由数学执行并编码到协议中的经济激励因素刺激着维持和验证网络的节点。

 

在比特币中,分布式数据库被设想为一个账户余额表,一个总账,交易就是通过比特币的转移以实现个体之间无需信任基础的金融活动。但是随着比特币吸引了越来越多开发者和技术专家的注意,新的项目开始将比特币网络用于有价代币转移之外的其他用途。其中很多都采用了“代币”的形式——以原始比特币协议为基础,增加了新的特征或功能,采用各自加密货币的独立区块链。在2013年末,以太坊的发明者Vitalik Buterin(被圈内人尊称为“V神”)建议能够通过程序重组来运行任意复杂运算的单个区块链应该包含其他的程序。

2014年,以太坊的创始人Vitalik Buterin, Gavin Wood和Jeffrey Wilcke开始研究新一代区块链,试图实现一个总体上完全无需信任基础的智能合约平台。

小号君见证过以太坊的最高峰时期,大家可以从行情图上看到以太坊在2018年年初曾高达$1506,这是因为当时数以万计的项目都靠以太坊来进行发币(也就是ICO狂潮时期),所有使用以太坊智能合约发币的又被大家称为“山寨币”,可以说没有以太坊的诞生,就没有成千上万的区块链项目,所以以太坊是名副其实地开启了“区块链2.0时代”。

 

基于以太坊开发的区块链项目,比较具有代表性的有:唯链(VET)、Augur(REP)、Zilliqa (ZIL)、LoopringCoin V2 (LRC)等等。

 


 

以太坊的工作原理

 

以太坊是一个平台,它上面提供各种模块让用户来搭建应用,如果将搭建应用比作造房子,那么以太坊就提供了墙面、屋顶、地板等模块,用户只需像搭积木一样把房子搭起来,因此在以太坊上建立应用的成本和速度都大大改善。具体来说,以太坊通过一套图灵完备的脚本语言(Ethereum Virtual Machine code,简称EVM语言)来建立应用,它类似于汇编语言,我们知道,直接用汇编语言编程是非常痛苦的,但以太坊里的编程并不需要直接使用EVM语言,而是类似C语言、Python、Lisp等高级语言,再通过编译器转成EVM语言。

 

上面所说的平台之上的应用,其实就是合约,这是以太坊的核心。合约是一个活在以太坊系统里的自动代理人,他有一个自己的以太币地址,当用户向合约的地址里发送一笔交易后,该合约就被激活,然后根据交易中的额外信息,合约会运行自身的代码,最后返回一个结果,这个结果可能是从合约的地址发出另外一笔交易。需要指出的是,以太坊中的交易,不单只是发送以太币而已,它还可以嵌入相当多的额外信息。如果一笔交易是发送给合约的,那么这些信息就非常重要,因为合约将根据这些信息来完成自身的业务逻辑。

合约所能提供的业务,几乎是无穷无尽的,它的边界就是你的想象力,因为图灵完备的语言提供了完整的自由度,让用户搭建各种应用。白皮书举了几个例子,如储蓄账户、用户自定义的子货币等。

 


 

以太坊的技术原理

 

以太坊合并了很多对比特币用户来说十分熟悉的特征和技术,同时自己也进行了很多修正和创新。比特币区块链纯粹是一个关于交易的列表,而以太坊的基础单元是账户。以太坊区块链跟踪每个账户的状态,所有以太坊区块链上的状态转换都是账户之间价值和信息的转移。账户分为两类:

  1. 外部账户(EOA),由私人密码控制
  2. 合约账户,由它们的合约编码控制,只能由外部账户“激活”

 

对于大部分用户来说,两者基本的区别在于外部账户是由人类用户掌控——因为他们能够控制私钥,进而控制外部账户。而合约账户则是由内部编码管控。如果他们是被人类用户“控制”的,那也是因为程序设定它们被具有特定地址的外部账户控制,进而被持有私钥控制外部账户的人控制着。“智能合约”这个流行的术语指的是在合约账户中编码——交易被发送给该账户时所运行的程序。用户可以通过在区块链中部署编码来创建新的合约。

只有当外部账户发出指令时,合约账户才会执行相应的操作。所以合约账户不可能自发地执行诸如任意数码生成或应用程序界面调用等操作--只有受外部账户提示时,它才会做这些事。这是因为以太坊要求节点能够与运算结果保持一致,这就要求保证严格确定执行。

 

和比特币一样,以太坊用户必须向网络支付少量交易费用。这可以使以太坊区块链免受无关紧要或恶意的运算任务干扰,比如分布式拒绝服务(DDoS)攻击或无限循环 。交易的发送者必须在激活的“程序”每一步付款,包括运算和记忆储存。费用通过以太坊自有的有价代币,以太币的形式支付。

 

交易费用由节点收集,节点使网络生效。这些“矿工”就是以太坊网络中收集、传播、确认和执行交易的节点。矿工们将交易分组——包括许多以太坊区块链中账户“状态”的更新——分成的组被称为“区块”,矿工们会互相竞争,以使他们的区块可以添加到下一个区块链上。矿工们每挖到一个成功的区块就会得到以太币奖励。这就为人们带来了经济激励,促使人们为以太坊网络贡献硬件和电力。

 

和比特币网络一样,矿工们有解决复杂数学问题的任务以便成功地“挖”到区块。这被称为“工作量证明”。一个运算问题,如果在算法上解决,比验证解决方法需要更多数量级的资源,那么它就是工作证明的极佳选择。为防止比特币网络中已经发生的,专门硬件(例如特定用途集成电路)造成的中心化现象,以太坊选择了难以存储的运算问题。如果问题需要存储器和CPU,事实上理想的硬件是普通的电脑。这就使以太坊的工作量证明具有抗特定用途集成电路性,和比特币这种由专门硬件控制挖矿的区块链相比,能够带来更加去中心化的安全分布。

 


 

以太坊的分叉币

 

以太经典(ETC)、以太零(ETZ)、以太宇宙(ETU)、以太云(ETY),小号君劝持有这些币但心脏不好的朋友还是不要点进去看行情了...

 

 

*以上内容由非小号官方整理,如若转载,请注明出处。