金色硬核 | 深入比较Arweave和Filecoin
强烈建议你自己深入研究Arweave和Filecoi各自的文档。
协议自己的定义:
Filecoin
Filecoin是一个开源云存储市场、协议和激励层。
Arweave
Arweave是一种新型存储,以可持续和永久的禀赋支持数据,第一次允许用户和开发人员真正永久地存储数据。
这两种说法都没有说太多,所以让我们试着了解他们真正在做什么:
Filecoin的简短描述中最重要的词是“市场”。想象一下当前的云存储服务,但是去中心化的。不是像AWS公司一样管理全球整个基础设施并为其服务定价,而是允许任何人将其存储容量借给其他同行。它确保了一个双方可以签署无需信任的合约层,该合约就存储期限、存储信息量和成本达成一致。
对于Arweave,定义词是“永远”。它的主要目标是创造激励措施,以确保在很长一段时间内去中心化存储数据。这种机制与Filecoin不同,它为想要在Arweave上存储数据的人带来溢价。简化地讲,你为200年的存储预付费用,并有可能使该特定数据存储更长时间的潜在好处。
深入了解
Filecoin建立在开源协议IPFS之上 。在某种程度上,可以将Filecoin视为支持IPFS点对点框架的去信任经济层。单独而言,IPFS没有内置机制来激励其节点在一定时期内存储特定数据。Filecoin通过提供两个角色来做到这一点:Filecoin节点(或客户端)和Filecoin矿工。除了广播“消息”(与其他区块链中的常规交易一样)的能力外,客户还可以向矿工提出存储和检索的“交易”,并在协议到位后向与他们进行交易的矿工付款。
目前,有两种类型的矿工——存储矿工和检索矿工。显然,如果你想上传一些数据,你必须与存储矿工达成协议。该协议确保这些矿工通过两种不同的证明机制保持他们的讨价还价:
复制证明 (PoRep) 和时空证明 (PoSt)。 了解它是如何工作的对于理解你将在后面遇到的咆哮至关重要。
使用复制证明(PoRep),矿工证明他们已经收到了所有数据,并且他们已经使用他们的物理存储以该矿工独有的方式对其进行编码,这种方式是其他矿工无法复制的(所以两个相同的交易数据最终不能重复使用同一个磁盘)。此证明在交易开始时提供,并且密封操作完成。
因此,复制证明(PoRep)的一线希望是每个矿工都对一段数据进行唯一编码。如果一个客户出于冗余目的与另一位矿工达成另一笔交易,该矿工将以另一种方式对同一条数据进行编码。编码过程称为“密封”。
进一步看看时空证明 (PoSt):
一旦交易处于活动状态并在其整个生命周期内,矿工将使用时空证明 (PoSt) 来证明它仍在存储与交易相关的数据。对于时空证明 (PoSt),随机矿工需要证明他们存储的数据的随机部分仍然存在。
Filecoin客户和其他矿工不断验证每个区块中包含的证明是有效的,提供必要的安全性并惩罚不履行交易的矿工。
这意味着可以在整个交易期间对矿工进行审查,如果不能提供“密封”文件,矿工将受到处罚。惩罚包括削减矿工从一开始就作为“抵押品”放置的Filecoin的一部分。如果你只与一名矿工进行交易,则可能会丢失你的数据;当然,它会受到惩罚,但是,你的数据将会丢失。
检索矿工的目的是解码存储矿工存储的“密封”文件并将其发送给客户端。此过程32G块大约需要3小时 + 实际传输时间,而实际传输时间具体取决于客户端和矿工的带宽。
Filecoin中的数据检索在他们的文档中得到了广泛的解释。现在,鉴于存储数据的编码状态,他们鼓励矿工以可读格式保存相同的数据,以便为快速检索做好准备。默认情况下,特定的 Filecoin客户端(如Lotus)会在矿工端启用这种数据复制。
Arweave与Filecoin相对,是建立在HTTP之上的。它的永久存储提议与协议完全不同。数据存储在blockweave上,blockweave区块结构与传统区块链有重要不同:Arweave区块连接到最后一个区块和另一个随机的前一个区块。
这种结构允许blockweave成为一个分片的、可扩展的系统,允许存在不存储整个区块链的矿工。Arweave的期望输出分别是——永久存储上传到blockweawe上的文件,由称为SPoRA的共识机制保证。
SPoRA是对之前共识的改进,基于PoA+PoW。简而言之,PoA( Proof of Access,访问证明)使矿工授予他们正在存储先前随机区块以挖掘新区块的证据。如果他们没有存储该区块,则另一个存储该区块的矿工将挖掘新区块并随后获得奖励。如果矿工存储了所有先前的区块,再首先通过PoW(工作证明),则由他来挖掘某个新区块。
此外,SPoRA所做的是,区块出现概率与数据访问速度的关系比与PoW的关系更大。这激励矿工不仅选择存储更便宜的区域,而且在地理上均匀分布。因此,在一种共识机制中,Arweave解决了将你的数据备份到多个服务器(矿工)和不同地理区域的可能性。
与Filecoin不同,矿工无需投入任何AR即可开始挖矿。相反,他们必须确保他们拥有相当强大的机器和相当昂贵的存储解决方案,以实现更高的SPoRA速率(显然,在未来,Arweave甚至会给低成本的HDD一个战斗机会)。
这张图表显示了Arweave如何解决永久性存储经济学问题的基本机制,该图表来自这篇精彩的文章(https://coinyuppie.com/arweave-an-experiment-in-permanent-storage/)。
存储成本
在Filecoin,很难确定实际的存储成本。用户必须考虑想要为特定数据进行的交易数量、是否会为将来的数据检索付费、希望存储数据的时间等等。可以说,仅将数据存储给一个矿工是非常便宜的。你可以在这里查看。显然,现在每月在Filecoin上保持1G的成本是Amazon S3成本的0.01%……我知道,这太疯狂了。
Arweave有一个更直接的方法。总体存储成本基于我之前讨论的200年存储估计成本(今天的存储成本每年减低0.5%)。它的存储成本会根据AR波动,以实现某种对法定货币的稳定性。它借助内置机制来做到这一点,该机制在AR价格较低时降低对PoW的需求,反之亦然,如果AR价格较高,如下图所示。
目前,永久存储1G数据的成本约为10美元,可以在此处查看(https://arweavefees.com/)。
存储以外的其他用例
Filecoin和Arweave都在利用自己的智能合约解决方案。
2021年11月11日是Filecoin虚拟机的发布日期。基于WASM构建,它允许Filecoin成为以多种语言编写的智能合约的第1层(原生接受RUST,但也允许EVM语言如 Solidity)。
Arweave的解决方案,称为SmartWeave,目前可以说是第三次技术迭代,由RedStone Finance和Verto领导的改进。正如Arweave创始人Sam Williams所说,SrmatWeave“使用这种称为‘惰性评估’的新型评估方式将智能合约执行的计算负担从网络中的节点转移到智能合约的用户身上。”
最终判断
当我开始写这篇文章时,我的脑海中有一个比较清晰的总结:
“对于数据持久性的用例,Arweave可能是正确的选择,但对于短/中型存储用例,Filecoin的价格主张使其成为更好选择。”
我想保持礼貌和中立。但不幸的是,Filecoin的当前状态并没有改善将为web3提供动力的去中心化云存储的叙事。我没有编造任何事情,只是陈述事实。
还记得我描述的挖矿机制吗?这意味着默认情况下“热存储”是不可能的。你不能像使用存储在常规服务器上的文件一样使用存储在Filecoin上的文件。矿工确实可以复制你的数据并将其存储为可读的初始格式,但他们没有这样做的动机。
基本上,矿工存储的信息量应该是S3解决方案存储量的两倍,并且会从AWS收取的价格中收取0.01%的费用。我想知道在更长的时间范围内以竞争收取的一小部分成本维持双倍存储是多么可行。
即使矿工也会以原始格式存储数据,无论如何你都必须为检索付费,等待交易在链上得到验证,然后期望检索矿工将你的数据发送到链下。你将等待这些程序多少秒?可能至少一分钟?
想象一个由它驱动的dApp。在最坏的情况下,检索将需要几个小时,在最好的情况下……谁知道……5分钟?好吧……但如果近乎即时检索不是Filecoin的强项,那它是什么? 它有什么意义? 产品与市场的契合度如何?它非常便宜,但你到底要付什么钱?为了获得相对接近体面的体验,他们建议将Filecoin存储与IPFS配对。
由于数据检索过程中涉及的各个步骤,Filecoin存储目前满足与传统温存储或冷存储类似的性能标准。为了获得与其他热存储解决方案相似的性能,大多数用户使用Filecoin和IPFS等缓存层。这些混合和多层存储解决方案使用IPFS进行热存储,使用Filecoin进行负担得起的、频繁的和版本化的备份。
最后,这不是说Filecoin的使用只是作为IPFS的冗余层吗?
此外,提议的热层有多快和可靠?从理论上讲,它可能比HTTP更快。你可以查看此处以了解它的实际工作原理。不幸的是,目前的现实与理论相去甚远。这在很大程度上取决于有多少 IPFS节点拥有该特定数据,它们与你的位置有多近,它们的带宽等。
我没有明确的IPFS文件检索期限,但你可以直接查看仅检索存储在IPFS上的文件的dApp需要多少加载:查看tux.art NFT铸造平台和市场。这种检索速度是否足以让普通的Web2用户使用新的和改进的Web3?是否有任何大型NFT市场使用IPFS作为默认的热存储层?不。所有文件检索都依赖中心化服务来获得体面的用户体验。
我想为Web2中心化服务提出意见吗?当然不!我试图展示的是,我们面前有一个明确的用例:让我们为最终用户创建一个真正去中心化、快速、短期和中期的热存储解决方案,几乎可以即时检索。如果你更喜欢IPFS而不是HTTP,那么,去吧,让它发挥其真正的潜力。
相反,Filecoin似乎存在身份危机。它希望“永久”存储数据,并且在此过程中使其更难被检索。
好的,它作为一个持久层有多好?与最持久的存储矿工一样好,你将与之签约。假设你将与 100名矿工签署一份相同数据的交易,并购买50年的前期存储。你真的相信在一两年之后,至少会有一个最初的矿工启动并运行吗?解决方案是为x年的“持久”存储向n个矿工支付费用,然后每年,你必须看看有多少仍然活跃。如果他们的数量低得吓人,你必须在本地检索你的数据并再次与其他矿工签署其他交易。这不是Filecoin在IPFS的情况下试图解决的问题吗,只是在更长的时间范围内?
实际上,它不依赖于网络权力,这是去中心化的先天特征。在Arweave的案例中,你只需支付一次费用,随着时间的推移,你会期望存储你的数据的矿工数量会增加。发生这种情况是因为你将文件扔到网络中,这是一种激励成员存储该数据的协议。如果一名矿工遗忘,另一名矿工将取而代之。你不在乎谁在给定时刻持有你的数据;你支付了一个协议,一个比它的成分总和更高的实例。Filecoin点对点方法,即使本质上是去中心化的,也使每个点都成为潜在的故障点。如果一个十年的交易能够实现,那将不是Filecoin的网络效应优点,而是实际存储矿工的优点。
最重要的是,Filecoin不是在激励“好”行为,而是在对“坏”行为征税,即使这种“坏”行为是固有的并且超出了矿工的能力范围。
如果我们不小心丢失了一个扇区怎么办,有什么办法可以解决这个问题吗?
如果你丢失了数据本身,那么不,没有办法恢复它,你将因此而受到惩罚。但是,如果数据本身是可恢复的(假设你刚刚错过了WindowPoSt),那么恢复过程将使你重新获得该扇区。
这种整体的厚实感让你感觉被过度设计了;是的,这是一项美丽的技术。我知道投入了多年的工作,但它真的需要当前状态下的复制证明吗?我的意思是,好吧,我可以在一定程度上理解为什么他们为每个存储矿工引入了唯一的编码文件系统,但是完全缺乏短时间检索值得吗?
从链中读取近10MB。需要多长时间可以开始播放?
你可以在此处查看负责上传此文件的交易, 并通过“链接”按钮访问该文件。可以说更“持久”、不可篡改并且总体上更容易访问。
Web3将由其小用户提供支持。使你的产品足够复杂以达到其目的,仅此而已。Filecoin的全部技术实力在用户体验方面被一个简单的中心化dApp抵消了。询问任何随便依赖IPFS的人是否使用Powergate之类的解决方案,或者他们选择使用Pinata。
我知道有完全不同的东西,但关于预期的结果,它们提供的东西不是一样吗?如果你购买Pinata服务5个月,这些文件是否肯定会在IPFS上存在5个月?
Filecoin拥有一支优秀的团队,拥有庞大的资源,因此向一个或另一个方向转变并非不可能:他们是否会寻求适当的持久存储并放弃点对点方法,或者他们是否会尝试成为一种快速检索存储解决方案短期和中期,将放弃编码废话?现在对我,一个普通的Web3用户来说,他们没有做任何令人满意的事情。