在比特币等基于区块链技术的数据网络中,需要有大量的挖矿矿工来支撑运作。挖矿是按照既定的分布式一致性算法(如POW工作量证明),按要求抢先算出答案,从而使本地创建的区块成为公认的区块,可以存储到网络中,完成交易的登记(记账),抢到区块的矿工可以收获比特币奖励以及该区块中所有交易的手续费。
由于挖矿过程是分别在全球各地执行,而网络同步有延时,有可能出现多个矿工同时抢到了某一高度(可理解为区块序号)的区块,在全网同步时就会出现冲突,这时有个规则是,谁后面接的区块多就以谁的为准,其它的作废。
挖矿的过程,简单地说,就是不断的执行HASH算法,类似穷举的方式去碰答案。这个过程完全是个烧CPU的过程,后来有人发现其实显卡的GPU算得更快,同一价位档次,在相同耗电量的时间内,GPU要比CPU多好几倍算力,因此很多专业挖矿机主要就是由多块显卡组成。再后来又出现了专门用于运行HASH算法的芯片用于挖矿。
最原始的比特币区块,是中本聪用笔记本电脑挖出来的,用的应该是类似现在“Bitcoin core”这款钱包软件挖的矿。是的,用比特币钱包就可以挖矿,只要简单地打开其中的挖矿开关就可以,这也是最原始的挖矿工具。
随着挖矿的机器越来越多,挖矿的总算力增长很快(50万TH/s),为了控制区块的生成速度(比特币规定是大概每10分钟一个区块),挖矿的难度就越来越大,一台2GH/s的电脑挖100年也难以挖到一个,所以,现在想用钱包软件挖矿无异于痴心妄想,徒耗电费而已。
现在致力于挖矿的组织都要使用专业的挖矿机器(一个装满显卡的机器),而且是千台以上的矿机组成矿场来挖矿。但是这么多机器各自挖效率低,还容易自已抢自已生意,咋办呢?于是出现了一个新的挖矿模式--矿池。矿池是一个统筹算力的服务组织,挖矿机可以加入矿池来挖矿,相当于N台矿机都在算同一个区块,这样就避免了冲突,加快了挖矿的速度。
很多矿池是开放的,也就是说谁都可以加入进来挖矿,收益一般按照提供算力的占比分成,这样一来,笔记本在闲暇时挖挖矿也可以有一点点小收益。
加入矿池的步骤是,先到矿池主页注册用户帐号,创建矿工代号和密码,设置收益的比特币地址(账号),下载专业挖矿工具,配置矿池地址以及矿工代号、密码,开始挖矿。
常见的一些挖矿软件有:GuiMiner,CgMiner,BfgMiner等。一般都可以设置投入几个CPU,几快显卡进行挖矿,小心烧掉显卡哦!