我想知道为什么一旦数据包被拦截,为什么ssl加密数据不容易被破解。据我所知,当你连接到像facebook这样的网站时,浏览器和网站会同意一个密码,是什么阻止了嗅探器看到他们同意的密码呢?
答案 0 :(得分:9)
SSL使用非对称加密,这意味着解密密钥与加密密钥不同。因此,如果您作为客户端使用服务器的公钥加密数据包,则只能通过保留在服务器上的私钥对其进行解密。当然,这是对SSL事务中发生的所有事情的简化,但这是该概念的基础。
答案 1 :(得分:2)
想象一下,打开一个打开挂锁的盒子到另一边 - 当另一边想要发送消息时,他们把它放在盒子里,锁上挂锁并把它发回给你,你使用你的(私人)解锁它的关键。即使拦截方看到了挂锁,他们仍然没有钥匙。
答案 2 :(得分:1)
有很多方法可以描述它。对我来说,当我发现信息被多次加密后,它可以以任何顺序解密。
嗅探器以三种不同的方式看到消息:[A],[AB]和[B]。
这是交换一条消息的三个消息传递,但一旦传递并且双方都有唯一的信息来解密进一步的通信,未来的消息只需要一次消息。
如果您想要一个简单的示例,说明如何以任何顺序解密消息,您可以使用XOR作为示例加密方法。对于密钥A和B,消息M和XOR是^,然后是
答案 3 :(得分:0)
只要您信任证书颁发机构,他们为facebook.com发出的所有证书都属于facebook.com,那么连接是安全的。
Facebook然后通过签名消息向您发送它的公共加密密钥,您可以使用它来加密您的消息以供Facebook阅读。
答案 4 :(得分:0)
是的,密码是公开的。但是,客户端使用Facebook的公钥非对称地加密随机会话密钥(或者更确切地说是前导)(他们通过检查它是否由受信任的人签名来验证它确实是Facebook的密钥)。因此,只有Facebook(拥有私钥)才能够获得用于交换网站数据的实际对称密钥。
见detailed walk-through。在该示例中,窃听者可以告诉该连接使用RSA,RC4和MD5。但是他们没有亚马逊的私钥,所以他们无法派生会话密钥。
答案 5 :(得分:0)
Derek H表示,对称和非对称加密之间存在根本区别。查找DH密钥交换协议和RSA密码等内容,它们是SSL / TLS的基础。另一方面,解密嗅探数据(ROBOT attack)相对容易。
如果您只是需要确保您的通信安全,只需使用SSL/TLS Server Test即可查看您是否未使用推荐的算法或查看您的SSL / TLS配置是否为PCI-符合DSS / HIPAA / NIST标准。