# 密码强度评估器

用 Shannon 熵、zxcvbn 模式识别（l33t、字典、序列、重复）以及多攻击场景下的暴力破解时间，评估真实密码强度。密码在本地评估，不会发送到任何地方。

> 标准页面: https://elysiatools.com/zh/tools/password-strength-meter

- **分类:** Security

- **关键词:** 密码强度, 熵, 破解时间, 安全, zxcvbn

## 概述

本评估器超越了简单的规则检查（大写 / 数字 / 符号）。它使用 **zxcvbn**（Dropbox 的密码强度评估引擎，1Password 和 Dropbox 背后使用同一技术）识别真实的攻击者模式，然后报告三个信号：

- **Shannon 熵** —— 朴素度量：log2(字符集大小) × 长度。
- **有效熵** —— 由 zxcvbn 估计的猜测数推得（log2 猜测数），考虑了真实模式。`Password123!` 这类密码 Shannon 熵很高，但这里很低，因为 zxcvbn 看出了字典词。
- **破解时间** —— 猜测数 ÷ 攻击速度，按所选场景计算：离线快速哈希（10¹⁰/s，如泄露的 bcrypt GPU）、离线慢哈希（10⁴/s，配置正确的 bcrypt/argon2）、在线攻击（100/s，限速登录表单）。

适用场景：采用前检查密码、讲解为何"复杂但可预测"的密码会失守、比较候选密码，或向团队证明仅要求长度+符号的策略是不够的。

密码不会离开本次请求。

## 输入项

- **密码** (text): Type a password to evaluate…
- **攻击场景** (select)
- **显示模式分解** (checkbox)

## 适用场景

- 在注册新账户或修改密码前，评估候选密码的真实安全强度。
- 向团队或用户演示为什么看似复杂但符合特定规律的密码（如 Password123!）极易被破解。
- 比较不同密码生成策略的安全性，选择抗暴力破解能力最强的密码方案。

## 工作原理

- 输入待评估的密码，并选择模拟的攻击场景（如离线快速哈希、离线慢哈希或在线攻击）。
- 评估器在本地运行 zxcvbn 引擎，识别密码中是否存在字典词、l33t 转换、连续序列或重复字符。
- 计算 Shannon 熵与基于模式识别的有效熵，并根据所选攻击速度估算暴力破解所需的时间。
- 实时渲染出强度指示条、熵值卡片以及详细的模式分解报告。

## 使用案例

- 个人用户在设置重要账户密码前进行本地安全自检。
- 安全培训师用于演示“复杂但可预测”的密码如何轻易被字典攻击破解。
- 系统管理员评估现有密码策略的有效性，对比单纯限制字符类型与防范模式识别的差异。

## 常见问题

### 这个工具会上传我的密码吗？

不会。所有评估计算均在您的浏览器本地完成，密码绝不会发送到任何服务器。

### 什么是 Shannon 熵和有效熵？

Shannon 熵是基于字符集和长度的理论计算；有效熵则由 zxcvbn 估算，考虑了字典词等真实攻击模式，更具参考价值。

### 为什么我的复杂密码评分很低？

如果密码中包含常见单词、年份或简单的键盘序列（如 qwert），即使加了大小写和符号，算法也会识别出这些模式并降低评分。

### 不同的攻击场景有什么区别？

离线快速哈希模拟 GPU 破解泄露的哈希值；离线慢哈希模拟强加密算法（如 bcrypt）；在线攻击模拟受限速保护的登录尝试。

### 什么是 zxcvbn 算法？

它是 Dropbox 开发的密码强度估算器，通过匹配字典、流行名字、键盘排列等模式，比传统规则更准确地评估密码在真实攻击下的表现。

## 相关工具

- [熵计算器](https://elysiatools.com/zh/tools/entropy-calculator): 衡量任意数据的随机性——香农熵（位/符号）、最小熵（最坏情况猜测难度）、字符集大小、重复率，以及在选定算力下的平均暴力破解时间。评级为强（最小熵 ≥128 位）、中（64-127）、弱（<64）。
- [HMAC 生成与验证器](https://elysiatools.com/zh/tools/hmac-generator-verifier): 使用 SHA-1/SHA-2/SHA-3/BLAKE2 对消息+共享密钥计算 HMAC 消息认证签名，或对收到的签名做验证（恒定时间比对），并内置 Stripe / Slack / GitHub 的 webhook 预设
- [PKCE Code Verifier 与 Challenge 生成器](https://elysiatools.com/zh/tools/pkce-code-verifier-generator): 生成、校验与验证 OAuth2 / OIDC PKCE（RFC 7636）的 code_verifier 与 S256 code_challenge 配对。三种模式：(1) 从密码学安全随机字节（256/384/512/768 位熵）生成全新的 verifier + challenge；(2) 按 RFC 审计你已有的 verifier——长度（43–128）、字符集 \[A-Za-z0-9-._~\] 与 ≥256 位熵；(3) 通过重算 BASE64URL(SHA256(verifier)) 验证 verifier/challenge 配对。可选构建完整的授权请求 URL 与令牌交换体。补足通用的 nonce-generator（仅输出 verifier+challenge 配对）——增加 RFC 合规审计与配对验证。
- [RSA 加解密](https://elysiatools.com/zh/tools/rsa-encrypt-decrypt): 用 RSA 公钥加密文本，或用匹配的私钥解密密文，使用 OAEP 填充（SHA-1 或 SHA-256）。支持长消息分段。密钥与数据均在本地，不外传。由于 Bleichenbacher 攻击，Node 已禁用 PKCS#1 v1.5 解密，故本工具不提供该选项。
- [TOTP / HOTP 离线动态密码生成器](https://elysiatools.com/zh/tools/totp-hotp-offline-generator): 从 base32 共享密钥生成 RFC 6238 TOTP（基于时间，6/8 位、30/60 秒步长）与 RFC 4226 HOTP（基于计数器）一次性密码，完全离线，支持 HMAC-SHA1/256/512，并导出 otpauth:// URI 以便导入 Google Authenticator / Authy
- [Argon2 密码哈希生成器](https://elysiatools.com/zh/tools/argon2-password-hash-generator): 生成 Argon2id 密码哈希，支持内存、迭代、并行度和盐长度调优，并输出 PHC 编码字符串
- [数据追加合并器](https://elysiatools.com/zh/tools/data-append-merger): 垂直追加和合并多个数据表，智能列匹配
- [URL参数拼接器](https://elysiatools.com/zh/tools/url-parameter-builder): 通过添加查询字符串、哈希片段和路径段来构建和组装URL参数

## 示例

- [强密码示例](https://elysiatools.com/zh/samples/strong-password): 不同强度级别的密码集合，用于测试密码验证
- [Android Java 图像处理示例](https://elysiatools.com/zh/samples/android-image-processing-java): Android Java 图像处理示例，包括图像读取保存、缩放和格式转换
- [Android Kotlin 图像处理示例](https://elysiatools.com/zh/samples/android-image-processing-kotlin): Android Kotlin 图像处理示例，包括图像读取保存、缩放和格式转换
- [Web Python 图像处理示例](https://elysiatools.com/zh/samples/web-image-processing-python): Web Python 图像处理示例，使用 PIL/Pillow 包括读取、保存、缩放和格式转换
