WhatsApp表示,甚至在其平台上共享的照片都是端到端加密的。当WhatsApp表示已加密时,我认为数据已在我的设备中加密,然后发送给收件人。

当我们第一次发送照片时,我们可以看到实际的上传发生了(如果您是在慢速的网络中),但是当我们将同一张图片转发给其他人时,则不会进行上传。它很快就发生了。

自动将照片用第二个接收者的密钥对再次加密,然后再次发送给第二个接收者。由于第二次上传没有发生,是不是在WhatsApp服务器中进行了加密?当我们转发媒体文件时,WhatsApp会解密媒体文件并使用新收件人的密钥对其进行加密吗?在这种情况下可以称为端到端加密吗?

评论

值得注意的是,WhatsApp通过一些相当糟糕的压缩设置来压缩图像(因此,对于共享高分辨率图像而言,这是一个糟糕的选择)。虽然您的初始图像可能很胖,但是份额只是大小的一小部分。

#1 楼

抛开WhatsApp方面的问题:可以通过混合加密来实现所描述的效果,在混合加密中,大量数据是在随机秘密对称密钥下加密的,结果一次上传一次;通过向接收者加密对称密钥(例如,使用其公共密钥)来向接收者显示数据,因此对于每个其他接收者,从发送者进行的数据传输很少。

评论


$ \ begingroup $
我认为这一行值得强调:“当今所有公开密钥密码术的实际实现都使用混合系统。”这不是什么奇怪的方法,它无处不在。
$ \ endgroup $
–AndréParamés
18年4月18日在9:22

$ \ begingroup $
我认为@AndréParamés的评论具有误导性。尽管确实如此,但并非所有基于公钥的E2E加密系统都保留并重复使用用于加密消息的随机对称密钥的副本,以便以后将同一消息发送给不同的收件人。这样做可能需要评估其他风险。
$ \ endgroup $
–R .. GitHub停止帮助ICE
18年4月18日在23:40

$ \ begingroup $
@R ..:是的,我认为更好的问题是:此密钥重用功能是否会使Signal协议提供的一些安全益处无效?
$ \ endgroup $
–总统James K. Polk
18年4月19日在13:58

$ \ begingroup $
@allo:从理论上讲您可以,但是我认为工具无法做到这一点。在WhatsApp的上下文中,它至少会将您转发给收件人B的内容泄露给服务(以及通过它进行监视的任何人),而这些知识与您以前发送给收件人A的内容相同。
$ \ endgroup $
–R .. GitHub停止帮助ICE
18-4-20在13:51



$ \ begingroup $
我认为WhatsApp从未声称要保护元数据。我不确切知道他们为此使用了哪种加密方案,而只是在这里谈论重用对称加密密钥的理论。
$ \ endgroup $
– allo
18年4月21日在14:16

#2 楼

这也是加密电子邮件的问题。如果您的电子邮件带有5MB的附件,并且有1000个收件人的公钥,那么如何将其发送给所有人?

您创建用于加密/解密的密钥对。您使用此密钥加密电子邮件。该消息包括加密的电子邮件(5 MB),以及用您的1000个公共密钥加密的解密密钥(不是非常多的1000倍)。这已发送给每个收件人。现在,拥有匹配私钥的任何人都可以解密解密密钥,然后解密原始消息。

因此,您可以创建一个加密的消息并公开传输该加密的消息。是否每个人都可以看到加密的消息并不重要。解密密钥要小得多,它必须通过您拥有的所有安全通道。

#3 楼

附件具有自己的AES-CBC临时密钥。

请参阅该论文的第6页:https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf

该论文似乎忘记了提及密钥已保留并重新使用,但这可以解释为什么只看到一个上载。