跳到主要内容

8.1. Password Generation (密码生成)

8.1. Password Generation (密码生成)

假设密码由字母数字字符组成, 大小写敏感, 允许8种标点符号。这给出了26+26+10+8或70个字符的字母表。假设8个这样的字符被随机选择作为密码, 那么工作因子是70^8 = (7*10)^8 = 7^8 * 10^8 = 5,764,801 * 10^8或大约5.8 * 10^13。

因为2^46大约等于7 * 10^13, 您需要稍微少于46个随机比特来为此密码生成充分不可预测性。因此, 在这种情况下, 每个字符提供略少于6个比特的随机性。

然而请注意, 如果"密码"是实际单词的简单连接, 它可能容易受到字典攻击, 并且不会像上面计算的那样强大。如果真正随机的ASCII字符被选择, 它们可能很难记住。如果它们是限制性的, 以便它们是"可发音的"或以某种方式记忆, 这会减少真实的随机比特数, 并使猜测更容易。另一方面, 如果密码数据库本身被破坏并且密码是可逆加密的或仅仅是被哈希, 可能会进行对加密或哈希的离线攻击 [DAVIS]。