04比特币及区块链常见问题-挖矿相关

比特币挖矿相关问题

1、比特币节点

  • 运行区块链软件的计算机就是一一个节点
    · 每个比特币钱包都是一一个节点
  • 全节点
    · 拥有完整区块链账本的节点叫做全节点,负责比特币转账交易的广播和验证
    · 同步整个区块链并对交易做验证,同时中继区块的在网络上的传播
  • 轻节点
    · 不挖矿,只进行比特币交易的普通节点
  • 挖矿节点
    · 带挖矿功能的全节点
    · 转账交易发生后由所有节点共同广播至全网,挖矿节点验证该交减后会记录至区块链账本
    · 挖矿节点一般就是记账节点
  • 因为不需要安装全节点也可以进行比特币转账,所以比特币全节点个数只占全部节点数的一-小部分。目前比特币网络中大约有500万节点,其中全节点有1万多。

2、 挖矿、矿工、矿机、矿场、矿池:

  • 挖矿是在争取记账权,将一-段时间内比特币系统中发生的交易进行确认,并记录在区块链上的过程。
    · 挖矿实际就是矿工之间比拼算力,拥有较大算力的矿工挖到比特币的概率更大
    · 挖矿需要矿机、比特币地址、挖矿软件
    · 比特币挖矿软件,分配好每台矿机的任务就可以挖矿了。每种代币的算法不同,所需的矿机各不相同。

  • 矿工:从事虚拟货币挖掘的人就是比特币矿工
    · 矿工的主要工作是交易确认和数据打包。
    · 实际挖矿不需要矿工实际动手,由电脑执行特定运算,只要保证电力供应和网络连接就可以了。

  • 矿机:矿机就是通过大量计算来争夺记账权的专业设备,通过争夺记账权获得比特币奖励。
    · 矿机由挖矿芯片、散热片、风扇组成
    · 只执行单一的计算程序,耗电量很大

  • 矿场:矿机集中起来形成矿场和矿池
    · 矿场只负责计算。

  • 矿池:参与挖矿的人数越来越多,全网算力上涨,挖矿难度持续上涨,单个设备或少量算力都是很难再挖到比特币,这时矿池诞生了。很多矿工加入矿池一起挖矿。
    · 矿池突破地理位置限制,将分散在全球的矿工及矿场的算力连接到一起挖矿。
    · 矿池负责信息打包,接入到矿池的矿场负责计算,竞争记账权。
    · 挖到比特币后,矿池根据矿场的算力占比分配收益,以此保证更稳定的投入产出
    · 矿池算力越大,挖到比特币的概率就更高。
    · 全球算力较大的矿池

    鱼池F2Pool
    蚁池AntPool
    国池btcc.com、
    币网bw.com、
    BitFury

屏幕快照 2018-10-18 下午5.46.44.png

3、 挖矿设备

  • CPU挖矿
  • GPU挖矿 :2010年9月18日,第一张显卡挖矿软件发布,一张显卡=几十张cpu
  • 专业矿机挖矿:蚂蚁矿机=30000张GPU
  • 矿场挖矿
  • 矿池挖矿

4、 算力

  • 计算能力。目前主流的矿机为14T左右的计算量级。即一台矿机就能每秒做至少1.4* 10的13次方次hash碰撞。一台14T的矿机就有14T的算力。

5、哈希算法

  • Hash算法是现代密码体系中的一一个重要组成部分,主要用于信息安全领域中加密算法。

  • Hash算法是一种只能加密不能解密的算法,可以将任意长度的信息转成杂乱的固定长度的字符串,叫做Hash值,又称"数字摘要”、 “消息摘要” (Message Digest)或“杂凑字符串”.也可以说,hash就是找到一种数据内容和数据存放地址之间的映射关系。

  • 由于非对称算法的运算速度较慢,所以在数字签名协议中,哈希函数扮演了一个重要的角色而被用于数字签名。

  • 著名的hash算法有MD5和SHA-1 (Secure Hash Algorithm,安全Hash算法) ,是应用最广泛的Hash算法,而它们都是以MD4为基础设计的。由于MD5及SHA-1的安全受到质疑,比特币系统中使用SHA 256。

  • 哈希算法具有以下两个特点:
    1、输入值只要改变-一点,输出的hash值会天差地别。因此只有完全一样的输入值才 能达到完全一样的输出值;
    2、输入值和输出值之间没有规律,所以不能通过输出值反推出输入值。

6、难度、难度目标、难度重定

  • 难度Difficulty:

    • 整个网络会通过调整“难度”这个变量来控制生成工作量证明所需要的计算力。

    • 随着难度增加,矿工通常在循环便利4亿次随机数值后仍未找到区块,则会启用超额随机数。

  • 难度目标Bits:

    • 使整个网络的计算力大致每10分钟产生一个区 块所需要的难度数值即为难度目标。Bits是用来存储难度目标的16进制数值。
      例如516532块:
    1. Bits = "Ox17502ab7" 
    2. coefficient系数,coefficient = 0x502ab7
    3. exponent指数,exponent  = 0x17
    4. target = coefficient * Math.pow(2, 8 * (exponent- 3))
    5.目标hash: 00000000000000000502ab700000000d6420b16625d309c4561290000000000
    6.实际hash: 0000000000000000041ff1cfc5f15f929c1a45d262f88e4db83680d90658c0c
    7. Bits值越小,难度越大,越难挖矿。
    

    .难度重定:

    · 全网中每新增2016个区块,全网难度将重新计算,该新难度值将依据前2016个区块的哈希算力而定。。按每10分钟产生一一个区块的速度计算,每产生2016个区块大约需要14天,也就是两周。

https://bitcoincash.blockexplorer.com

屏幕快照 2018-10-19 下午4.13.00.png

7、区块结构

  • 区块包括 : 区块头、区块体

  • 区块体记载了交易详情、交易计数器、区块大小

  • 区块头 : 是每个区块的前80个字节(640bits) 。包含6部分信息
    。Version版本号,占4字节
    。前一个区块的hash,占32字节
    。本区块所有交易的默克尔根,占32字节。
    。时间戳,占4字节

    · 比特币是P2P网络,没有中心服务器,每个节点的时间戳有可能不一样。因此比特币系统规定:
    --- · 1、新区块时间戳要大于前11个区块平均时间戳;
    --- · 2、不超过当前网络时间2个小时。

· 所以后一个区块时间戳比前一一个区块的时间戳反而小也是有可能的。
。难度目标Bits,占4字节
。随机数Nonce,占4字节。
--- ·Nonce是全网矿工计算当前区块hash值的核心参数。
--- ·Nonce的取值范围是0-2的32次方(42亿)

屏幕快照 2018-10-19 下午4.21.23.png
屏幕快照 2018-10-19 下午4.22.44.png
屏幕快照 2018-10-19 下午4.23.52.png
  • 进制小常识
    计算机存储单位就是: bit (位)、B (Byte, 字节)、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB、CB、XB。
    . 1字节= 8bits (2进制)
    . 1字节= 2bits (16进制)
    . 两位16进制数就是一一个字节

8、默克尔树及默克尔根

  • Merkle Tree,通常也被称作Hash Tree,顾名思义,就是存储hash值的一棵树;
  • 每条交易信息都具有hash值,将所有交易按照手续费高低排序,第一笔交易是挖矿所得的coinbase交易。挖矿系统将该区块能容纳下的所有交易信息打包,两两hash。如果出现奇数,则复制自身然后hash;
  • Coinbase交易是每个区块中的第一一个交易,该交易是由矿工创建的,交易内容是系统奖励给矿工的比特币;生成一棵完整的Merkle树需 要递归地对哈希节点对进行哈希,并将新生成的哈希节点插入到Merkle树中,直到只剩一一个哈希节点,该节点就是Merkle树的根;
  • 区块链的区块头必须包含区块中所有交易哈希计算得到的有效默克尔根。而该值也是挖矿非常重要的参数。
屏幕快照 2018-10-19 下午4.25.02.png

9、挖矿原理

  • 挖矿的过程就是重复计算区块头的hash,不断的修改随机数Nonce,只到小于难度目标Bits计算出来的hash。

  • 以125552区块为例,模拟-一一个验证挖矿的过程:
    。 将区块头中六个参数以十六进制的小端结尾方式连接在一起
    。 版本号: 0000001
 version = "01000000"

。 上一块的hash: 0000000000008a3a41 b85b8b29ad444def299fee21793cd8b9e567eab02cd81

pre_ hash =
"81cd02ab7e569e8bcd9317e2fe99f2de44d49ab2b8851ba4a30800000000000"

merkle根: 2b 12fcf1 b09288fcaff797d71e950e71ae42b91e8bdb2304758dfcffc2b620e3

merkle_ root =
"e320b6cfffc8d750423db8bleb942ae710e951ed797f7affc8892b0f1fc122b"。

时间戳: 1305998791 (May 22, 2011 1:26:31 AM,转成16进制为: 4dd7f5c7)

timeStamp = "c7f5d74d"。

难度目标Bits: 1a44b9f2

bits = "f2b9441a"

Nonce: 2504433986, 10进制转16进制为: 9546a142

nonce = "42a14695"

。 header_ hex = version + pre_ hash + merkle_ root + timeStamp + bits + nonce经过两次hash256算法以及转码,能得出以下结果:

1dbd981fe6985776b644b173a4d0385ddc1aa2a829688d1e000000000000000

。 将十六进制的大小端颠倒顺序,得出以下结果:

0000000000000001e8d6829a8a21adc5d38d0a473b144b6765798e61f98bd1d

。 高度为125552的区块目标hash为:

00000000000044b9f1ffff42e33d248e71469a7653bb7d6800000000000

。比对大小: 实际计算的hash值<目标hash,所以验证成功。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,125评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,293评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,054评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,077评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,096评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,062评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,988评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,817评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,266评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,486评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,646评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,375评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,974评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,621评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,642评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,538评论 2 352

推荐阅读更多精彩内容