区块见闻 区块见闻
Ctrl+D收藏区块见闻
首页 > 波场 > 正文

GET:区块链之CPU挖矿、GPU挖矿、ASIC挖矿原理以及区别_BLO

作者:

时间:

区块链世界里,有些非常有意思的比喻,像挖金子一样“挖”数字货币叫做“挖矿”,挖数字货币的人被称为“矿工”,而用于“挖”数字货币的电脑被称为“矿机”。

比特币挖矿原理

比特币的区块头,共含6个字段,如下:

int32_tnVersion,4字节,版本号,一般固定不变,仅在升级时改变。

uint256hashPrevBlock,32字节,前一个区块的区块头哈希,由前一个区块决定。

uint256hashMerkleRoot,32字节,包含进区块的所有交易构造的Merkle根,调整区块中的交易次序、增删交易、或修改Coinbase交易时改变。

uint32_tnTime,4字节,时间戳,后一个区块时间略早于前一个区块是被允许的,但必须在合理的时间区间,一般会直接使用机器当前时间戳。

uint32_tnBits,4字节,挖矿难度,由全网决定,每2016个区块按算法重新调整。

动态 | 澳大利亚莫纳什大学启动区块链研究实验室:澳大利亚莫纳什大学宣布与亚太地区的伙伴大学一起启动了一个区块链研究实验室,Joseph Liu已被任命为该莫纳什区块链技术中心(MBTC)的主管,并将协调改善该国区块链采用等工作。(BTCManager)[2019/11/27]

uint32_tnNonce,4字节,随机数,提供2^32种取值。即4,294,967,296。

其中nVersion、hashPrevBlock、nBits是固定的,其他hashMerkleRoot、nTime、nNonce为可变的。比特币挖矿原理即,不断变更区块头中的可变值,使得对区块头做双重SHA256哈希,结果小于挖矿难度目标值。即:SHA256D(BlockHeader)<F(nBits) 

其中SHA256D(BlockHeader)即对区块头做双重SHA256哈希,F(nBits)即按nBits计算的难度目标值。

声音 | 央视快评:在区块链这个新兴领域,我国要努力争取走在理论最前沿:10月26日,央视网发表评论称,10月24日 ,总书记的重要讲话,深入浅出地阐明了区块链技术在新技术革新和产业变革中的重要作用,对区块链技术的应用和管理提出了具体要求。总书记的重要讲话,对各部门各地方全面和深刻认识区块链技术发展现状和趋势、提高运用和管理区块链技术的能力必将起到巨大推动作用。在区块链这个新兴领域,我国要努力争取走在理论最前沿、占据创新制高点、取得产业新优势。遵循总书记的指示,我们重点应在技术、市场、人才等层面齐发力,做到“六个要”:要强化基础研究,提升原始创新能力;要推动协同攻关,加快推进核心技术突破,为区块链应用发展提供安全可控的技术支撑;要加强区块链标准化研究,提升国际话语权和规则制定权;要加快产业发展,发挥好市场优势,进一步打通创新链、应用链、价值链;要构建区块链产业生态,加快区块链和人工智能、大数据、物联网等前沿信息技术的深度融合;要加强人才队伍建设,建立完善人才培养体系。[2019/10/26]

算力的表示

声音 | 邓建鹏:中国应尽快推动区块链领域的谨慎监管:5月21日讯,今日,中央财经大学法学教授邓建鹏在《区块链监管的未来之路——深度思考》一文中,就区块链监管给出了7点建议,他表示,其一,我们首先建议监管机构加强国际协作,强化国际监管。其二,开展ICO监管沙盒园试点,降低ICO风险。其三,明确虚拟货币法律界定,根据分类具体定性。其四,未来证券领域考虑增加募集资金小额豁免制度,同时在立法上扩大“证券”的概念内涵,以适应时代变化。其五,强化合格投资者门槛与投资者风险教育。其六,监管者应调整思维,以及对未来行政规范性文件及监管措施赋予充分合法性。最后,政府在把握鼓励金融科技创新与风险控制平衡点的前提下,监管思维应及时跟进,推动区块链技术与监管技术的融合。此外,相关监管手段既包括柔性约束,也包括硬法规制。[2019/5/21]

1H/S=每秒一次运算

1KH/S=1000H/S,即每秒1千次运算

1MH/S=1000KH/S,即每秒100万次运算

动态 | 区块链活跃度指数排名报告:据IMEOS报道,根据blocktivity.info的数据显示,截止北京时间18年10月24日11点00分 ,区块链活跃度指数排名前五名分别为:EOS,BitShares,Steem,Bitcoin,Ethereum。其中EOS的Activity指数为3,783,440,排名第1。Activity指数为最近24小时内在区块链上执行的操作数量。[2018/10/24]

1GH/S=1000MH/S,即每秒10亿次运算

1TH/S=1000GH/S,即每秒1万亿次运算

1PH/S=1000TH/S,即每秒1000万亿次运算

1EH/S=1000PH/S,即每秒100万万亿次运算

CPU挖矿原理

CPU挖矿,即利用RPC接口setgenerate控制挖矿。

控制台输入setgeneratetrue2,即开始挖矿,后边的数字表示代表的挖矿线程数,当然前提先完成同步数据。

动态 | 晨鑫科技设立产业并购基金对区块链项目进行投资:8月18日消息,大连晨鑫网络科技与专业投资机构共同设立并购基金,产业并购基金主要围绕电子竞技、文化传媒及文化传媒运营服务、区块链技术服务(包括但不限于区块链底层技术、硬件开发和运营服务等技术服务领域的股权投资,但不包括任何或有违反法律法规范围的投资)等标的项目开展投资。[2018/8/18]

由于单CPU运算SHA256D算力约为2MH/S,因此nNonce提供的4字节搜索空间完全够用,即支持4G种取值。

GPU挖矿原理

GPU运算SHA256D算力约为200M-1G,nNonce提供4G搜索空间,如果仅调整nNonce取值,可以支持4秒左右。因此可以调整nTime,每调整一次nTime,可以继续挖矿4秒。

GPU挖矿使用GETWORK协议,即挖矿程序和节点分离,也即挖矿部件与区块链数据分离。GPU挖矿时代,使用GETWORK协议,使得挖矿程序与节点交互。

核心思路为:节点构造区块,将区块头数据交给挖矿程序,挖矿程序遍历nNonce进行挖矿。验证合格交付给节点,节点提取nNonce和nTime验证区块,如果符合要求即向全网广播。遍历结束将调用GETWORK,节点构造新区块,然后重复上述过程。

GPU经典挖矿驱动为cgminer,源码为https://github.com/ckolivas/cgminer。

GPU挖矿缺陷:GETWORK协议给挖矿程序提供的搜索空间为4G,结束后需再次调用GETWORKRPC接口。矿机出现后,矿机算力已达10TH/S,继续使用GETWORK协议将频繁调用RPC接口,显然不太合适。因此需转向更高效的getblocktemplate协议。

GPU挖矿即可以使用显卡进行挖矿,并不是所有的显卡都适合挖矿,GPU对于算力要求比较高,对于带宽、缓存等都有要求,一般的显卡并不能进行挖矿。

ASIC矿机

FPGA,Field-ProgrammableGateArray,译为现场可编程门阵列。

是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。能用FPGA实现各种AISC、DSP和单片机。FPGA作为挖矿硬件,对于ASIC来说属于必然的过度技术。

ASIC,ApplicationSpecificIntegratedCircuits,即专用集成电路。是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。

目前市面上来说,主要有蚂蚁矿机、阿瓦隆矿机、神马矿机等专业ASIC矿机。

矿池挖矿原理

矿工通过getblocktemplate协议与节点交互,或矿池采用stratum协议与矿工交互,即为矿池的两种典型搭建模式。

与getwork相比,getblocktemplate协议让矿工自行构造区块,因此使得节点与挖矿完全分离。矿工拿到一系列数据后,开始挖矿:

1、构建coinbase交易。

2、coinbase交易放在交易列表之前,构建hashMerkleRoot。因coinbase、以及交易次序均可调整,因此hashMerkleRoot空间可以认为无限大。因此getblocktemplate协议也使矿工获得了巨大的搜索空间。

3、构建区块头。

4、挖矿,即矿工可以在nNonce、nTime、hashMerkleRoot提供的搜索空间中涉及任意的挖矿策略。

5、上交数据,如果挖矿成功即提交给节点,由节点验证并广播。

getblocktemplate协议的问题:

1、矿工通过HTTP方式调用RPC接口向节点申请挖矿数据,因此网络中最新区块变动无法告知矿工,造成算力浪费。

2、每次调用getblocktemplate,节点都会返回1.5M左右数据,因频繁交互将因此增加大量成本。Stratum协议将解决上述问题。

Stratum协议

Stratum协议,采用主动分配任务的方式,也即矿池任何时候都可以给矿工分派任务。对于矿工,如收到新任务,将无条件转向新任务。另外矿工也可以向矿池申请新任务。

最核心问题为,如何使得矿工获得更大的搜索空间。如果仅矿工仅可改变nNonce和nTime,交互数据少但搜索空间不足。如果允许矿工构造coinbase,搜索空间大但代价是需要将所有交易交给矿工,因此对矿池带宽要求较高。

Stratum协议巧妙解决了这个问题。即:基于Merkler树的原理,无需将全部交易发给矿工,只需将构造hashMerkleroot所需的少数几个节点交给矿工即可。同时将构造coinbase所需信息交给矿工,矿工可基于少数信息构造hashMerkleroot。照此方式,如果包含N笔交易,仅需将log2(N)个hash值交给矿工。因此可大大降低交互的数据量。

矿池的核心即给矿工分派任务,统计工作量并分发收益。矿池可以将区块难度分成更小的任务发给矿工,矿工完成任务提交矿池。如果全网区块难度要求前70位为0,那么矿池可以给矿工分派难度为前30位0的任务,矿池再判断是否碰巧前70位都为0。

总体来说,CPU矿机以及ASIC矿机只能针对性的挖某一两种币,GPU矿机可以挖多种币,搭配不同的程序就可以挖不同的币,不过GPU矿机一般来说与同一种币的ASIC矿机相比,效率没有它高,可以说各有优劣。

标签:GETBLOCLOCKBLODOGETFPETBlocLOCKPAYBlockAura

波场热门资讯
BTC:大型机构多头持仓创历史新高 加仓已成短期「共识」 | CFTC COT 比特币持仓周报_比特币

10月24日,CFTC公布了最新一期的CME比特币期货周报,统计周期内BTC延续了前一统计周期内的上涨势头,在几乎没有进行任何明显回调的情况下继续走高.

NAN:一文梳理 Harvest Finance 闪电贷安全事件_VEST

HarvestFinance此次遭受闪电贷攻击主要是由于fToken在铸币时采用Curvey池中的报价,攻击者可以通过巨额兑换操控预言机价格来控制fToken的铸币数量,从而获利.

比特币:无限未来 火币集团七周年线上峰会10月27即将开启_DEF

火币将于10月27日~10月28日正式举办“无限未来——2020年区块链大航海时代”行业峰会暨火币集团七周年线上峰会.

RAT:币圈小蝶:跌跌涨涨,币圈散户如何应对各种利空消息?_Index Cooperative

?币市就是一个,有的地方一定有利益所在。美国调查四大交易所是否涉嫌价格操纵,韩国加密货币交易所Coinrail遭黑客攻击,损失超4000万美元,币市又来大利空,随着比特币、区块链被大众熟.

MAC:杨灵盘币:10.24今日行情分析以及详细的操作建议_比特币官方

比特币在21日最高涨到13200承压回落,目前一直在高位震荡,日线图中,昨日比特币收取一根小阴线打破六连阳的格局,布林带开口向上,币价紧贴上轨运行,各均线排列向上发散.

EOS:巴德言币:10.24大饼多头依旧强劲,晚间维持高空低多操作!_ETH

各位老铁大家好,我是你们的朋友巴德。跟着我的客户都是做了很久的,不是我带他们收获了多少,而是我用心在指导,毫无保留的教技术,经常熬夜盯盘。深夜告知客户出场或进单.