随机密码 生成器
在浏览器中即时生成安全的随机密码。自定义长度和字符类型——免费、私密,无数据上传。
在浏览器中即时生成安全的随机密码。自定义长度和字符类型——免费、私密,无数据上传。
随机密码生成器生成旨在抵抗猜测和暴力攻击的字符串。生成的密码的强度取决于其长度和所使用的字母表(可能的字符集):94 个字符的字母表中的 12 个字符(大写字母 + 小写字母 + 数字 + 符号)产生大约 79 位的熵,对于一般用途来说,这被认为是足够强大的。较短或较简单的密码产生的熵较少,并且对现代攻击硬件的抵抗力较弱。
重要的是,该生成器使用加密安全随机源 (window.crypto.getRandomValues),而不是不适合安全目的的简单 Math.random。输出适合实际用作帐户密码、个人使用的加密密钥以及不可预测性重要的任何其他上下文。
所有生成都发生在您的浏览器中。密码永远不会传输到服务器,不会被记录,也不会保留在我们可以访问的任何地方。要使用生成的密码,请将其直接复制到目的地 - 密码管理器、帐户创建表单或任何需要的地方。
人类选择可预测的密码。对被破坏的密码数据库的研究一致表明,相同的简单模式出现了数百万次:“123456”、“密码”、带有数字的字典单词、宠物和家庭成员的名字。生成的随机密码完全避免了这些模式。
跨帐户重复使用密码也是一个主要风险。当一个站点的数据库泄露时,使用相同密码的所有其他帐户都会受到损害。每个帐户的唯一随机密码存储在密码管理器中,可以消除这种攻击媒介。生成器一次生成一个新的唯一密码。
设置长度和字符集,生成。
window.crypto.getRandomValues 使用从浏览器的安全随机源提取的加密安全随机字节填充类型化数组。密码的每个字符都是通过将随机字节映射到所选字母表来选择的,并使用拒绝采样以避免模偏差。
熵:log2(alphabet_size^length)。 94 个字符字母表中的 12 个字符 = 12 × log2(94) ≈ 78.7 位。 62 个字符字母表中的 16 个字符(仅限字母数字) ≈ 95.3 位。熵越高,暴力破解就越困难。
实际攻击率:现代 GPU 在集群中每秒散列大约 1000 亿次 bcrypt-cost-12 次尝试。 78 位熵 = 2^78 ≈ 3 × 10^23 个候选者。以 GPU 速度进行暴力破解大约需要 10^14 年——这是不可行的。较低熵的密码很快就会落入可到达的攻击范围。