我们都知道比特币现金有一个非常大的优势就是手续费特别低。尤其与手续费高昂的比特币相比,比特币现金的手续费几乎可以忽略不计。通过这一点,比特币现金吸引了很多的坚定支持者和商家。但是为了给用户更好的交易体验,一些BCH矿池曾经提出要支持部分0手续费的交易。虽然这个点子是CoinGeek和nChain在“矿工选择”计划中联合发出的,但是却得到了社区很多成员的支持以及Bitcoin.com和ViaBTC矿池的支持。
最近关于BCH的0手续费交易又有了新进展。比特币现金的开发团队之一Bitcoin XT发布了关于比特币现金免费交易的方案。
首先Bitcoin XT制定了免费交易的标准——币龄标准。Bitcoin XT表示“要发送免费交易,你的交易需要传一个币龄标准进来。该标准是交易输入值的累计乘以它们具有的确认数。使用币龄标准,我们可以允许许多交易免费,而且同时防止滥用。你基本上通过持有BCH来获得免费交易的奖励。坏人必须长时间持有大量BCH才能滥用它。这使得攻击变得昂贵且不切实际。”
关于输入和确认这两个量,Bitcoin XT也进一步做了说明。在我们使用比特币现金进行创建交易的时候,我们可以从先前收到的交易中获取一个或多个输入,并创建可在以后交易中使用的输出。我们看到的比特币现金的量实际上是未使用的输出的集合。当我们每次将新的区块添加到区块链时,我们拥有的任何未使用的输出都会获得额外的确认。
之后,Bitcoin XT还推出了一个公式,指出优先级大于或等于以下COIN * 144/250阈值的交易不需要付费,其中COIN为100 000 000 satoshis(1 BCH)。即priority >= COIN * 144/250。
优先级计算为(伪代码):
调整后的交易大小为:
调整后的大小是激励清理UTXO集以减小体积。其中此实际代码现在位于 policy / txpriority.cpp 中。该阈值最初由中本聪在提交 f35e21e 中引入。
除此之外,为了更加简单明了Bitcoin XT还推出了一个简化的计算器。通过这个计算器我们能够计算出我们的交易是否符合免费交易的标准。这个计算器直接在Bitcoin XT官网上就能使用。
Bitcoin XT还表示:“只要有可用的区块空间,Bitcoin XT就会打包所有免费交易。当区块已满时,只要有空间,Bitcoin XT就会接受免费交易进入其内存池。内存池大小默认为300MB(maxmempool = 300)。”虽然现在BCH已经能够进行免费的交易,但是对于矿工来说也是具有自主选择权的。当矿工想要禁用免费交易时,只要将allowfreetx = 0添加到其节点配置文件即可实现。
BCH的免费交易对于BCH来说将是一个非常大的改进。在这项措施的实施之下,BCH的交易量将会得到明显的增长,也会推动比特币现金生态系统的增长。如果再配合BCH的0确认交易,未来将会在支付领域更加大放光彩。