IPFS作为一个网络集成系统他未来的应用空间肯定是非常大的,但是毕竟做的是数据的存储,而且是数据的分布式存储,随之肯定会有很多人担心其中的安全问题,那今天就来为大家解答一下大家非常担心的IPFS的安全问题。
1、文件丢失;因为做的是分布式的数据存储和传输,其安全性肯定有待考证,也确实有很多人认为IPFS系统不可靠,会造成用户文件的丢失;实际上IPFS系统采用的冗余备份技术是Erasure coding(EC,纠删码)
那么什么是EC?
简单讲:n份原始数据,增加m份校验数据,此时可以通过 n+m份数据中的任意n份数据来恢复原始数据,也就是可容忍的最大失效的数据数量为m。例如,如果想容错4个盘,采用n+4模式。传统的 RAID6 允许两个盘失效,对应 EC就是 n+2模式。EC目前在分布式存储上的应用越来越广。
IPFS把整个系统的存储统一调度,所以IPFS自带容灾备份功能,即便是一个地方的发生地震,存储在这个地方的数据几乎被摧毁,那么IPFS系统会立即启动修复,把存储在地震所处地区的数据恢复至其它地方。你大可以放心存储在IPFS系统里面的数据安全,比目前你所使用的那些云服务都要安全,而且成本更低。
2、文件所有权;没错,肯定也有人会担心,毕竟是分布式存储,我上传的文件的安全性和所有权怎么来体现呢?
即:如果我上传一个文件是不是可以任意被其它人查看?
是的,在IPFS里面并没有文件所有权的问题,这跟我们目前的web使用是一样的,数据本身没有所有权,所有权是通过应用实现的。IPFS认为,如果其他人同样拥有文件的哈希,那么他一定拥有文件,这跟我们现在的web使用是一致的。
同时IPFS也引入了私有网络(Private Network)的概念:
允许你在IPFS网络里面创建私有网络,你只需要把自己节点的密钥发送给对方,对方节点经过设置之后就可以链接到你的节点,进而创建一个私有网络,这个功能其实创造了很大应用空间,上层应用完全可以使用这个概念把自己的应用打造成基于IPFS的私有网络。
如果你存储的文件是不想别人看到的文件,在存入IPFS之前对文件进行加密即可,这样即便是别人拥有了文件哈希,还需要私钥来查查看数据。
利用百度的网盘举个例子:你在百度网盘里面存入了一张照片,为什么只有你能查看呢?因为你拥有查看文件的密码,就是你的登录密码。那么你如果上传到百度的文件共享出去了,是不是其他人都可以查看了?你只需要把共享链接发过去,对方就可以查看。
IPFS在使用上跟这个是一样的:
上传的照片如果没有加密,那么默认所有人都可以查看,前提是对方需要拥有文件的哈希值,这跟你使用百度网盘共享后发过去是一样的。
上传的照片如果经过加密,那么只有拥有密钥的你才能查看。
IPFS只是一个分布式的数据库,文件系统,怎么使用完全取决于前端的应用。IPFS打造是一个高可用,高速的分布式存储系统。
3、肯定就是大家非常关心的监管问题了
任何新技术的诞生都会伴随着各种各样的争论,这个问题已经存在了上千年了,技术是用来推动社会进步的,一项新技术能够在经济层面巨大的提高我们的社会运转效率,我们要学会运用这样的技术,限制它的弊端。而IPFS作为一项新技术是非常安全的,应用场景足够的广,而且比传统的服务器、存储器成本要低很多,它跟HTTP一样,不属于任何国家,任何个人,是一个全球性的项目,各行各业,各个国家都是积极的拥抱IPFS这个新技术的到来;同时,我们完全有理由相信,这样的IPFS会给这个世界带来很多美好的改变!