【问题标题】:Client Side Encryption Security of key客户端加密密钥的安全性
【发布时间】:2016-02-19 21:40:45
【问题描述】:

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

为了防止中间人攻击您的纯文本密码很容易被读取,客户端加密是在密码被加密的地方完成的,所以中间人只能找到对他来说是乱码的数据。但是,对于加密,服务器需要通过网络发送密钥。

所以,我的问题是,如果中间人发生攻击,那么他也将能够看到为客户端加密而发送的密钥。有了他拥有的密钥,加密的密码可以很容易地被解密。因此,加密的全部目的就被破坏了。

我在这里错过了什么?

【问题讨论】:

    标签: security authentication encryption


    【解决方案1】:

    首先,精确:您所说的攻击不是 MITM,而是被动窃听。在 MITM 中,攻击者来回中继来自双方的消息。

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

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

    您可能想在此处阅读有关 PKC 的信息:

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

    首先,爱丽丝向鲍勃索要他的公钥。如果 Bob 将他的公钥发送给 Alice,但 Mallory 能够拦截它,则可以开始中间人攻击。 Mallory 向 Alice 发送了一条声称来自 Bob 的伪造消息,但其中包含 Mallory 的公钥。
    Alice 相信此公钥是 Bob 的,她使用 Mallory 的密钥对她的消息进行加密,并将加密的消息发送回 Bob。 Mallory 再次拦截、使用她的私钥解密消息,如果她愿意,可能会更改它,并使用 Bob 最初发送给 Alice 的公钥重新加密它。当 Bob 收到新加密的消息时,他认为它来自 Alice。 [Wikipedia]

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

    【讨论】:

    • 在电信中,有一种东西叫跳频,不同的数据包以不同的频率发送,信号很难被中断。显然,我们不能在计算机网络中拥有它。但是,如果有一种方法可以通过不同的网络发送数据,那么如果有被动窃听者或 MITM 攻击,他们将只有部分数据。假设服务器在美国,我在欧洲,有几根电缆连接两个大陆,数据包可以通过不同的电缆发送。这样的事情是否已经完成或可行?
    • 这是一个全新的问题。但简单的答案是否定的:“频率”的序列密码/加密密钥。
    • 这是不可行的,因为您需要在美国的服务器和您在欧盟的机器之间建立完全独立的物理电路——包括跨洋主干。
    猜你喜欢
    • 2017-11-16
    • 2019-07-09
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-29
    • 1970-01-01
    相关资源
    最近更新 更多