
以太坊二层解决方案(L2)的主要目标有两个:一是复用以太坊主网安全,二是增强以太坊的可扩展性。 大多数现有的二层解决方案(例如 rollups)都专注于扩展以太坊的计算能力,即提升 TPS(每秒交易数)。 但同时,随着 NFT/DeFi 等 dApp 的普及,存储大量数据并且复用以太坊主网安全的需求急剧增长。
例如,一个强烈的存储需求来自于链上 NFTs,其目的不仅 NFT 合约的代币归用户所有,而且 NFT 的链上图片也归用户所有。 相比之下,将 NFT 图片存储在第三方(例如 ipfs 或中心化服务器)需要引入额外的信任。而这种信任很容易且经常被破坏(例如,许多使用 ipfs 的老 NFT 项目的图片现在已经不可用了)。
另一个需求是 dApps 的前端,它们大多由中心化的服务器(加上 DNS)托管。 这意味着网站可以很容易地被审查(正在发生在 Tornado Cash 上)。 另外,其他中心化的问题也经常发生,包括 DNS 劫持、网站黑客攻击、以及服务器崩溃等。
通过复用以太坊主网安全,上述所有问题都可以立即得到解决。 但是,如果一切都存储在链上,成本将会非常高 — — 例如,使用 SSTORE 存储 1GB 数据将花费 1GB / 32(每个 SSTORE 的字节数目)* 20000(gas 每个 SSTORE)* 10e9(gas price)/ 1e18( Gwei 到 ETH)* 1500(ETH 价格)= 1000 万美元! 即使使用合约代码可以将成本降低至 1/3 ,但仍然比其他存储解决方案(比如 S3/FILECOIN/AR/ 等)贵得多。
借助 L2 和数据可用性技术,我们相信我们可以极大的扩容以太坊存储并实现以下目标:
具体要怎么做呢? 当前,以太坊主网上存储大量数据的成本分为两部分:
对于上传成本,通过数据可用技术(DA),尤其是 danksharding,我们预计上传成本在不久的将来将会大幅降低 — — 例如,当前的 EIP-4844 草案每字节将有 1 gas(其中 BLOB 大小为 ~128KB,即每个 BLOB ~128KB 的 gas),最小 gas price 为 1。通过 danksharding 可以将上传吞吐量进一步提高到 10 倍左右,这应该会更加降低上传数据的成本。
对于存储成本,我们的解决方案是构建一个无需许可的二层数据保存网络。 这个二层网络包含以下组件:
● 一个部署在以太坊主网上的存储合约,除了 verify() 之外,它还提供 put()/get()*/delete() 等 KV CURD 语义。 存储合约不存储 KV 的值 — — 仅存储值承诺(例如,BLOB 的 KZG 承诺),而由于数据可用(DA)机制,其对应的数据仍然可用(即可以下载)。 存储合约还将接受存储证明(Proof of Storage),并有效地验证数据是否存储在二层数据保存网络的数据节点中。 (get()* 仅在数据节点中可用,详见下文)
● 数据节点将运行一个以太坊的特殊客户端(Geth 和共识客户端的修改版本)。它会同步以太坊的最新状态(比如 KV 的值的所有承诺)。 此外,数据节点还提供以下额外的功能,如:
注意,运行数据节点是完全无需许可的 — — 只要数据提供者有足够的硬盘空间,它就可以运行一个节点,并且从二层网络同步 BLOB。如果 L1 上的承诺发生变化,则从数据可用(DA)复制 BLOB,并证明保留到主网。
除了复用以太坊主网安全之外,EthStorage 还拥有以下优势:
EthStorage 是基于以太坊数据可用(Data Availability)的基础上提供可编程的动态存储的二层解决方案(L2)。EthStorage 将会大大降低以太坊上大量数据的存储开销,节省 100 到 1000 倍成本,更好的支持未来完全去中心化的网络。EthStorage 与 EVM 高度整合,并完全兼容 Solidity、Remix、Hardhat 和 MetaMask 等以太坊工具。团队获得了以太坊基金会官方对于数据可用(Data Availability)研究的资助。
Twitter:https://twitter.com/EthStorage
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。
