每个矿工都行动起来,共同抑制垃圾交易

我们已经注意到,在过去的几天里,网络上有很多“垃圾”交易。这种行为造成了很多问题,包括区块账本的大小迅速增长,内存较小的节点无法同步区块和挖矿等。

这种“攻击”的根本原因是交易(txn)费用为零,目前NKN的txn收费机制是去中心化的,由自由市场决定的,类似于以太坊:当矿工打包一个区块的时候,他会先打包交易费高的(gas fee)的交易,因为矿工将一定数量的交易(大小)放入一个块中,所以交易费用将由发送交易的人数动态决定。当有很多人在链上发送交易时,这种机制可以很好地工作,但是NKN还处于年轻发展阶段,目前交易还不是很多。因此,大多数区块只包含少量交易,市场决定了那时交易费用为零。显然,有人利用了这点,恶意向网络发送垃圾邮件。

许多人要求我们(开发团队)“解决”这个问题。从技术上讲,我们可以在代码中设置最小的交易费用,并一次性停止攻击,但之后攻击就会变得纯粹集中,我们并不希望这样。

但这并不意味着没有真正的去中心化解决方案。现在有一种方法可以解决这个问题,并且同时保持完全去中心化和自由市场决定价格的机制,但这需每一个矿工做相应行动,以下有详细信息:

在主网1.0.6中,我们引入了一个更加完整的机制,这样每个矿工都可以参与决定交易费用可以接受多少,尤其是您可以在config.json中设置两个相关参数,可以很大程度帮助解决当前的问题:

  1. MinTxnFee: 这个参数控制着节点接受的最小交易(txn)费用. 该参数的单位为10^ (-8)NKN,即将其设置为1亿表示1 NKN。 我们建议先将这个值设置为某个适中的数值 (例如,10000000,相当于每txn 0.1 NKN) 然后根据效果进行调整。

  2. NumLowFeeTxnPerBlock : 当您的节点是区块提议者时,该参数控制着最多有多少低费用(小于MinTxnFee) 交易将被放入一个块中。请务必将这个值设置为一个小而正的数值(例如4),这样就可以大大减少攻击,而现有的优质的dapps(例如d-chat)仍然可以免费运行,而一键挖矿教程仍然可以工作。

默认情况下,这两个值在v1.0.6 beta之前都是零,这意味着零费用交易仍然可以免费发送。 在1.0.6版里,我们已经修改了缺省值,已经可以对付发垃圾交易。因此每个节点都需要马上升级到v1.0.6 beta版,节省每个人的磁盘空间。

您需要将节点升级到主网v1.0.6-beta,其他没有任何操作,应为最新对付垃圾交易的缺省值都已经编译到代码里了。你不需要继续阅读对后一段。

特殊用户配置

如果您一定想要配置与默认值不同的值的,并且理解这样做的理由的话,可以在config.json中设置这两个参数。如果您不熟悉json格式,这里有一个示例,您可以复制并粘贴到config.json中。(以下是默认值,请记住将它们更改为您想要的值):

  "MinTxnFee": 10000000,
  "NumLowFeeTxnPerBlock": 4,

您可以将这两行放在受益人地址行之后,config.json配置开头会像下面这个样子:

{
  "BeneficiaryAddr": "XXXXXXX",
  "MinTxnFee": 10000000,
  "NumLowFeeTxnPerBlock": 4,
  ...
1 Like

更新之后依旧不断重启

主要是由于有一部分节点还在1.0.5.等到绝大部分节点升级到1.0.6之后,应该就可以改善。

1 Like

不斷重啟 心態崩了

1 Like

赶紧强制更新吧,一直重启卡的很

1 Like