以太坊的拥堵出了名 1400美金引起拥堵还真稀奇
来源:区块链铅笔
8月22日,原本以为会一直持续下去的Fomo3D,突然戛然而止,300万美金被黑客高手“五哥”获得,不出意外地采用了拥堵区块的方式,但手法十分高明。在我们上一篇文章《Fomo3D的300万美元赢家还在继续》中,已经分析了五哥是如何巧妙地通过堵塞区块,来赢得奖池的。今天,我们来看看堵塞以太坊区区块究竟需要多少钱。
堵塞以太坊究竟需要多少钱
先来回顾下以太坊gas的机制,先理解几个概念:
我们可以从
https://etherscan.io/chart/pendingtx网页中了解以太坊的拥堵情况了解了基本概念,我们回到主题,堵塞以太坊究竟需要花费多少钱?
单个交易总花费手续费=gasprice*gas,矿工选择打包通常看的是手续费的收入,因此提升gas price其实意味着你的合约变得更诱人。而之前我们提到的Gas limit相当于区块的容量,也就是一个区块最多只能进行这么多操作。所以当gasprice很有竞争力,Gas limit占用接近8000000上限,区块里面交易数量很少的时候,这就意味着少数几笔交易吸引了大部分矿工的算力,并占用一整个区块的存储资源,这就可以理解为网络区块的拥堵。
近一年来,以太坊单个区块的打包交易数平均为123.9笔。那么当单个区块打包交易低于10笔,而gas limit又接近800万时,则很有可能该区块发生了拥堵。为此,我们列出了近一年来满足此条件的区块。
表中列出了满足条件,总花费最高的20个区块数据,红色区域就是五哥为了获得Fomo3D奖励而精心堵住的区块,而紫色区域也发生在Fomo3D游戏之后,可能也是为了堵住区块的尝试。
最右列的used_fee就是该区块总共打包收取的手续费。可见,最高需要5.91个以太坊,就可以将堵塞一个区块。若按今天以太坊230美金的单价计算,堵住以太坊一个区块的花费在1359美金。而若我们以前50个拥堵区块的手续费计算,则平均2.98个以太坊就可以堵塞一个区块,约合685美金。
即使以太坊面临着连续的暴跌,但至今,其市值仍然在200亿美金以上。拥堵一个市值200亿美金,排名第二的区块链公链,花费1400美金不到,虽然对于我等工薪族来说,遥不可及,但对于一些土豪用户,作为成为和朋友炫耀的新谈资和新成就是不是挺划算的呢?
当然,事实上,除了未来有潜力成为土豪炫耀的资本,以太坊经历每一次拥堵,背后都是一场场对投机利益的不懈追求。
利益一直是拥堵的原动力
回顾以太坊历史,共计有5次明显的拥堵事件:
每次事件都能可以看到手续费出现高涨:
1) Status众筹:Status号称是区块链版的微信,在代币融资的启蒙期,很快成为了市场上必抢的投资标的。2017年6月20日,众筹开启,无数ETH从imtoken钱包中发出,为了更快被打包,很多投资者故意提高了gas price来被更快打包。这也是gas第一次被大规模普及。当时最高的交易费设置达到了几百美金,而事实上,即使如此高昂的手续费,相比于status上市以后300%的涨幅相比,也可以忽略不计。
2) 加密猫:12月3日开始,以太坊待处理交易几乎直线上升,从5000笔到高峰触及到2万笔。原因便是Cryptokitty这个虚拟猫游戏,除了是第一次大规模虚拟资产普及之外,当时拍卖价最高达121606.21美金天价的加密猫带动了全民炒猫热潮,大规模拥堵下,除了好玩,也隐含着全民对于“猫价”的期待。
3) 1月融资热潮:和Status情况类似,只是在代币融资启蒙期过后,2018年1月份迎来了各类项目融资的大规模包发,群体暴富预期造成了以太坊网络拥堵。
4) Fcoin:自6月28日Fcoin推出交易即挖矿及创业板累计充值人数排名上线机制等规则后,迎来了大量用户的ERC-20充值转账交易、空投、量化交易团队刷单等行为,并由于利于吸引流量引得众多交易所纷纷效仿,由于还需要大量高频地在链上返还手续费,造成了以太坊拥堵。高峰时期,以太坊的未处理交易数量达到了44000笔以上。这“刷单暴富”的行业型现象再一次令以太坊网络拥堵。
5) Fomo3D:也就是最近的一次,高达300万的单笔奖金,令高昂的堵塞成本亦有利可图。
纵观上述5个拥堵案例中,分别反映了个人群体有意识对单个项目的利益诉求,群体无意识地对多个项目的利益诉求,行业性无意识的利益诉求,个人有意识对单个项目的利益诉求。但都是针对项目或者个别场景的,是否会有仅仅单纯攻击以太坊而产生的利益诉求呢?
要知道以就算以685美金的均价来堵住一个区块,堵一天也需要近395万美金,除了土豪朋友刷15s的成就,还有谁能有利可图呢?
答案是有,那就是有竞争关系的公链平台。此前就有以太坊开发者猜测,EOS花费了千万美金去攻击以太坊,造成以太坊堵塞,来证明自己平台的稳定性。而EOS目前是市值排名第五的公链。
总结
笔者曾经听过一个故事,在中国股市新股发行伊始,投资公司认购新股需要去上市公司当地竞拍,当时几个朝气蓬勃的年轻人为了认购某西藏的上市公司,高价购买了飞往西藏的飞机票。彼时航班并不多,在飞机上,空姐望着空空如也的飞机,疑惑着为何没有乘客上飞机,这几名年轻人说,不会有人上来了,我们把机票都买光了。最终到场参与新股认购的除了他们寥寥无几,他们也成功认购到了公司股票,赚的盆满钵满。
16年初,V神来中国推广以太坊,谈到Gas给了一个有趣比喻,说Gas和ETH,就是中国的油价和RMB的关系。希望通过这个体系将使用价值与投资价值分离,避免因为ETH价格波动,造成系统手续费的波动。同时,Gas机制的设计,也是为了给操作带来成本,从而防止ddos攻击。
可能V神也不能阻止的是,在现实中, Gas机制也许能防止单纯在以太坊上的恶意攻击, 但在更多维度,更巨大的利益诉求面前,再巧妙的机制设计可能都会成为谋求利益道路上工具的一环而已。
Fomo3D
Fcoin
1月份ICO热潮
加密猫
Status众筹事件
Gas Limit:以太坊为防止某些错误或者恶意的智能合约(比如一个死循环)消耗掉用户大量手续费,所以对默认Gas上限做了限制,但是有些合约(比如复杂的众筹合约)的确会消耗大量的Gas,所以需要手动设置上限,这是为什么很多众筹合约的教程里面需要让大家打开高级模式手动填Gas Limit。在以太坊中,单个区块默认的Gas limit上限是8000000,五哥也就是利用了这个机制,来拥堵区块的。
Gas Price:每一步操作的单价,一般用GWei作为单位,乘以Gas就是需要支付的矿工费
Gwei单位:以太坊的一个单位,9位小数。
Gas:以太坊每一步操作都需要消耗Gas,执行总量就是Gas
矿工费:除了转账金额需要额外支付给以太坊网络矿工的费用