火星链 火星链
Ctrl+D收藏火星链
首页 > 币安币 > 正文

ETH:POW矿池挖空块原理和解决方案

作者:

时间:1900/1/1 0:00:00

编者按:本文来自闪电HSL,作者:黄世亮,Odaily星球日报经授权发布。

第0章引言

比特币的挖矿收益包含两部分,第一是区块奖励;第二是交易手续费。如果打空块,就收不到交易手续费,为什么有矿池会不要手续费来打空块呢?

第1章POW挖矿原理

工作量证明POW挖矿就是区块链生成新的区块的过程。包括BTC、BCH、ETH、LTC……在内,POW挖矿都是按以下逻辑来。挖矿是这样的,系统会给出一个目标值,这是一个数,比如前面有18个零。挖矿就是找出一个小于这个目标值的随机数,比如前面有19个零。找到了,就挖到了区块。关键字:随机数。关键问题:这个随机是怎么计算?这个随机数是对矿池对最新高度的区块链进行哈希得来的。关键字:最新高度。关键问题:什么是最新高度?现在有一个矿池挖到了一个区块,并且广播出去,我们假定这个区块高度是50W高度。接下来所有矿池就会在这个50W高度后面继续挖矿,具体动作是矿池先组装一个新的区块,这个新的区块包含了“区块头”和“填充交易的区块体”。区块头里有两个需要特别说明的,第一个是父块哈希值,这里是50W高度的hash值;第二个是Nonce,这是一个数,一个可以调整的数,从0开始。组装好这个新的区块后,矿机就对这个新区块加上前面50W高度的区块进行哈希。这个新的区块就是上面的“最新高度”。矿机执行哈希一次,就得到一个哈希值,这是一个二进制数。矿池会拿这个值和目标值对比,如果小于目标值,就恭喜你,成功挖到矿,否则就将Nonce加1,再哈希,再对比,……显然一台矿机来哈希,你要试出满足目标值的Nounce值,那真是要慢死了。但矿池可以将不同的Nounce划分给不同的矿机来试。比如矿池一共有1000台矿机,将0到1000,给第1台试;10001到2000给第2台试……这就是挖矿的并行。第2章POW挖空块的原理

EthereumPoW自去年9月分叉以来未对其Geth客户端进行任何代码更新:金色财经报道,自2022年9月推出以来,EthereumPoW在其GitHub上没有做出任何软件提交以改善Geth客户端。虽然缺乏代码更新本身并不意味着有问题,但它可能表明EthereumPoW团队没有做出任何尝试来增强网络的主要客户端软件。

这种明显的缺乏行动昨天引起了ETC合作组织执行董事Bob Summerwill的批评,他在推特上表示,这样一个低成本的亲和力项目拥有超过3亿美元的市值,这告诉我们,价格上涨的‘信号’是多么微弱。[2023/4/28 14:33:13]

针对上面50W高度和最新高度区块,我们需要进一步详说。在矿池在对最新高度区块链进行挖矿之前,是要对50W高度这个区块进行验证的。如果验证成功,在“50W+1”这个新组装的区块高度上挖矿才是合法的,如果50W高度是一个非法的区块,那所有的矿池是要回到“50W”高度去挖矿的。但验证区块是需要时间的,因为各个矿池的软硬件不同,我们假定一个平均时间,10秒钟验证1M的区块。在验证结束之前,矿池是无法确认这个区块是不是合法,也就无法确认是否应该添加“50W+1”高度的最新区块。而组装一个最新高度的区块也是需要时间的,拿到一个区块模板开始组装,往里填写父区块哈希值和在内存池里挑选交易填充进区块体,这都是需要时间,我们假定需要0.1秒。在验证“50W”高度区块时,和填充交易进“50W+1”区块里,有一个提前,填充的交易是绝对不能和50W高度里已经打包的交易相重的。不然你这个最新高度区块就会是非法的。而“50W”高度这个区块从挖出到广播到所有的矿池中也是需要时间的,广播区块有分两步。第一步是广播区块头;第二步是广播区块体。区块体非常小,只有80字节,比一笔交易还小,广播特别快,所有矿池可以非常快拿到区块头。有了区块头就可以拿到组装新高度区块的“父哈希值”。区块体是包含所有交易的那部分,一般非常大,比如2500笔交易就接近1M了。BTC最大可以接近1M,加外3M的隔离见证区块。而BCH曾经打包出21M的区块体。所有矿池收到区块体就要时间更长了,这叫网络延迟。我们假定网络延迟平时是0.5秒。矿池挖矿最简单的做法是:一个矿池只要在拿到区块体,才能确认区块体里有哪些交易。而只有验证完整个区块,才能知道这个“50W”高度的区块是否合法。然后再开始组装最新高度区块,然后再挖矿计算小于目标值的哈希值。那在拿到区块体,和验证完整个区块,再加上组装最新高度区块,的时间长度是多少?0.5+10+0.1=10.6秒。如果一个矿池按上述过程来挖矿,那就在这10.6秒钟的时间内是无法挖矿的,矿机是无效工作时间。而且矿机还是在开机耗电的。如果一个矿池按下面的过程来工作:拿到区块头,就开始组装一个新的“50W+1”高度的区块,但因为无法确认这个50W高度区块里的交易和是整个区块是否合法,所以这个“50W+1”高度的区块,矿池并不对区块体填充额外的交易,只填充一个Coinbase奖励交易。这个“50W+1”高度的区块,只有区块头,外加一个Coinbase奖励交易——这就是一个空块——然后就直接开始挖矿。这样操作,在全网出现一个新块时,矿也只需要等待拿到区块头和组装空块的时间,就可以开始挖矿。这个时间就非常短了,平时不到0.5秒。这样就比10.6秒,节省了10秒多的时间。而按上述过程挖矿,矿池在收到完整50W高度区块体和验证完50W高度区块,这个过程是10.6秒。在上述0.5秒到10.6秒的时间里,矿机如果计算出了一个随机数小于目标值,那矿池就成功挖到了一个空块。如果矿机没有计算出小于目标值的随机数,那矿池就会放弃这10.1秒的挖矿时间,然后改成组装一个填充了交易的“50W+1”高度的最新高度区块进行挖矿。上述就是挖空块的全部逻辑。第3章优化挖矿原理

美股上市加密服务提供商Powerbridge推出去中心化加密ETF平台:金色财经报道,纳斯达克上市的加密服务提供商Powerbridge Technologies Co., Ltd.宣布推出去中心化加密ETF平台“Powerbridge ETF Platform”。

该平台提供了一个基于Web 3技术的去中心化透明网络,利用大数据分析来选择加密货币指数基金并根据交易策略和大多数交易者对各种加密货币的偏好生成指数基金产品。

目前,Powerbridge主要业务包括元宇宙和数字服务、加密货币挖矿平台服务和加密货币资产运营等。(雅虎财经)[2023/2/22 12:20:42]

上述挖空矿的原理中,确认“50W”高度区块里的交易是一个重要的工作,如果能够提前知道这些交易,那组装“50W+1”高度的区块,不就可以避开这些交易,去组装另外一些交易了吗,这样就可以不用打空块了。现在BTC和BCH网络有两个技术可以优化这个区块体的传播,也就可以让所有矿池更快知道“50W”高度里有哪些交易。第一个技术叫布隆过滤器;第二个叫致密区块(Compactblock)和瘦区块。布隆过滤器是用来标记“50W”高度的区块有哪些交易的,只是标识。矿池拿到这个标记就知道了里面有哪些交易,然后矿池会去自己的内存池查找这些交易,并列出自己没有的交易,然后向其他节点索要自己没有的交易。要到这些没有的交易后,就在本地重新组装一个“50W”高度的区块,而不是从网络上下载一个“50W”高度区块。这个过程就是Compactblock和Xthinblock的原理。通过这两个技术就可以压缩网络延迟时间,但依然压缩不了验证“50W”高度区块的时间,而前者只有0.5秒,后者有10秒。这样的时间差距,矿池还是要去挖空块,不然整个矿机就在白白浪费电,要知道这个浪费10秒对全网来说是无比巨大的能源。那怎么办?第4章彻底解决挖空块的办法

火币研究院副院长:ETH2.0将进一步改进协议满足不断增长的生态需求,PoW主链可能正式退出历史舞台:10月27日,火币研究院副院长李慧为全球区块链领导者课程(GBLP)第七期学员带来主题为《区块链技术发展之旅》的精彩授课。

本次授课主要分为三个部分:一,比特币的诞生和区块链技术框架;二,区块链技术发展演变;三,行业最新热点。

关于“ETH 2.0”,李慧老师指出: ETH2.0是构建新一代以太坊区块链网络,是一条全新的链,而非现有ETH网络的硬分叉升级。ETH2.0将进一步改进协议满足不断增长的生态需求,PoW主链可能正式退出历史舞台,也可能被纳入到ETH 2.0的大框架下作为一条“分片链”而长期存在,具体采用何种路线尚在讨论之中。这一阶段重要的技术升级包括支持分片轻客户端状态协议、跨分片链交易、高阶指数分片来进一步提高吞吐量。[2020/10/27]

上述分析了挖空块的原理和优化挖矿的原理,挖空块的核心原因是矿池不敢往“50W+1”这个空块中填充和“50W”高度里已经有的交易。如果有一种办法可以保证矿池组装的“50W+1”高度的空块里绝对没有“50W”高度里出现过的交易,不就可以解决问题了吗?一种办法是,矿池自己生成一些交易,不广播,只保存在自己的内存池里,用来填充“50W+1”高度的空块区块,就可以了。但矿池不能生成一些无意义的交易,不然就是一些垃圾交易,这是对网络的浪费。打包用户发的交易肯定是有意义的,但用户发的交易往往都是经过广播的,打包就和“50W”高度区块里的交易相冲突的风险。一定要找那些没有经过广播的交易。一种方法是矿池和交易所合作,用户在交易所发起的提现交易,交易所不去广播,而是通过IP到IP的方式,以加密的方法直接发给矿池,这些交易绝对不会被“50W”高度区块打包的。这些交易就可以100%没有冲突的打进“50W+1”高度。如果有交易所和矿池是同一个公司主体,那这种方法就非常好执行了。不是同一个主体,矿池还是怕被交易所坑,万一交易所塞一个经过广播的交易就可能被浪费掉一个空块的区块奖励。但这种方法会让交易所的用户体验有所下降,因为打空块的概率低啊,这些交易得何年马月才能被打包,虽然矿池可以在挖非空块中打包,但用户也得等这个矿池出块才有确认,这和全网有出块是差好长的时间的。另一种方法是让交易所给矿池提交的保密交易不是用户的提现交易,而是一些零散UTXO拼凑成大UTXO的交易。这种交易是对整个UTXO体积有很大的优化的,而且这些交易都没有非常强烈的时间要求。适合被空块打包。第5章结束语

Ledger:量子计算技术不太可能对PoW区块链造成太大影响:加密货币钱包制造商Ledger于官网发文探讨量子计算技术对加密货币的影响。文章称,关于量子计算技术如何影响加密货币主要有两种思路。

其一,量子计算可能会对用于生成公钥的非对称加密技术构成威胁。简单来说就是可以通过量子计算进行反向工程,进而获得属于某个地址的私钥。这个对加密货币最大的威胁,因为持有私钥即可控制资产。

其二,量子计算可能会对工作证明(PoW)区块链的挖矿协议构成威胁,比如比特币。然而,这似乎不太可能。虽然量子计算对非对称加密技术的影响可能是巨大的,但对于哈希计算对称加密的影响却小得多。PoW区块链的挖矿难度也可能会适应量子时代。此外,区块链可以通过分叉进行某些更新,以减轻量子计算可能带来的威胁。[2020/7/11]

只需要考虑经济因为的POW挖矿机制是最优的设定,道德不应该被掺进来。所有批评矿池打空块的言论,都是对POW挖矿机制没有信心的。

独家 | 冉小波:马太效应在POW机制中逐步体现:POW共识机制近日遭V神质疑能耗大、易形成算力集中。对此,NULS联合发起人冉小波在接受金色财经独家采访时指出:“中本聪创造了POW机制,目的是为了规避人性,所以让机器来参与工作量的竞争,追求一个公平财富分配方式。他提出的点对点电子现金系统使得众多的自由主义极客被这种理念吸引,形成了庞大的社区。POW机制是最早的区块链共识机制,有很大的魅力和价值所在,现在依然是区块链项目中共识最大的一种机制。但是现阶段来看,人依然在金字塔的顶端,所以人性是不可规避的,POW并不能规避人性,随着矿池的发展,使得POW机制开始变得中心化,马太效应在POW机制中也体现了出来。其次,POW机制的算力并未对网络做出多大的贡献,大量的算力都在计算一个毫无意义的方程式去争夺记账权,使得大量的能源和资源的浪费,这些资源都可以通过改进共识机制让其产生更大的价值。再者,随着区块链的发展,区块链应用场景越来越广泛,使用频率不断上升,对区块链的性能要求不断提升,所以POW已经不能支撑大量的应用需求,当然也有很多的解决方案在探索中,例如以太坊的分片技术等。

以太坊最早使用POW机制,有着和中本聪一样的愿景和目标,然而以太坊提供了智能合约环境,面对的是一个更大的生态,而不是单一的数字货币系统,这使得对区块链性能的要求必然要高得多。当Vitalik看到现如今以太坊面临的困难时,他提出了更改共识机制,但是想要更改共识机制是一件非常难的事情,以太坊有一个庞大的社区,更改共识机制使得社区中充当生产者的矿工部分的利益并不一致,然而POW机制的以太坊中,矿工才是区块链的决策者,所以以太坊基本上从POW直接过渡到POS是非常困难的。以太坊的升级并不是技术的问题,而是社区难以达成共识,如果直接升级做硬分叉,则可能造成社区的分裂,大部分以太坊上的生态也会分裂。[2018/7/12]

标签:POW区块链ETH以太坊POWER区块链域名价格排行男生用ethereal当网名什么寓意以太坊价格今日行情美元实时

币安币热门资讯
FIN:经常听说的图灵完备指的是什么?| 区块链课堂第 57 问

编者按:本文来自哈希派,作者:LucyCheng,星球日报经授权转载。作为计算机的理论模型,图灵机是英国数学家AlanTuring于1963年提出的、为了研究可计算问题而构思的抽象计算模型,可以.

1900/1/1 0:00:00
ANB:澳大利亚国家区块链推出智能合同系统,让智能合约具备法律效力

据ZDNet消息,ANB近日宣布,将采用Data61、IBM、HerbertSmithFreehills律师事务所联合研发的智能法律合同系统,来为本地公司提供具备法律效力的智能合约合同.

1900/1/1 0:00:00
以太坊:以太坊钱包为何频频被盗?| 区块链课堂第 86 问

编者按:本文来自哈希派,作者:不碎,Odaily星球日报经授权发布。!webp\"data-img-size-val=\"800,450\"\u002F\\>2016年6月,基于以太坊的众筹项目.

1900/1/1 0:00:00
FIU:为什么说以太坊是区块链2.0的代表?| 区块链课堂第 51 问

编者按:本文来自哈希派,作者:不碎,星球日报经授权转载。区块链1.0时代通常是指在2009年到2014年之间,以比特币为代表的区块链应用发展阶段,它们主要致力于解决货币和支付手段的去中心化问题;.

1900/1/1 0:00:00
TWI:想借资产上链突围大熊市?其实没那么简单

编者按:本文来自区间集,作者:坎村,星球日报经授权转载。让物理资产上链一直是人们理想中区块链应用方向,最近业内有人就进行这方面的尝试.

1900/1/1 0:00:00
TYCOON:解密亚洲区块链公司架构,你都看懂了吗?系列(三)代币发行法律框架实务操作

编者按:本文来自TritonPartners,作者:TritonPartners,星球日报经授权发布.

1900/1/1 0:00:00