分布式存储可以从一下几个维度来进行对比:是否存储用户数据?chia就只是空间证明,用空间挖矿,不存储用户数据。storj和greenfield,ethstorage都需要存储用户数据,不然整个项目就没有办法赚钱了,尤其是greenfield和ethstorage,因为他们俩个没有自己的token
分布式存储可以从一下几个维度来进行对比:
阿里云等云厂商的对象存储的收费模式都是非常的灵活。比如:既可以包月,也可以按照实际流量然后按时间段收费。很多都是充值模式。 同时存储一个文件,有有多种收费项目对这个文件,包括:存储费用,下载费用,请求费用(请求次数),检索费用,处理费用,解冻费用(归档文件)等等。 而当下的分布式存储的收费策略受制于技术,缺乏灵活性。
cess甚至自己做了网盘,做了aws等各种工具。
cess有一个中心化的服务器,就是用TEE做的pre-process节点,这些节点会对用户上传的工具做分片,加密等工作。然后再传给SP。Cess采用的 Proof of Data Possession(PDP)来检验数据一直在SP那里存储着。
数据拥有证明是一种协议,允许客户端验证存储在远程服务云上的数据文件,原始版本的可用性。客户端和服务器根据模型Request-Answer交换消息。
协议PDP包括四种处理:预处理,查询,确认,检查。客户端C(数据所有者)预处理文件,生成本地存储的一小块元数据,将文件发送到服务器S,并可以删除其本地副本。服务器存储文件并相应客户端发出的质询。为了验证文件的所有权,客户端向服务器发送随机质询以检查指定文件的证据。服务器生成响应证明。此计算需要拥有原始数据和当前请求的数据,以避免重复攻击。收到后,客户端将证据与本地存储的文件元数据进行比较。
用于开发PDP的最简单的解决方案是基于散列函数的方式。客户端预先计算k个随机调用Ci,i∈{1,k} 并且计算相关证据Pi=H(Ci||D)。在该过程期间,客户端发送请求Ci服务器,其计算Pi'=H(Ci||D)。如果进行了比较,则客户端假定服务器使用正确的数据存储文件。此解决方案的缺点是-客户端只能验证服务器上文件的真实性k次。
通过对磁盘进行生成大型文件表格(专业名称叫做绘图),占有磁盘空间。这个表文件其实就相当于Filecoin的sector,后面都是根据挑战/响应协议来进行时空证明的。链会定期发送随机挑战,Chia里面的矿工(farmer)根据绘图的大型文件表格查找数据,进行响应。 跟BTC差不多,10分钟一个区块,用磁盘上的大型文件表格挑选数据进行难度值的计算,三年减半。没有智能合约,也不能存储真正的文件,也不需要GPU, 是一个纯粹的硬盘挖矿币。
从上面的存储项目分析后,我们知道,除了filecoin外,其余的分布式存储其实在技术都在取巧,没有真正从技术上面保证数据的安全。但是filecoin保证安全的PoRep,PoST算法也有一个大问题,就是需要很强大的机器做sealing的操作,这个对文件进行非常非常复杂的编码以后,文件的解码就是一个大问题,从而导致文件的检索不可能很及时(当然咯,阿里云深度冷冻的归档文件,检索也需要解封,也很慢)。
还有一个关于防文件丢失的问题,cess,crust,greenfield都是把文件分片或者整个文件的多复盘存储在不同的SP上面来解决这个问题的,而filecoin则没有从协议上面对多副本存储进行强制性固定,而是依靠SP自己在提供服务时,自行决策是否要采用EC这类技术来存储数据,因为数据丢失在技术上面保证了会被惩罚的。当然咯,发的钱够不够,其实当真正存储的时候,用户可以和SP进行商议,让SP在处理deal时增加质押金额。另外一个办法就是,用户自己把一个文件存储在多个SP中存储多份,从而保证冗余度。
参考: https://xie.infoq.cn/article/4a6613a635818f138c660cd33 https://www.cess.cloud/theme/cess/globe/Cumulus_Encrypted_Storage_System_v0.5.pdf pdp:https://www.jianshu.com/p/4be37a4ea802 https://wiki.crust.network/docs/zh-CN/gettingStarted
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!