POW挖矿本质就是构造符合要求的区块并进行验证的过程。本期教程将通过介绍比特币区块的结构与其打包,验证过程来解释POW挖矿的逻辑过程。
区块结构
2019-09-1914:49:20爆出的比特币区块来自:BTC.com
Chia全网有效算力32.14EiB 挖矿产出1,405,176枚:金色财经报道,据chiaexplorer数据显示,2021年8月12日,Chia当前全网有效算力为32.14EiB,目前XCH总量22,405,176枚,挖矿产出1,405,176枚。当前每天每TiB算力可产出0.0003个XCH,1TiB算力挖出1枚XCH需要花费约10年114天。行情显示,当前XCH报价为265美元,日内跌幅3.88%。[2021/8/12 1:49:44]
比特币区块分为四部分,区块头Blockheader,区块大小Size,区块交易数Txcounter,以及交易列表。
Uni流动性挖矿结束后 Sushiswap的总锁仓量出现大幅上升:据欧科云链OKLink数据显示,截至今日十一时,以太坊上DeFi协议总锁仓量约合175.7亿美元。其中排名前三的分别是Maker 26.4亿美元(-0.93%),WBTC 22.8亿美元(+1.89%)以及Aave 18.2亿美元(+5.02%)。
值得注意的是,Uniswap V2的总锁仓量在11月中旬结束流动性挖矿后自30亿美元下降至16亿美元,而Sushiswap的总锁仓量则在同期出现上升,一度自4.2亿美元上升至10亿美元,当前Sushiswap锁仓量约合8.5亿美元。[2020/12/3 22:58:06]
区块头内包含六个字段,Version,PrevBlock,MerkleRoot,Time,Bits,Nonce。
GT锁仓挖矿赚USDG明日12点开启:据官方公告,Gate.io 将于11月4日(明日)中午12:00上线《Gate.io“天天理财” 第24期 GT锁仓挖矿赚USDG(7天)》,总额度为300万GT,锁仓期限7天,利息币种为USDG。[2020/11/3 11:33:05]
区块打包过程
金色财经挖矿数据播报 | ETH今日全网算力上涨4.88%:金色财经报道,据蜘蛛矿池数据显示:
BTC全网算力142.796EH/s,挖矿难度17.35T,目前区块高度648833,理论收益0.00000770/T/天。
ETH全网算力253.792TH/s,挖矿难度3258.84T,目前区块高度10883279,理论收益0.02127847/100MH/天。
BSV全网算力1.656EH/s,挖矿难度0.24T,目前区块高度653024,理论收益0.00054350/T/天。
BCH全网算力2.447EH/s,挖矿难度0.35T,目前区块高度653274,理论收益0.00036786/T/天。[2020/9/18]
具体过程如下:
从未确定交易池中选择交易,通常尽可能多的优先选择手续费高的交易。
公告:币新关于‘交易挖矿’和‘持币分红’规则升级公告:币新发布公告称,为了保证X-Mining和X-Bonus普惠更多积极参与的矿工,同时避免投机持仓损害真实持仓矿工的利益,并为了表现出OCX真实的市场价值,现将‘交易挖矿’和‘持币分红’返还规则进行升级,如下:
①交易挖矿每两小时随机快照,每天共计快照12次;
②每天持币分红按照12次快照中最小量计算,发放分红
③交易挖矿手续费返还按照三分原则(分档+分时+分比例)
X网保证交易挖矿和持仓用户次日24小时内利润得到返还。[2018/6/23]
构造coinbase交易,计算打包交易中的挖矿手续费,与coinbase奖励一起发送到打包矿工的地址。
由打包交易与coinbase交易得到区块结构中的区块大小,区块交易数与交易列表。
对所有交易进行hash运算,得到MerkleRoot。
自行填写Nouce,由当前环境填写Version,PrevBlock,Time,Bits,与得到的hashMerkleRoot一同构成区块头。
区块头与区块大小,区块交易数与交易列表就构成了一个比特币区块。
打包一个比特币区块,矿机一瞬间就可以完成,但是比特币主链只会允许符合难度要求的区块进行广播,那么如何验证区块是否符合难度要求呢?
区块难度验证
20190919比特币难度情况来源:BTC.com
验证过程为:区块打包成功后对区块中的区块头进行hash运算,将运算结果与当前全网难度比对,若运算结果小于全网难度,则成功广播。但如果运算结果大于全网难度,则需要重新构造区块头再次循环。
由于hash算法的不可逆性质,矿工只能挨个去尝试改变区块头的构造来满足难度要求,算力越大,满足难度要求的可能性就越大,这就是POW工作量证明机制。
矿工需要不断改变区块头的信息,使得SHA256D<全网难度,那么在第一次验证失败后如何更改区块头信息呢?
区块头中的数据,Version,PrevBlock,Bits,Time在同一时刻是一定的,不会发生变化。矿工能够修改的部分为Nonce和MerkleRoot。
Nouce是一个四个字节的随机数,可能取到的值有2^32个。在早期使用CPU与GPU进行比特币挖矿时,矿工只需要通过改变Nonce的值来重新构造区块头从而得到新的SHA256D。
MerkleRoot是对区块内所有交易进行hash运算的256位hash值,改变coinbase的输入信息和改变交易排列顺序都可以改变MerkleRoot从而改变区块头得到新的SHA256D。
ASIC矿机出现后,Nonce提供的2^32可能取值无法将爆块时间控制在10分钟,故现阶段矿工通过修改Nonce和MerkleRoot两种方式来重构区块头。
挑Sir碎念
《挖矿从入门到精通》专为挖矿小白量身定做,将通过“入门”“实战”“进阶”三大阶段进行系统性专业性数字货币挖矿教学指导。
“入门”掌握核心挖矿知识/资源库,从此不是挖矿小白!
“实战”挑Sir带你免费体验挖矿过程,积极互动将有机会在“实战”阶段获得挑Sir矿机体验资格!
“进阶”掌握挖矿业内人士核心技能,你也可以成为矿圈大佬!
下期预告:
《挖矿从入门到精通-入门篇》
矿池如何下发任务给矿机
关注“科学挖矿”公众号,获取最新挖矿测评资讯!
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。