【问题标题】:One way SSL is one way encryption?一种方式 SSL 是一种方式加密?
【发布时间】:2012-01-04 01:22:47
【问题描述】:

如果使用一种方式 SSL(服务器证书身份验证),则从客户端发送的数据将使用服务器证书的公钥加密。因此,隐私保护可用于从客户端发送的数据。我的问题是

  1. 这是否意味着以一种方式从服务器发送到客户端的 SSL 数据未加密并以纯文本形式发送?

  2. 对于服务器到客户端和客户端到服务器的通信,数据/消息未签名,因此无法保证防篡改或数据完整性。在使用基于 SSL 的传输安全而不是消息安全选项时,是否还有其他方法可以实现数据完整性?

【问题讨论】:

    标签: ssl security wcf-security transport-security


    【解决方案1】:

    一种方式的 SSL 只是意味着服务器不验证客户端的身份。它对 SSL 的任何其他安全属性都没有影响。

    虽然 SSL 协议有点复杂,但发生的基本要点是:客户端生成一个随机密钥,对其进行加密以便只有服务器可以解密它,然后将其发送到服务器。服务器和客户端现在有一个共享密钥,可用于加密和验证双向通信。

    服务器不知道客户端的身份,但除此之外,加密和消息验证是两种方式。

    更新:

    1) 是的,双向加密是对称的,并且使用会话设置期间生成的共享密钥。

    2) 使用共享密钥,消息完整性很容易保证。您只需确保消息具有特定的形式。例如,我可以在我发送的每条消息前面加上一个序列号,并在加密之前附加一个校验和。您使用共享密钥对其进行解密并验证序列号和校验和。攻击者如何在不知道共享密钥的情况下替换或修改消息,同时仍保持序列号和校验和不变?

    【讨论】:

    • 这是否意味着两端加密使用对称算法和共享随机密钥?
    • 能否请您解释一下当客户端不持有证书时如何通过两种方式确保消息完整性?
    【解决方案2】:

    在 SSL 中,会发生两件事:

    首先,使用类似于 Diffie-Hellman method。这会生成一个共享会话密钥,但永远不会 在各方之间传输密钥。

    其次,该会话密钥用于正常的对称加密 连接的持续时间。

    SSL 确实以一种方式使用公共/私有,因为 X509 证书是 用于标识连接的至少一端。这些证书是 使用非对称密钥对签名。

    摘自How can SSL secure a two-way communication with only one key-pair?

    【讨论】:

      猜你喜欢
      • 2016-11-29
      • 1970-01-01
      • 2015-05-25
      • 1970-01-01
      • 2014-05-03
      • 1970-01-01
      • 2017-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多