IPFS的优势和不足

IPFS原意是指一种点对点的去中心化内容分发协议,而包括其开发者自身在内的很多人往往也用IPFS指代实现了IPFS协议的系统。

IPFS是完全去中心化的设计,每个节点都是对等的。每个节点维护一张DHT(分布式哈希表),包含相应数据块与目标节点的对应映射关系。整个DHT被组织成二叉树,平均查询联系节点的复杂度是O(log2N),例如要查询1000万节点最多需要20跳。

IPFS基于内容寻址,通过文件或数据块的Hash值,IPFS便可自动在全网节点中找到拥有这些数据块的节点,并从节点上拉取数据。

上传数据到IPFS时,IPFS会把文件分块后保存到本地IPFS节点的blockstore,并记录元数据。将来其它节点需要读取该数据时,就会将数据拉取到该节点,从而增加一份副本。有更多的节点都读该数据时,该数据就会在IPFS网络上有很多副本。

IPFS的优势

IPFS所宣传的目标是补充甚至取代现在上网所用的HTTP协议。人们用IPFS加内容Hash值访问网页,代替现有的http加域名的方式,只要IPFS网络上有该网页,不管是被移动到了哪个节点上都能访问到该网页,使得网站内容可以更长久和有效地存在。

IPFS也可以作为CDN使用,因为其热数据在全球各地都有副本,用户根据内容寻址,就近拉取。如果是没人用过的冷数据就不占用额外的存储空间。CDN的市场有大约100亿美元左右,这是IPFS可以发力的市场。

IPFS的不足

IPFS虽然有诸多的优点和光环,但其设计还不能满足持久化存储市场需求。如果没有其它节点拉取该数据,就只有本机存有该数据的孤本,一旦本机出现故障,该数据就会丢失。也就是说,IPFS并不自动对数据做冗余,更没有心跳监测和自动数据重建。因此,IPFS没有数据持久性保障机制。换句话说,IPFS并不能保证所存储的数据内容永久不丢。

IPFS没有设计数据持久性保障机制,与IPFS不对数据加密有直接关系。根据伦理要求,IPFS不能把数据自动推送到其它节点,以避免将色情图片推送给女性,或者将宗教禁忌内容推送给不合适的人。如果是加密数据,都是看不出内容的随机数一般的密文,就不存在这个问题,但对明文数据就必须考虑这个伦理问题。

IPFS不加密,与IPFS没有密文去重技术有直接关系。众所周知,密文去重是YottaChain独家拥有的专利技术,IPFS就只能在加密和去重之间二选一。IPFS选择了数据去重,牺牲了数据加密,就导致了IPFS的数据持久性保障机制的缺失。

IPFS不加密,还直接导致了IPFS的数据安全性保障机制的缺失。上传到IPFS的数据对任何人都是开放的,只要知道Hash值就可以读取。如果说BAT这样的中心化平台会偷用户数据作恶的话,那也只是一个人偷,而将数据存储到IPFS这样的没有数据安全性保障机制的去中心化存储系统,就变成了人人都可以偷数据。毕竟,将数据不被偷的希望寄托在没人知道该数据的Hash值,就相当于将隐私数据放到一个公开的网站上,赌没有人知道该网站的域名。

IPFS对硬盘资源的利用率也不高,有抽样调查表明,IPFS只利用了70%的硬盘空间,其余空间被浪费了。

IPFS的并发性能也有待提高,很多用户都反映并发数超过2就会拥堵甚至出错。

IPFS的宣传误区

由于IPFS涉及很专业的领域,导致一些非专业人员在宣传时经常因为误解而出现不实宣传。其实,只要认真阅读官方网站就不难发现一些常见宣传的谬误之处

误区一:IPFS可以永久保留数据。

真相:由于IPFS并没有数据持久性保障机制,IPFS并不是为永久保留数据设计的。但是IPFS能让你找到IPFS网络上其它节点保存的相同数据,因此只要全网还有这个数据,你就永远能找到该数据。对于很多人都用的数据(即热数据)就不会丢,但对只有你自己用到的数据,或者需要按法律规定保存10年甚至20年但在此期间根本没有人拉取该数据的,IPFS并不是一个适合的存储方式。10年后原始保存该数据的硬盘已经坏掉了,但由于从来没有人拉取过该数据,也就没有在其它地方有副本,该数据就永久丢失了。

误区二:IPFS不用担心隐私泄露

真相:IPFS没有数据安全性保障机制,并不对数据做加密,你上传到IPFS的任何数据都是暴露在所有公众面前的,因此对于隐私数据需要在上传前自己做加密。但加密后的数据的hash值就是密文的hash值了,除了你自己以外是不会有人拉取该数据的,因此也就不能指望还有其它节点保存该数据了,你的数据就注定只有一个孤本,你自己必须承担妥善保管该数据的责任(即需要你自己来建立一套数据持久性保障机制)。

误区三:IPFS的性能很高

真相:当你将数据上传到IPFS时,IPFS实际上只是将数据保存到你本机的IPFS节点内。也就是说,数据还在你本机上,只是挪到另一个目录了。由于数据并不在网络上传输,就显得性能很高。同理,当你从IPFS读取数据时,很可能读的是你之前上传的内容,因此本机的IPFS节点上就存得有该数据,IPFS就又从本机复制给你了,也显得性能很高。但是如果本机没有数据,就需要用分布式哈希表来查找,一个分布式哈希表只能记录全网的部分元数据,需要跳几次才能找到数据,这时性能就不够高,再加上IPFS并发性能不够理想,此时的下载速度就未必能达到你的期望值。

结合区块链IPFS可以实现数据共享的方式是通过将数据存储在IPFS网络中,并在区块链中记录相关的元数据和访问权限。 首先,IPFS是一个分布式文件系统,它使用内容寻址来存储和检索数据。每个文件都有一个唯一的哈希值作为其地址,并且可以通过这个地址来验证和获取文件内容。这意味着我们可以在IPFS网络中存储数据,并且只需存储一次,即可在全球范围内轻松共享。 然后,区块链可以用于记录和管理数据的元数据和访问权限。例如,我们可以在区块链中创建一个智能合约来管理特定数据集的所有权和访问权限。该智能合约可以包含数据集的名称、描述、创建者、所有者和访问控制规则等信息。只有满足访问控制规则的用户才能够使用该数据集。 当用户想要共享数据时,他们可以将数据上传到IPFS网络,并在区块链上创建一个记录来指示该数据集的存在和访问规则。其他用户可以通过查询区块链来获取数据集的元数据,然后使用IPFS哈希值来获取实际数据。只有在满足访问规则时,才能成功获取数据。 使用区块链IPFS结合提供了诸多优势。首先,IPFS的分布式特性可以确保数据的高可用性和抗审查。其次,通过将元数据和访问规则记录在区块链中,可以实现透明的数据共享和权限管理。最后,由于数据只需存储一次,可以减少存储成本并提高数据获取的效率。 综上所述,结合区块链IPFS可以实现一种安全、透明和高效的数据共享方式。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值