矿池挖矿的几种模式
㈠ BTCGUILD矿池选PPS和PPLN哪种好呢
简单理解如下:PPS就是你挖的矿金存在矿池里,等到一定数量再转到你的钱包里面,这个花费手续费比较高,PPLNS一般在p2pool比较常见,当你挖到矿以后,就直接存到你的钱包里了,没有手续费。目前比较流行的就是p2pool 这是目前比较安全的,国外的大侠也比较推崇这个,
㈡ 比特币矿池的协议stratum
转自: https://zhuanlan.hu.com/p/23558268
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协议的配合下,矿池终于可以大声的对矿工说,让算力来的更猛烈些吧。
㈢ 什么是挖矿,怎么挖矿
简单来说,挖矿就是利用芯片进行一个与随机数相关的计算,得出答案后以此换取一个虚拟币。虚拟币则可以通过某种途经换取各个国家的货币。运算能力越强的芯片就能越快找到这个随机答案,理论上单位时间内能产出越多的虚拟币。由于关系到随机数,只有恰巧找到答案才能获取奖励。有可能一块芯片下一秒就找到答案,也有可能十块芯片一个星期都没找到答案。越多芯片同时计算就越容易找到答案,内置多芯片的矿机就出现了。而多台矿机组成一个“矿场”同时挖矿更是提高效率。而矿池则是由多个“个体户”加入一个组织一起挖矿,无论谁找到答案挖出虚拟币,所有人同时按贡献的计算能力获得相应的报酬,这种方式能使“个体户”收入更稳定。
举一个通俗的例子:
我在一张纸上随便写一串数字,给出部分提示,谁猜对就给他奖金(挖矿)
聪明的人根据提示能作出更多猜测(计算能力)
有人出钱请许多人回来一起猜测(矿场)
有人召集大家一起猜测,无论谁猜到,按照每个人猜测次数比例分配奖金(矿池)
上面举的例子大家可以看到,越聪明的人能作出越多次猜测,猜到的机会就越大,相应地能获得越多的收益。
我们经常看到有矿工为了挖矿,不断升级计算机配置,或者买多台计算机,其实质目的就是为了提高自己的算力。挖矿的过程是每一个矿工,在一个时间段里,和所有的矿工竞争计算那一份比特币,实质就是一个人的算力PK全球的算力,由此可见,挖矿没那么容易。
什么是算力?
在“挖矿”的过程中,我们需要找到其相应的解,而要找到其解,并没有固定算法,只能靠计算机随机的哈希碰撞。一台矿机每秒钟能做多少次哈希碰撞,就是其“算力”的代表,单位写成hash/s。
㈣ 矿池怎么挖矿
由于个人挖矿已经很难达到需求,全球的算力在不断的增加中,单个设备或者是少量的算力都已经很难再挖到比特币了,也是将大量的矿机组合在一起形成了矿池,矿池的算力是非常强大的,也保证可以更加快速的挖到虚拟货币,那么矿池怎么挖矿?一起来看看吧!
矿池怎么挖矿
矿池选址也是非常有讲究的,并不是任何地方都可以建立矿池,而是需要前期资金投入,矿池就是将单个的矿机联合在一起,由于集合了很多矿工的算力,所以矿池的算力占比大,挖到比特币的概率更高。矿池会按照每一个设备的贡献值,将奖励分配。
矿池利益分配模式
现在全球大大小小的矿场也有很多,每一个矿池的规模都有大有小,一般小型的矿场已经没有很大的优势了,大型矿池具有很多的矿工进行挖矿,对于每个矿工来说,他可以加入任何一个矿池,也可以同时加入多个矿池,矿池的第一大任务即为为矿工分配收益。
(1)PPLNS方式
该方式将所有矿工挖到的分享块(shares)集中到一起,每当累积到一定数量时(一般为3000万个shares),矿池会将前一阶段的收益按照贡献的比例分配给矿工。
这种方式下,矿工的收益完全取决于矿池挖到3000万个shares所需要的时间,如果幸运的话,在短时间内即可挖到,到,那么相对矿工的收益也会多,反之则会变少。作为回报,矿池会收取3%的税费。
(2)PPS方式
对用户来说,该方式收益比较稳定。
收益主要取决于矿工的挖矿速度,只要挖矿的速度稳定,就可以获得相应的收益,而且收益是实时的,即挖矿机在运行的同时,矿池就会为矿工支付收益。
显然,每当一个区块被计算出来时,矿池已经为所有的矿工支付了收益,如果该区块在后续的确认环节失败了的话,产生的损失将全部由矿池运营者买单,故这种方式降低了矿工的风险,却将风险转移给了矿池的运营者。
所以通常矿池可收取手续费来弥补这些风险可能造成的损失,在这种模式下,矿池的税费为7.5%。
以上就是关于矿池怎么挖矿的相关情况了,挖矿难度已经大大增加了,挖矿大军却在不断的扩大,基础设备如果达不到标准,将很难在矿业有所收获,因为挖到的虚拟货币价值,也许还抵不上一台设备的价格,很多矿工也不仅仅是挖取比特币了,而是选择其它虚拟货币进行挖掘。
㈤ 有人知道矿池挖矿PPLNS+模式是什么吗
PPLNS+是一种矿池挖矿
收益分配
模式,由AA矿池创建的,在传统的PPLNS、PPLNT和PROP三种模式做的优化结合,在
算力
和收益的分配上更精准,更高效,具体的直观体现就是,挖到块得到的收入精准分配,长期挖掘提高了矿工的收益。
㈥ 细数几种挖矿模式,哪种更适合新手
曾几何时,挖矿还仅仅只是极客和部分区块链技术开发人员之间的娱乐。但随着资本的涌入,加密货币世界越来越多的涉足金融世界,交易所Binance(币安)宣布其收入远超德意志银行(Deutsche Bank),采矿巨头 Bitmain(比特大陆)也即将上市,不管我们喜不喜欢,采矿作为新兴行业迅猛发展已成事实。
无数矿工的涌入,极大的推高了数字货币的全网算力,单打独斗的solo挖矿由于POW(Proof of Work,工作量证明机制)而受限于矿机性能,往往无法与大矿工进行竞争(独立建立矿场的大佬除外)。取而代之的,是无数矿工抱团取暖,贡献算力,然后挖到币之后大家按算力贡献大小分,也就是所谓的矿池。
目前市场上的矿池很多,各自选用的模式也有所不同,为了方便新手选择,接下来我们就细数几种模式的区别,然后审查它们的弱点和好处,以便理解。
Pay Per Last N Shares模式就是" 根据过去的N个股份来支付收益 "。主流矿池一般采用PPLNS模式,这个也是最原始的挖矿模式,大家一起组队挖矿,挖了矿、出了块,扣除矿池的手续费后,剩下的 按贡献的算力分配 。
在PPLNS模式下,运气成占比很大。不管是什么币种,出块都是一个概率问题,运气好的时候运算一会儿就出块了。运气不好的时候半天都出不了一个。也有可能今天出5个,明天就出3个,矿池一天内发现区块的多与少,会直接影响到矿工的分红。
长远来看收益差不多,短期就有太多不确定因素。但是这种模式的 手续费相对较低 ,适合稳定在一个矿池的矿工,随意切换会降低收益,因为收益想稳定就得把时间轴拉长。
优点:收益全分配,运气好时会获得更多收益
缺点:收益没保证,收益时高时低,完全看运气
PPLNS时而收益高,时而没有收益,极不稳定,为了解决这一问题,Pay Per Share运用了新的分配方案。新方案是矿池根据你的算力提前推算出你的在一个周期内能够获得多少币,直接将对应算力的币支付给你,这样矿工收益就固定了,完全不用承担风险。相当于将算力卖给矿池,矿池自己负责盈亏。即使一天没有出块也没事,照样有收益。但是如果有一天收益高了,那么这时候矿池就赚了。
事实上,PPS模式的矿池为了避免亏本风险,往往会 收取更高额手续费 。相对的,PPS收益尽管低了点,但每天比较稳定,不容受到挫折,矿工也不用担心切换矿池而损害收益。
优点:收益固定,可以随意切换矿池
缺点:手续费比较高,没有高收益奖励
再有就是PPS+模式,结合了PPS和PPLNS模式的优点。这种模式是 将收益拆分为固定块收益和交易手续费 。爆块的奖励是固定的,提前按pps的方式计算,给你按理论收益再扣除矿池费率,给矿工结算,能保证收益的固定。交易费用按PPLNS计算,在转账高手续费,以及矿池幸运值高的时候爆块多的时候,会明显提高矿工的收益。
优点:收益可观,适合所有矿工
缺点:高收益依赖于高转账手续费和矿池幸运值
当然,除了上述这些,还有一些其他的小众模式,相对比较少见,这里就不做赘述。
总的来说,3种模式都各有优劣,出块数量和稳定性、身处矿池的周期、矿池的费率等都会对最终收益造成影响,对于新手来说,最好可以根据自己的情况进行分析,这样才能找到真正适合自己的挖矿模式。
㈦ 比特币矿池有什么差别
主要是获得的比特币分配模式不同:根据运营模式,常见的比特币矿池有如下几种:PPLNS、PPS、DGM、P2Pool等
PPLNS:(最纯正的组队挖矿)全称Pay Per Last N Shares,意思是说“根据过去的N个股份来支付收益”,这意味着,所有的矿工一旦发现了一个区块,大家将根据每个人自己贡献的股份数量占比来分配区块中的货币。(share就是股份的意思)
在PPLNS模式下,运气成份非常重要,如果矿池一天能够发现很多个区块,那么大家的分红也会非常多,如果矿池一天下来都没有能够发现区块,那么大家也就没有任何收益。
PPS:Pay-Per-Share方式---该方式为立即为每一个share支付报酬。该支出来源于矿池现有的比特币资金,因此可以立即取现,而不用等待区块生成完毕或者确认。这样可以避免矿池运营者幕后操纵。这中方法减少了矿工的风险,但将风险转移给了矿池的运营者。运营者可以收取手续费来弥补这些风险可能造成的损失。
为了解决PPLNS那种有时候收益很高,有时候没有收益的情况,PPS采用了新的算法。PPS根据你的算力在矿池中的占比,并估算了矿池每天可以获得的矿产,给你每天基本固定的收益。
怎么样,有没有感觉这就是一个稳定的工作?实际上,PPS模式的矿池为了避免亏本风险,往往会收取7%-8%的高额手续费。
DGM:Double Geometric Method. 双几何制. 结合了 PPLNS 和几何奖励类型, 使得矿池运营者能规避一部分风险. 矿池运营者在短期内收取部分挖出的货币, 然后在之後以正规化过的值返还给矿工,像电容充放电, 运气好每 block 少给你点, 运气差多给你点。
175btc:175btc的挖矿节点工作在类似比特币区块链的一种shares链上。由于没有中心,所以也不会受到DoS攻击。和其他现有的矿池技术都不一样---每个节点工作的区块,都包括支付给前期shares的所有者以及该节点自己的比特币。99%的奖励(50BTC+交易费用)会平均分给矿工,另外0.5%会奖励给生成区块的人。
比特币之家网有详细的介绍。
㈧ 2miners矿池怎么样
2Miners是最受欢迎的山寨币矿池之一。 该矿池具有18种加密货币,两种挖矿模式:矿池和单人模式,18种语言以及直观的界面。 矿池中有超过18000个用户,最近24小时内向用户支付的奖励总额为一百万美元。
矿池中最受欢迎的加密货币是以太坊。 超过11000个用户正在挖矿ETH。2Miners数据中心位于欧洲,美国和亚洲,从而最大程度地提高了每个地区用户的加密货币挖矿效率。 奖励每两个小时支付一次。因此,从2月开始,如果要免费使用RaveOS,应切换到2Miners矿池。山寨币矿池 2Miners 近期发现了一个影响以太坊「epoch switch」的网络漏洞,且该漏洞影响 ETC 网络。2Miners 表示,ETC 的 Thanos (ECIP-1099)的网络硬分叉升级引发了一些问题,因为 ECIP-1099 提议减少网络中的算力,当转换到 epoch 时矿池并没有验证数据(尽管它是合法的)。2Miners 随后发现该漏洞位于用于维护以太坊和 ETC 的核心库中。2Miners 表示,「经过深入研究,我们发现许多基于 Ethash 的加密货币所使用的核心库之一的数学值有偏差。」该问题可能导致某些节点接受较新的数据到区块链,而另一些节点则不接受,从而造成了可能导致链分裂的潜在严重情况(类似于此前的以太坊网络故障)。
拓展资料:
一、由于比特币全网的运算水准在不断的呈指数级别上涨,单个设备或少量的算力都无法在比特币网络上获取到比特币网络提供的区块奖励。在全网算力提升到了一定程度后,过低的获取奖励的概率,促使一些“bitcointalk”上的极客开发出一种可以将少量算力合并联合运作的方法,使用这种方式建立的网站便被称作“矿池”(Mining Pool)。在此机制中,不论个人矿工所能使用的运算力多寡,只要是透过加入矿池来参与挖矿活动,无论是否有成功挖掘出有效资料块,皆可经由对矿池的贡献来获得少量比特币奖励,亦即多人合作挖矿,获得的比特币奖励也由多人依照贡献度分享。
二、矿池是一个全自动的开采平台,即矿机接入矿池,提供算力——获得收益。矿池的分配方式主要有:“PPLNS、PPS、PROP”三种。矿池的存在降低了比特币等虚拟数字货币开采的难度,降低了开采门槛,真正实现了人人皆可参与的比特币挖矿理念。但其弊端也非常明显,因为算力接入矿池,作为矿池来说,将掌握极其庞大的算力资源,在比特币世界中,算力代表着记账权,算力即是一切,如果单家矿池算力达到50%以上,将可以轻易对比特币等类似的虚拟数字货币发动51%攻击,其后果是非常可怕的:垄断开采权,垄断记账权垄断分配权。
㈨ 有谁了解矿池一般采用哪种收益模式不同收益模式的区别是什么
个人怎样选择矿池?
矿池费用
目前矿池的分配方式主要有:PPS、PPS+、FPPS、PPLNS以及SOLO模式。
在相应分配方式上,矿池以一定的费率收取矿工部分收益作为矿池费用。
PPS:收益稳定,只要矿机正常工作就有收益,收益和提交的工作量有关,和矿池幸运值、交易手续费无关。
PPS+ (Pay Per Share Plus) 结算方式是对传统 PPS 结算方式的一种改进,在传统的 PPS 结算方式基础上,增加了矿工费的分配。
FPPS:Full PPS(完全PPS),对包括交易费在内的全部区块收益进行分配。 相比传统的PPS结算模式(不分配交易费)可提升 10%-20% 左右收益。
PPLNS (Pay Per Last N Shares) 结算方式下,矿池每发现有效的区块, 根据过去 N 个难度周期中用户算力占矿池算力的比例进行分配。 这种方式下矿工的收益和矿池的出块相关,矿工收益不稳定,但长期平均收益更高。
SOLO 结算方式下,全部收益分配给挖出该块的矿工,其他矿工不参与分配,矿池收取极少手续费,用于矿池运营和维护。
个人如何选择矿池:
1.首先,考虑能连上的矿池;
2.其次,选择你的分配模式,追求稳定还是高收益。一般建议选择PPS或者大矿池的PPLNS;
3.最后,根据分配模式选择支持的矿池,从中选择连接速度快的,收益好的;
4.另外,选择1-2个备用矿池,以供不时之需。
㈩ Ezil矿池挖矿的时候有多少种份额的类型
大多数矿池有4种类型的份额。有效份额与拒绝份额的意思很容易理解,我们更不用说了。还有两种其他类型: 延迟份额和无效份额。
延迟份额 (stale shares):在目前工作量证明的机制下,矿池会不断给矿机推送计算任务,如果在矿池发送新的任务后才收到矿机提交来的上个工作任务的份额,这个份额就是延迟份额(这对eth/etc有效)。延迟份额是会计算收益的,只是相比于正常份额会稍微低一些。(相对来说ETC的份额会更少)。请注意,Zilliqa矿池中没有延迟份额。
无效份额 (invalid shares):是那些份额未通过PoW验证并且无法解决区块。