区块链基础知识7-比特币挖矿原理/工作量证明

这篇具有很好参考价值的文章主要介绍了区块链基础知识7-比特币挖矿原理/工作量证明。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在前面《区块链基础知识6-区块链记账原理》我们了解到记账是把交易记录、交易时间、账本序号、上一个Hash值等信息计算Hash打包的过程。 我们知道所有的计算和存贮是需要消耗计算机资源的,既然要付出成本,那节点为什么还要参与记账呢?在中本聪(比特币之父)的设计里,完成记账的节点可以获得系统给与的一定数量的比特币奖励,这个奖励的过程也就是比特币的发行过程,因此大家形象的把记账称为“挖矿”,本文将详细讨论这个过程。

记账工作

由于记账是有奖励的,每次记账都可以给自己凭空增加一定数量的个比特币(当前是12.5比特币,博文写作时每个比特币是4万人民币以上,大家可以算算多少钱),因此就出现大家争相记账,大家一起记账就会引起问题:出现记账不一致的问题,比特币系统引入工作量证明来解决这个问题,规则如下:

  • 一段时间内(10分钟左右,具体时间会与密码学难题难度相互影响)只有一人可以记账成功
  • 通过解决密码学难题(即工作量证明)竞争获得唯一记账权
  • 其他节点复制记账结果

不过在进行工作量证明之前,记账节点会做进行如下准备工作:

  • 收集广播中还没有被记录账本的原始交易信息
  • 检查每个交易信息中付款地址有没有足够的余额
  • 验证交易是否有正确的签名
  • 把验证通过的交易信息进行打包记录
  • 添加一个奖励交易:给自己的地址增加12.5比特币

如果节点争夺记账权成功的话,就可以得到12.5比特币的奖励。

工作量证明

《区块链基础知识6-区块链记账原理》我们了解到,每次记账的时候会把上一个块的Hash值和当前的账页信息一起作为原始信息进行Hash。
如果仅仅是这样,显然每个人都可以很轻松的完成记账。
为了保证10分钟左右只有一个人可以记账,就必须要提高记账的难度,使得Hash的结果必须以若干个0开头。同时为了满足这个条件,在进行Hash时引入一个随机数变量。

用伪代码表示一下:

Hash(上一个Hash值,交易记录集) = 456635BCD
Hash(上一个Hash值,交易记录集,随机数) = 0000aFD635BCD

我们知道改变Hash的原始信息的任何一部分,Hash值也会随之不断的变化,因此在运算Hash时,不断的改变随机数的值,总可以找到一个随机数使的Hash的结果以若干个0开头(下文把这个过程称为猜谜),率先找到随机数的节点就获得此次记账的唯一记账权。

计算量分析

Hash值是由数字和大小写字母构成的字符串,每一位有62种可能性(可能为26个大写字母、26个小写字母,10个数字中任一个),假设任何一个字符出现的概率是均等的,那么第一位为0的概率是1/62(其他位出现什么字符先不管),理论上需要尝试62次Hash运算才会出现一次第一位为0的情况,如果前两2位为0,就得尝试62的平方次Hash运算,以n个0开头就需要尝试62的n次方次运算。我们结合当前实际区块#493050信息来看看:

区块链基础知识7-比特币挖矿原理/工作量证明,杂谈尬聊,区块链,数据挖掘,工作证明,比特币

我们可以看到Hash值以18个0开头,理论上需要尝试62的18次方次,这个数是非常非常巨大的,我已经算不清楚了,应该是亿亿级别以上了。如此大的计算量需要投入大量的计算设备、电力等,
目前应该没有单矿工独立参与挖矿了,基本都是由矿工联合起来组成矿池进行挖矿(矿池里的矿工按算力百分比来分收益)。

从经济的角度讲,只有挖矿还有收益(比特币价格不断上涨也让收益变大),就会有新的矿工加入,从而加剧竞争,提高算力难度,挖矿就需要耗费更多的运算和电力,相互作用引起最终成本会接近收益。

验证

在节点成功找到满足的Hash值之后,会马上对全网进行广播打包区块,网络的节点收到广播打包区块,会立刻对其进行验证。

如果验证通过,则表明已经有节点成功挖出区块,自己就不再竞争当前区块打包,而是选择接受这个区块,记录到自己的账本中,然后进行下一个区块的竞争猜谜。
网络中只有最快解谜的区块,才会添加的账本中,其他的节点进行复制,这样就保证了整个账本的唯一性。

假如节点有任何的作弊行为,都会导致网络的节点验证不通过,直接丢弃其打包的区块,这个区块就无法记录到总账本中,作弊的节点耗费的成本就白费了,因此在巨大的挖矿成本下,也使得矿工自觉自愿的遵守比特币系统的共识协议,也就确保了整个系统的安全。

说明

矿工的收益其实不仅仅包含新发行的12.5比特币奖励,同时还有交易费收益本文忽略一些细节是为了让主干更清晰。有兴趣的朋友可以随时评论留言,相互学习文章来源地址https://www.toymoban.com/news/detail-861250.html

到了这里,关于区块链基础知识7-比特币挖矿原理/工作量证明的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [区块链]——基础知识

    《区块链技术发展现状与展望》一文给出如下定义: 狭义来讲, 区块链是一种按照时间顺序将数据区块以链条的方式组合成特定数据结构, 并以密码学方式保证的不可篡改和不可伪造的去中心化共享总账(Decentralized shared ledger),能够安全存储简单的、有先后关系的、能在系

    2023年04月09日
    浏览(23)
  • 区块链基础知识01

    区块链:区块链技术是一种高级数据库机制,允许在企业网络中透明地共享信息。区块链数据库将数据存储在区块中,而数据库则一起链接到一个链条中。数据在时间上是一致的,在没有网络共识的情况下,不能删除或修改链条。 即:首尾相连的数据结构,区块头中存放着前

    2024年03月15日
    浏览(29)
  • 区块链基础知识

    中文书名:区块链基础知识25讲 英文书名:Blockchain Basics A Non-Technical Introduction in 25 Steps 作者: [英]丹尼尔·德雷舍(Daniel Drescher) 翻译: 马丹 王扶桑 张初阳 出版社: 人民邮电出版社 区块链在不同的语境下,可能会有不同的含义。“区块链”可能的四种含义如下: 一种数

    2024年02月03日
    浏览(37)
  • 区块链基础知识——哈希函数

    哈希函数是一种数学函数,可根据输入的内容输出其对应的哈希值。散列函数的输入具有任意长度,但输出始终具有固定的长度。 散列算法的核心是一个数学函数,该散列函数构成散列算法的一部分,根据输入的数据块进行运算,得到的结果作为散列值。散列算法涉及多轮散

    2024年02月11日
    浏览(43)
  • 区块链入门--1.基础知识

    目录 区块链基本概念 1、什么是区块 2、什么是区块链 3、什么是公链、联盟链和私链 4、什么是交易 5、什么是智能合约 Hyperledger Fabric 基础知识 1、什么是 Hyperledger Fabric 2、什么是联盟 3、什么是组织 4、什么是节点 5、什么是通道 6、什么是链码 Block  ,每个区块记录着上一

    2024年04月24日
    浏览(34)
  • 番外篇-区块链基础知识入门

    今天聊聊番外篇之Web3、区块链的基础知识~ Hash算法 将输入的数据映射为一个固定长度的字符串 字符串是64长度,16进制(2^4),4 * 64 = 256 【SHA256】hash演示:https://andersbrownworth.com/blockchain/hash 区块 记录数据的一个section 问题:“挖矿”是在做什么(计算随机数是多少) 演示:

    2024年02月02日
    浏览(32)
  • 区块链密码学:基础知识、应用与未来发展

    区块链技术,作为一种分布式、去中心化的数据管理方式,密码学在其安全性和可靠性方面发挥着至关重要的作用。本文将详细介绍区块链密码学的基础知识、应用以及未来发展趋势。 区块链密码学是区块链技术的核心组成部分,用于确保交易的安全性、隐私性和可验证性。

    2024年02月05日
    浏览(32)
  • 区块链和WEB3.0有哪些基础知识呢

    常用区块链基础知识包括: (1) 区块链概念 :区块链是一种 去中心化 的 分布式 账本技术,它通过加密算法和共识机制保证了数据的 安全 性和 不可篡改 性。区块链中的每一个区块都包含了前一个区块的哈希值,形成了一个不可篡改的链式结构。 (2) 共识机制 :区块链

    2024年02月14日
    浏览(31)
  • 0基础了解区块链技术相关的知识(无代码纯文字)

    新进入一个医疗项目的公司,据说要上区块链。 本身个人对区块链的了解仅限于比特币之类的( 违法fz )等。 两眼一抹黑的开始从0了解区块链。 区块链是一种基于分布式数据库的新型技术,它的最重要特点是去中心化。它通过密码学、哈希函数、共识机制等技术,将多个

    2024年02月12日
    浏览(21)
  • NFT 的基础知识:区块链上的数字艺术和收藏品

    在这张信息图中,团队探讨了 NFT 的核心基础知识,我们试图以初学者可以理解的方式解释这个概念。要更深入地了解 NFT 的功能细节,请务必查看我们关于NFT如何工作的独家专题文章。 2021 年上半年,不可替代代币 (NFT) 的销售额为 25 亿美元,高于一年前的 1370 万美元 NFT 的

    2024年01月21日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包