0

所以我开始一个链的目的是它会有固定数量的代币,我这样做的方式是配置一个endowed_accountAlice在创世配置中使用一定数量的代币。Alice所以恰好也是唯一的验证者,她也是唯一运行该节点的人。当我尝试从 Alice 向 Bob 发送一些代币,比如 10 个单位时,Bob 得到了全部金额,但总发行量下降,大概是费用金额。就像 Alice 最初有 100 个,然后将 10 个发送给 Bob,块浏览器中的总发行量显示为 99.999 个单位。

我的直觉是,pub type TotalIssuance<T: Config<I>, I: 'static = ()> = StorageValue<_, T::Balance, ValueQuery>;计算存在存款之上的所有账户的免费余额和保留余额的总和,然后存储该值,这就是为什么我们看不到其中考虑了“费用”,而“费用​​”被有效地烧掉了. 然而,这是我的猜测,我不确定。我最初会认为是TotalIssuance流通中代币数量的硬上限,但真的是这样吗?

除此之外,我不明白,既然 Alice 是这条链中唯一的一个验证者和区块生产者,那么费用应该是她的权利,因为通常区块奖励会流向区块生产者?然而,事实并非如此。

我对转帐功能的第二个疑问是,文件说如果转帐电话使余额低于存在存款,则该帐户将被“收割”。这意味着什么?他们还提供了另transfer_keep_alive一种引用:

工作方式与 相同transfer,但有一个额外的检查,即转移不会杀死原始帐户。

我无法理解这些术语,因为我之前读过的内容说所有有效的 pub/private 密钥对都是有效的“帐户”。那么在这种情况下,杀戮和收获意味着什么?

4

1 回答 1

1

关于总供应量的变化,我建议阅读这篇关于不平衡的条目,它直接解决了您的要求。 https://crates.parity.io/frame_support/traits/tokens/imbalance/trait.Imbalance.html

至于奖励,如果你只运行一个简单的开发网络,没有内置的质押或提名,我想说的是,假设这些运行的节点不会受到激励是公平的。我可以看到更“基本”的费用支付使用提款。在撤消的实现中,我们可以看到如果成功,它会返回不平衡,回到我的第一段。

关于存在性存款,以下常见问题页面中已经有一篇很好的文章https://support.polkadot.network/support/solutions/articles/65000168651-what-is-the-existential-deposit-希望它能解决您的疑问,如果不是,我很乐意编辑此回复以添加一些信息。

但是我想补充一点,一次只在一个网络上进行收割,这意味着如果一个帐户从中继链的状态中收割,这并不意味着失去相同密钥的其他段落的余额。

于 2022-01-10T11:10:27.810 回答