Skip to content

随机密码生成器 - 在线生成

免费在线随机密码生成器,一键生成高强度安全密码。支持自定义长度、字符类型,批量生成多个密码。所有密码仅在浏览器本地生成,不上传不存储。

无追踪 浏览器中运行 免费
所有密码均在浏览器本地生成,不会传输或存储任何数据。
4 128

什么是随机密码生成器?

随机密码生成器是一种使用加密安全随机数生成器来创建密码的工具。与您自己编造的密码不同,生成的密码没有任何规律、不包含字典词汇、也不含个人信息——因此破解难度大大增加。

本工具使用浏览器内置的 Web Crypto API(crypto.getRandomValues())生成真正的加密随机数。每个字符都从您选择的字符池中独立随机选取,确保均匀分布和最大熵值。需要唯一标识符?试试我们的 UUID 生成器

这为什么重要?一个使用所有字符类型(大写、小写、数字、符号)的 16 位密码拥有超过 100 位的熵值。以每秒一万亿次猜测的速度,暴力破解需要数十亿年。而人类自己创建的同等长度密码,由于无意识地遵循某些规律,熵值通常远低于此。

所有密码生成完全在您的浏览器中进行。密码不会通过网络传输、不会存储在任何服务器上、也不会被记录。您可以通过检查浏览器的网络选项卡来验证——生成密码时没有任何外发请求。如需对生成的密码进行编码传输,可使用我们的 Base64 编解码工具

// Generate a random password in JavaScript
function generatePassword(length, charset) {
  const array = new Uint32Array(length);
  crypto.getRandomValues(array);
  return Array.from(array, v => charset[v % charset.length]).join('');
}

// Example: 16-char password with all types
const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*';
generatePassword(16, chars);
// → 'kX#9mP$2vL!nQ7wR' (random each time)

核心功能

加密级安全

使用 Web Crypto API(crypto.getRandomValues())生成真正的随机数——与主流密码管理器和安全工具使用的标准相同。

完全可定制

控制密码长度(4–128 个字符)、字符类型(大写、小写、数字、符号),并可排除易混淆字符——满足任何密码要求。

批量生成

一次生成多达 50 个唯一密码。每个密码都使用完整的加密随机性独立生成。

强度分析

实时查看每个密码的熵值(以位为单位)和预估暴力破解时间,清楚了解密码强度。

100% 浏览器端处理

所有密码均在浏览器本地生成。不向任何服务器发送数据——您的密码完全私密。

示例

高安全性(32 位)

kX#9mP$2vL!nQ7wR&bZ4fG@8sY^5jD*3

适用于敏感账户——32 个字符包含大小写、数字和符号,约 200 位熵值,暴力破解需数十亿年。

标准(16 位)

Tm$8kR!pN3vZ@5qW

大多数账户的推荐默认值——16 个字符包含所有类型,约 105 位熵值。适用于银行、邮箱等重要账户。

易读(12 位,无混淆字符)

kRm4nTp7sWx2

易于阅读和输入——排除 0/O、l/1 等易混淆字符,无符号。适合 Wi-Fi 密钥、临时密码或需要手动输入的场景。

批量生成(5 个密码)

Hx$4mR!pN3vZ@5qWtB2j
Yk#7wL&8sF^9gQ*2dXnR
Pr@6bT$3cN!5hJ^8mKvZ
Wq*9fG#2nS!7yD@4xLpM
Zv&3kR$8tH!6jB@5wNcQ

一次最多生成 50 个唯一密码——每个都独立随机。非常适合批量创建账户或团队凭据配置。

使用方法

  1. 1

    配置密码参数

    使用长度滑块(4–128 个字符,默认 16)选择密码长度,并勾选要包含的字符类型:大写字母、小写字母、数字和特殊符号。可选择排除易混淆字符(如 0 和 O、l 和 1)。

  2. 2

    生成密码

    点击「生成密码」按钮。可一次生成 1 到 50 个密码。每个密码都使用浏览器的加密随机数生成器创建,确保最高安全性。

  3. 3

    查看强度评估

    查看每个密码下方的强度指示器。它显示密码的熵值(以位为单位)和预估暴力破解时间,让您清楚了解密码的安全程度。

  4. 4

    复制使用

    点击密码旁边的「复制」按钮将密码复制到剪贴板。批量生成时可使用「复制全部」一次复制所有密码。

常见使用场景

账户注册
每次注册新网站或应用时创建唯一的强密码。避免在多个账户间重复使用密码。
密码管理器填充
生成高熵值密码存储到密码管理器中。为所有账户从一开始就使用最强的密码。
企业与 IT 安全
为数据库、服务器、API 密钥和服务账户生成符合企业安全策略的安全密码。
开发与测试
快速生成开发环境、模拟用户账户和自动化测试场景所需的测试密码。
Wi-Fi 与网络安全
为无线网络创建强大的 WPA2/WPA3 密钥。20 个字符以上的随机密码使暴力破解变得不切实际。

技术细节

Web Crypto API
使用 crypto.getRandomValues() 配合 Uint32Array 进行加密安全的随机数生成。此 API 在所有现代浏览器中可用,使用操作系统的 CSPRNG(加密安全伪随机数生成器)。
熵值计算
熵值 = log₂(字符池大小) × 密码长度。字符池大小:小写字母(26)、大写字母(26)、数字(10)、符号(32)。四种类型全部启用:字符池 = 94 个字符,每个字符约 6.55 位。16 位密码约 104.9 位熵值。
破解时间估算
暴力破解时间估算假设每秒 10¹²(1 万亿)次猜测,这代表了高端专用破解设备的能力。公式:时间 = 2^熵值 / 每秒猜测次数。以人类可读的单位显示(从秒到数十亿年)。

最佳实践

每个账户使用唯一密码
切勿在不同网站间重复使用密码。如果一个网站发生数据泄露,重复使用的密码会让攻击者获得您所有其他账户的访问权限。使用本生成器为每个账户创建唯一密码,并存储在密码管理器中。
至少使用 16 个字符
更长的密码破解难度呈指数级增长。包含所有字符类型的 16 位密码需要数十亿年才能暴力破解。对于高安全性账户,建议使用 20–32 个字符。
启用所有字符类型
使用大写字母、小写字母、数字和符号可以最大化字符池和每个字符的熵值。仅在网站的密码规则要求时才禁用某些字符类型。
使用密码管理器
您无法记住数十个唯一的随机密码。使用密码管理器(如 Bitwarden、1Password、KeePass)安全存储它们。这样您只需要记住一个强主密码。

常见问题

在线密码生成器安全吗?
安全。本工具的所有密码生成过程完全在您的浏览器中通过 JavaScript 和 Web Crypto API 完成,没有任何数据会发送到服务器。您可以自行验证:打开浏览器开发者工具(F12 → 网络选项卡),在生成密码时观察——外发请求为零。由于密码从未离开您的设备,不存在被截获或服务器泄露的风险。这与 Bitwarden、1Password 等知名密码管理器采用的本地生成方式相同。我们所有工具(包括 UUID 生成器Base64 编解码)都 100% 在浏览器中运行。
什么样的密码才算强密码?
强密码的三个核心要素是:足够长、完全随机、每个账户唯一。长度比复杂度更重要——一个 16 位密码比 8 位密码的破解难度高出数十亿倍。在此基础上,混合使用大小写字母、数字和符号可以进一步提高安全性。要避免使用字典词汇、姓名、生日和键盘规律(如 qwerty)。最关键的是,绝不要在多个账户间重复使用密码。使用随机密码生成器可以彻底消除人为偏差。
密码应该设置多长?
2026 年的建议是:密码最低长度为 12 个字符,但 16 个字符是大多数账户的理想选择。对于银行、主邮箱、云管理等高安全性账户,建议使用 20 到 32 个字符。包含所有字符类型的 16 位密码约有 105 位熵值,以每秒一万亿次的猜测速度暴力破解需要数十亿年。每多一个字符都会使可能的组合数成倍增加,所以越长越安全。
8 位密码够安全吗?
不够。即使混合了大小写字母、数字和符号,8 位密码的熵值也只有约 52 位,现代硬件可以在数小时到数天内破解。相比之下,12 位密码需要数个世纪,16 位密码需要数十亿年。安全专家和 NIST(美国国家标准与技术研究院)建议密码最少 12 个字符。我们推荐日常账户使用 16 个字符,敏感账户使用 20 个字符以上。
随机密码和密码短语(passphrase),哪个更安全?
两者都可以非常安全,但各有优势。随机密码(如 kX#9mP$2vL!nQ7wR)在更少的字符中包含最大熵值,适合有长度限制的场景。密码短语(如「正确-马匹-电池-订书针」)更容易记忆和输入,但需要更长(4 到 6 个随机词)才能达到同等强度。存储在密码管理器中的账户,随机密码是最佳选择,因为无需记忆。而密码管理器的主密码,使用长密码短语通常更实用。
密码中应该包含特殊符号吗?
建议包含。添加 !@#$%^&* 等特殊符号会将字符池从 62(字母加数字)扩大到 90 多个字符,显著提升熵值。包含符号的 16 位密码有约 105 位熵值,而不含符号只有约 95 位。如果某个网站限制了特殊字符的使用,可以将密码长度增加 2 到 4 个字符来弥补字符池缩小带来的影响。
随机生成的密码怎么记住?
简短的回答是:不要试图记住它们。请使用密码管理器(如 Bitwarden、1Password 或 KeePass)来安全存储所有密码。您只需记住一个强主密码或密码短语来解锁密码库。密码管理器可以在网站和应用中自动填充登录信息,完全不需要手动输入随机密码。这种方式让您能为每个账户使用唯一的复杂密码,同时没有任何记忆负担。
为什么不应该所有账户用同一个密码?
密码重复使用是最大的网络安全风险之一。当某家公司发生数据泄露时——这种事每天都在发生——攻击者会拿着泄露的账号密码去尝试登录其他服务,这种攻击叫做「撞库攻击」(credential stuffing)。之所以有效,是因为大多数人在多个网站使用相同的密码。一旦您的密码被泄露,所有使用该密码的账户都会暴露。为每个账户使用唯一的随机密码,可以确保单次泄露不会波及其他账户。
密码应该多久更换一次?
根据 NIST(美国国家标准与技术研究院)最新指南(SP 800-63B),如果密码足够强且唯一,不需要定期更换。强制定期更改反而会导致更弱的密码,因为人们倾向于只做最小的、可预测的修改。正确的做法是:当怀疑密码已泄露、收到服务方的数据泄露通知、或曾与他人分享过密码时,立即更换。最佳策略是使用强随机密码配合密码管理器,只在有具体理由时才更换。
什么是「易混淆字符」?为什么要排除它们?
易混淆字符是视觉上容易混淆的字符对:0(零)与 O(字母 O)、l(小写 L)与 1(数字 1)、I(大写 i)与 l(小写 L)。排除这些字符可以使密码更容易阅读、输入和口头传达,减少出错机会。在需要将临时密码分享给他人或在手机上手动输入密码时特别有用。字符池的轻微减少对安全性的影响可以忽略不计——不含易混淆字符的 16 位密码仍然有约 97 位熵值。