这周我们将对技术树 (tech tree) 进行更新,为以太坊1.x研发添加一些新的主要里程碑,这些里程碑并不算是无状态以太坊的完整实现,而是我们在中期能够合理实现的目标。
其中最重要的更新是Alexey的reGenesis提案。虽然这是远未规范化的更新,但是从研发的角度来看,reGenesis为“完全无状态”的终极目标提供了一种更保守更切实可行的路径。在其他方面与reGenesis互补的技术是静态状态网络,能够帮助在比特流 (bittorrent) 式的基于DHT的网络中传播状态快照和历史链数据。
同时,一些距离我们比较近的目标已经在为EIP化做准备,例如代码分块 (code merkleization) 和状态二进制树。在本文中,我会为大家阐明已经实现的进展,并且附上链接,以便读者深入了解感兴趣的领域。
动态 | Tether Treasury 转出的 966.86 万 USDT 流入 Bitfinex 交易所钱包:据 Tokenview 数据显示,近 24 小时 USDT 共发生 5 笔单笔超过 100 万 USDT 的大额转账。其中最大一笔是 Tether Treasury 于 4 月 2 日 00:07 向 163i 开头的地址转出的 966.86 万 USDT,该笔资金随后流入了 Bitfinex 交易所钱包。[2019/4/2]
目前以太坊使用十六叉Patricia默克尔树来编码状态,但如果转变为二进制式会带来显著的效率提升,尤其是在见证大小这个方面。对以太坊状态进行完全重新编码需要制定新范式,以及清晰的过渡策略。最后,还需要决定是否将智能合约代码分块,并且将该过程合并到二进制树过渡中还是作为独立更新。
动态 | 昨日ETH新韭菜占比为 39.21%:Searchain.io“新韭菜指数”:昨日ETH新韭菜占比为 39.21%,较前日有所下降,下降了3.26%,与上月同期相比下降了6.75%。[2018/11/28]
与当前的十六叉树结构相比,二进制树的概念要简单一些。十六叉树从树根遍历到子节点有十六条可能路径,二进制树只有两条。随着状态树的重新规范,我们有机会解决以太坊运行五年以来显著的低效问题。此外,我们也有机会使状态更适应现实世界中数据库编码的性能挑战 (在上一篇有关状态增长的文章中有提到)。
有关正式二进制树规范和分块规则的讨论可以参见ethresearch.
重要的不仅仅是二进制树范式这个目的地,旅途本身也非常有价值!在理想的过渡过程中,不会对网络的交易处理产生干扰,也就是说客户端将需要在处理每十五秒出现的新区块的同时构建新的二进制树。
行情 | ETH跌破180美元:据Huobi数据显示,ETH已跌破180美元,报179.15美元,跌幅达6.52%。[2018/11/15]
目前看起来最有希望的过渡策略被称为“覆盖”法,该方法部分基于geth的新快照同步协议。总的来说,新的状态改变会以二进制范式被添加到现有的十六叉树中,也就是说在过渡过程中会存在二进制和十六进制混合体。不受影响的状态会被转换为后台处理。一旦完成转换,这两层会被合并到一个二进制树中。
请务必注意,客户端多样性在二进制转换过程中也起到了非常重要的作用。每个客户端将需要实现自己的过渡版本,或是依靠其他客户端进行转换,然后在另一端等待新的树。
这需要我们“三思而后行”,所有客户端需要协同工作来进行测试并协调转换。出于安全性的考量,在过渡过程中网络有可能需要短暂停止服务 (例如挖出一些空块),但是目前就任何具体计划达成共识还为时尚早。
动态 | 慢雾区预警: ETH 存在恶意消耗 Gas 攻击:根据慢雾区情报,慢雾安全团队在 Twitter 上关注到以太坊漏洞问题,通过深入分析发现:如果用户在交易所提币或者通过钱包转账的时候,若没有设置 GasLimit 上限,当接收地址为合约地址的话将会导致恶意 Gas 消耗,慢雾安全团队第一时间通知了服务的交易所和钱包用户并提供了情报和解决方案:
(1)用户提币的时候判断是否是合约地址,如果是合约地址则不允许提币。
(2)转账的时候设置 GasLimit 上限,此处上限需要根据交易所实际业务场景设置如:6 万? - 10 万(推荐值 ETH: 90000 token: 150000)
投资有风险,入市须谨慎。
本资讯不作为投资理财建议。[2018/11/14]
以太坊状态树的很大一部分由智能合约代码组成,约占50GB状态的1GB左右。所有用于智能合约交互的见证 (witness) 都必须提供其交互的代码,以计算codeHash, 而这可能产生大量额外数据。
ETF提前于高度4730660分叉成功 ETH拥有者将按照1:1比例获得ETF:早先ETF称将于分叉高度4830000分叉,今天早些时候分叉高度提前到4730999。刚刚,ETF官方推特发布推文称ETF已于高度4730660分叉成功,ETH拥有者将按照1:1比例获得ETF。[2017/12/14]
代码分块 (Code Merkleization) 旨在将合约代码切分为较小的块,然后将codeHash替换为另一个默克尔树根。这种方式使得我们可以使用参考哈希来替代见证中潜在的大部分智能合约代码,从而省去数千字节的见证数据。
进行代码分块有多种方式,按复杂度来看,比较简单的就是通用分块 (例如每块大小64字节),而较为复杂的方式就是基于Solidity functionId或JUMPDEST指令的静态分析。最优的代码分块策略最终还是取决于是否适用于从主网收集到的真实数据。
要了解reGenesis提案的最佳去处是/img/2022811225004/1.jpg" />
从一开始,网络协议的优化只是技术树中的一个“支线任务”,但随着reGenesis进入无状态以太坊的版图,为分享以太坊链数据 (包括状态) 探索替代的网络原语也成为了主线任务。以太坊当前的网络协议是一个整体,但事实上有多种类型的数据能够通过不同的“子网络”来进行共享,而这些“子网络”能够满足不同的需求。
之前在无状态会议中讨论到这个话题时,我们称其为“三个网络”,基于DHT的网络能够更高效地服务于不常改变的数据类型。随着reGenesis的引入,“非活跃”状态能够被纳入这类不常变化的数据,从理论上来说也就能够适用于比特流式的swarm网络,而不是当前由全节点进行逐条广播。
自上一次reGenesis之后,在网络中传播不变状态的网络就是静态状态网络 (static state network),可以基于devp2p库 (以太坊网络协议) 中新的Discovery v5.1规范进行延展。
之前类似Merry-go-Round sync和更为成熟的SNAP protocol,可用于同步活跃状态,是迈向完全分布式动态状态网络的重要步骤,使得客户端能够快速同步完整状态。
在俄罗斯宪法公投使用的基于区块链的电子投票系统测试之后(在莫斯科和Nizhegorodskaya地区使用),俄罗斯将引入新的联邦级别的区块链投票系统.
1900/1/1 0:00:00稳定币兑换平台Curve拟再增加一个资金池:HBTC/WBTC。2020年8月26年,为进一步增加以太坊上比特币锚定币的流动性,Curve发起新提案CIP#5,拟添加HBTC/WBTC资金池.
1900/1/1 0:00:009月7日,yearn.finance创始人Andre Cronje发推表示,“USDC和USDT将很快在第二层(L2)提供。这将允许无拥塞地转移USDC和USDT.
1900/1/1 0:00:00上证报中国证券网讯(记者 李丹丹)记者从全国金融标准化技术委员会官网获悉,2020年6月22日至7月3日,国际电信联盟电信标准化部门(ITU-T)第十六研究组(SG16)全会在线上召开.
1900/1/1 0:00:00平地起炸雷。这次的炸雷来自以太坊开发者的官方讨论社区“以太坊魔术师论坛”。因为以太坊开发者提案里出现了一个倡议再次降低以太坊区块奖励的提案。从每个区块2个ETH奖励降低到0.5个ETH.
1900/1/1 0:00:00自2020年5月11日减半以来,比特币挖矿难度已经增加了9%,这表明尽管矿工担心死亡螺旋的出现,但比特币生态系统仍然处于健康之中.
1900/1/1 0:00:00