区块链启示录:中本聪文集二:比特币的工作原理(下)

溢流眼泪 溢流眼泪     2023-01-31     495

关键词:

02-比特币的工作原理

哈希函数——数字指纹

  • 加密哈希是一种执行简单任务的复杂算法,可以将任意长度的文字转化成固定长度的随机字符串。哈希函数的输出结果通常成为信息摘要,被视为文件的指纹。可以看到,只更改了下面输入的一个字符,输出结果便会看起来完全不同。
  • 生成摘要很容易,但是不可能从摘要中推导出原式文本。 于是,哈希函数是实现比特币的理想选择。矿工寻找问题答案时常常需要数百万次哈希计算才能找到正确的模式,但其他矿工验证答案的正确性则只需要一次哈希计算。
  • 理想的哈希函数有四个主要属性:
    1. 计算任何给定消息的哈希值要简单
    2. 不可能依据给定的哈希值生成消息
    3. 不可能只修改消息而保持哈希值不变
    4. 不可能找到具有相同哈希值的两条消息
  • 用户要对比特币系统的文档或文本进行数字签名,哈希函数是这个过程的一部分。
  • 比特币采用的是用于工作量证明的 S H A − 256 SHA-256 SHA256 以及用户比特币地址的 R I P E M D − 160 RIPEMD-160 RIPEMD160。哈希函数是工作量证明的核心。

矿工的工作量证明

  • 每个矿工在任何时刻都以解答难题的方式积极从事生成下一个即将加入区块链的区块工作,这就是工作量证明。第一个完成工作量证明的矿工获得的奖励包括新筑的比特币以及产出区块交易费的总和。当比特币都铸造完毕后,矿工将仅以交易费作为奖励。
  • 因此,可以认为工作量证明是比特币矿工之间的竞赛,竞相发现将要生成区块的具有某种特征的 S H A − 256 SHA-256 SHA256 哈希值。矿工的目标就是通过生成符合特征的哈希值来解答问题。
  • 为了简单起见,假设输出哈希值的取值范围为 0 ∼ 1 e 6 0\\sim 1e6 01e6,第一个算出小于 1 e 4 1e4 1e4 哈希值的矿工胜出。这里 1 e 4 1e4 1e4 就是阈值,每个比特币区块都含有一个数字,其唯一目的就是帮助达到阈值。这个数字被称为临时数( n o n c e nonce nonce)。矿工不断增加临时数的值,直到区块的哈希值小于阈值。由于不同矿工的区块有不同的信息,因此相同的临时数会产生不同的哈希值。每台矿工计算机上运行的比特币软件控制着比特币协议不断调整问题的难度,确保大约每 10 10 10 分钟才会有一个矿工解答完问题。
  • 比特币系统的这一要求导致了一场硬件竞赛,所有人都想创造出每秒能计算出更多哈希值的硬件。如果难度级别确定,更多的矿工加入会让每秒计算出更多的哈希值。一定区块过后,比特币协议评估区块产生的速度来加大或者减小难度级别。
  • 一旦矿工发现能产生正确哈希值的临时数,就将该区块广播出去,其他的矿工在验证后接纳它,并开始着手下一个区块。

矿工共识与孤块

  • 比特币的正常运行很大程度上依赖于共识。当两个矿工几乎同一时间完成区块时,共识开始发挥作用。这时,两个区块会被其他所有矿工接收和保留,但是矿工们会在先收到的那个区块的基础上计算下一个区块。
  • 这时,两个区块中哪一个会成为真正区块链的一部分取决于下一个区块解答得有多快,以及解出下一个区块的矿工先收到哪一位矿工的区块,此节点上存在着两个版本的区块链。快的成为正式链,另一个成为孤块。

比特币的工作原理

  • 前面讨论了比特币的工作原理,但是并没有阐明为什么要这么做。我们要先理解以下概念:
    • 比特币是开源软件
    • 比特币软件制定了矿工和钱包客户端必须遵从的操作指令
    • 比特币软件定义和运行了一套通信协议
    • 区块链的分布式文件共享容许开放记账

比特币的影响

  • 作为一种货币系统,比特币的影响巨大。人们通过它可以进行全球汇款,可以网上购物和网上捐赠。

03-中本聪的论文

论文地址为:Bitcoin: A Peer-to-Peer Electronic Cash System

刘教链比特币原理1-2比特币的特点和使用

...币互联网开启新纪元第1节五分钟告诉你什么是比特币和区块链第2节比特币的特点和使用第3节区块链在比特币中发挥的作用本节音频:学习笔记: 查看详情

动画《区块链100问》第5集:谁是中本聪?

...白皮书,并于2009年1月3日首次挖出比特币,谁能动用创世区块里的比特币谁便是中本聪本人,所以谁是中本聪呢?  历史上出现过很多个“中本聪”:  2013年,有人爆料在数学领域有过卓越贡献的望月新一就是中本聪,但... 查看详情

什么是区块链?

一、什么是区块链?说到区块链,就不得不说比特币。2008年底,比特币之父中本聪发表了一个关于他研究的电子现金系统的九页白皮书,2009年初,中本聪在位于芬兰赫尔辛基的一个小型服务器上挖出了比特币的第一个区块—... 查看详情

刘教链比特币原理10-2中本聪的总结和遁世

...第十章“深藏功名拂衣去密码货币续传奇”的第二小节“中本聪的总结和遁世”。本章目录:第十章深藏功名拂衣去密码货币续传奇第1节比特币的稀缺性第2节中本聪的总结和遁世第3节比特币是自我实现的预言本节音频:... 查看详情

刘教链比特币原理10-2中本聪的总结和遁世

...第十章“深藏功名拂衣去密码货币续传奇”的第二小节“中本聪的总结和遁世”。本章目录:第十章深藏功名拂衣去密码货币续传奇第1节比特币的稀缺性第2节中本聪的总结和遁世第3节比特币是自我实现的预言本节音频:... 查看详情

刘教链比特币原理5-3拜占庭问题和中本聪共识

本节课我们开始学习第五章“工作量证明安天下中本聪共识定乾坤”的第三小节“拜占庭问题和中本聪共识”。本章目录:第五章工作量证明安天下中本聪共识定乾坤第1节工作量证明的难度有多高第2节能量铸就比特币价值... 查看详情

区块链(未完)

区块链(Blockchain)是比特币的一个重要概念,区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。该概念在中本聪的白... 查看详情

刘教链比特币原理5-2能量铸就比特币价值

本节课我们开始学习第五章“工作量证明安天下中本聪共识定乾坤”的第二小节“能量铸就比特币价值”。本章目录:第五章工作量证明安天下中本聪共识定乾坤第1节工作量证明的难度有多高第2节能量铸就比特币价值第3节... 查看详情

刘教链比特币原理1-3区块链在比特币中发挥的作用

...章“中本聪发明比特币互联网开启新纪元”的第三小节“区块链在比特币中发挥的作用”。本章目录:第一章中本聪发明比特币互联网开启新纪元第1节五分钟告诉你什么是比特币和区块链第2节比特币的特点和使用第3节区块... 查看详情

小谈区块链及比特币

特斯拉前一阵的投资比特币,支持比特币支付政策大大刺激了一波,但是后续大赚一波以后宣布撤资。然后国家发布不允许使用虚拟货币交易给比特币最沉重的一击。随着比特币的沉入低谷,无数人对比特币的热情渐... 查看详情

小谈区块链及比特币

特斯拉前一阵的投资比特币,支持比特币支付政策大大刺激了一波,但是后续大赚一波以后宣布撤资。然后国家发布不允许使用虚拟货币交易给比特币最沉重的一击。随着比特币的沉入低谷,无数人对比特币的热情渐... 查看详情

区块链基本原理(代码片段)

区块链的起源创始者介绍姓名:中本聪(英语:SatoshiNakamoto),自称日裔美国人,日本媒体常译为中本哲史,此名是比特币协议及其相关软件Bitcoin-Qt的创造者,但真实身份未知。中本聪于2008年发表... 查看详情

数字货币与区块链

...了自己开发的比特币客户端,通过挖矿生成了比特币区块链的第一个块,并由此获得50个比特币奖励;一年后,中本聪向另一个人的账 查看详情

《区块链100问》第61集:扩容是什么?

...比特币诞生之初,比特币的创始人中本聪并没有特意限制区块的大小,区块最大可以达到32MB。  当时,平均每个区块大小为1-2KB,有人认为区块链上限过高容易造成计算资源的浪费,还容易发生DDOS攻击。因此,为了保证比特... 查看详情

比特币区块链的局限

很多人说比特币是目前区块链最成功的应用,这么说有一定道理,但更贴合实际的说法是:由于在创造比特币时,并没有现成的、可以支持比特币系统运行的底层技术架构,所以中本聪创造了区块链。也就是说,中本聪创造区块... 查看详情

动画《区块链100问》第4集:第一个比特币诞生啦!

...于芬兰赫尔辛基的一个小型服务器上,亲手创建了第一个区块——即比特币的创世区块(GenesisBlock),并获得了第一笔50枚比特币的奖励,第一个比特币就此问世。  当时正处于08年金融危机,为了纪念比特币的诞生,中本聪... 查看详情

整理:人们对区块链的认知几个主要阶段

2008~2010年:比特币的诞生与发展作为具有突破性意义的电子货币,比特币的出现源于客观经济的推动,也与国际货币体系的内在缺陷息息相关。比特币的诞生标志着人类社会的货币体系向前迈出了一大步。比特币的发展史最早可... 查看详情

区块链教程之bitcoin原理简介

区块链(Blockchain)技术源于Bitcoin。在比特币中,为了保证每笔交易可信并不可篡改,中本聪发明了区块链,它通过后一个区块对前一个区块的引用,并以加密技术保证了区块链不可修改。随着比特币的逐渐发展,人们发现区块... 查看详情