以太坊的挖矿机制主要依靠Ethash算法,也称作Dashimoto。这种算法的设计目标是抵抗ASIC矿机,并且使得轻客户端能够验证区块的真实性。Ethash算法的特点在于其对内存大小和带宽的高度依赖,而非CPU性能,这限制了大规模共享内存芯片在挖矿效率上的提升。
Risk and Disclaimer:The content shared by the author represents only their personal views and does not reflect the position of CoinWorldNet (币界网). CoinWorldNet does not guarantee the truthfulness, accuracy, or originality of the content. This article does not constitute an offer, solicitation, invitation, recommendation, or advice to buy or sell any investment products or make any investment decisions
Comments(2)
Popular
Latest
以太坊的挖矿机制主要依靠Ethash算法,也称作Dashimoto。这种算法的设计目标是抵抗ASIC矿机,并且使得轻客户端能够验证区块的真实性。Ethash算法的特点在于其对内存大小和带宽的高度依赖,而非CPU性能,这限制了大规模共享内存芯片在挖矿效率上的提升。在Dashimoto的基本流程中,首先计算出一个种子(seed),这个种子的计算只依赖于当前块的信息。接着使用这个种子生成32MB的伪随机数据集,称为cache,并且轻客户端需要保存cache。基于cache再生成一个1GB大小的数据集,称为the DAG。这个数据集中的每一个元素都只依赖cache中的某几个元素,因此只要cache就可以快速计算出DAG中指定位置的元素。挖矿过程是随机选择DAG中的元素进行hash,并且验证的过程也是一样,只不过不是从DAG里面选择元素,而是基于cache计算得到指定位置的元素并验证。由于cache很小,而且指定位置的DAG元素很容易计算,因此验证过程只需要普通CPU和普通内存即可完成。cache和DAG每一个周期更新一次,一个周期的长度是1000个块。这意味着这1000个块产生的cache和DAG是完全一样的,挖矿的主要工作在于从DAG中读取数据,而不是更新cache和DAG。DAG的大小随时间的推移线性增长,从1GB开始,每年增加大约7GB。
02-09 00:13
Reply
34
I’m
02-09 02:47
Reply
0
edit
comment2
collection
like172
share