如何创建新的Ether
之前我们提到过Minging(挖矿)。如果你了解Bitcoin,那么你就会知道挖矿过程对于区块链的安全和更新多么重要。而Ethereum与Bitcoin的挖矿原一样都是根据协议对挖矿者进行Ether奖励。
Ether的供应量
截止2020年2月,Ether的总供应量约为1亿1千万。
与Bitcoin不同,Ethereum的代币发行计划在创建前并没有被设定好。Bitcoin通过限制供应量并降低新面世代币的数量来保护价值。而Ethereum则通过代币为去中心化应用程序(DApps)提供基础。目前尚未确定何种类型的代币发行计划适合此目的,所以Ethereum是无期限的。
Ethereum挖矿的运行机制
Minging(挖矿)对于网络安全至关重要。它确保了区块链可以公平合理的更新,并允许了网络在无单一决策者的情况下运行。在挖矿活动中,节点的子集(也就是矿工)奉献计算能力来解决加密难题。
他们实际上就是将一组未决交易及其数据进行哈希运算。为了使区块有效,哈希值必须低于协议的规定值。如果一次操作失败,他们可以修改某些数据进行再尝试。
由于存在竞争,所以矿工必须以最快速度完成哈希运算,通常使用哈希率来衡量矿工的能力。网络上的哈希算力越高,则加密难题越难解决。当矿工找到真正的解决方案后,他还需向网络中广播,以便于其他参与者对有效性进行验证。
高速连续的哈希运算费用是昂贵的。当矿工在为网络安全付出努力时,就会获得奖励。而奖励则是区块中所有的交易费用。他们也接收新生成的Ether(在撰写本文是为2ETH)。
Ethereum Gas简介
还记得之前提到过的“ Hello, World!”合约么?该程序非常简单,且计算费用也不高。并且Ethereum生态系统中的任何人都可运行。
而这就引出了以下问题:当成千上万人都在运行复杂合约时网络将会怎样?如果某个人将他的合约设定为持续循环的相同代码,且每个节点都需要无限期运行它又会是怎样?很显然,这些过程占用了很大资源,并且可能会导致整个系统崩溃。
幸好Ethereum引入了gas来规避这种风险。这就像汽车不能在无燃料的情况下行驶一样,合约也不能在没有gas的情况下运行。合约的运行则需要用户支付一定数量的gas。如果没有足够的gas,则合约将终止。
其实,这就是一种收费机制。将概念应用到交易上就是:矿工的主要动机是收益,因此他们将忽略费用较低的交易。
但请记住Ether与Gas是不一样的。Gas平均价格的波动很大程序上取决于矿工。当你进行交易时,就要使用ETH来支付gas。并且也会如Bitcoin在收费方面一样:如果网络拥挤且很多用户都在试图交易的话,gas的价格就会上涨。相反,如果网络中没有太多活动,价格就会下降。
虽然gas的价格会改变,但每次操作所需的gas量是固定的。也就是说,复杂的合约将比简单的交易消耗更多的gas。因此,gas就成为了算力的度量基础。并以此来确保系统将根据用户所使用的Ethereum资源量来收取合适的费用。
因为Gas只是Ether的很小一分部。所以,我们使用更小的单位“gwei”来表示。1gwei相当于十亿分之一的Ether。
简单来说,你的确可以运行一个长时间循环的程序,但此操作很快将变得非常昂贵。这样Ethereum中的节点就可以缓解网络中的垃圾信息了。
Gas平均价格随时间推移的变化(单位gwei)。来源:Etherscanio
Gas price和gas limits
假设Alice正在进行一笔交易。她会计算出想要为单位gas支付的费用(可以通过ETH Gas Station),也就是gas price。也许她会设置较高的价格以此来激励矿工尽快处理她的交易。
同时她也会设置一个gas limit,用来自我保护。合约出现问题时,会使得所消耗的gas要多于她所计划的。而gas limit的作用就是确保,当设置gas量消耗完时,操作将停止。那时合约也会失效,且Alice最终支付的金额不会超过她最初所允许的支付额。
乍一看,这似乎很难理解。但其实就是告诉你,可以手动设置愿为单位gas支付的费用(gas Price),以及该笔交易可消耗的最大gas量(gas limit)。而大多数的钱包都会为你处理该问题。同时gas price决定矿工打包交易的速度,而gas limit则决定你愿意为此交易支付的最多gas量。
Ethereum区块的挖矿时间
将一个新区块链添加到区块链中的平均时间为12-19秒。而如果网络转变为Proof of Stake(权益证明),那么速度将会更快。如果想深入了解此问题,请查看《Ethereum Casper解析》。
什么是Ethereum代币
Ethereum最大的魅力在于可允许用户在链上创建自己的资产,并且这些资产可以像Ether一样进行存储和转移。开发者们可以在智能合约中对资产管理规则以及代币参数进行设定。其中包括代币发行量,代币发行机制,是否可被分割,是否可替换等。在Ethereum上创建的代币都需要符合ERC-20技术标准,因此这些代币也被称为ERC-20代币。
代币的功能性为创新者们提供了更广的试验平台,允许他们在金融和技术等前沿领域进行更多的尝试。从发行应用内统一货币,再到生产以实物资产为基础的独特代币,都具有很大的设计灵活性。未来的应用前景将会更加广泛,且一些最佳用例也会慢慢浮现。