比特币新矿池教程,如何挖比特币

OKX欧易app

OKX欧易app

欧易交易所app是全球排名第一的虚拟货币交易所,注册领取6万元盲盒礼包!

APP下载   官网注册

比特币新矿池教程,如何挖比特币

一、为什么比特币挖矿要在矿池里挖,不能自己挖吗

挖矿其实就是在竞争区块打包权

由于有数以万计的矿工竞争打包权,单个矿工抢得打包权的概率非常小,产出非常不稳定,有可能走狗屎运1小时就抢到一次,也有可能一年都抢不到一次。

为稳定挖矿产出,矿工往往选择加入矿池挖矿,矿池将大量矿工的算力整合在一起,在全网总算力中占据一定的份额,由此得到较稳定的挖矿产出,矿池在收取2%~4%矿池手续费后,将产出按矿工算力分配给矿工。

这就好比一个人买彩票很难中奖,于是矿池把很多人组织在一起买彩票,中奖了再按出资额分配给大家。

二、比特币矿池的协议stratum

转自:

getblocktemplate协议诞生于2012年中叶,此时矿池已经出现。矿池采用getblocktemplate协议与节点客户端交互,采用stratum协议与矿工交互,这是最典型的矿池搭建模式。

与getwork相比,getblocktemplate协议最大的不同点是:getblocktemplate协议让矿工自行构造区块。如此一来,节点和挖矿完全分离。对于getwork来说,区块链是黑暗的,getwork对区块链一无所知,他只知道修改data字段的4个字节。对于getblocktemplate来说,整个区块链是透明的,getblocktemplate掌握区块链上与挖矿有关的所有信息,包括待确认交易池,getblocktemplate可以自己选择包含进区块的交易。

挖矿有两种方式,一种叫SOLO挖矿,另一种是去矿池挖矿。前文所述的在节点客户端直接启动CPU挖矿,以及依靠getwork+cgminer驱动显卡直接连接节点客户端挖矿,都是SOLO挖矿,SOLO好比自己独资买彩票,不轻易中奖,中奖则收益全部归自己所有。去矿池挖矿好比合买彩票,大家一起出钱,能买一堆彩票,中奖后按出资比率分配收益。理论上,矿机可以借助getblocktemplate协议链接节点客户端SOLO挖矿,但其实早已没有矿工会那么做,在写这篇文章时,比特币全网算力1600P+,而当前最先进的矿机算力10T左右,如此算来,单台矿机SOLO挖到一个块的概率不到16万分之一,矿工(人)投入真金白银购买矿机、交付电费,不会做风险那么高的投资,显然投入矿池抱团挖矿以降低风险,获得稳定收益更加适合。因此矿池的出现是必然,也不可消除,无论是否破坏系统的去中心化原则。

矿池的核心工作是给矿工分配任务,统计工作量并分发收益。矿池将区块难度分成很多难度更小的任务下发给矿工计算,矿工完成一个任务后将工作量提交给矿池,叫提交一个share。假如全网区块难度要求Hash运算结果的前70个比特位都是0,那么矿池给矿工分配的任务可能只要求前30位是0(根据矿工算力调节),矿工完成指定难度任务后上交share,矿池再检测在满足前30位为0的基础上,看看是否碰巧前70位都是0。

矿池会根据每个矿工的算力情况分配不同难度的任务,矿池是如何判断矿工算力大小以分配合适的任务难度呢?调节思路和比特币区块难度一样,矿池需要借助矿工的share率,矿池希望给每个矿工分配的任务都足够让矿工运算一定时间,比如说1秒,如果矿工在一秒之内完成了几次任务,说明矿池当前给到的难度低了,需要调高,反之。如此下来,经过一段时间调节,矿池能给矿工分配合理难度,并计算出矿工的算力。

矿池通过getblocktemplate协议与网络节点交互,以获得区块链的最新信息,通过stratum协议与矿工交互。此外,为了让之前用getwork协议挖矿的软件也可以连接到矿池挖矿,矿池一般也支持getwork协议,通过阶层挖矿代理机制实现(Stratum mining proxy)。须知在矿池刚出现时,显卡挖矿还是主力,getwork用起来非常方便,另外早期的FPGA矿机有些是用getwork实现的,stratum与矿池采用TCP方式通信,数据使用JSON封装格式。

先来说一下getblocktemplate遗留下来的几个问题:

矿工驱动:在getblocktemplate协议里,依然是由矿工主动通过HTTP方式调用RPC接口向节点申请挖矿数据,这就意味着,网络最新区块的变动无法及时告知矿工,造成算力损失。

数据负载:如上所述,如今正常的一次getblocktemplate调用节点都会反馈回1.5M左右的数据,其中主要数据是交易列表,矿工与矿池需频繁交互数据,显然不能每次分配工作都要给矿工附带那么多信息。再者巨大的内存需求将大大影响矿机性能,增加成本。

Stratum协议彻底解决了以上问题。

Stratum协议采用主动分配任务的方式,也就是说,矿池任何时候都可以给矿工指派新任务,对于矿工来说,如果收到矿池指派的新任务,应立即无条件转向新任务;矿工也可以主动跟矿池申请新任务。

现在最核心的问题是如何让矿工获得更大的搜索空间,如果参照getwork协议,仅仅给矿工可以改变nNonce和nTime字段,则交互的数据量很少,但这点搜索空间肯定是不够的。想增加搜索空间,只能在hashMerkleroot下功夫,如果让矿工自己构造coinbase,那么搜索空间的问题将迎刃而解,但代价是必要要把区块包含的所有交易都交给矿工,矿工才能构造交易列表的Merkleroot,这对于矿工来说压力更大,对于矿池带宽要求也更高。

Stratum协议巧妙解决了这个问题,成功实现既可以给矿工增加足够的搜索空间,又只需要交互很少的数据量,这也是Stratum协议最具创新的地方。

再来回顾一下区块头的6个字段80字节,这个很关键,nVersion,nBits,hashPrevBlock这3个字段是固定的,nNonce,nTime这两个字段是矿工现在就可以改变的。增加搜索空间只能从hashMerkleroot下手,这个绕不过去。Stratum协议让矿工自己构造coinbase交易,coinbase的scriptSig字段有很多字节可以让矿工自由填充,而coinbase的改动意味着hashMerkleroot的改变。从coinbase构造hashMerkleroot无需全部交易,

如上图所示,假如区块将包含13笔交易,矿池先对这13笔交易进行处理,最后只要把图中的4个黑点(Hash值)交付给矿工,同时将构造coinbase需要的信息交付给矿工,矿工就可以自己构造hashMerkleroot(图中的绿点都是矿工自行计算获得,两两合并Hash时,规定下一个黑点代表的hash值总是放在右边)

。按照这种方式,假如区块包含N笔交易,矿池可以浓缩成log2(N)个hash值交付给矿工,这大大降低了矿池和矿工交互的数据量。

Stratum协议严格规定了矿工和矿池交互的接口数据结构和交互逻辑,具体如下:

1.矿工订阅任务

启动挖矿机器,使用mining.subscribe方法链接矿池

返回数据很重要,矿工需本地记录,在整个挖矿过程中都用到,其中:

Extranonce1,和 Extranonce2对于挖矿很重要,增加的搜索空间就在这里,现在,我们至少有了8个字节的搜索空间,即nNonce的4个字节,以及 Extranonce2的4个字节。

2.矿池授权

在矿池注册一个账号,添加矿工,矿池允许每个账号任意添加矿工数,并取不同名字以区分。矿工使用mining.authorize方法申请授权,只有被矿池授权的矿工才能收到矿池指派任务。

3.矿池分配任务

以上每个字段信息都是必不可少,其中:

有了以上信息,再加上之前拿到的Extranonce1和Extranonce2_size,就可以挖矿了。

4.挖矿

1)构造coinbase交易

用到的信息包括Coinb1, Extranonce1, Extranonce2_size以及Coinb2,构造很简单:

为啥可以这样,因为矿池帮矿工做了很多工作,矿池已经构建了coinbase交易,系列化后在指定位置分割成coinb1和coinb2,coinb1和coinb2包含指定信息,比如coinb1包含区块高度,coinb2包含了矿工的收益地址和收益额等信息,但是这些信息对于矿工来说无关紧要,矿工挖矿的地方只是Extranonce2的4个字节。另外Extranonce1是矿池写入区块的指定信息,一般来说,每个矿池会写入自己矿池的信息,比如矿池名字或者域名,我们就是根据这个信息统计每个矿池在全网的算力比重。

2)构建Merkleroot

利用coinbase和merkle_branch,按照上图方式构造hashMerkleroot字段。

3)构建区块头

填充余下的5个字段,现在,矿池可以在nNonce和Extranonce2里搜索进行挖矿,如果嫌搜索空间还不够,只要增加Extranonce2_size为多几个字节就可轻而易举解决。

5.矿工提交工作量

当矿工找到一个符合难度的shares时,提交给矿池,提交的信息量很少,都是必不可少的字段:

矿池拿到以上5个字段后,首先根据任务号ID找出之前分配任务前存储的信息(主要是构建的coinbase交易以及包含的交易列表等),然后重构区块,再验证shares难度,对于符合难度要求的shares,再检测是否符合全网难度。

6.矿池给矿工调节难度

矿池记录每个矿工的难度,并根据shares率不断调节以指定合适难度。矿池可以随时通过mining.set_difficulty方法给矿工发消息另其改变难度。

如上,Stratum协议核心理念基本解析清楚,在getblocktemplate协议和Stratum协议的配合下,矿池终于可以大声的对矿工说,让算力来的更猛烈些吧。

三、比特币怎么挖矿

挖矿就是做矿工用自己的电脑生产比特币,在早期的客户端中还有挖矿这一选项,但现在已经取消了,原因很简单,随着参与挖矿的人数越来越多,自己一个人挖矿可能要挖上几年才有50个币,所以现在矿工一般都组织成矿工行会,大家一起挖。

具体的挖矿方法,你可以去jr123互联网金融导航网站的虚拟货币-比特币分类下查看,有挖矿教程以及原理讲解等很多相关内容,我这里简单说一下:

①安装官方客户端

首先要安装Bitcoin官方客户端以获取你的收款地址(Address),BTC协议鼓励每次收款使用不同收款地址以保持不可追踪性。这里的收款地址相当于你的一个收款帐号,而每个人可以有无限多个收款帐号,官方客户端会自动汇总你所有地址中的款额作为可用总额。安装、运行Bitcoin官方客户端后,程序会自动计算出你的私钥并生成第一个收款地址,以1开头的一串字母和数字组合,如 1AhNWp14rNUoWgwrZNtc9vm586pCVqom3n。这个就是你的收款地址了。

②注册集体挖矿网站

你需要到挖矿网站注册(Register)一个帐号(Account),以便保存你的工作成果和收款地址。目前运作的比较好的有

Deepbit(不推荐,3%手续费,也可以按每个计算成果付费,即Pay per share模式)

BTCGuild(推荐,Pay per share模式,5%手续费,支持namecoin混合挖矿)

P2POOL(推荐,需要可这客户端,配置复杂,收益高)

50BTC((推荐,收益高,PPS模式,可以直接兑换,提现)、

注册好帐号后,可能需要点开电子邮件中地址或输入邮件中的确认码,以确认邮箱地址。在网站payment address中填入你的收款地址,比如 1AhNWp14rNUoWgwrZNtc9vm586pCVqom3n。将minimum payment(最小自动付款额)设置成0.01,以便尽快收到第一笔付款。然后注册新的worker帐号(挖矿工人进程),因为每个人可能有多个计算机或多个计算进程可以使用,所以每个帐号下可注册多个worker。Worker通常有独立的用户名和密码,worker用户名一般是你的帐号名+自定义后缀,密码简单好记就好,worker的密码被别人知道也没有什么安全问题。注意不要和账户或邮箱密码相同即可。安装GPU计算程序下载GUI Miner。如果你有独立显卡,尽可能使用GPU计算程序,因为设计结构和指令集不同,GPU计算能力一般是CPU的几十至几百倍。如果使用AMD/ATI显卡,还需安装AMD显卡开发包。解压缩GUI Miner后,运行GUIMiner.exe,选择你注册的挖矿网站,填入你的worker帐号和密码,点Start mining即可开始挖矿。(File->Save settings保存当前设置。菜单第一项为创建新的Worker。)使用ATI 5xxx系列显卡计算时,可以在flags里填入-v-w128参数。使用CPU计算无需填写任何参数。Device为设备列表,显卡通常显示为显卡核心的名字,如57xx系列为Juniper,以及CPU设备。一个设备可以对应多个worker同时工作,程序会自动分配计算能力。即几个不同worker设置使用一个device,同时挖矿。不过对提高效率没有什么帮助……过1个小时刷新你的挖矿网站页面就可以看到你的收益了,一般超过0.1BTC即可收款。Bitcoin官方客户端运行时会自动显示最新余额。当然,离线时也可以正常收款。下次启动Bitcoin客户端即可看到收款。

四、如何挖比特币

1、首先连接好网线,把网线插进矿机的网线接口,记得插紧一点哦。只有连接上网线矿机才能挖矿,宽带没有限制。

2、矿机电源的各个接口接入矿机,电源有10根接线,分别接入算力板和控制板,像这样就是把所有的电源线接口全都接好了,接好线之后记得检查一下有没有插得不够深的地方。接完所有的线就可以让电源通电了,这时候矿机的灯会开始亮,机器开始响。

3、打开IPReporter这个软件,点击“Start”,然后按住矿机的IPReporter这个按钮,按一秒之后松开。此时软件上会自动弹出这台矿机的IP地址,将IP地址复制到浏览器中。点击回车键,在弹出的身份验证中,用户名和密码都输入“root”,点击确定。

4、这个时候我们就进入管理矿机的后台啦,在miner configuration(矿机配置)这里,把蚂蚁矿池的挖矿服务地址复制过来,只复制//后面的内容即可。总共有三个地址,全部都要复制到矿机后台。这一步就是保证挖到币都能到你自己的账户里来。

Worker这一栏填上自己蚂蚁矿池的刚刚创建的矿工名就行,三个都填一样的,密码自己设置即可,点击右下角的Save&Apply,等待设置完成即可。

5、进入Miner Statu(矿机状态),多刷新几次,就可以出现蚂蚁矿机目前的运行情况啦!再打开自己的矿池,就可以看到矿机为你挖出了多少币。

扩展资料

用户可以买到比特币,同时还可以使用计算机依照算法进行大量的运算来“开采”比特币。在用户“开采”比特币时,需要用电脑搜寻64位的数字就行,然后通过反复解谜密与其他淘金者相互竞争,为比特币网络提供所需的数字,如果用户的电脑成功地创造出一组数字,那么就将会获得25个比特币。

由于比特币系统采用了分散化编程,所以在每10分钟内只能获得25个比特币,而到2140年,流通的比特币上限将会达到2100万。换句话说,比特币系统是能够实现自给自足的,通过编码来抵御通胀,并防止他人对这些代码进行破坏。

参考资料来源:百度百科:比特币的产生原理

本文来自用户投稿,不代表币大牛资讯立场,如若转载,请注明出处:https://www.98xmw.com/zhis/22181.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年07月03日
下一篇 2025年07月03日

相关推荐

  • 比特币如何申请钱包,如何注册比特币钱包

    一、如何在比特币中国交易平台上开通数字货币数字人民币开户方法有两个:1、通过银行账户申请开通:用户需要进行身份认证,用户所属银行的用户访问系统将开通的申请信息,发送到系统,验证通过后会为用户创建数字人民币钱包,并为其分配证书,并反馈带有发钞行数字签名的登记

    2025-07-03 22:40:01
    2 0
  • 比特币价格挖矿,比特币挖矿机一天电费大概是多少

    一、比特币挖矿是什么意思挖矿是最原始获取数字货币的“勘探方式”,实质上是用计算机解决一项复杂的数学问题,如果将区块链比作一个大帐本,其中的区块是账本中的某一页,而所有的矿工则是记账员,挖矿的过程就是在记账,同时也是在维护整个网络正常运转。以比特币为例,每1

    2025-07-03 22:40:01
    2 0
  • 比特币挖矿机多少钱一台,弄一套挖矿机大概多少钱

    一、比特币挖矿机器价格比特币挖矿是一种利用计算机运算能力来验证比特币交易并获得比特币的过程。随着比特币的价值不断攀升,越来越多的人开始投资于比特币挖矿。而比特币挖矿机器价格也成为人们关注的热点话题。比特币挖矿机器价格从几百元到上万元不等,主要由以下几个因素

    2025-07-03 21:40:01
    2 0
  • ipad比特币钱包,邮储银行钱包是什么意思

    一、为什么我们总是错过像电商,比特币这种暴富的机会几年前做比特币,要承受超级多鄙视和不理解,即使到今天,巴菲特都说比特币没有价值,币圈到今天也不被主流投资圈接受,确定一颗韭菜心能赚到比特币的暴富行情吗?普通人更大可能是被各种币收割。再说买房,能自给自足买房

    2025-07-03 20:40:01
    2 0
  • 银行有btc平台吗,比特币提现会被银行查吗

    一、观点丨未来商业银行应该以 BTC 为中心比特币与商业佛罗伦萨银行失传的艺术:金币存款VS IOUsbanking介绍在最近的一篇文章中,Coindesk的Nic Carter为比特币银行提出了一个非常好的理由。虽然我赞同他的观点,认为比特币未来将在革新传统银行业方面发挥作用,但我想从一个

    2025-07-03 19:40:01
    2 0
  • 比特币 挖矿 选址,一台比特币挖矿机一天耗电量是多少

    一、矿视界译文:比特币矿工流浪记加密货币监管促使矿工远走他乡寻找更便宜、更环保的能源地六月下旬的一个周末,数百名阴郁的比特币矿工挤进了中国西部的一家豪华酒店。他们遇到了一个大麻烦:就在几周之前,中国政府出于对环境问题和潜在金融风险的担忧,开始在境内大规模严

    2025-07-03 19:40:01
    3 0

发表回复

8206

评论列表(0条)

    暂无评论

binance币安交易所
已有2000万用户加入币安交易所

立即下载