从前端到数据库,EthStorge如何帮助DAPP实现真正去信任化?

时间:2024-09-23 编辑: 浏览:(515)

摘要:

·一个去中心化应用由多个部分构成,但目前只有最核心的后端逻辑运行在以太坊上,其他部分比如前端代码还部署在以太坊之外,同时还包含很多没有上链的数据,所以大多数DAPP无法完整继承以太坊的安全性,远未达到理想化的状态。

· 导致上述问题的原因主要有两个:一是以太坊没有为开发者提供相应的前端标准和工具,二是链上存储数据的成本太高。

· 为了提供去中心化的前端标准,EthStorage 团队提出了 web3:// 访问协议,为开发者提供一整套通过智能合约来部署和访问前端代码,甚至是类文件系统的标准和工具,目前已成为以太坊的正式标准。

· 为了降低以太坊链上数据的存储成本,EthStorage团队开发了二层存储协议EthStorage,利用PoRA (Proof of Random Access) 和零知识证明,在继承以太坊一层安全性的同时,极大降低存储开销。

致谢:感谢来自极客Web3 的 Faust,ChainFeeds 的 Zhixiong Pan、LXDAO的 Bruce、EthStorage 的 Qi Zhou, Lun Deng 对本文的反馈。

去中心化DAPP的背景和问题

以太坊的愿景是成为世界计算机,希望在其上构建的应用程序都继承它的安全性。开发者只需一次部署,该应用就会永远在以太坊上运行,没有实体可以对其进行审查或恶意操纵。

但现在的去中心化应用DAPP是否达到了上述目标?为了更清晰的回答这个问题,我们需要将一个DAPP应用解构,看它都包括哪些部分,进而分析各个部分的去信任化程度,来得出最终结论。

一般情况下,一个去中心化DAPP会包含前端界面、后端服务器、数据库。用户访问前端界面时,会通过浏览器和域名服务来加载前端内容。其中:

·前端和域名服务:大多没有通过智能合约来部署和访问,区块链提供的特性如避免单点故障、代码不可篡改、抗审查、社区治理等都没有在前端这部分体现出来。

·后端服务器:部分由智能合约实现,有些计算密集型的任务无法完全上链。

·数据库:部分由智能合约实现,由于链上存储费用非常高,数据量较大的情况下DAPP还是采用链下的存储方案。

通过上面的分析,可以看到现在的去中心化DAPP只有部分组件通过智能合约获得了以太坊的保护,以太坊体系还远未实现当初的“去中心化的世界计算机”愿景。

2023年末Vitalik回顾以太坊的发展,写了一篇反响较大的文章“Make Ethereum Cypherpunk Again”,讨论了以太坊社区该如何回归密码朋克的理念。他在文中总结了以太坊甚至是更大范围的Web3社区应该坚守的价值观,提到非常重要的一点:

去中心化应用应尽量减少对任何单一主体的依赖,即便DAPP的核心开发者永久消失,应用程序也可以继续运转。

由此可见Vitalik对于去中心化应用该如何构建也有类似的期待。接下来我们将详细分析去中心化DAPP中每个组件面临的问题,探讨如何对其进行改进。

前端和域名服务

在去中心化应用的几个组成部分中,前端和域名服务的中心化程度最为严重。目前绝大部分dApp的前端都使用中心化服务器,项目方可以随时修改前端代码,不需要经过社区治理,也不受到时间锁限制,这部分的安全性与部署在以太坊上的智能合约相去甚远。

黑客可以入侵服务器修改前端代码,而dApp用户会因为使用该恶意前端而损失资产。这个问题在上个DeFi Summer中反复出现,我们不禁要问:为什么前端不能和后端一样部署在以太坊上,让修改行为通过社区治理和时间锁才生效呢?

另外请设想一下,假如 Uniswap 的开发团队有一天不再给他们的前端服务器以及域名服务付费,那么 Uniswap 的用户和 LP 将如何使用 Uniswap?

绝大部分用户并不懂得如何绕过前端和智能合约交互,虽然 Uniswap 有尝试将其前端上传到 IPFS,但是 IPFS 和以太坊是不同的网络,在可靠性和去信任程度上完全不同。值得一提的是,IPFS的内容访问速度很慢,现在绝大多数用户还是在和Uniswap部署在中心化服务器上的前端进行交互。

此外,因为Uniswap前端的运营主体是Uniswap Labs,他们为了迎合监管,增加了对Token列表的审查,这与他们在以太坊上部署的智能合约进成了反差,因为谁都无法随意对智能合约进行修改。所以,在前端被审查的Token还是可以在合约层面被交互到的,由此可见代码上链对抗审查的重要性。

后端服务器

因为EVM可以提供图灵完备的执行环境,所以大部分后端逻辑都可以在以太坊链上执行,我们可以说智能合约类的应用可以完全继承以太坊的安全。只是因为成本原因,一些计算密集型的任务无法直接在链上进行。

针对这个问题,现在探索比较多的是使用ZK或者OP的方式,将计算移交到链下完成,以太坊链上只对计算结果进行最终确认,以此在计算层面上进行扩容。有些AI相关的项目将这类方法推向了极致,希望将 AI 大模型这种超级计算密集型的任务与区块链挂钩,值得我们去密切关注。

数据库

对于数据库,EVM 原本就支持键值对/KV型存储 (Key Value Store),可以覆盖非常多的使用场景,但核心的问题是:链上存储的成本太高。

贵到什么地步呢?在 Gas Price为10Gwei 的情况,链上存储1GB的数据需要 6200多枚ETH,超过2000万美元!显然存储成本成为了数据库去中心化的核心问题。

我们可能会想,能否使用和上述计算扩容类似的方法,对存储进行扩容,也就是链下存储,链上验证存储效果。后面我们会对这个思路详细展开。

分析了上述谈及的DAPP组成部分后,我们发现,只有让DAPP的每个部分都足够安全和去信任,其作为一个去信任的整体,才能真正成为一个去中心化的DAPP。而以太坊作为dApp的运行与托管平台,需要给开发者提供相应的解决方案,才能孕育出符合以太坊愿景的应用生态。

DAPP的去信任解决方案

围绕着如何让DAPP完全基于以太坊来部署和访问,EthStorage团队提出了两套解决方案:

web3:// 访问协议:解决如何使用智能合约来部署和访问前端代码,甚至是类文件系统的问题。 EthStorage 二层存储协议:在继承以太坊安全性的同时,极大降低了存储开销。

web3:// 访问协议

web3:// 可以被理解为去中心化版本的 http://,与 http 的 URL 中通过指定服务器 IP 地址或者域名来访问中心化的资源类似,web3 的 URL 需要指定一个智能合约地址或者ENS域名,来访问存储在其上的资源。

我们可以将一个网站的前端全部部署到一个智能合约中,并通过web3:// 来访问!可以对比一下两者的区别:

目前 web3:// 已经成为了以太坊的正式标准(ERC-4804),如果希望详细了解 web3:// 访问协议的内容,可以访问其官网。为了更好的在智能合约中做文件管理,我们提出了 ERC-5018,它在智能合约中模拟了一套文件系统的接口,这样就可以通过 ethfs-cli,将打包好的前端代码文件夹上传到一个智能合约中,并通过 web3:// 来访问这个网站。

大家如果感兴趣,可以按照教程完成一个简单的去中心化应用部署和访问。

有了 web3:// 访问协议,我们才能真正让 dApp 前端也具有了 “Code is law” 的属性。对于开发者来说,一旦部署,这个前端将永久执行下去。试想如果Uniswap labs也将其前端部署到了以太坊,那么即使团队想在前端层面对用户进行审查和限制,也无法阻止人们使用其部署在以太坊上的前端了。

当然在解决了可行性的问题后,我们还意识到链上存储大量数据的成本会非常高,从而使开发者在链上部署前端的时候面临困扰。我们进一步开发了 EthStorage 二层存储协议,在继承以太坊安全性的同时,极大降低存储开销。

EthStorage二层存储协议

EthStorage 协议由部署在以太坊上的智能合约和Layer2网络中的存储节点组成,其中,智能合约提供了键值存储, 而二层的存储节点负责存放数据本身。

用户通过 EIP-4844 的 BLOB 将待存储的数据上传到以太坊上,EthStorage智能合约只会记录BLOB内数据的哈希,从而有效的降低存储成本。

同时,二层的存储节点会下载对应的BLOB数据到本地磁盘,使用 PoRA (Proof of Random Access) 和 ZK,将存储证明提交至以太坊上的合约做验证,该合约需要通过之前记录的Blob哈希来确认存储节点上传的ZK证明能否对上号,以此确认二层网络中的存储节点真的存放了这些数据。

具体流程如下:

对于开发者来说,其上传数据和获取数据的接口非常简单:

应用开发者可以直接通过EthStorage提供的合约接口,对大块数据进行读写,写入成本约等于直接在链上存储数据的千分之一。因此,EthStorage不仅支持链上部署前端,对更广泛的键值存储数据库操作也提供了成本更低的解决方案。

目前,EthStorage已获得了以太坊官方的 Grants,并且已经在 Sepolia 部署了公开测试网,欢迎大家加入。

总结与展望

大多数DAPP的重要组件如前端和数据库未部署在以太坊,无法继承以太坊的安全,导致应用作为一个整体无法做到永久执行,抗审查,可治理。

EthStorage 对此提出了两个方案解决这个问题:web3:// 访问协议解决使用智能合约来部署和访问前端的问题;EthStorage 二层存储协议解决存储成本过高的问题。

为了实现以太坊最初的愿景,我们认为它将演进为一个去中心化的Web服务器,生态中的去中心化应用会将其所有组件都部署于以太坊,不管是后端代码、前端还是数据,一旦部署,代码可以永久运行,数据可以永久访问,成为一个真正的 Unstoppable Dapp。

EthStorage 公开测试网正在进行第二次激励活动,感兴趣的社区小伙伴可以按照Guide 完成自己的第一个 Unstoppable Dapp 部署和访问!

最新 更多 >
  • 1 Upbit:因Polkadot(DOT)钱包系统检查暂时停止充值和和提现服务

    据官方公告,Upbit 宣布因 Polkadot(DOT)钱包系统检查暂时停止充值和和提现服务,相关维护完成后恢复充提币,暂停充提支持期间,相应数字资产的充值返还流程将暂停,待恢复充提支持后依次处理返还。

  • 2 OKX将推出提币地址簿30天免验证功能

    据官方公告,OKX 将于 2024 年 7 月 4 日 15:00 (UTC+8)推出提币地址簿 30 天免验证功能。验证地址簿内的地址时,用户可以将验证有效期设置为 30 天或永久有效。若用户将验证有效期设置为 30 天,需要在 30 天内进行提币才能维持地址的验证状态。如果 30 天内没有进行任何提币,验证将会过期,未来向该地址提币将需要进行安全验证。若用户在 30 天内进行了提币,则验证有效

  • 3 Bitfinex:特朗普11月的胜利将标志着美加密行业监管条件向更有利的方向转变

    Bitfinex分析师认为,特朗普被视为加密货币领域的创新型候选人。加密货币领域的知名人物文克莱沃斯双胞胎兄弟已向特朗普的竞选活动捐赠了价值200万美元的比特币,以表示对特朗普的支持。此举表明,加密和传统金融 (TradFi) 社区越来越多地认为特朗普是一位创新型候选人。 此外,Bitfinex分析师认为,特朗普11月的胜利将标志着美国加密货币行业监管条件向更有利的方向转变。在竞选期间,特朗普表现

  • 4 以太坊链上DEX昨日交易量近16亿美元,排名第一

    DeFiLlama 数据显示,以太坊链上 DEX 6 月 28 日交易量为 15.96 亿美元,位居第一。此外,Solana 链上 DEX 昨日交易量为 11.47 亿美元,排名第二;Arbitrum 链上 DEX 昨日交易量为 5.816 亿美元,排名第三。

  • 5 铭文PIZZA价格短时拉升超20%,或受UniSat融资消息影响

    UniSat 完成融资后,铭文 PIZZA 短时拉升超 20%。7 月 4 日,铭文 PIZZA 的价格短时拉升超过 20%,报价达到 3.81 美元,这一现象可能受到 UniSat 最近完成的融资消息的影响。UniSat 在 5 月宣布已完成 Pre-A 轮融资,由 Binance 领投。

  • 6 VeChain宣布VeBetterDAO主网第一轮投票已开放

    VeChain 在 X 平台发文表示,VeBetterDAO 主网第一轮投票现已开放。

  • 7 过去4小时全网爆仓超5583万美元,多单占主要部分

    根据Coinglass数据,7月4日过去4小时内,全网共爆仓5583.76万美元,其中多单爆仓5293.13万美元,空单爆仓290.63万美元。

  • 8 币安CEO:密切关注土耳其及其他地区的监管发展并继续监管合作

    币安首席执行官 Richard Teng 在 X 平台发文称,土耳其批准针对加密货币和加密资产服务提供商的新立法框架,标志着加密行业向前迈出了积极的一步。币安将密切关注土耳其及其他地区的监管发展,并且坚决支持这些发展,币安也将继续与监管机构合作,为用户营造安全、合规的加密生态系统。

  • 9 Evmos社区提议利用CosmosHub链间安全性推动双方生态增长

    6月27日消息,Evmos社区发起新提案讨论,提议使用Cosmos Hub 的 Interchain Security(链间安全性)来保护Evmos。该提案旨在提高流动性,增强跨链可组合性,并推动Evmos和更广泛的Cosmos生态增长。

  • 10 Glassnode:比特币投资者整体盈利能力仍然强劲,更大的波动即将到来

    据官方消息,Glassnode 在每周链上分析中表示,随着比特币价格下跌至 6 万美元区域,许多数字资产投资者出现了一定程度的恐惧和悲观情绪。当市场波动性停滞不前并趋于沉寂时,投资者常常会变得麻木。尽管如此,从 MVRV 比率的角度来看,整体投资者的盈利能力仍然非常强劲,平均保持着 2 倍的盈利倍数,而大多数短期持有者则处于亏损状态。许多波动性指标显著下降,表明更大的波动即将到来。