SSL安全问题

问题描述 投票:2回答:6

我想知道为什么一旦数据包被拦截,为什么ssl加密数据不容易被破解。据我所知,当你连接到像facebook这样的网站时,浏览器和网站会同意一个密码,是什么阻止了嗅探器看到他们同意的密码?

ssl security
6个回答
9
投票

SSL使用非对称加密,这意味着解密密钥与加密密钥不同。因此,如果您作为客户端使用服务器的公钥加密数据包,则只能通过保留在服务器上的私钥对其进行解密。当然,这是对SSL事务中发生的所有事情的简化,但这是概念的基础。


2
投票

想象一下,打开一个打开挂锁的盒子到另一边 - 当另一边想要发送消息时,他们把它放在盒子里,锁上挂锁并把它发回给你,在那里你使用你的(私人)钥匙解锁它。即使拦截方看到了挂锁,他们仍然没有钥匙。


1
投票

有很多方法可以描述它。对我来说,我的时刻就是当我发现信息被多次加密后,它可以按任何顺序解密。

  1. 首先加密,向B传递单个加密消息[加密]。
  2. B第二次加密消息,并传递给A双重加密消息[加密和B加密]
  3. A从消息中删除[A加密],仅保留[B加密],并将消息发送给B.
  4. B现在有一个[B加密]消息,并知道如何解密它。

嗅探器以三种不同的方式看到消息:[A],[AB]和[B]。

这是交换一条消息的三个消息传递,但是一旦它通过并且双方都有唯一的信息来解密进一步的通信,未来的消息只需要一次旅行。

如果您想要一个简单的示例,说明如何以任何顺序解密消息,您可以使用XOR作为示例加密方法。对于密钥A和B,消息M和XOR是^,然后

  • M ^ A ^ A = M.
  • M ^ A ^ B ^ A ^ B = M.

0
投票

Facebook使用证书授权机构(例如RapidSLL)获得的证书签名。

只要您信任证书颁发机构,他们为facebook.com发出的所有证书都属于facebook.com,那么连接是安全的。

Facebook然后通过签名消息向您发送它的公共加密密钥,您可以使用它来加密您的消息以供Facebook阅读。


0
投票

是的,密码是公开的。但是,客户端使用Facebook的公钥非对称地加密随机会话密钥(或者更确切地说是前导)(他们通过检查它是否由受信任的人签名来验证它确实是Facebook的密钥)。因此,只有Facebook(拥有私钥)才能够获得用于交换网站数据的实际对称密钥。

看到这个detailed walk-through。在该示例中,窃听者可以告诉该连接使用RSA,RC4和MD5。但是他们没有亚马逊的私钥,因此他们无法派生会话密钥。


0
投票

像Derek H所说,对称和非对称加密之间存在根本区别。查找DH密钥交换协议和RSA密码等内容,它们是SSL / TLS的基础。另一方面,解密嗅探数据(ROBOT attack)相对容易。

如果您只是需要确保您的通信是安全的,您可以简单地使用SSL/TLS Server Test,在那里您可以看到您是否使用推荐的算法或查看您的SSL / TLS配置是否符合PCI-DSS / HIPAA / NIST。

© www.soinside.com 2019 - 2024. All rights reserved.