客户端加密密钥的安全性

时间:2015-11-18 08:39:01

标签: security authentication encryption

这可能听起来有点幼稚,但我错过了一些东西,我希望有人开导我。

为了防止人们处于中间攻击状态,您可以轻松读取纯文本密码,在密码加密的情况下进行客户端加密,这样中间的人只能找到对他来说是胡言乱语的数据。但是,对于加密,服务器需要通过网络发送密钥。

所以,我的问题是,如果发生中间攻击的人,那么他将能够看到在客户端发送加密的密钥。使用密钥,加密密码可以非常容易地解密。因此,加密的整个目的都被打败了。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

首先,精确度:你所谈论的攻击不是MITM,而是被动窃听。在MITM中,攻击者来自双方来回传递消息。

发送对称密钥和加密数据当然是愚蠢的,因为窃听者会嗅到它以及数据。这就是使用非对称加密(又名公钥加密)的原因。

在非对称加密中,密码不使用单个密钥操作,而是使用由公钥和私钥组成的密钥对。公钥和私钥是使用特殊算法同时创建的,并且它们严格相互连接。客户端使用服务器的公钥加密数据,这是唯一公开共享的密钥;此数据只能由服务器使用服务器的私钥解密。从服务器到客户端的通信以相同的方式完成。

您可能希望在此处阅读有关PKC的内容:

值得注意的是,MITM攻击实际上可能发生在其中一方与另一方分享他的公钥时:

  

首先,Alice要求Bob提供他的公钥。如果Bob将他的公钥发送给Alice,但是Mallory能够拦截它,则可以开始中间人攻击。 Mallory向声称来自Bob的Alice发送伪造的消息,但是包括Mallory的公钥。
Alice认为这个公钥是Bob的,用Mallory的密钥加密她的消息并将加密的消息发送给Bob。 Mallory再次截取,使用她的私钥解密消息,如果需要可能会改变它,并使用Bob最初发送给Alice的公钥重新加密它。当Bob收到新加密的消息时,他认为它来自Alice。 [Wikipedia]

这实际上是PKC的弱点;解决方案要么使用集中式证书颁发机构(这是对HTTPS中使用的SSL证书的处理方式),要么使用共享的信任Web。两种解决方案都有其优点和缺点。