• 微课视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
微课江湖
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 微课视频
  • 安全教程
  • 安全设置
  • 杀毒防毒
  • 病毒查杀
  • 脚本攻防
  • 入侵防御
  • 工具使用
  • 业界动态
  • Exploit
  • 漏洞分析
  • 加密解密
  • 手机安全
  • 区块链
您的位置:首页 > 网络安全 >区块链 > 区块链中的挖矿原理(POW算法)

区块链中的挖矿原理(POW算法)

作者:区块链饭桌 字体:[增加 减小] 来源:互联网 时间:2018-11-03

区块链饭桌向大家分享了区块链中的挖矿原理(POW算法),其中包含区块链挖矿,POW算法等知识点,遇到此问题的同学们可以参考下

大家如果要来学习区块链,比特币系统是我们一定会面对的第一个大的知识模块。为什么是这样?在昨天的分享中,我们已经提到了,比特币是区块链的前身实现,区块链是比特币的后期提炼,两者的逻辑关系决定了比特币是个绕不开的家伙;如果大家是初次接触比特币,当你想和别人交流的时候,面对的第一个概念可能就是挖矿。

那么问题来了?挖矿是什么意思?挖矿和比特币是什么关系?挖矿的原理是什么?等等。这些问题在我学习区块链的过程中,困扰过我很长一段时间。下面呢,就让我们来逐一看看。

首先让我们从 比特币和挖矿的关系说起;

在开始这个话题之前,我先提个问题:大家有没有想过为什么每个区块链系统都要发行自己的数字货币?也就是前段时间的ICO热;这里面就涉及到区块链的根本作用,这个作用就是:实现社会价值在区块链上的自由流通(类比下互联网的根本作用:实现信息的自由流通);比如我可以针对汽车开发一个汽车链,针对房子开发一个房子链,针对母猪开发一个母猪链;等等;如果一个组织或个人的能量足够大,也可以发布一个面向全行业的链,这个事估计只有央行能做;那汽车、房子、母猪…想在各自的链上自由流转,从A的名下流转到B的名下,或者从C的名下流转到D的名下,一定需要个度量的尺度;这个尺度就是靠支出相应的数字货币来完成的;换句话说,每条链发布的数字货币,充当的是该链上价值流通的一般等价物;做个现实的类比:也就是我们生活中用于交易的人民币、美元、泰铢、英镑等中央货币,在我们购物时充当的作用。每条链可以类比成一个国家,每个国家是不是都有自己的货币系统?这样一想,是不是就清楚为什么每条链发行数字货币的原因了,其目的就是促使链上资产的顺利流通;


就数字货币而言,对于想做事的人,他充当的是价值流通的一般等价物;对于敛财的人,就是个圈钱的工具;

下面我们就进入正题:分析下比特币和挖矿的关系;说起二者的关系,需要先说一下在区块链中,数字货币的发布模式;

从笼统的角度来说:区块链发布链上的数字货币有两种主要形式:一种就是像比特币这种的,通过挖矿节点,不断消耗自身的算力,也就是不断挖矿的意思,来换取比特币;由于比特币系统是完全开源的,在这套开源的代码里,包含了挖矿的功能,只要一个人懂代码,就可以把这套代码进行编译部署,加入到比特币网络里面去,把挖矿功能开启,那你的宿主机开始挖矿了;在比特币系统,通过自身的算法可以动态调整全网节点的挖矿难度,保证每过大约10分钟,比特币网络中,就会有一个节点挖矿成功;一旦有人挖矿成功,比特币系统就会奖励此人一定数量的比特币,这个数量也是通过算法控制的,这个算法可以说一下:最开始的头四年,每个挖矿成功的人会得到25个比特币的奖励,每过四年衰减一半;也就是下一个四年挖矿成功奖励12.5个,再下一个四年奖励6.25个,以此类推;大约到2140年的时候,区块链发行完毕,共计约2100万个比特币;

通过上面的阐述,大家应该明白挖矿和比特币的关系了,这个关系就是:挖矿,是比特币系统发行自身数字货币,也就是比特币的必经之路。比特币系统,借助挖矿完成自身数字货币的发行;发行数字货币的过程,就是各个矿工竞争挖矿的过程。在每一个10分钟内,看谁先挖到矿,就奖励一定数量的比特币,这个奖励的过程就是比特币发行的过程;每个挖矿节点,受利益的驱使,也是不断的想办法能更快的挖矿,这也就催生了市面上的各种各样的矿池节点;


刚才我们说了,数字货币的发行有两种主要形式;比特币的是一种;另外一种,我以国内的NEO为例;NEO的发行模式是:在系统创建的时候,一次性的在创世块里,写入1亿个NEO;借助ICO,用户可以直接用人民币认购持有;这种模式有点类似于央行发行人民币;而比特币那种发行模式,和淘金很相似;

在刚才的分享中,我们不断提到了挖矿,那比特币中的挖矿到低是怎么一回事呢?

其实挖矿是比特币系统中一个形象化的表达;它背后真正的名称是POW算法,也就是工作量证明算法;工作量证明,是从经济学中来的;是1993年,由两个经济学家提出来的一种策略,就是,防止对服务滥用或者资源滥用,而采取的一种有效阻断的经济策略;


这个POW在比特币之前就已经被广泛使用了;其中比较有名的就是Google邮箱的反垃圾邮件系统;Google是怎么用的呢?google是这样做的:他要求每一个给google邮件服务器发电邮的对方服务器,必须先完成一定量的计算工作;这个计算可能会耗时对方服务线程2到3秒;2到3秒,如果是一个人在发邮件,是完全可以忍受的;如果对方是个发送垃圾邮件的脚本程序,他是根本无法忍受的,邮件脚本要做的是每秒成千上百封的往外发;


那在比特币系统是怎样用的呢?中本聪在设计实现比特币系统的时候,希望每10分钟完成一次比特币发行,由于比特币网络中有成千上万个节点,那该把币发行给谁呢?按照工作量证明的策略,也就是POW算法的思路,中本聪在比特币系统中,给每一个节点出了一个难题,大家先看下语音下方的这个截图,这是一个区块头的数据结构,大家注意一下,里面有个Nonce字段;中本聪的难题呢就是:在其他字段值不变的前提下,通过不断调节Nonce的值,来对BlockHeader这个结构体值算Hash,要求找到一个Nonce值,使得算出来的hash值小于或大于某个固定值,这个固定值,在BlockHeader结构体中,由Bits来标示;

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 区块链中的挖矿原理(POW算法)

相关文章

  • 2018-11-03什么是比特币驱动链
  • 2018-11-03区块链跨链协议的相关定义介绍
  • 2018-11-03蒲公英(Dandelion)隐私协议是什么
  • 2018-11-03什么是私钥到底长啥样?
  • 2018-11-03小蚁NEO钱包账号创建原理解析
  • 2018-11-03区块链内容版权概念项目介绍
  • 2018-11-03Cobo钱包使用教程(双语版)
  • 2018-11-03从GlusterFS看去中心存储的设计难点
  • 2018-11-03以太坊代币(Token)的初学者指南
  • 2018-11-03详解什么是虚拟货币

文章分类

  • 安全教程
  • 安全设置
  • 杀毒防毒
  • 病毒查杀
  • 脚本攻防
  • 入侵防御
  • 工具使用
  • 业界动态
  • Exploit
  • 漏洞分析
  • 加密解密
  • 手机安全
  • 区块链

最近更新的内容

    • 区块链的原理是什么?
    • 如何使用深度学习硬件的空余算力自动挖矿
    • 蚂蚁矿机E3挖矿教程
    • 教你如何一步步创建ERC20代币
    • 比特币钱包是如何帮助用户完成一笔交易的?
    • 一看就懂之对称加密
    • IOTA:缠结、数据市场以及用例
    • Solidity Types-动态大小字节数组
    • 如何通过BTS内盘进行ICO?
    • 所谓的“搬砖”到底是怎么一回事

关于我们 - 联系我们 - 免责声明 - 网站地图

©2015-2018 All Rights Reserved. 微课江湖 版权所有