比特币在Block的生成过程中使用了POW机制
发布时间:2019/9/2 11:16:16 访问次数:2517
先来理解下比特币挖矿工作量证明。
一个挖矿的过程是计算一个随机数,谁先算出这个符合条件的数,这个条件叫“目标值”,就成功挖到一个区块,就可以拿到区块奖励和交易手续费了。考虑到交易安全性,比特币系统设定全网平均10分钟就会有人算对一次,如果这个平均时间比10分钟快,那系统就会加大计算的难度,反之就减少。
为了衡量挖矿出块时间,系统定义了一个叫“难度”的值。“难度值”和“目标值”是可以通过计算公式相互计算的。
为了给出弱区块的定义,我们先将比特币通过POW挖出符合“目标值”的区块叫“强区块”。请记住“目标值”和“强区块”这两个概念。
比特币挖矿采用工作量证明机制,是什么意思呢?
工作量证明(Proof of Work,简称POW)是共识机制的一种,可简单理解为一份证明,证明你做过一定量的工作,即我通过查看工作结果就能知道你完成了指定量的工作。
比特币挖矿采用的就是工作量证明机制,比特币网络通过调节计算难度,保证每次竞争记账都需要全网矿工计算约10分钟,才能算出一个满足条件的结果。该结果即“区块头”里包含的随机数。
工作量证明是指,如果矿工找到了一个满足条件的结果,我们便可以认为全网矿工完成了指定难度系数的工作量。获得记账权的几率取决于矿工工作量占比全网的比例,如果占比30%,那么获得记账权的几率也是30%。所以提高工作量占比才能提高竞争力,才能获得更多新诞生的比特币!
这种“弱区块”的出块速度就要比“强区块”快很多,比如快4倍,或10倍,依据系统设定的“低难度值”是原“难度值”的多少而定。
弱区块和强区块类似,也包含类似的数据结构,也有前散列值、随机数、根散列值、coinbase信息,和大量的交易交易。这种弱区块书写成“Δ-区块”。
由弱区块组成的链就称为子链,这是依附在强区块链上的。当有矿工挖到一个强区块时,子链就关闭了。然后系统再开启一个子链,等着依附到下一个强区块上。
当有矿工挖到强区块后,依附在上面的子链就会被打包进强区块。关闭子链后,这个强区块的具体数据结构应该和现有的区块数据结构完全一样。
工作证明(Proof Of Work,简称POW),顾名思义,即工作量的证明。通常来说只能从结果证明,因为监测工作过程通常是繁琐与低效的。
比特币在Block的生成过程中使用了POW机制,一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值。要得到合理的Block Hash需要经过大量尝试计算,计算时间取决于机器的哈希运算速度。当某个节点提供出一个合理的Block Hash值,说明该节点确实经过了大量的尝试计算,当然,并不能得出计算次数的绝对值,因为寻找合理hash是一个概率事件。当节点拥有占全网n%的算力时,该节点即有n/100的概率找到Block
Hash。
工作证明机制看似很神秘,其实在社会中的应用非常广泛。例如,毕业证、学位证等证书,就是工作证明,拥有证书即表明你在过去投入了学习与工作。生活大部分事情都是通过结果来判断的。
弱区块没有区块奖励,只有强区块才有。但弱区块有交易手续费,所以矿工也可以通过挖弱区块获得收益。
挖到强区块的矿工,是无法拿到弱区块里的交易手续费的。每一个弱区块被挖出来后,该矿工会在弱区块里构建一笔“弱coinbase交易tx”,将该弱区块里的所有矿工费收集在这笔“tx”里。但这笔tx在强区块被挖出前是无效的,只有等到强区块被挖出后,子链被关闭时,由强区块矿工来分配所有的交易手续费。
这多考验矿工人性,如果没有硬分叉,我很难相信弱区块能够形成协议共识。虽然Bitcoin unlimited的开发者始终认为弱区块是不需要硬分叉来部署。不过,这只是理论上不需要,工程上最好是设计成硬分叉。
比特币牵涉到的利益关系极其复杂,对比特币协议的进化需要多种领域的知识,包括经济学、计算机科学、数学 ,甚至现在还牵扯进来了各种政治类智慧。
免责声明:
凡标注“来源:互联网转载”的文章均来自其他媒体,转载的目的在于传递更多信息,并不代表本站观点,图片来源于网络收集整理,版权归原作者所有;如果发现本站有涉嫌抄袭,侵权内容,请发送邮件:602684288@qq举报,并提供相关证据,一经查实,立刻删除涉嫌侵权内容。
先来理解下比特币挖矿工作量证明。
一个挖矿的过程是计算一个随机数,谁先算出这个符合条件的数,这个条件叫“目标值”,就成功挖到一个区块,就可以拿到区块奖励和交易手续费了。考虑到交易安全性,比特币系统设定全网平均10分钟就会有人算对一次,如果这个平均时间比10分钟快,那系统就会加大计算的难度,反之就减少。
为了衡量挖矿出块时间,系统定义了一个叫“难度”的值。“难度值”和“目标值”是可以通过计算公式相互计算的。
为了给出弱区块的定义,我们先将比特币通过POW挖出符合“目标值”的区块叫“强区块”。请记住“目标值”和“强区块”这两个概念。
比特币挖矿采用工作量证明机制,是什么意思呢?
工作量证明(Proof of Work,简称POW)是共识机制的一种,可简单理解为一份证明,证明你做过一定量的工作,即我通过查看工作结果就能知道你完成了指定量的工作。
比特币挖矿采用的就是工作量证明机制,比特币网络通过调节计算难度,保证每次竞争记账都需要全网矿工计算约10分钟,才能算出一个满足条件的结果。该结果即“区块头”里包含的随机数。
工作量证明是指,如果矿工找到了一个满足条件的结果,我们便可以认为全网矿工完成了指定难度系数的工作量。获得记账权的几率取决于矿工工作量占比全网的比例,如果占比30%,那么获得记账权的几率也是30%。所以提高工作量占比才能提高竞争力,才能获得更多新诞生的比特币!
这种“弱区块”的出块速度就要比“强区块”快很多,比如快4倍,或10倍,依据系统设定的“低难度值”是原“难度值”的多少而定。
弱区块和强区块类似,也包含类似的数据结构,也有前散列值、随机数、根散列值、coinbase信息,和大量的交易交易。这种弱区块书写成“Δ-区块”。
由弱区块组成的链就称为子链,这是依附在强区块链上的。当有矿工挖到一个强区块时,子链就关闭了。然后系统再开启一个子链,等着依附到下一个强区块上。
当有矿工挖到强区块后,依附在上面的子链就会被打包进强区块。关闭子链后,这个强区块的具体数据结构应该和现有的区块数据结构完全一样。
工作证明(Proof Of Work,简称POW),顾名思义,即工作量的证明。通常来说只能从结果证明,因为监测工作过程通常是繁琐与低效的。
比特币在Block的生成过程中使用了POW机制,一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值。要得到合理的Block Hash需要经过大量尝试计算,计算时间取决于机器的哈希运算速度。当某个节点提供出一个合理的Block Hash值,说明该节点确实经过了大量的尝试计算,当然,并不能得出计算次数的绝对值,因为寻找合理hash是一个概率事件。当节点拥有占全网n%的算力时,该节点即有n/100的概率找到Block
Hash。
工作证明机制看似很神秘,其实在社会中的应用非常广泛。例如,毕业证、学位证等证书,就是工作证明,拥有证书即表明你在过去投入了学习与工作。生活大部分事情都是通过结果来判断的。
弱区块没有区块奖励,只有强区块才有。但弱区块有交易手续费,所以矿工也可以通过挖弱区块获得收益。
挖到强区块的矿工,是无法拿到弱区块里的交易手续费的。每一个弱区块被挖出来后,该矿工会在弱区块里构建一笔“弱coinbase交易tx”,将该弱区块里的所有矿工费收集在这笔“tx”里。但这笔tx在强区块被挖出前是无效的,只有等到强区块被挖出后,子链被关闭时,由强区块矿工来分配所有的交易手续费。
这多考验矿工人性,如果没有硬分叉,我很难相信弱区块能够形成协议共识。虽然Bitcoin unlimited的开发者始终认为弱区块是不需要硬分叉来部署。不过,这只是理论上不需要,工程上最好是设计成硬分叉。
比特币牵涉到的利益关系极其复杂,对比特币协议的进化需要多种领域的知识,包括经济学、计算机科学、数学 ,甚至现在还牵扯进来了各种政治类智慧。
免责声明:
凡标注“来源:互联网转载”的文章均来自其他媒体,转载的目的在于传递更多信息,并不代表本站观点,图片来源于网络收集整理,版权归原作者所有;如果发现本站有涉嫌抄袭,侵权内容,请发送邮件:602684288@qq举报,并提供相关证据,一经查实,立刻删除涉嫌侵权内容。
上一篇:光纤通道——SSD存储之王