在区块链的圈子里一直存在这样一个激烈的辩论,大家使用一个覆盖全球范围的分布式计算网络时是否应该付费,支付多少费用合适?近日,以太坊创始人Vitalik Buterin(下称V神)在以太坊研究网站上提出了关于以太坊计算资源收费的简易方案,引发社区热议。
在V神的那篇帖子中,他提出的是一个所谓的「租费(rent fee)」(下称收费)的概念。用户在使用以太坊区块链网络资源时,需要支付一定的费用,付费的多少取决于用户想让自己的数据在这个区块链上停留多久。
之所以这个想法会引发讨论,原因是目前基于一台的DAPP普及速度不断提升,而以太坊网络的开发者们又疲于应对这种增长态势,与此同时以太坊区块链上各个节点存储的数据也在不断增加。
简而言之就是一句话:如果越来越多的人无偿地去使用这个资源,那么这个网络会因为暴增的用户而变得不堪重负。越来越多的证据显示,大家担心的事情已经发生了。
由于各种热门DAPP以及ICO的走红,以太坊的开发研究人员Vlad Zamfir和Phil Daian等知名程序员,都相信这个问题的解决刻不容缓。
「没人喜欢谈收费,但是我们必须面对这件事。」以太坊的开发人员Raul Johnson最近发推文这么说道,他进而补充:「核心程序员需要尽快将这个消息散播出去,散播到智能合约的开发者社区以及其他地方,以求大家尽快达成共识。」
那怎么收费?
V神的提议使得解决方案有了一个大概的轮廓。他的想法就是将费用计算方式建立「状态(State)」的长期使用限制上(注:State是一小段特殊的以太坊数据,它能够跟踪目前各式各样应用的信息拥有者是谁,所以以太坊的计算节点运营者需要存储下来)。
在V神提出的这个方案下,数据是储存在计算机RAM中(现在大概是5G),这一数字永远不允许超过500 G的。因为有这个上限的规定,用户需要为这部分数据在节点RAM里的储存进行付费。这样一来,存储的数据量就得到了控制,而另一方面,当储存空间越来越逼近极限的时候,费用还会不断攀升。
V神的这个方案之所以能引起如此大的轰动,就在于他将长期以来程序员想做而不敢做的事情提了出来,将这种变革可能提上桌面。
最新的以太坊路线图显示,以太坊「分区验证」(sharding)距离真正部署还需要好几年时间,但「分区验证」的做法还是令人振奋。「分区验证」能够通过将数据碎片化,每个节点无须储存以太坊上所有的历史数据,只需要存储其中的一段即可,这样可以大大提升单个数据库能够处理的处理能力。
V神说道:「通过`分区验证`,以太坊能处理的最大数据量被提前碎片化了,被储存在不同的节点中,所以总的算下来,计算收费也能下降一定比例。」
V神同样还试图利用收费来解决传统互联网的另一个难题:糟糕的用户体验。现在绝大多数的数据收费方案都会需要用户自己去预测数据要存储多长时间,然后凭此进行付费。他提出的方案是:通过一种叫做「默克尔树(Merkle Tree Proof)」的算法,哪怕是数据存储到期了,用户还是可以逾期一段时间使用状态(State)。这样,对于用户来讲数据储存可以得到延续和保障。
深层次的问题:这算是区块链收税吗?
最为深层次的问题是:在区块链上收使用费,跟向自由主义者收「税」一样,没人会喜欢。
比特币社区里有关费用的讨论从来没有断过。大家不断的权衡利弊,如果费用提升,那么存储的数据也就越少,这使得各个节点都能从容地运行下去。当然坏的一面是,加密货币的使用成本就更高了。
现在的一大悬念是:用户以及程序员群体对这项提议持怎样的看法。以太坊开发者Johnson就很担心:突然增加的费用会不会把那些已经将应用配置在以太坊的程序员给吓跑?同时他还认为:这样的变化不应该一蹴而就,而应该给一个过渡期,让程序员能够有时间来适应。
当然,也有人认为同样的收费模式应该普及到所有的加密货币上面。这么看来,区块链网络「规模化扩张」的问题,以及其他相关费用,都是区块链圈子里面大家都共同面对的一个难题。
在加密货币与合约组织(IC3)的智能合约研究人员Daian甚至提到比特币也应该采取相同的收费模式。他还认为,对存储资源进行合理的收费定价是目前区块链研究中至关重要的一个环节。为此,他跟其他机构的研究人员一同发起了Project Chicago项目来研究此议题。
关于区块链资源使用收费这一全新研究领域,Daian表示乐观,他总结道:「目前,还没有哪个加密货币在网络资源定价上面给出很好的模式。不过,以太坊的收费模式或许代表了区块链通向未来的正确方向。」