编者注:7月28日,DeanEigenmann在推特上询问Eth2.0为何使用“执行环境方案”,是否真的能解决“状态增长”问题,引发了激烈的辩论。
所谓“状态增长”问题,指的是随着用户规模的不断扩大和合约数量的不断增加,以太坊全节点需要存储的状态数据在不断上升,对全节点的存储读写性能提出了越来越高的要求。
针对这一问题,人们提出过很多解决方案,比如所谓的“状态租金”,以及“无状态客户端”。状态租金即要求用户为自己所存储的状态支付价格,“无状态客户端”则是通过改造区块结构来降低全节点对整个状态数据的访问需求。
Vitalik:可以对ENS域名年费进行投标,增加ENS DAO收入:金色财经消息,以太坊创始人Vitalik Buterin(V神)在其个人网站发表文章,讨论ENS域名是否应该引入基于需求的注册常态费用。V神表示,如今的ENS域名注册常态费用非常便宜,由此引发了产权强度和公平性之间的权衡问题,而且ENS二级市场的高度投机性也无法确保市场的有效性。因此,V神提出可考虑为ENS域名引入基于需求的维护费用,对于ENS域名年费进行投标,从而以市场化方式对高需求的ENS域名进行定价。这一方法可提高域名抢注成本,同时可为ENS DAO增加收入。[2022/9/9 13:19:05]
实质上,这就是问的Eth2.0会如何设计状态存储方案并保证状态数据可用性的问题。
Waves生态项目Gravity测试框架正在添加币安智能链:10月20日消息,Waves生态项目Gravity测试框架正在添加币安智能链。币安智能链是币安链的平行公链,可以通过Ankr创建智能合约和BNB staking。除了以太坊和Waves,币安智能链将成为Gravity网络新的主要目标公链。
在准备这次集成时,Waves生态项目Gravity团队使用了Waves合作伙伴Ankr提供的一键式BSC节点部署解决方案。[2020/10/20]
在下文中,Vitalik简单解释了他对这一问题的看法。令人疑惑的是,Vitalik将无状态客户端归为市场化存储方案的一种。但在我看来,无状态客户端是一种彻底的技术解决方案,就是为了避免使用在经济上非常复杂的、需要收费的方案。
金色财经现场报道 以太坊创始人Vitalik Buterin:验证节点的“4个不要”:金色财经6月3日现场报道,在今天的以太坊技术及应用大会上,以太坊创始人Vitalik Buterin做了题为“Casper与分片技术最新进展”的主题演讲。V神介绍说,验证节点不要加入跟别人一样的权益池,不要用跟别人一样的VPS,不要使用跟比人一样的操作系统;不要用跟别人一样的客户端。[2018/6/3]
DeanEigenmann:
对我来说,无状态执行环境怎么看都不是一个解决状态增长问题的好办法。我不认为这一方案是可行的,而且其激励机制可能过于复杂、会破坏Eth2.0的简洁性。@wjvill?@VitalikButerin?你们的设计理念是什么呢?
Vitalik Buterin推特发文是否应离开以太坊加入谷歌 随后又删除:据cryptovest报道,Vitalik Buterin在推特发文进行投票,是否应该放弃以太坊加入谷歌,并在推特上贴出谷歌招聘人员发送的电子邮件截图,随后推特上又将之删除。[2018/5/21]
Vitalik:
我来从我的视角分析一下这场辩论吧。
一贯以来,区块链协议都将存储空间作为一项公共资源:所有的全节点都存储所有的内容;任何人只要使用了存储空间,就会把成本施加给所有其他用户。
这样的使用,应该也要付钱才对。
但若要付费,就不得不面对如下难题:很难确定到底怎么给存储空间定价、怎么确定目标存储空间大小、存储空间应是暂时性使用的还是永久可用、租金如何缴纳,等等。
另一方面,还有一种更加市场化的方案来安排存储资源:对于任意状态数据来说,都必有某些用户可以从状态数据可用性中获益,而且其他用户也会愿意存储这些数据。因此,我们可以让用户与存储方直接缔约来保证状态数据可用性。
基于市场的方案当然承认这样的可能性:如果用户疏忽大意,一些状态数据会“消失”。所有基于市场的技术都会遇上这个问题。
因此,就有一种思想认为:没错,我们当然应该让私人缔约成为主导,但事关用户体验的便利性,协议确实应该保证状态可用性和存储空间供应。
“无状态客户端方案”完全属于“市场化存储空间”学派。VladZamfir则完全属于另一个阵营。
市场化存储空间的一个好处是,你可以根据状态可用性保证服务的不同质量支付不同的价格。当然,另一个学派会说,要是让用户知道他们的状态数据可能有一天会用不了,dApp开发者面临的复杂性要上升好几倍。
话虽如此,还是有一些折衷之道。举个例子,在“执行环境方案”中,可以建立一个执行环境、要求区块生产者必须在区块中包含使用时间不到一年的随机存储秘钥。这样就给了状态存储空间一年的保证。
不过,还是有一些开放性问题要留给实验性的解决方案。富状态性是有不同层级的,例如:如果你只想保存一个“静态见证”属性,你可以仅保存已用过的收据的ID字段;比起全状态来说,这是非常轻量的状态了。
也就是说,情形正变得越来越明朗:Eth2将越来越依赖于轻客户端<->服务器市场,哪怕只是出于让用户可以从自己没有同步的1000多个分片中获得数据的目的。状态供应是另一项义务,也可以放进来。
而且,在协议层还有一些别的方法可以用来强化状态存储保证,比如给主要类型的收据加入为期一年的托管证明。
原文链接:
https://twitter.com/VitalikButerin/status/1155566281229254657
作者:?Vitalik
翻译:?阿剑
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。