最近社区有朋友问IPFS中是谁来进行加密。这个问题用我前几天文章中的一幅图就可以很清楚地解释。
在前几天的文章中,我和大家分享了IPFS是如何把一幅图存储进系统并为这幅图生成一个哈希值的。这个过程如下图所示:
在这个过程中,图片或任何用户上传的原始资料先被切分为碎片(Chunks),这些碎片每一个都不超过256Kb,然后这些碎片每一个都会被作为输入进行一次SHA256哈希运算得到一个Digest值。
然后这些Digest值再经过Multihash运算得到多个CID,这些CID最终经过Merkle DAG被组合成Base CID。
在这个过程中图片本身并没有被改变而是被切分,无论是切分前完整的图片还是切分后图片的多个碎片都没有被进行任何加密运算,而只经过哈希运算生成CID。
也就是说在IPFS中图片的原始内容是存在的,只不过被分别存储在不同的节点上。这意味着在理论上如果有黑客把存储在若干个节点上的图片碎片全部都找到并拼接起来他就能看到完整的图片。但是黑客要做到这一点会非常难,因此在实际操作中几乎不可能。
那么怎么样算是图片被加了密呢?如果黑客把存储在若干节点上的图片碎片都找到并拼接在一起看到的图片也不是原始图片,那就说明图片被加过密了。
所以用户如果希望上传的资料被加密就只能自己执行这样的操作。首先将希望上传的资料加密,然后再把加过密的资料上传到IPFS。
这样,即便真的有一天IPFS被破解了,黑客拿到了客户上传的资料,看到的也只是经过加密后的文件而看不到用户的原文件。
实际上,执行加密操作并不难。
经常使用电脑办公操作的人士都熟悉一款名为“WinRAR”的压缩软件工具。这款压缩软件工具是把一个文件进行压缩生成一个压缩包,在压缩的过程中,用户可以选择给这个压缩包加一个密码。这样即便这个压缩包被第三方拿到,第三方想打开这个压缩包看文件原文也需要输入密码才行。
所以对安全方面有较高要求的用户在使用IPFS存储文件时,可以先将文件用这个压缩软件压缩并加密,然后把加密压缩包上传到IPFS系统,这就给原始文件加上了一层保护。
IPFS并不完美,没有加密功能就是其缺陷之一。这个缺陷也被业内其它项目指出过。但是这个缺陷瑕不掩瑜,IPFS最大的突破和特点就是实现了文件的去中心化存储和分发,为区块链技术在存储领域中的应用开辟了一条独特的路径。
这也是IPFS协议真正胜过中心化云存储方案的核心优势。
我是IPFS/Filecoin社区发起人晓熙(加入社区,联系v号: liandaoxixi),IPFS/Filecoin是全球共识最大的去中心化存储项目,我会定期在社区分享专业的资讯,为IPFS/Filecoin爱好者建设一个共赢的学习社区。
本文来自,仅作分享,存在异议请联系平台删除。本文观点不代表刺猬财经 - 刺猬区块链资讯站立场。