Bitcoin 中的挖矿算法(5) 难度值举例说明
生活随笔
收集整理的这篇文章主要介绍了
Bitcoin 中的挖矿算法(5) 难度值举例说明
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
1. 区块277,316的nBits的值为 0x1903a30c(10进制为419,668,748)
2. 计算hash过程
step1. 准备数据
step2. 转换为16进制
00000002 0000000000000002a7bbd25a417c0374cc55261021e8a9ca74442b01284f0569 c91c008c26e50763e9f548bb8b2fc323735f73577effbc55502c51eb4cc7cf2e 52be093a 1903a30c 371c2688step3. 从big-endian转化为little-endian
02000000 69054f28012b4474caa9e821102655cc74037c415ad2bba70200000000000000 2ecfc74ceb512c5055bcff7e57735f7323c32f8bbb48f5e96307e5268c001cc9 3a09be52 0ca30319 88261c37step4 拼接字符串,开始验证
import binascii from hashlib import sha256 as s k = '0200000069054f28012b4474caa9e821102655cc74037c415ad2bba702000000000000002ecfc74ceb512c5055bcff7e57735f7323c32f8bbb48f5e96307e5268c001cc93a09be520ca3031988261c37' hk = binascii.unhexlify(k) res = binascii.hexlify(s(s(hk).digest()).digest()[::-1])for nonce in range(0, 2**32):block_header = version + previous_block_hash + merkle_root + time + target_bits + nonceif sha256(sha256(block_header)) < target_bits:breakstep5:结果为
Hash
0000000000000001b6b9a13b095e96db41c4a928b97ef2d944a9b31b2cc7bdc4(前面15个0,满足target 要求)
3. 算力
算力指的是哈希算法每秒运算次数,单位为Hash/s
一般算力大概为TH/s
2009年为MH/s.
总结
以上是生活随笔为你收集整理的Bitcoin 中的挖矿算法(5) 难度值举例说明的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Bitcoin 中的挖矿算法(4) 产生
- 下一篇: Bitcoin 中的挖矿算法(6) 难度