根据时间选择随机数的安全性如何?

时间:2019-11-19 04:17:33

标签: python random cryptography random-seed

如果我有一个由10个用户在不同时间到达的在线会议室,并且我想在会议室满时随机选择一个用户,那么使用最后一个用户加入时的时间戳来选择用户是否安全?房间,只需做%10?

时间戳记以毫秒为单位。

如果我的问题的答案是否定的,那么在选择时间戳之前添加一个随机延迟会更好吗?

1 个答案:

答案 0 :(得分:1)

确保获得什么?什么样的时间戳,小时?

如果使用计时,则通常是精度最高的时间源,并且使用多个增量而不是直接使用时间戳。

这完全不如由操作系统随机生成提供的可从加密库中获得的PRNG。该操作系统具有更多的熵源(如今在许多CPU中,甚至包括真正的随机发生器在内)。

仅执行mod 10是一种危险(如果由于缺乏精度而使计时器偏向使用偶数吗?),通常我们将馈入密码安全的伪随机数生成器中(CS-PRNG)。

如果这些速度不够快(不是吗?),而安全不是您的主要需要,那么您可以使用更快的非安全PRNG或快速流密码。