您的位置:曝曝君首页 > 金融资讯 > 区块链 > IPFS 缺乏隐私机制,用户该如何保护数据隐私?
IPFS 缺乏隐私机制,用户该如何保护数据隐私?

曝曝君

2020-09-04 发布

在以前的文章中,我讨论过 IPFS 的隐私,提到过 IPFS 在隐私方面的局限性。今天我和大家更详细地分享一下关于 IPFS 的隐私。

关于 IPFS,有不少读者都有这样的误解---当用户把文件存储在 IPFS 系统中后,系统会对存储的文件产生哈希值,如果哈希值(也被称为 CID)不公开,那么存储的内容就不会公开。

实际上,这是一种误解。

当用户把文件存储到 IPFS 网络后,系统所产生的哈希值是有可能会被给到系统中任何节点的,只要有节点要检索那个文件。因为如果这个文件的哈希值不分享给其它节点,就没人知道系统中存储着这份文件,其它节点就没法检索文件。

现在这个问题看起来还不大,这并不是因为 IPFS 已经有了隐私保护机制,而是因为 IPFS 还是个很年轻的项目,使用还不够广,人们使用它做的项目还不多,人们还没有认真去考虑如何监控 IPFS。

那么 IPFS 的哈希值为什么是公开的呢?

IPFS 像很多其它的分布式存储技术一样使用了分布式哈希表(Distributed Hash Table,DHT)。当 IPFS 存储了新的文件时,它会向系统中所有的节点广播。

这样系统中的所有节点才能知道去哪里找这个文件。越多节点知道,这个文件就越容易被检索。

系统的这种广播行为是在内部发生的,它是 IPFS 的工作原理之一。但在商业应用领域,这种广播行为就变得非常敏感了。

出于商业利益考虑,如果有公司知道这样的事情会发生,为了搜集情报,公司会尽可能记录所有被广播的内容。

记录的方法也很简单,只需要在 IPFS 节点中加上日志功能记录下所有被广播的哈希值就行。

不仅哈希值是公开可被追踪的,检索内容的用户也可以被追踪。

当一个节点需要从 IPFS 系统检索某个内容时,这个节点会向它连接的所有邻居节点发送检索请求。因此,完全可以仿照记录哈希值的办法,对内容检索的请求也详细的记录下来。这样一来,哪个节点曾经检索过什么内容就一清二楚了。

有没有办法在 IPFS 中保障隐私呢?

有,我们分享几种常用的办法。

第一个办法就是构建私有的 IPFS 网络

私有 IPFS 网络能提供最高等级的隐私,保护内容不被非相关人员看到。私有 IPFS 网络在工作原理上和公有 IPFS 网络是一样的,唯一的区别是它只允许网络中的节点查看信息。

接入私有 IPFS 网络的节点需要私钥。因此构建私有 IPFS 网络时,最关键的就是要保护好私钥,严防外泄。

第二个办法是内容加密

如果不使用私有 IPFS 网络,而在公共的 IPFS 网络中存储文件,那建议用户在上传文件之前先对文件内容进行加密。尽管这没办法阻止哈希值被广播,但即便有人拿到了哈希值也无法看到文件原文。

第三个办法是使用网关

网关在保护数据隐私方面也可以派上用场。当用户检索内容时,可以用网关隐藏他们的真实身份。

使用网关在公共的 IPFS 网络中检索,其他节点看到的就只是网关在检索内容而不知道利用网关进行检索的用户。

不过这里也有一个隐患,那就是网关可能会记录用户的检索行为。因此如果对此不放心,用户还要另外再想其它办法保护自己的身份。

当我们使用 IPFS 时,要铭记在心的是我们实际上使用的是公共网络。我们在公共网络上的每一个行为都可能被记录被跟踪。

尽管我们给出了几种保护隐私的办法,但是每一种都有它的长处和短处。用户要根据自己的实际情况选择合适的方式。


更多金融资讯请持续关注曝曝君