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

时间:2024-09-30 编辑: 浏览:(999)

摘要:

一个去中心化应用由多个部分构成,但目前只有最核心的后端逻辑运行在以太坊上,其他部分比如前端代码还部署在以太坊之外,同时还包含很多没有上链的数据,所以大多数 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 BLAST币是什么?

    什么是BLAST币?BLAST币是一种数字货币,也是一种去中心化的加密货币系统。它是基于区块链技术建立的,将交易信息存储在一个经过加密的数据库中。与传统的货币不同,BLAST币没有中央机构或政府控制,而是通过网络上的用户之间的交易来创建和管理。区块链技术的重要性区块链技术是BLAST币的核心。它是一种分布式账本技术,通过将交易数据分散在多个节点中,确保了交易的透明性和安全性。区块链记录了所有的交易

  • 2 BCL是什么币种,BCL币值得投资吗?

    在数字货币市场中,有许多不同的加密货币可供选择。BCL(Binance CoinLite)是一种数字货币,它是Binace交易所的原生代币。Binance交易所是全球最大的加密货币交易所之一,支持多种交易对和功能,BCL作为其原生代币具有很多独特的特点。什么是BCL币?BCL币是Binance交易所发行的一种代币,它基于以太坊平台和Binance智能链。作为原生代币,BCL在Binance交易所的

  • 3 ARRM是什么项目?

    ARMM是什么项目?ARMM项目是一个虚拟现实增强现实混合的创新科技项目。ARMM在各个行业都有广泛的应用,如教育、医疗、建筑和娱乐等领域。它利用计算机技术和传感器技术,将虚拟世界与现实世界相结合,创造出更加沉浸和交互的体验。ARMM技术的特点ARMM技术具有多种特点,使其成为许多行业中的热门技术。首先,ARMM技术可以增强用户对现实世界的感知,使其获得更多的信息和体验。其次,ARMM技术在实现虚

  • 4 CG是什么币种,CG币值得投资吗?

    CG是什么币种CG,全名为CryptoGuru币,是一种基于区块链技术的数字货币。它是为了构建一个开放、透明和安全的交易生态系统而设计的。CG币基于以太坊区块链,并采用智能合约技术,致力于提供简便的交易和高效的资金流动。CG币的特点首先,CG币采用去中心化模式,没有任何中央机构控制,所有交易都在区块链上公开记录。这种去中心化的特点保证了交易的透明性,杜绝了操纵市场的可能性。其次,CG币拥有高度安全

  • 5 2024年哪些币减半?

    2024年哪些币减半?2024年是一个备受关注的年份,因为许多加密货币的区块奖励减半事件将在这一年发生。减半是指加密货币网络中每个区块发出的新币数量减半,这是一种通货紧缩机制,旨在控制通胀并延迟货币供应的增长。比特币(Bitcoin)最知名的加密货币之一比特币(Bitcoin)的减半事件将在2024年发生。比特币的减半事件大约每四年发生一次,每次减半前约需210,000个区块。预计在2024年,这

  • 6 2024年买以太坊在哪个平台交易好?

    2024年买以太坊在哪个平台交易好?以太坊(Ethereum)是目前市值排名第二的加密货币,它的潜力和发展前景备受关注。随着加密货币市场的不断成熟和发展,选择一个可靠且方便的交易平台至关重要。那么在2024年,哪个平台是最佳选择呢?以下是几个可能的选择:1. CoinbaseCoinbase是全球最大的加密货币交易平台之一,提供了便捷的买卖以太坊的服务。作为一个有着良好声誉的平台,Coinbase

  • 7 DATA是什么币?

    什么是DATA币?DATA币(DATAcoin)是一个基于区块链技术的加密货币,其目标是通过推动数据交换和数据隐私权的保护来改变互联网的现状。DATA币的愿景是为用户提供更安全、更自主的数据控制权,同时激励用户积极参与数据交换和共享。数据隐私和安全DATA币的核心目标之一是保护用户的数据隐私并确保数据安全。在当前的互联网环境中,大量的个人数据常常被第三方机构滥用,DATA币希望通过区块链技术来确保

  • 8 llt流量币是什么?

    LLT流量币是什么?LLT流量币是一种虚拟货币,它的全称是“流量链通证”(LinkToken)。LLT流量币的诞生源于LinkToken的概念,它是由中国互联网公司Onething Technologies发行,旨在为用户提供一种新的数字化支付方式。LLT流量币的背景随着数字经济的快速发展,人们的支付方式也在不断变化。传统的货币支付方式仍然占主导地位,但人们对于数字货币和虚拟货币的需求也越来越大。

  • 9 FOS币FarmEOS是什么?

    FOS币/FarmEOS是什么?FOS币简介FOS币,全称“Farm Operating System Token”,是一个运行在EOS区块链上的数字货币。它是FarmEOS项目中的代币,旨在为该平台的用户提供一种用于支付和交易的工具。FarmEOS是什么?FarmEOS是一个基于EOS区块链的农业生态平台。它整合了物联网、区块链和大数据技术,通过智能合约和数字货币的支持,为农业生产、销售和供应链

  • 10 AEC是什么币种,AEC币值得投资吗?

    AEC是什么币种? AEC是Asian Electronic Currency(亚洲电子货币)的缩写,是一种数字货币。它是由亚洲区块链金融行业开发团队发行的,旨在通过区块链技术加速亚洲地区的金融交易和支付流程。 AEC基于区块链技术,使用的是去中心化的分布式账本,这意味着所有的交易记录都被公开记录在区块链上,每个参与者都可以进行交易验证。这为交易的透明性和安全性提供了一定的保障。 AEC币值得投资