IPFS的工作方式是使用内容本身的加密哈希来标识内容。要获取内容,IPFS对每一份数据文件都会进行加密,只有用密钥才能打开进行访问,而这个密钥只有用户一人拥有。黑客或者攻击者就算能够盗窃到数据,也会由于没有密钥而无法了解到其中的内容。需要首先获取这个文件的唯一加密哈希值。这里所说的额哈希值是一个防篡改的数字指纹,这一个256位数字,几乎可以唯一地标识每个内容。
除了最初的发布者外,没有人会知道这个唯一的加密哈希值。在这种情况下,用户最终会连接到位于地球另一端的发布商的计算机。同时,系统会选择距离请求最近的拥有内容副本的节点对用户的请求做出回应。由于加密哈希是防篡改的,因此用户可以从附近的人那里下载副本,并确切知道它是否与用户请求的内容相同。系统会自动重新计算内容的哈希值,以验证内容是否符合用户的要求。
因此,IPFS的存储方式开创了一种全新的安全模式,对所有的内容都进行加密,有效保证了数据的安全,保护了用户的隐私权,实现了存储方式发展史上最大的一次完善。
加密哈希值生成方式使用了ipfs的一个模块Mutiformats
Mutiformats是一系列hash加密算法和自描述方式(从值上就可以知道值是如何生成)的集合,它具有SHA1\SHA256 \SHA512\Blake3B等6种主流的加密方式,用以加密和描述nodeID以及指纹数据的生成。
https://github.com/multiformats/multiformats
https://multiformats.io/
网友评论