【区块链基础】比特币挖矿

论坛 期权论坛 期权     
思考积累再积累   2019-12-29 00:17   1431   0
上一篇文章中我们讲述了比特币采用的共识机制POW(工作量证明),我们知道了比特币在共识机制POW的基础上通过挖矿获得比特币的奖励,这也是比特币的产生过程。那什么是挖矿呢?矿工是如何挖矿的?这一篇文章我们就来聊聊区块链中的挖矿。
比特币是通过挖矿产生的,我们把进行挖矿的人称之为矿工。比特币采用的共识机制是POW(工作量证明),而在POW中最重要的一个步骤就是:节点消耗自身算力尝试不同的随机数,进行指定哈希计算;并不断重复该过程直至找到合理的随机数。所以,我们就有了以下的定义:
挖矿:随机数计算查找的过程;
矿工:验证该随机数的节点。
比特币矿工理论上人人都可以参与比特币的挖矿,即每个人都可以称为矿工。那如何成为一名矿工呢?要想成为矿工,则必须加入比特币网络并与其他节点相联。
在比特币挖矿过程中,作为一名矿工,他有六个任务必须完成:
1,监听交易广播。验证签名的有效性,阻止双重支付的现象;
2,维护区块链网络和监听新的区块。先维护区块链,即将区块链上的历史记录同步保存下来,然后再监听被广播到网络上的新区块;
3,组装一个备选区块。即拥有了全部区块链数据之后,自己就可以开始制造自己的区块了。
4,找到一个让自己的区块有效的随机数。即自己创建被所有网络节点共识的有效区块;
5,希望你自己创建的区块被全网接受。即使你找到了一个区块,也不能保证该区块会成为共识链的一部分;
6,获得利润。如果所有的其他矿工接受了你的区块,则你就能够获取利润。该利润包括:比特币系统奖励的12.5个比特币/区块(当前挖矿的奖励);该区块中所有交易的交易费等。
以上就是作为一名矿工需要做的事情,综合以上六个点,我们可以把矿工的任务分为两类:一类是验证交易和区块,这是比特币协议中需要矿工完成的首要任务;另一类就是和其他矿工竞争利润。
而要想获得利润,则最重要的就是寻找有效的区块,即验证到有效的随机数,获取到满足要求的哈希值。找到一个有效的区块是非常难的,在2015年底,挖矿的难度是:在2的68次方个临时随机数中只有不到一个可以成功。
挖矿所需的硬件矿工的任务就是挖矿,即挖出比特币获得利润。而矿工计算难度的核心在于,对SHA-256哈希函数的运算。矿工要进行运算,则就需要硬件的支持。接下来,我们来看看比特币挖矿的过程中,用到的那些硬件。
CPU挖矿。在最开始的时候,比特币挖矿都是采用的CPU挖矿(第一代矿工),即最开始的挖矿工作都是在普通电脑上完成的。在普通电脑上进行挖矿,靠的硬件就是通用中央处理器(CPU)进行计算。但是随着参与的人数越来越多,挖矿的难度也越来越难,如今使用一个普通电脑进行CPU挖矿,是根本获得不了利润的。
GPU挖矿。第二代的矿工发现CUP挖矿已经无法获得利润的时候,他们便开始使用显卡护着图形处理器(GPU)来进行挖矿,因为它拥有强大的并行处理能力,它的速度要比CPU快很多。但是它也有它的缺点:GPU中的大量硬件对挖矿没有任何用处;GPU没有很好的冷却处理设置;GPU非常的耗电等等。
现场可编程门阵列挖矿。2011年,矿工们开始使用一种现场可编程门阵列(即FPGA)来进行挖矿。他们使用了FPGA代替了GPU,因为它的性能较好。
专用集成电路技术挖矿。当今的挖矿市场主要使用的是专用集成电路技术挖矿。
今天,我们聊了聊比特币挖矿的那些事。下次文章我们继续聊区块链共识机制POS。


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:105
帖子:2
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP