来源 | ethresear.ch
作者 | Vitalik Buterin
译者按:本文需要读者对状态管理和 state expiry 机制作一定了解。
为了防止以太坊的状态容量无止境地膨胀,我们需要用一些方法使旧状态“失活”,这样加入网络的节点就不再需要存储旧状态了。即使大多数的客户端都变成无状态,似乎也可以合理预见,最终这个系统会扩容到网络无法一直保证所有状态都可用的地步。有两个方法可以使旧状态失活:
1、直接删掉,然后可以把它移到另外的默克尔树,这样关心该状态对象的人可以获取相应的默克尔分支,在未来某个时候用它来激活该状态。
2、不把对象移出树结构;相反,只在树的该位置标记“失活”,这样节点就不会存储它 (且协议也不会要求它们这样做)。通过发送一个提供默克尔证明 (即见证数据) 的事务来访问该状态,失活的对象就可以重新被访问了。
V神:预测合并将在9月15日左右发生,确切日期取决于哈希率:金色财经报道,以太坊创始人Vitalik Buterin在社交媒体上称,终端总难度已被设定为58750000000000000000000。这意味着以太坊PoW网络现在有一个(大致)固定数量的哈希值可供挖掘。bordel.wtf网站预测合并将在9月15日左右发生,但确切日期取决于哈希率。[2022/8/12 12:22:02]
方法 (1) 对应于“经典的存储租金方案”,方法 (2) 对应于传统“无状态客户端”的最简单延伸——旧状态可以被遗忘的模型。这两种方法都允许关心特定状态对象的个人追踪默克尔分支,这样随后如果那些状态对象失活了它们可以用来激活这些对象。然而,这两种方法都是有明显问题的。
V神:以太坊不是局 是很好的区块链和生态系统:8月12日消息,推特网友Paul R提问称,对ETH(或它的创始人)可以接受的指责是什么?说“我们一直都知道它无法扩展”怎么样?对此以太坊创始人V神表示,这显然是对ethereum 1.0的评价,这也是为什么以太坊2.0的工作几乎从一开始就计划好的原因。对于这个项目没有有效的指控,或者至少在“这完全是一个局”的层面上没有,因为以太坊不是一个局。这是一个很好的区块链和生态系统,人们知道这一点。[2020/8/12]
当要在某个已失效合约的同一个地址上再创建合约时,方法 (1) 会出现一些极端情况。那就是,如果一个合约在地址 A 上创建了,然后已经失效了,那么在地址 A 上创建这个合约的事务会被重新执行,这样会在地址 A 上创建一个新对象,这会影响原始对象的激活。另一种情况是当在地址 A 上创建了一个对象,然后经历失活、被激活、被修改 (例如,发送合约上的资金到另一个账户)、再失活、再用第一次失活所在的默克尔分支激活。这违背了保留规则,且可能被用于铸币;需要增加额外的默克尔证明来证明一个合约还没有被另一个特定状态激活,而该状态也尝试被激活。
V神:比特币的很多原则也适用于以太坊:2月28日,UCL区块链技术研究中心研究员Angela Walch发推文询问比特币核心开发者所追求的比特币原则,其发布的比特币原则的维基页面显示,比特币原则有:2100万比特币上限、无审查、开源、交易不可逆转等。对此,V神评论回应称,对他而言这也是一个合理描述,(比特币这些原则)中的很多也适用于以太坊。[2020/2/29]
方法 (2) 遇到的是不同的问题。假设两个相邻的地址 (也就是两者间没有对象) A1 和 A2 都已失活。这样,不仅 A1 和 A2 都不再可以访问 (除非有人存储了默克尔分支),而且 A1 和 A2 之间的所有地址都不可以访问了。也就是说,如果总共有 N 个地址,那么大约 1/N 的可用地址空间都不再可访问了。当一半的地址都失活了,大约 1/4 的地址空间不再可访问。随着时间推移,会越来越难找到空间生成新的地址。而且由于新地址越来越集中在剩下的“可访问”空间上,每 N 年可访问空间减半的这种影响会呈指数增长。
声音 | V神:若市场有效,DAI的失效风险减去USDC的失效风险造成了一半的收益率差异:推特网友在V神发起的关于DAI高贷款年利率的投票下回复称:请研究下USDC的贷款利率,例如ETHLend,它与DAI的利率水平相当,因此我认为这说明人们对DAI失效的担忧较少,利率高是因为市场无效。 对此V神回复称,Compound 和ETHLend上的USDC利率约为6-7%。因此,如果这是一个有效市场,意味着DAI的失效风险减去USDC的失效风险造成了一半的(收益率)差异,而USDC的失效风险或Compound的失效风险造成了另一半的差异。 对冲基金Three Arrows Capital首席执行官Su Zhu评论道:DAI的流动性也相当差,交易价为1.01(美元)。目前正在借出USDC、并在为是否转向借出DAI以获得更高收益而争论不休的人,必须首先为DAI支付1%的溢价。 据此前消息,V 神今日在推特发起关于“DAI的贷款年利率与美国10年国债收益率差距”的投票,V神指出,将DAI贷款给Compound可以提供11.5%的年利率,而美国10年期国债收益率仅为1.5%。对于出现此差异的原因,超半数用户认为DAI随时可能崩盘的风险导致了它的高年利率。[2019/8/24]
提议
我提议对方法 (2) 进行修改,可以解决以上的问题。正如很多方法 (2) 的提议实现方案所呈现的,账户有“活跃”与“失活”两种状态,失活账户是那些超过一年未被访问过的账户。要访问失活账户,你需要提供见证数据;当失活账户被访问了,该账户会自动解除失活状态 (触及任何账户都会重置它的一年失活期计算)。修改内容如下:
我们给每个地址添加一个 32 个字节的 "epoch 前缀" (会被解译为一个整数)。例如,epoch 前缀是 9 的地址是这样:0x00000009de0b295669a9fd93d5f28d9ec85e40f4cb697bae,以 00000009 作为前缀。
默克尔路径会直接依赖 epoch 的前缀而不是它的哈希值 (因此 merkle_path_key = address[:4] + hash(address[4:]) 而不是现在在用的 merkle_path_key = hash(address) 。这确保了“没用过的”地址空间是连续的。
除非地址的 epoch 前缀是小于或等于区块链已运行的年数,否则地址不能被使用
会增加一个 CREATE3 操作码,它会把 epoch 前缀作为一个参数,并在具有该 epoch 前缀的一个地址上创建一个合约。
推荐用户和合约总是使用具有尽可能新的 epoch 前缀来创建账户,甚至设为默认设置,因为肯定会有具有最新 epoch 前缀的全状态仍然是可以访问的。为了还能保有“反事实地址 (counterfactual addresses)”(即在合约代码被发布前,用户在链上 [例如通过发送 ETH 或 ERC20 代币]或链下[通过在一个通道里互动]交互的地址),用旧 epoch 前缀来创建合约还是可能的。但是,对于想要创建反事实地址的用户,如果长期不创建,他们就要负责为该账户存储旧状态的分支。
经过多年的运行,预计活跃状态会由两部分构成:(i) 有最新 epoch 前缀的全部地址空间,(ii) 与最近被活跃使用过的账户相对应的特定旧状态
请注意,这个方案正常情况下扩展到合约上;事实上,主动遵循这个方案是符合合约自身运作的。因为在这个方案里,地址中代表存储的部分以几个字节为前缀,它们所代表的数字 N 指的是这些数据是在 N 年与这些地址产生关联。这很适合用于存储像代币余额这样的数据。
财经法学
金色早8点
链捕手
PANews
Bress
区块律动BlockBeats
成都链安
Odaily星球日报
标签:DAIPOC以太坊比特币CDAI价格Pocketful of Quarters以太坊币最新价格比特币行情走势图最新今年
原文标题:高性能公链的得与失如果说今年下半年最出彩的链是哪一个,毫无疑问,solana名副其实,SOL由前高通,英特尔和Dropbox工程师于2017年底创立.
1900/1/1 0:00:00央行日前召开2021年下半年工作会议,明确下半年工作将主要围绕八大任务展开,其中货币政策、绿色金融、虚拟货币、数字人民币等内容被重点提及.
1900/1/1 0:00:00若 USDC 持续保持增长态势,稳定币市场可能会重新排序。近期加密资产价格短期内大幅下挫引发了大规模清算和连锁反应.
1900/1/1 0:00:00从工信部到各大央媒,从上市企业到国有资本,在近一年的时间里纷纷“扎堆”数字藏品市场,上线众多优秀的数藏平台及藏品.
1900/1/1 0:00:00原文标题:《用吃奶的劲试着解释加密算法的数学原理》撰文:王建硕前不久 Jason 同学邀请复旦大学数学系的梅同学给希望了解 Web3 的朋友们上了 5 节硬核的数学课.
1900/1/1 0:00:00针对虚拟币“挖矿”专项整治仍在有序进行中,12月份以来,海南、陕西、云南、浙江等地相继出台相关政策或披露专项整治情况.
1900/1/1 0:00:00