是否可以确定某些给定数据是否未加密?

信息安全 加密 位信息
2021-08-14 13:42:17

假设我正在运行一个BitMessage节点。对我的一种可能的攻击是将非法内容上传到我的节点,一旦有人知道它在那里,就向当局举报,然后他们会搜索我的计算机并发现非法内容。

但是,所有内容都应该被加密,除非您拥有私钥,因为消息是发给您的(或者您想尝试所有公钥的所有可能组合以查找广播消息),否则您实际上不能阅读内容。

话虽如此,攻击者可以向其他具有未加密有效负载的节点发送消息接收节点假定所有消息都已加密,并且它们尝试使用其所有私钥(或您要订阅的广播发送者的公钥)解密每条消息。为了防御这种攻击,接收节点必须能够拒绝具有未加密负载的消息。

这可能吗?随机性测试会起作用吗?如果数据被压缩了,那还能用吗?

编辑

@Gilles - 他们确实可以上传任何消息,甚至加密,然后给警察钥匙。然而,你有合理的否认。

但是,有一些方法可以破坏看似合理的推诿。首先,攻击者可以做我上面描述的事情,并找到一些方法来传输大量未加密的内容。他们甚至可以发布一个定制的 BitMessage 客户端,让您轻松阅读消息。其次,我可以在网络上发送加密的广播消息,并公开我的BitMessage地址,这样每个想要订阅的人都会发现这样做很容易。在这两种情况下,您从我的硬盘上“读取”非法内容所需的只是一个免费且易于获得的软件。

解决这个问题的唯一方法是使用 BitMessage 地址黑名单,这是不可行的,因为为了检查消息是否应该被列入黑名单,我必须使用每个已知的列入黑名单的公钥尝试解密。这将使网络陷入困境。

现在让我问你,如果你的硬盘上有千兆字节的 CP 图像,但你没有安装任何可以查看它们的软件,即使你知道该软件的存在,如果你查看它,做你认为任何法官都不会认定你犯有占有罪吗?

我看不出这不是 BitMessage 协议的根本缺陷。(从技术上讲,这是我们法律中的一个缺陷,我意识到这一点,但是这样的协议是存在的,并且由于这样的法律是必要的。)

3个回答

假设 Bitmessage 可能被用作一种“特洛伊木马”来向您的机器引入非法内容,存在一些问题:

  • 单个节点包含来自网络上其他用户的混合内容。因此,任意节点不太可能拥有重组非法内容所需的所有部分。

  • 内容只缓存了两天,在这段时间之后,这些
    内容将从所有节点中删除

  • Bitmessage 使用公钥加密,只有消息的接收者才能解密它。除非您是收件人,否则执法部门应该无法破译您机器上的内容。

这是一个有趣的问题。你是对的,理论上,未加密的内容可以作为对象插入到 Bitmessage 网络中,如果它满足某些条件(有效的对象类型、足够的 PoW,......),节点将存储和分发这样的对象,直到它过期。

这是否意味着节点运营商违反了有关儿童色情的法律是一个很好的问题。hg.org写道(强调):

显然,制作儿童色情制品是非法的。但是,故意拥有、分发、接收或意图分发任何形式的儿童色情制品也是违法的。每种行为都可能受到不同的刑事处罚。无意访问通常不是非法的,例如不小心点击了将网络浏览器指向此类描述的链接。但是,重复访问可能会显示出足以定罪的行为模式。

. . .

故意拥有、制造、分发或“意图查看”儿童色情制品既是联邦犯罪,也是州犯罪。

换句话说,节点运营商不一定违法(我想从实践的角度来看,这取决于法官)。另一方面,攻击者可能是。

关于是否可以过滤此类消息,我不知道。但我个人不会支持这种做法,因为它违反了 Bitmessage 的反审查特性。

我认为这不是问题。但首先要回答实际问题:

不,这是不可能的,但有合理的把握是可能的。

被压缩的数据具有低熵,但它可以被识别为被压缩,如果没有其他方法,那么通过查看魔术常数或通过解压缩程序运行它。如果它成功解压缩,它会被压缩(嗯,呃!),并且未加密。如果它不解压缩,它要么没有被压缩,要么被压缩加密。

加密的数据(使用任何类型的非完全烂算法)实际上与随机数据没有区别。随机数据不压缩。因此,尝试压缩数据。如果生成的大小相当小(例如,超过 3-4%),则它不是“与随机数据几乎无法区分”。这意味着它没有加密。
否则,它要么是随机垃圾(占用存储空间,但在其他方面无害)或加密。

现在,为什么我认为这不是问题?

对于您描述的那种攻击,我不需要 BitMessage,我也可以通过电子邮件向您发送大量非法内容(嗯,我不能,因为我不拥有任何东西,至少我不知道...但让我们假设我可以)。
当警察没收你的电脑时会发生什么?应该不多吧。如果其他人向您发送电子邮件,这不是您的责任,而且您确实无法阻止这种情况发生。那么,惩罚你的依据是什么?如果有人,发件人将被追究责任(如果他们能找到他)。

BitMessage 与电子邮件没有太大区别。您的公钥是……嗯…… public因此,每个人都可以简单地对消息进行编码,以便使用您的私钥解密(这就是公钥加密的重点)。您无法控制谁使用您的公钥,因此您几乎无法对使用它的人负责。
当然,一旦你发现你收到了非法内容,尽职调查要求你删除它,看看拥有是如何违法的(从最严格的意义上说,你可能还需要对“未知”提出指控,因为你了解犯罪行为,但您必须请律师确定——无论如何,报告该事件将是您无辜的有力指标)。

从现实生活中类比。一个强盗被警察追捕,把一个装满赃物的手提箱扔进你的花园,这样他们就没有证据证明他——跑步本身并不违法(这实际上发生在我父母身上,当时我 4-5 岁岁!)。
所以,从一个时刻到另一个时刻,你现在拥有赃物,这是重罪。如果你留着它们,卖掉它们,你被抓住了,你确实会遇到麻烦。但你真的如果您向警方报案,预计会被判刑吗?或者,如果警察在他们经过时发现了那个手提箱,然后按响了你的门铃,询问他们是否可以看看你花园里的那个手提箱,你果然让他们进来了,因为你第一次看到那个手提箱生活?这将使我们深入到 Bizarro World。

假设有人设法以某种方式(通过广播或其他方式)将随机数据获取到您的计算机上,如果没有特殊程序和/或正确的密钥(您显然没有),您将无法读取这些数据。

您没有太多动力将这些数据保留很长时间。一旦你发现它只是不可读的垃圾,你无论如何都会删除它(它只是占用你的硬盘空间,而且没有用处)。

但更重要的是,为什么你会害怕因为在你的计算机上有你无法解密的随机数据而受到惩罚,但是其他人却神奇地从袖子里取出了一把钥匙,而这恰好将随机数据解密成非法的东西?
其他人给警察的密钥是您的或与您有任何关系,或者如果您的计算机上明显找不到密钥,或者您曾经使用它来解密消息,这是不可信的,并且没有日志或审计跟踪显示您下载了它,等等。

但是即使在您的计算机上找到了密钥或者可以显示您下载了它(因为您对广播消息的内容感到好奇),这仍然没有多大意义。
拥有密钥不仅不能证明你确实解密了一条消息,甚至是一条特定的消息(诚然,它也不排除它,但在刑法中你有怀疑的好处)。但是,即使您确实解密了它……在解密消息之前,您也几乎无法知道内容是非法的。所以,只要你事后表现得“正确”,你应该没问题。

假设有人向您发送纳粹宣传或共产党的成员通行证,或计划通过邮件(实物邮件,如:信件)谋杀高级官员或击落飞机。在你撕开信封之前,你应该怎么知道呢?每年有多少人因为真诚地打开了一封寄给他们的信封而入狱?

因此,除非你有经营国际儿童色情团伙的历史,或者有很长的涉及计算机犯罪的警方记录,或者你是众所周知的 IS 主要官员,或者警方有令人信服的证据表明你明确搜索了非法广播,而您故意下载并解密了非法内容,我看不出您有多么需要害怕惹上麻烦。