纽约时报最近的一篇报道提到,众多科技公司拒绝政府索取用户数据的要求,而这种行为亦正在成为一种趋势,其中包括科技巨头微软和苹果。
根据报道,美国司法部门曾对苹果公司发出法院指令,要求其提供犯罪嫌疑人之间交流的iMessage实时信息。对此,苹果公司回复说,iMessage服务使用了加密算法,所以无法提供该类信息。
但事实上,窃听iMessage信息在技术层面上是很有可能实现的,因为在发送和接受信息时,并没有要求用户核实加密密钥。
当某人,我们暂且称其为小明,通过iMessage发送了一条信息,其发送的内容并不是简单从小明的手机直接发送到接收人的手机,这个接受人我们暂称为韩梅梅。首先,小明的设备会访问苹果服务器,称为ESS,服务器储存了iMessage用户所有的公共加密密钥。
苹果服务器将韩梅梅的加密密钥提供给小明。小明的iPhone通过获得的密钥将信息加密,并把密文发送到苹果,苹果再给韩梅梅的手机。使用私钥解密之后,韩梅梅就可以阅读小明的信息了。
小明的信息在离开终端之前就已被加密,这又称为端到端加密。这一步骤看似天衣无缝,苹果公司似乎无法阅读到信息的真实内容。
这种集中管理密钥的方法并不是问题所在,其他加密信息服务商亦在使用同样的方式。然而,最近有个博客PO文指出,iMessage用户无法确保苹果服务器提供给他们的那套密钥是正确。因为密钥服务器本身存在了窃取信息的漏洞。
如果方法得当,苹果的服务器可以将另外一套FBI可解读的密钥发送给小明,而不是直接提供韩梅梅的正确密钥。这点在2013年时就曾引起了研究人员的注意,约翰霍普金斯大学助理教授Matthew Green就曾提供过类似的案例。
这样,以后FBI(不是苹果公司)就可以解读所有发送给小明的iMessage信息了。同样原理, FBI还可以窥探到所有小明发送出的信息。
因此,为了解决这一信息泄露的隐患,唯一的方式就是让用户确认收到的密钥是否正确。现在有一些通讯应用,比如一款叫Signal的,用户在使用时可以通过“身份核对”键查看自己与对方的密钥指纹。为了确保他们接受到的密钥是真实的,两用户可以通过别种联系方式发送密码,或者直接亲自面对面展示给对方。
很少有人会在线下核对密钥的准确性,但是只有这样做才能保证密钥服务器不会搞鬼。但 iMessage尚未采取此类行动帮助用户确认密钥。
对于苹果仍未采用手工确认方法的原因,我们尚未可知。苹果公司也未做出任何回应。另外,也许苹果公司会想出一个更加简单的保密方法。
就目前来说,FBI或者其他组织,很有可能利用其法律地位强迫苹果公司将伪造的密钥发送给犯罪目标,如纽约时报报道的那样。虽然此举显然遭到了苹果公司拒绝,但就目前来说,iMessage漏洞的存在,仍使信息窃取成为可能。
Via wired