gpt4 book ai didi

security - 一种方式身份验证时间戳和随机数是什么意思?

转载 作者:行者123 更新时间:2023-12-02 19:38:19 24 4
gpt4 key购买 nike

http://technet.microsoft.com/en-us/library/cc767123.aspx

在本文中,客户端将时间戳、nounce 和目标身份加密到目的地。我无法理解时间戳在这里的作用以及公告是什么?

最佳答案

时间戳和随机数都是防止中间人攻击身份验证机制的方法。它们的工作方式略有不同,但目的是相同的 - 提供一段以加密方式内置到身份验证机制中的数据,这将使攻击者很难或不可能通过重放消息来攻击系统。典型的机制是通过数字签名进行身份验证。无论哪种情况,步骤如下:

1 - 生成消息,将时间戳或随机数附加到消息

2 - 对消息和时间戳或随机数进行哈希处理

3 - 使用私钥加密哈希(即签名)

4 - 发送签名和消息以及随机数/时间戳

(这是攻击者获得它的点。

5 - 收件人收到消息。

6 - 接收者检查签名是否与发送的数据匹配(重复步骤 2,使用公钥解密签名,与哈希值进行比较)

7 - 收件人检查时间戳或随机数:

a - 检查时间戳 - 时间戳的值必须在当前时间的可接受范围内。理想情况下,整个系统由时间戳服务器提供服务,该服务器精确地定义了“当前时间”。如果不是,系统将面临漏报的风险,即收件人错误地认为消息时间戳太旧(或尚未发生),导致当前时间不匹配。

b - 检查随机数 - 验证收到的随机数以前从未从该发送者收到过。由于哈希对于消息内容来说是唯一的,因此该消息必须来自授权的发送者,因为该消息不会被重播。

8 - 接收者执行任何进一步的授权和访问控制检查。

重要的是:

  • 时间戳或随机数必须是签名的一部分
  • 如果您担心给定时间内的重播,时间戳是很好的选择,但它需要服务器之间良好的同步,并且它总是会假设一些错误范围,因为在当前时间范围内可能会发送许多消息 - 例如,如果时间戳精确到秒,则该秒内可能会发送多条消息(包括重播)。
  • 随机数需要一定程度的持久性,因为它只有在保证和检查唯一性的情况下才有效。另外,如果中间人可以打断发送者,获取随机数,并阻止发送者发送它,那么中间人攻击仍然可以成功。

关于security - 一种方式身份验证时间戳和随机数是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4751172/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com