【问题标题】:Message integrity in TLS/SSLTLS/SSL 中的消息完整性
【发布时间】:2011-12-04 18:17:37
【问题描述】:

我正在阅读有关 TLS/SSL 协议的信息。有两点阻碍我继续前进。

1) 在 TLS/SSL 中维护消息完整性的需求是什么。如果服务器始终经过身份验证,并且在客户端和服务器之间建立了私有通道(从而排除了中间人攻击),那么有人如何修改传输中的消息?

2) 即使需要维护完整性检查,也会使用哪个哈希函数?客户端和服务器之间何时建立此合同?

任何相关的阅读链接都会有很大帮助。谢谢!

【问题讨论】:

    标签: openssl security ssl


    【解决方案1】:
    1. 因为你不能保证在所有情况下都有一个私人频道 - 例如。有人可以通过 Internet 控制两台主机之间的众多路由点之一并执行中间人攻击。

    2. 哈希函数在握手期间决定。它通常是一个相对强的散列函数的 HMAC 版本,例如SHA2 系列或 Whirlpool。

    TLS protocol handshake on Wikipedia的描述很详细,应该可以帮助你理解密码、哈希函数和其他参数是如何选择的。

    【讨论】:

    • 多项式,感谢您的快速响应。从第 1 点开始,我了解到我们正在尝试保护可能发生在 IP 或数据链路层等底层中的消息更改,对吗?那么只有路由器、交换机等连接的参与者才能成为恶意攻击的一部分?
    • @Gopal - 有点,是的。一旦您的数据被加密,您必须假设从您计算机中的物理 NIC 到服务器中的物理 NIC 的每个点都在敌人的领土上。例如,某人可能会执行 ARP 中毒以使自己被视为您的默认网关,从而构成中间人攻击。他们还可以根您的交换机或您的 ISP 的交换机。甚至还有涉及电磁感应的攻击,这使得改变通过电缆传输的数据流成为可能,尽管这种情况不太可能发生。不过,保持偏执!
    猜你喜欢
    • 2016-06-26
    • 1970-01-01
    • 1970-01-01
    • 2013-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多