【发布时间】:2014-06-16 23:58:13
【问题描述】:
从CPython 3.3 开始,默认启用哈希随机化。在以前的版本中,可以通过指定-R command-line option 或将PYTHONHASHSEED environment variable 设置为random 来打开它。
默认情况下,
__hash__()的 str、bytes 和 datetime 值 对象用不可预测的随机值“加盐”。虽然他们 在单个 Python 进程中保持不变,它们不是 在 Python 的重复调用之间可预测。
这是否意味着生成的值在密码学上会很强大?
【问题讨论】:
-
cryptographically secure (at least for one session)是什么意思? -
另外,整数的
hash只是那个整数。这在解释器调用之间不会改变。
标签: python python-3.x hash python-3.3 random-seed