有没有一种方法可以在使用Python的secrets模块时设置一个种子?

7

Random.seed() 比 secrets 不够安全,但我找不到有关在 secrets 中使用种子的文档?那么 random.seed 是否也可以?


1
如果您使用密码来生成随机数,则不需要种子。无论您提供什么,都无法使其更安全。 - Frank Yellin
1
Stack Overflow并不旨在取代现有的文档和教程。secrets文档涵盖了这一点。 - Prune
1
随机数生成,还是random.seed同样适用?适用于什么? - President James K. Polk
你能详细解释一下你的应用程序以及为什么要问这个问题吗?你是在使用现有的密钥生成盐哈希值(以便种子作为盐)吗?如果是这样,那么有一些专门设计用于生成此类哈希值的关键派生函数;相比之下,加密随机数生成器不适合此目的,因为它们几乎肯定会产生不同的随机数。另请参见此问题 - Peter O.
这个问题对我很有用,因为我不确定在测试secrets输出时是否可以获得确定性输出。 - Dag Høidahl
1个回答

10

不需要使用种子来保密。 - M2014
1
实际上,如果您的目的不是安全性,那么是有办法的。一个模拟程序,如果随机数不够“随机”,可能会使用“秘密”来完成其工作。我们需要它来使模拟成功,但我们也可能希望保持一致性,因此需要一个种子。这可能会相互矛盾,但仍然存在这种需求。 - Xanlantos
1
那不是一个有效的用法。你需要的是一个不同的随机数生成器。阅读 - young_souvlaki

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接