如果我们想在去中心化互联网更进一步,最终将需要这三大支柱:共识、存储以及计算。如果人类成功将这三个领域去中心化,我们将踏向互联网的下一阶段征程:Web3。
图1:每个Web3支柱的项目示例存储,作为第二大支柱,正迅速成熟,各种存储解决方案已经应用到使用场景中。本文,将进一步探讨去中心化存储这一支柱。此篇文章是完整篇幅的一个总结,完整篇幅可从去中心化存储Arweave和CrustNetwork下载。去中心化存储的需求
区块链的视角
从区块链的视角来看,我们需要去中心化存储是因为区块链本身并不是被设计用来存储大体量数据的。获得区块共识的机制依赖小数量的数据,这些数据被放置于在区块中,并迅速分享至网络供节点验证。首先,在区块中存储数据非常昂贵。在撰文时,在layer1上存储一个完整的BAYC#3368需要花费超过18000美元。
图2:具有活跃主网的项目。选择200年的存储期限来符合Arweave对永久性的定义。来源:网络文档、Arweave存储计算器其次,如果我们想要在这些区块中存储大量套利数据,网络拥堵将会变得严重,这会在使用网络时引起gas战从而导致价格上涨。这就是区块的隐含时间价值的后果,如果用户需要在某一特定时间向网络提交交易,他们会需要付额外的gas费来使得他们的交易被优先处理。因此,建议将NFT的元数据以及图像数据、dApp的前端进行链下存储。中心化网络的视角
如果链上存储数据如此昂贵,为什么不直接在中心化网络链下存储数据呢?中心化网络容易受到审查并且具有可变性。这要求用户信任数据提供方能维护数据的安全。谁都不能确保中心化网络的运营方真的不会辜负用户对他们的信任:数据可能会因为有意或出于意外被抹除。例如可能会因为数据提供商改变政策、硬件故障或被第三方攻击。NFTs
随着NFT藏品的地板价超过10万美元,一些NFT每kb图像数据价值高达7万,仅仅通过承诺不足以确保数据每时每刻的可获得性。需要更强的保证来确保底层NFT数据的不变性和持久性。
图3:基于上次销售的CryptoPunk底价;CryptoPunk图像大小基于CryptoPunksV2链上字节字符串的字节长度。数据截至2022年5月10日。来源:OpenSea、链上数据、IPFS元数据NFT并不真正包含任何图像数据,相反,它们只有指向存储在链下的元数据和图像数据的指针。但需要保护的正是这些元数据和图像数据,如果这些数据消失,NFT将只是一个空荡荡的容器。
tayvano:Curve Finance攻击事件可能造成约7000万美元损失:金色财经报道,tayvano在社交媒体上称,受Curve Finance稳定币池alETH/msETH/pETH黑客攻击事件影响,Alchemix、JPEGd、MetronomeDAO、deBridge和Ellipsis目前已累计损失约为7000万美元。其中: Alchemix(非白帽行动)损失2000万美元,1300万美元ETH+700 万美元ERC-20。CRV/ETH 交换池损失1800万美元。JPEGd损失1200万美元。Alchemix(白帽行动)损失1200万美元。Metronome损失700万美元,160万美元+CRV池530万美元。Ellipsis损失7万美元。[2023/7/31 16:08:29]
图4:区块链、区块、NFT和链下元数据的简化图示可以说,NFT的价值并不主要由它们所指的元数据和图像数据驱动,而是由围绕藏品而推动的运动和生态系统的社区所驱动。虽然这可能是正确的,但如果没有基础数据,NFT将无意义,无意义的社区根本无法形成。除了个人资料图片和艺术收藏品,NFT还可以代表现实世界资产的所有权,例如房地产或金融工具。此类数据具有外在的现实世界价值外,由于是通过NFT代表其价值,因此保存NFT每一个字节数据的价值不会低于链上NFT的价值。dApps
如果NFT是存在于区块链上的商品,那么dApp可以被认为是存在于区块链上并促进与区块链交互的服务。dApp是存在于链下的前端用户界面和存在于网络上并与区块链交互的智能合约的组合。有时它们还有一个简单的后端,可以将某些计算转移到链下以减少所需的gas,从而减少最终用户对某些交易产生的成本。
图5:dApp与区块链交互的简化图示尽管dApp的价值应当根据dApp的背景来考虑,dApps带来的价值是惊人的。在撰文时的过去30天内,DappRadar上排名前10位的dApp共同促成了超过1500亿美元的转账。
图6:截至2022年5月11日,DappRadar报告的按美元数量计算的最受欢迎的dApp尽管dApp的核心机制由智能合约执行,终端用户可通过前端确保用户可访问性。因此,在某种意义上,确保dApp前端的可访问性在于确保底层服务的可用性。
MetaMask Institutional为组织推出编程访问,可通过API直接访问Web3:金色财经报道,MetaMask机构解决方案MetaMask Institutional(MMI)为组织推出编程访问,编程访问将允许组织通过他们自己的API连接到Web3,将使他们能够创建脚本来完成各种DeFi协议上的复杂执行策略,并构建、定制和自动化脚本以加速交易制作、确认和签名。
MMI的编程访问功能允许组织以编程方式跨多个托管人执行,一个组织不必单独连接到每个托管人,只需连接到一个统一的SDK并在他们选择的所有托管人之间创建交易。[2022/12/14 21:43:55]
图7:Aave创始人StaniKulechov在推特上表示,AavedApp前端于2022年1月20日下线,但仍可通过IPFS托管的网站副本访问去中心化存储减少了服务器故障、DNS黑客、以及中心化实体删除对dApp前端的访问。即使停止dApp的开发,也可以通过前端继续访问智能合约。去中心化存储图景
如比特币以太坊这样的区块链的存在主要是为了促进价值转移。当涉及到去中心化存储网络时,一些网络也采用了这种方法:它们使用原生区块链来记录和跟踪存储订单,这代表了价值转移以换取存储服务。然而,这只是众多潜在方法中的一种——存储领域广阔,多年来出现了具有不同权衡和用例的不同解决方案。
图8:一些任意选择的去中心化存储协议概述尽管存在许多差异,但上述所有项目都有一个共同点:这些网络都没有在所有节点上复制所有数据,比特币和以太坊区块链就是这种情况。在去中心化存储网络中,存储数据的不变性和可用性不是借由大多数网络存储并验证相继链接的数据实现的,比特币和以太坊就是这种情况。尽管如前所述,许多网络选择使用区块链来跟踪存储订单。去中心化存储网络上的所有节点都存储所有数据是不可持续的,因为运行网络的间接成本会使用户的存储成本迅速提高,并最终推动网络的中心化,转向少数能够负担得起硬件费用的节点运营商。因此,去中心化存储网络需要克服非同寻常的挑战。去中心化存储的挑战
回顾前面提到的关于链上数据存储的限制,很明显去中心化存储网络必须以不影响网络价值转移机制的方式存储数据,同时确保数据保持持久性、不可变性和可访问性。从本质上讲,去中心化存储网络必须能够存储数据、检索数据和维护数据,同时确保网络中的所有参与者都受到他们所做的存储和检索工作的激励,同时还要维护去中心化系统的去信任性。这些挑战可被总结为如下问题:数据存储格式:存储完整文件还是文件碎片?数据复制:跨多少个节点存储数据?存储跟踪:网络如何知道从哪里检索文件?存储数据的证明:节点是否存储了他们被要求存储的数据?随时间推移的数据可用性:数据是否仍随时间推移而存储?存储价格发现:存储成本如何确定?持久数据冗余:如果节点离开网络,网络如何确保数据仍然可用?数据传输:网络带宽是有代价的——如何确保节点在被询问时检索数据?网络代币经济学:除了确保数据在网络上可用之外,网络如何确保网络长期存在?作为本研究的一部分,已探索的各种网络采用了广泛的机制,并通过某些权衡来实现去中心化。
安全团队:MoonCake Inu项目代币价格下跌超87%:金色财经消息,据CertiK监测,MoonCake Inu(MCI)项目代币价格下跌87%以上。
BSC地址: 0x98364220b11ddb3a0beFb75432F7F58739741Bf8[2022/9/27 22:33:33]
图9:审计的存储网络的技术设计决策摘要有关上述网络对于每个挑战的深入比较,以及每个网络的详细配置文件,可于Arweave或CrustNetwork阅读完整研究文章。数据存储格式
图10:数据复制和擦除编码在这些网络中,有两种主要的方法用于在网络上进行存储数据:存储完整文件和使用纠删码:Arweave和CrustNetwork存储完整文件,而Filecoin、Sia、Storj和Swarm都使用纠删码。在擦除编码中,数据被分解成固定大小的片段,每个片段都被扩展并用冗余数据编码。保存到每个片段中的冗余数据使得只需要片段的一个子集来重建原始文件。数据复制
在Filecoin、Sia、Storj和Swarm中,网络确定擦除编码片段的数量以及要存储在每个片段中的冗余数据的范围。然而,Filecoin还允许用户确定复制因子,该因子决定了作为与单个存储矿工的存储交易的一部分,应该在多少个单独的物理设备上复制擦除编码片段。如果用户想用不同的存储矿工存储文件,那么用户必须进行单独的存储交易。Crust和Arweave让网络决定复制,而在Crust上手动设置复制因子是可能的。在Arweave上,存储证明机制激励节点存储尽可能多的数据。因此,Arweave的复制上限是网络上存储节点的总数。
图11:数据存储格式将影响检索和重建用于存储和复制数据的方法将影响网络检索数据的方式。存储跟踪
在数据以网络存储它的任何形式分布在网络中的节点之后,网络需要能够跟踪存储的数据。Filecoin、Crust和Sia都使用本地区块链来跟踪存储订单,而存储节点还维护本地网络位置列表。Arweave使用类似区块链的结构。与比特币和以太坊等区块链不同,在Arweave上,节点可以自行决定是否存储来自区块的数据。因此,如果比较Arweave上多个节点的链,它们将不完全相同——相反,某些节点上的某些块会丢失,而在其他节点上可以找到。
Liquity Protocol宣布推出一个自我引导流动性的DeFi机制Chicken Bonds:7月13日消息,去中心化借贷协议Liquity Protocol宣布推出一个自我引导流动性的DeFi机制 Chicken Bonds,旨在使项目和DAO能够免费为其代币启动协议拥有的流动性(POL) 。Chicken Bonds探索了一种新颖的本金保护债券机制,为终端用户增加收益机会,使他们能够获得新发行的btoken,以换取其绑定的代币。Chicken Bonds没有到期日,也没有锁仓期:用户在一段时间内累积btoken,同时可以随时赎回(Chicken In),或随时提取本金(Chicken Out)。
Chicken Bonds在绑定代币和bToken定价之间创造了一个飞轮效应:债券的人越多,bToken持有人保留的收益就越多。更高的收益率反过来增加了相对于基础代币的价格溢价,通过更高的年收益率使债券更具吸引力。[2022/7/13 2:09:25]
图12:blockweave中三个节点的图示最后,Storj和Swarm使用了两种完全不同的方法。在Storj中,称为卫星节点的第二种节点类型充当一组存储节点的协调器,用于管理和跟踪数据的存储位置。在Swarm中,数据的地址直接嵌入到数据块中。检索数据时,网络根据数据本身知道在哪里查找。存储数据证明
在证明数据的存储方式时,每个网络都采用自己独特的方法。Filecoin使用复制证明——一种专有的存储证明机制,它首先将数据存储在存储节点上,然后将数据密封在一个扇区中。密封过程使得相同数据的两个复制片段可以证明彼此是唯一的,从而确保正确数量的副本存储在网络上。Crust将一段数据分解成许多小块,这些小块被散列到Merkle树中。通过将存储在物理存储设备上的单个数据的散列结果与预期的Merkle树散列值进行比较,Crust可以验证文件是否已正确存储。这类似于Sia的方法,不同之处在于Crust将整个文件存储在每个节点上,而Sia存储擦除编码的片段。Crust可以将整个文件存储在单个节点上,并且仍然可以通过使用节点可信执行环境(TEE)来实现隐私,这是一个即使硬件所有者也无法访问的密封硬件组件。Crust将这种存储证明算法称为「有意义的工作证明」,而有意义表示仅在对存储的数据进行更改时才计算新的哈希值,从而减少了无意义的操作。Crust和Sia都将Merkle树根哈希存储在区块链上,作为验证数据完整性的真实来源。Storj通过数据审计检查数据是否已正确存储。数据审计类似于Crust和Sia如何使用Merkle树来验证数据片段。在Storj上,一旦有足够节点返回他们的审计结果,网络就可以根据多数响应确定哪些节点有故障,而不是与区块链的事实来源进行比较。Storj中的这种机制很有意,因为开发人员认为,通过区块链减少网络范围内的协调可以在速度和带宽使用方面提升性能。Arweave使用加密工作证明难题来确定文件是否已存储。在这种机制中,为了让节点能够挖掘下一个区块,他们需要证明他们可以访问前一个区块和网络区块历史中的另一个随机区块。因为在Arweave中上传的数据直接存储在块中,通过证明对前一个块的访问证明存储提供者确实正确保存了文件。最后,在Swarm上也使用Merkle树,不同之处在于Merkle树不用于确定文件位置,而是将数据块直接存储在Merkle树中。在swarm上存储数据时,树的根哈希证明文件已正确分块和存储。随时间推移的数据可用性
一巨鲸购买了20万亿个SHIB,价值约2.1亿美元:金色财经报道,CoinHub在社交媒体上称,一巨鲸购买了20万亿个SHIB,价值约2.1亿美元,这是Shiba Inu历史上最大的一笔交易。[2022/7/6 1:55:28]
同样,在确定数据存储在特定时间段内时,每个网络都有独特的方法。在Filecoin中,为了减少网络带宽,存储矿工需要在要存储数据的时间段内连续运行复制证明算法。每个时间段的结果哈希证明在特定时间段内存储空间已被正确的数据占用,因此是「时空证明」。Crust、Sia和Storj定期对随机数据片段进行验证,并将结果报告给他们的协调机制——Crust和Sia的区块链,以及Storj的卫星节点。Arweave通过其访问证明机制确保数据的一致可用性,这要求矿工不仅要证明他们可以访问最后一个块,还要证明他们可以访问一个随机的历史块。存储较旧和稀有的区块是一种激励措施,因为这增加了矿工赢得工作量证明难题的可能性,该难题是访问特定区块的先决条件。另一方面,Swarm定期运行抽奖活动,奖励节点随着时间的推移持有不那么受欢迎的数据,同时还为节点承诺要在更长时间内存储的数据运行所有权证明算法。Filecoin、Sia和Crust需要节点存入抵押品才能成为存储节点,而Swarm只需要它用于长期存储请求。Storj不需要前期抵押品,但Storj将代扣矿工的部分存储收入。最后,所有网络在节点可证明存储数据的时间段内定期向节点付款。存储价格发现
为了确定存储价格,Filecoin和Sia使用存储市场,存储供应商设置他们的要价,存储用户设置他们愿意支付的价格,以及其他一些设置。然后,存储市场将用户与满足其要求的存储提供商联系起来。Storj采用了类似的方法,主要区别在于没有一个单一的网络范围的市场可以连接网络上的所有节点。相反,每颗卫星都有自己的一组与之交互的存储节点。最后,Crust、Arweave和Swarm都让协议来决定存储价格。Crust和Swarm可以根据用户的文件存储要求进行某些设置,而Arweave上的文件则是永久存储。持久数据冗余
随着时间的推移,节点将离开这些开放的公共网络,当节点消失时,它们存储的数据也会消失。因此,网络必须积极地在系统中保持一定程度的冗余。Sia和Storj通过收集片段子集、重建基础数据然后重新编码文件来重新创建丢失的片段,通过补充丢失的擦除编码片段来实现冗余。在Sia中,用户必须定期登录Sia客户端才能补充碎片,因为只有客户端才能区分哪些数据碎片属于哪条数据和用户。而在Storj上,Satellite会始终在线并定期运行数据审计以补充数据片段。Arweave的访问证明算法确保数据始终在整个网络中定期复制,而在Swarm上,数据被复制到彼此靠近的节点。在Filecoin上,如果数据随着时间的推移而消失并且剩余的文件碎片低于某个阈值,则存储订单将被重新引入存储市场,允许另一个存储矿工接管该存储订单。Crust的补货机制目前正在开发中。激励数据传输
随着时间的推移,数据被安全存储后,用户会想要检索数据。由于带宽是有代价的,因此必须在需要时提供数据对存储节点进行激励。Crust和Swarm使用债务和信用机制,其中每个节点跟踪入站和出站流量与他们交互的节点是如何流动的。如果一个节点只接受入站流量,但不接受出站流量,则它会被取消优先级以供将来通信,这可能会影响其接受新存储订单的能力。Crust使用IFPSBitswap机制,而Swarm使用名为SWAP的专有协议。在Swarm的SWAP协议上,网络允许节点用邮票来偿还他们的债务,这可以用来兑换他们的实用代币。
图13:群记帐协议(SWAP),资料来源:Swarm白皮书这种对节点慷慨性的跟踪也是Arweave确保数据在请求时传输的方式。在Arweave中,这种机制称为野火,节点将优先考虑排名更好的对等节点,并相应地合理化带宽使用。最后,在Filecoin、Storj和Sia上,用户最终会为带宽付费,从而激励节点在请求时交付数据。代币经济
代币经济设计确保了网络的稳定性,也确保了网络将长期存在,因为最终数据只与网络一样永久。在下表中,我们可以找到代币经济学设计决策的简要总结,以及嵌入在相应设计中的通货膨胀和通货紧缩机制。
图14:已审计的存储网络的代币经济设计决策。哪一个是最佳网络?
不能说一个网络在客观上比另一个网络更好。在设计去中心化存储网络时,存在无数的权衡。虽然Arweave非常适合永久存储数据,但Arweave不一定适合将Web2.0行业参与者迁移到Web3.0-并非所有数据都需要永久保存。但是,一个强大的数据子领域的确需要永久性:NFT和dApp。最终,设计决策会基于该网络的目的。以下是各种存储网络的总结概况,它们在下面定义的一组尺度上相互比较。使用的尺度反映了这些网络的比较维度,但是应该注意的是,克服去中心化存储挑战的方法在许多情况下并没有好坏之分,而只是反映了设计决策。存储参数灵活性:用户控制文件存储参数的程度存储持久性:文件存储在多大程度上可以通过网络实现理论上的持久性冗余持久性:网络通过补充或修复来保持数据冗余的能力数据传输激励:网络确保节点慷慨传输数据的程度存储跟踪的普遍性:节点之间对数据存储位置的共识程度有保证的数据可访问性:网络确保存储过程中的单个参与者无法删除对网络上文件的访问的能力分数越高表明上述各项的能力越强。Filecoin的代币经济学支持增加整个网络的存储空间,用于以不可变的方式存储大量数据。此外,他们的存储算法更适用于不太可能随时间发生很大变化的数据。
图15:Filecoin总结概况Crust的代币经济学确保超冗余和快速检索,使其适用于高流量dApp并适用于快速检索流行NFT的数据。Crust在存储持久性方面的得分较低,因为没有持久冗余,它提供永久存储的能力会受到严重影响。尽管如此,仍然可以通过手动设置极高的复制因子来实现持久性。
图16:Crust总结概况Sia是关于隐私的。之所以需要用户手动恢复健康,是因为节点不知道自己存储了哪些数据片段,以及这些片段属于哪些数据。只有数据所有者才能从网络中的分片中重建原始数据。
图17:Sia总结概况相比之下,Arweave是关于持久性的。这也反映在它们的禀赋设计中,这使得存储成本更高,但也使它们成为NFT存储的极具吸引力的选择。
图18:Arweave的总结概况Storj的商业模式似乎在很大程度上影响了他们的计费和支付方式:亚马逊AWSS3用户更熟悉按月计费。通过移除基于区块链的系统中常见的复杂支付和激励系统,StorjLabs牺牲了一些去中心化,但显着降低了AWS用户关键目标群体的进入门槛。
图19:Storj总结概况Swarm的联合曲线模型确保随着更多数据存储在网络上,存储成本保持相对较低,并且它与以太坊区块链的接近使其成为更复杂的基于以太坊的dApp的主要存储的有力竞争者。
图20:Swarm总结概况对于去中心化存储网络面临的各种挑战,没有单一的最佳方法。根据网络的目的和它试图解决的问题,它必须在网络设计的技术和代币经济学方面进行权衡。
图21:已审查存储网络的强大用例总结最后,网络的目的和它试图优化的特定用例将决定各种设计决策。下一个篇章
回到Web3基础设施支柱,我们看到去中心化存储空间拥有少数强大的参与者,他们已针对特定用例将自己定位在市场中。这并不排除新网络优化现有解决方案或占领新的利基市场,但这确实提出了一个问题:下一步是什么?答案是:计算。实现真正去中心化互联网的下一个前沿是去中心化计算。目前,只有少数解决方案能够将去信任、去中心化计算的解决方案推向市场,这些解决方案可以为复杂的dApp提供支持,这些解决方案能够以远低于在区块链上执行智能合约的成本进行更复杂的计算。互联网计算机和Holochain是在撰写本文时在去中心化计算市场中占据强势地位的网络。尽管如此,计算空间并不像共识和存储空间那样拥挤。因此,强大的竞争对手迟早会进入市场并相应地定位自己。Stratos就是这样的竞争对手之一。Stratos通过其分散式数据网格技术提供独特的网络设计。我们将去中心化计算,特别是Stratos网络的网络设计视为未来研究的领域。结尾
感谢您阅读这篇关于去中心化存储的研究文章。如果您喜欢旨在发掘构建我们共同的Web3未来的基本模块的研究,可以考虑在Twitter上关注@FundamentalLabs。如果我遗漏了任何有价值的概念或其他信息?请在Twitter@0xPhillan上与我联系,以便我们共同巩固此项研究。完整作品可在Arweave、CrustNetwork上获得。披露:Fundamentallabs和我们团队的成员已经投资并可能持有本报告中提到的代币仓位。这些声明旨在披露所有利益冲突,不应被误解为购买任一代币的建议。此内容仅供参考,您不应仅根据它做出决定。这并非投资建议。原地址
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。