亿泰坊的挖矿原理是什么?

123456789101121314151617/**首先,使用创建区块链时的一些配置和consensusengineconsensus.engine等参数生成一个挖掘器,然后让矿工注册一个中央处理器

Bitget下载

注册下载Bitget下载,邀请好友,即有机会赢取 3,000 USDT

APP下载   官网注册

以太坊的共识机制是PoW(ProofofWorkWorkloadProvingMechanism),使用的算法是Ethash,是Dagger-Hashimoto算法的改进版本。流程如下

1。对于每个块,先计算一个种子,这个种子只与当前块的信息有关;然后根据种子[XY002]生成一个32M的随机数据集(缓存)。

2。根据缓存生成大小为1GB的数据集DAG(有向无环图),这是一个完整的搜索空间。挖掘的过程是从DAG中随机选取元素(类似于比特币挖掘中寻找合适的Nonce)然后哈希。,可以从Cache中快速计算出DAG指定位置的元素,然后哈希验证

要求Cache和DAG定期更新,每1000块更新一次,并规定DAG的大小随时间线性增加,从1G开始。年增长率在7G左右。

为了更好的理解这部分。我们可以简单看一下go-ethereum的代码

。1.调用miner.go中的New方法来生成一个挖掘器。

123456789101121314151617

/**首先,使用创建区块链时的一些配置和consensusengineconsensus.engine等参数生成一个挖掘器,然后让矿工注册一个中央处理器运算引擎,同时通过更新来监听同步状态并更新挖矿状态**/funcNew(eth后端,配置*参数.多路复用器链配置*事件TypeMux,引擎一致性.Engine)*Miner{Miner:=Miner{eth:eth,mux:mux,engine:engine,worker:newWorker(config,Engine,common.地址{},eth,mux),canStart:1,}miner.注册(NewCpuAgent(eth.区块链(),引擎))gominer.update()returnminer}

更新方法有一点需要注意:

1。

关键词: dag engine 引擎
本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 931614094@qq.com 举报,一经查实,本站将立刻删除。
亿泰坊的挖矿原理是什么?文档下载: PDF DOC TXT