
本文是对Alex (Kushti) Chepurnoy、Vasily Kharin和Dmitry Meshkov的论文“加密货币费用的系统方法”的延续和总结(以下简称“论文”)。在论文中,作者讨论了存储资源利用的问题。人们担心一旦创建了状态的某个元素,它将永远存在,并不可避免地膨胀节点磁盘空间。这将导致区块链的不合理状态增长。
虽然加密货币将交易费用视为一个原子概念,但论文建议在三维尺度上考虑这一点是合理的。

区块链成本
工作量证明区块链技术依赖矿工来维护区块链的完整性。矿工资源,如内存和电力,成本高昂,因此需要一种收入方案来激励矿工。目前,矿工的激励包括区块奖励和交易费用。交易费用是防止耗尽矿工资源的垃圾邮件攻击的重要组成部分。
除了网络利用率,交易处理还要求矿工花费资源来维护所有原始区块链数据。在比特币的情况下,这可能不是一个大问题,因为它尚未实现智能合约功能。然而,支持智能合约语言(如Solidity(以太坊))的加密货币可能需要大量计算,相应的成本将包含在交易费用中。
上面显示的三维尺度基于存储导向负载、计算负载和网络负载。
- 存储导向负载是指在区块链中存储旧数据的额外成本。
- 计算负载是由智能合约的执行产生的。
- 网络负载是所有不在当前区块中但将被添加到下一个区块的交易。
在Ergo中,状态的总大小是所有UTXO大小的总和。也就是说,这些数据包含智能合约的执行、所有交易和节点信息。由于矿工提供的内存资源是有限的,因此应在矿工的收入来源中增加状态恶化费用,以鼓励减少系统负载,同时确保未来矿工的贡献。
存储租金
不合理的状态增长是一个经济问题,它可能导致垃圾邮件攻击和网络拥堵。另一个问题可能是加密货币的通货紧缩,如果硬币丢失和/或被遗忘。因此,货币不再作为智能合约的基础,而变得不合理地稀缺,使系统变得沉重并限制硬币流动。
这导致状态持续增加(例如,比特币的总UTXO大小),并且在垃圾邮件攻击期间状态可能增长得更快。例如,在2015年7月针对比特币的垃圾邮件攻击中创建了1500万个输出。对以太坊的攻击创建了1800万个新账户,添加到之前仅有100万个的状态中,并对节点进行了成功的“拒绝服务”攻击。
为了解决不合理状态增长的问题,论文提出了一种“存储租金”费用。存储租金是一种基于区块链中每个创建的UTXO持续时间的定期费用。这是通过使用定期支付来实现的,这将消除在一定时间后未使用的字节。
此外,区块链作为云存储的使用正在受到关注,因此在状态中永久存储对象而没有某种形式的旧数据再循环程序并不是一个可行的选择。
为了研究和本文的目的,值得注意的是,存储租金的概念在2014年也由Freicoin提出:
“贬值迫使freicoins以故意高的速度流通。将货币的价值储存和交换媒介的角色分开,使货币在需要时流动,无论是在好时光还是坏时光。”
结论
存储费用的一个重要后果是,它们为矿工提供了额外的奖励(除了区块和交易奖励)。
存储费用减少了存储负载,并消除了在不合理状态增长期间可能增加的额外成本。
存储费用鼓励硬币流动,防止通货紧缩,这可能导致流动性不足和货币系统的拥堵。
Share post




















