托管矿池

大多数矿池都是“托管矿池”,即公司或者个人运营着矿池服务器。矿池服务器的拥有者被称为矿池经营者,他按一定比例向加入矿池的矿工抽取奖励费用的佣金。

矿池服务器运行着专用的软件,根据矿池挖矿协议来协调矿工们的工作。矿池服务器同时与一个或多个完全比特币节点相连(比特币节点类型与角色),可以直接访问区块链数据库的完整复制。这使得矿池服务器可以代表矿工对区块和交易进行验证,使他们从运行完全节点的负担中解脱出来。对于矿池中的矿工而言,这是一个重要的考虑因素,因为一个完全节点需要一台专用的计算机,配置至少15G~20G的硬盘,至少2G的内存(RAM)。此外,运行在完全节点上的比特币软件还需要时不时地监控、维护、升级。任何因为缺少维护或者资源而导致的宕机,都会损害矿工的收益。对于很多矿工来说,不用维护完全节点即能参与挖矿是加入托管矿池的另一大好处。

矿池服务器

矿池矿工利用挖矿协议,比如Stratum(STM)或GetBlockTemplate(GBT)与矿池服务器相连。曾经有个旧标准,被称为GetWork(GWK),到2012年年底基本上已经作废了,因为这个标准难以支撑哈希速度超过4GH/s的挖矿工作。不管是STM还是GBT协议,都会创建一个包含候选区块头的区块模板(templates)。矿池服务器通过归集交易,添加铸币交易(包括扩展随机数空间),计算默克尔根(参见默克尔树),加入连接到前序区块的哈希引用,从而创建一个新的区块。候选区块的区块头作为模板,发送给矿池中的所有矿工。每个矿工基于区块模板,在一个低于比特币网络难度值的目标下进行挖矿;一旦找到满足矿池难度值的区块,就将其发回矿池服务器,赢得奖励份额。

推荐学习以下区块链文章:

挖矿节点

比特币的挖矿产业

比特币挖矿原理

868区块链学习网为您整理《托管矿池》仅供参考。