密码生成器
使用此栏位的单词取代预设单词清单。你可以输入任何语言的单词。
简介
Toollect密码生成器是一个基于浏览器的安全工具,可创建强大、加密随机的密码和密码短语。它为任何需要安全凭证的人服务——从管理多个在线账户的日常用户到需要审计级密码生成的安全意识强的专业人士。
弱密码仍然是账户泄露的主要原因。Toollect密码生成器通过使用Web Crypto API的加密安全随机数生成器,消除了密码创建中的人为偏差。每个密码都来自真正的熵,而不是可预测的算法或人类模式。
与通过网络传输潜在凭证的基于服务器的密码工具不同,Toollect密码生成器完全在您的浏览器中运行。没有数据发送到任何服务器、存储在任何数据库或记录在任何会话中。这种隐私优先的方法确保您生成的密码只有您自己知道。
使用场景
密码生成在个人和专业环境中服务于广泛的安全需求。
日常在线账户
每个社交媒体账户、购物网站、论坛和新闻通讯订阅都需要密码。为每个账户使用生成器可确保没有两个账户共享相同的凭证。使用混合字符类型的12-16个字符的随机密码可为典型在线账户提供强大的保护。
密码管理器主密码
您的密码管理器主密码是您管理的最重要的凭证。如果它被泄露,每个存储的密码都会暴露。使用6-7个单词的密码短语模式创建一个既高度安全又足够易记以定期输入的主密码。
Wi-Fi和设备密码
Wi-Fi网络密码和设备PIN码输入频率低(每台设备一次),但必须能够抵抗暴力破解攻击。为您的Wi-Fi网络生成一个20+字符的随机密码。由于您不需要记住它——大多数设备在首次输入后会存储它——最大化熵而无需考虑易记性。
企业环境和合规性
具有强制执行特定密码组合要求的安全策略的组织可以将工具的字符集和长度配置为匹配这些规则。通过选择合规框架要求的确切字符类型和最小长度,生成满足NIST、HIPAA、PCI-DSS或内部策略要求的密码。
开发者工作流
开发人员需要测试环境、API密钥、临时数据库和CI/CD流水线密钥的安全凭证。生成器可配置的输出——最长128个字符,灵活的字符集——可生成适用于机器间身份验证的凭证,其中人类易记性无关紧要。
工作原理
密码生成器以两种不同的模式运行,每种模式都由加密安全的随机数生成驱动。
随机模式
在随机模式下,生成器从您选择的字符集中逐个字符地构建密码:
-
字符选择池:生成器组合您选择的字符集——大写字母(A-Z)、小写字母(a-z)、数字(0-9)和符号(!@#$%^&*)。您还可以启用"排除歧义字符"选项,以删除容易混淆的字符(i、l、1、L、o、0、O)。
-
保证覆盖:生成器确保所选每个字符集中至少有一个字符出现在最终密码中。这可以防止在选择大写字母、小写字母和数字时出现"AAAAAAAA12"这样的密码——即使随机选择也必须包含每种类型。
-
加密随机性:每个字符使用
crypto.getRandomValues()选择,该函数从操作系统的熵源中获取。这与TLS/SSL和磁盘加密系统使用的来源相同。 -
Fisher-Yates洗牌:组装后,密码经过无偏的Fisher-Yates洗牌以随机化字符顺序,消除保证覆盖步骤中的任何位置偏差。
密码短语模式
密码短语模式使用精选的单词列表而不是单个字符:
-
单词列表:内置列表是EFF Short Word List #1(1296个简短、常见的英语单词)。每个单词贡献约10.3位的熵(log2(1296))。
-
自定义单词:您可以通过自定义单词字段提供自己的单词。生成器使用您的单词而不是默认列表,从而支持任何语言的密码短语。
-
组装:生成器随机选择所需数量的单词,可选择每个单词首字母大写,使用您选择的分隔符连接它们,如果配置了,还会附加一个随机数字和/或符号。
强度计算
密码强度以熵的位数衡量:
- 随机密码:熵 = 长度 × log2(字符集大小)
- 密码短语:熵 = 单词数 × log2(单词列表大小)
强度指示器将熵范围映射到描述性标签:弱(0-29位)、一般(30-49)、良好(50-69)、强(70-99)、非常强(100+)。
常见密码错误
理解什么使密码变弱有助于您认识到为什么需要生成器。在您创建或评估的任何密码中避免这些模式。
字典单词和常见短语
黑客使用字典攻击尝试常见语言中的每个单词。像"sunshine"、"password"或"letmein"这样的单个单词会在毫秒内被破解。即使是像"iloveyou"或"trustno1"这样的复合短语也出现在攻击字典中。
个人信息
生日、纪念日、家庭成员姓名、宠物名、街道名称和电话号码是攻击者在定向攻击中首先尝试的内容。这些信息通常通过社交媒体公开可用。
顺序和键盘模式
像"abcdef"、"123456"或"qwerty"这样的序列是最先测试的模式之一。键盘行走(直线上的相邻键)同样可预测。攻击工具包含数百种模式模板。
密码重复使用
在多个网站上使用相同的密码意味着任何一个网站的数据泄露都会危及您的所有账户。数据泄露每年暴露数十亿凭证。密码生成器使唯一密码变得轻松——没有理由重复使用。
替换技巧
用相似字符替换字母("p@ssw0rd"、"h3ll0")并不能有意义地提高安全性。攻击字典包含所有常见的替换变体。真正的安全性来自长度和随机性,而不是字符替换。
短密码
每个额外字符都会使暴力破解攻击的难度呈指数级增长。一个混合类型的8字符密码约有6×10¹⁴种组合。一个16字符密码约有3×10²⁹种组合——破解难度增加超过500万亿倍。
随机密码 vs 密码短语
Toollect密码生成器提供了两种根本不同的凭证创建方法。选择正确的方法取决于密码的使用方式。
| 方面 | 随机模式 | 密码短语模式 |
|---|---|---|
| 格式 | 随机字符串 | 带分隔符的多个单词 |
| 示例 | kG7#mQ2$xR9@pL4* |
Plank-Lunch-Quilt-Ivory-Sunset |
| 易记性 | 困难——必须存储 | 简单——单词形成心理图像 |
| 输入速度 | 慢——大小写混合、符号 | 快——熟悉的单词 |
| 安全性基础 | 长度×字符集多样性 | 单词数×单词列表大小 |
| 典型长度 | 12-24个字符 | 4-7个单词(20-50个字符) |
| 最佳用途 | 存储的凭证、密码管理器、机器密钥 | 主密码、频繁输入的凭证 |
| 默认熵值 | 约95位(16个字符,所有字符类型) | 约51位(5个单词,EFF列表) |
何时使用随机模式
当密码将存储在密码管理器、浏览器自动填充或设备设置中时,选择随机模式。密码输入一次后自动填充。最大化熵而无需考虑易记性——启用所有字符类型,16-24个字符。
随机模式适用于Wi-Fi密码、API密钥、数据库凭证、加密密钥以及任何人类不会定期输入的机器间身份验证场景。
何时使用密码短语模式
当您需要手动输入凭证并在没有密码管理器的情况下记住它时,选择密码短语模式。密码管理器本身的主密码是主要示例——在访问任何存储的密码之前,您必须从记忆中回忆起它。
密码短语模式适用于频繁输入的凭证:新设备上的电子邮件登录、笔记本电脑解锁密码以及任何携带密码管理器不切实际的情况。
密码强度与熵
强度指示器为您提供关于每个生成密码安全性的即时、客观的反馈。了解其工作原理可帮助您就设置做出明智的决定。
什么是熵
熵衡量不确定性——攻击者在找到您的密码之前平均需要尝试多少次猜测。它以位数表示。每增加一位,暴力破解攻击的难度就会加倍。
一个具有30位熵的密码平均需要约10亿次猜测。一个具有80位熵的密码需要约1百亿亿(10²¹)次猜测——比地球上所有的沙粒还要多。
熵的计算方法
计算器根据活动模式使用两种公式:
随机模式:熵 = 长度 × log2(字符集大小)
如果您启用大写(26)、小写(26)、数字(10)和符号(8),字符集为70个字符。一个16个字符的密码为:16 × log2(70) ≈ 16 × 6.13 ≈ 98位。
密码短语模式:熵 = 单词数 × log2(单词列表大小)
EFF短单词列表包含1296个单词。一个5个单词的密码短语为:5 × log2(1296) ≈ 5 × 10.34 ≈ 52位。
强度阈值
| 标签 | 熵范围 | 含义 |
|---|---|---|
| 弱 | 0-29位 | 消费级硬件可在数秒内破解 |
| 一般 | 30-49位 | 可在数小时或数天内破解 |
| 良好 | 50-69位 | 适用于低风险账户 |
| 强 | 70-99位 | 适用于大多数账户,包括电子邮件 |
| 非常强 | 100+位 | 适用于主密码和加密密钥 |
实用建议
- 8-12个字符:低风险账户的最低要求(论坛注册、新闻通讯订阅)
- 14-20个字符:社交媒体、购物和电子邮件账户的标准
- 24+个字符:建议用于密码管理器主密码和加密密钥
- 4-5个单词:密码短语的最低要求
- 6-7个单词:建议用于基于密码短语的主密码
使用方法
使用Toollect密码生成器无需设置或注册。请按照以下步骤操作:
-
选择您的模式 — 使用工具顶部的选项卡选择随机或密码短语。
-
随机模式配置:
- 调整长度滑块(8-128个字符)
- 勾选或取消勾选字符集:大写、小写、数字、符号
- 可选启用"排除歧义字符"以删除容易混淆的字符
-
密码短语模式配置:
- 调整单词数滑块(3-12个单词)
- 选择单词分隔符(空格、连字符、下划线、点或无)
- 可选启用首字母大写、添加随机数字或添加随机符号
- 可选在文本区域输入自定义单词以替换默认单词列表
-
生成 — 点击"生成"按钮。密码或密码短语将出现在输出区域。
-
检查强度 — 查看密码下方的强度指示器以评估其安全级别。
-
复制密码 — 点击"复制"将密码复制到剪贴板,然后粘贴到您的账户注册或密码管理器中。
-
清除重置 — 点击"清除"以重置输出并重新开始。
教程
本教程将引导您完成两个完整的操作流程——为社交媒体账户创建随机密码和为您的电子邮件创建密码短语。
场景1:为社交媒体账户创建随机密码
-
打开密码生成器。工具默认在随机模式下打开。
-
拖动滑块将长度设置为16。当前值显示在"长度"标签旁边。
-
确保以下复选框已勾选:A-Z(大写)、a-z(小写)、0-9(数字)。保持符号未勾选——许多社交媒体平台接受字母数字密码。
-
勾选"排除歧义字符"以防止类似
1(一)和l(小写L)等相似字符之间的混淆。 -
点击"生成"。一个16个字符的密码将出现在输出区域。强度指示器应显示"强"或"非常强"。
-
点击"复制"复制密码。将其粘贴到您的社交媒体账户的密码字段中。
-
满意后点击"清除"以重置。
场景2:为您的电子邮件账户创建密码短语
-
点击"密码短语"选项卡切换到密码短语模式。
-
将单词数设置为5。来自EFF单词列表的5个单词的密码短语提供约51位的熵。
-
选择"空格"作为单词分隔符,以获得经典的xkcd风格密码短语格式。
-
勾选"每个单词首字母大写"和"添加随机数字"。保持"添加随机符号"未勾选——大多数电子邮件服务接受带空格的字母数字密码。
-
点击"生成"。将出现类似"Plank Lunch Quilt Ivory Sunset7"的密码短语。
-
检查强度——对于5个单词,它应至少显示"强"。
-
点击"复制"并将密码短语用于您的电子邮件账户。空格和大写使其在桌面和移动设备上都更易于正确输入。
专业提示
-
为主密码使用密码短语:您的密码管理器主密码是您管理的最重要凭证。使用6-7个单词的密码短语模式创建一个既安全又易记的主密码。
-
根据账户敏感度匹配密码长度:低风险账户(论坛注册、新闻通讯)使用8-12个字符,标准账户(社交媒体、购物)使用14-20个字符,高价值账户(电子邮件、银行、密码管理器)使用24+个字符。
-
为Wi-Fi密码组合模式:为您的Wi-Fi网络生成20+个字符的随机密码。Wi-Fi密码输入一次后存储在设备上,因此易记性不重要——最大化熵才是关键。
-
利用自定义单词创建个性化密码短语:在密码短语模式下,在自定义单词字段中输入您生活中的单词(宠物名、街道名、爱好)。生成器从您已经知道的单词创建密码短语,使其几乎不可能忘记。
-
一次生成多个密码:重复点击"生成"以产生多个候选密码。比较它们并选择最易于使用同时保持所需强度级别的密码。
-
将强度指示器用作最低阈值:对于任何保护敏感数据的密码,目标至少为"强"(70+位熵)。"非常强"(100+位)适用于加密密钥和主密码。
替代方案
虽然Toollect密码生成器在以隐私优先的处理的基于浏览器的密码创建方面表现出色,但存在多种适合不同用例的替代方案。
| 工具/方法 | 最佳用途 | 局限性 |
|---|---|---|
| Toollect密码生成器 | 带密码短语模式、自定义单词、隐私优先的基于浏览器的生成 | 初始页面加载需要互联网 |
| 内置密码管理器(iCloud Keychain、Google、Bitwarden) | 跨设备自动填充和同步 | 绑定到特定生态系统,密码生成选项各异 |
| Diceware(手动方法) | 气隙、零信任的密码短语生成 | 需要物理骰子和单词列表,频繁使用较慢 |
| 命令行工具(openssl rand、pwgen) | 开发环境中的脚本生成 | 无图形界面,需要终端访问,无强度可视化 |
| xkcd风格方法 | 手动创建易记的密码短语 | 依赖于人类的随机性,这是可预测和有偏的 |
| 在线密码生成器 | 无需安装的快速生成 | 隐私风险——密码通过网络传输 |
对于大多数需要即时、安全和私密的密码生成以及随机和密码短语两种模式灵活性的用户来说,Toollect密码生成器提供了功能、安全性和便利性的最佳平衡。
数据隐私
Toollect密码生成器完全在您的浏览器内处理每个密码。您生成的任何密码都不会传输到任何服务器、存储在任何数据库或记录在任何系统中。
加密随机性
生成器使用crypto.getRandomValues(),即Web Crypto API的加密安全随机数生成器。这与TLS/SSL连接、磁盘加密和安全消息应用程序使用的熵源相同。每个密码都从操作系统级别的熵生成,而不是用于非安全应用程序的伪随机Math.random()函数。
零数据传输
所有字符集、单词列表和生成逻辑都嵌入在页面源代码中。任何输入值都不会离开您的设备。您可以通过在飞行模式下使用该工具或在浏览器的开发者工具中检查网络活动来验证这一点——页面加载后没有任何请求离开您的设备。
无跟踪或存储
该工具页面不包含任何分析脚本、跟踪像素或第三方嵌入。不创建或读取任何Cookie、localStorage或sessionStorage条目。初始页面加载后,生成器完全离线运行——您可以断开互联网连接并继续生成密码而不会中断。
故障排除
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| 生成的密码包含歧义字符 | "排除歧义字符"选项未勾选 | 启用"排除歧义字符(il1, 0O)"以删除容易混淆的字符 |
| 密码短语使用了意外单词 | 自定义单词字段为空,默认使用EFF单词列表 | 工具默认使用英语EFF列表。在自定义单词字段中填入您自己的单词 |
| 短密码显示强度为"弱" | 密码长度低于10个字符 | 增加长度滑块,或在密码短语模式下增加单词数 |
| 复制按钮不起作用 | 浏览器剪贴板权限 | 确保浏览器允许剪贴板访问。使用Ctrl+C(Cmd+C)手动复制 |
| 无法在输出字段中输入 | 输出字段设计为只读 | 点击"生成"创建密码,然后使用"复制"按钮 |
| 生成的密码被网站拒绝 | 网站有特定的字符限制 | 检查网站的密码策略并相应调整字符集。尝试禁用符号 |
| 密码短语超过服务允许的最大长度 | 单词数或分隔符选择导致字符串过长 | 减少单词数,使用"无"分隔符,或切换到较短长度的随机模式 |
| 强度指示器显示与预期不同的评级 | 熵公式取决于字符集大小和长度 | 计算使用当前字符集大小。启用更多字符类型可增加熵 |
技术规格
Toollect密码生成器专为安全性、性能和广泛兼容性而设计。
性能基准
| 密码长度 | 生成时间 | 内存使用 |
|---|---|---|
| 16个字符 | < 1 ms | < 1 MB |
| 64个字符 | < 1 ms | < 1 MB |
| 128个字符 | < 2 ms | < 1 MB |
技术细节
- 随机数生成器:
crypto.getRandomValues()(Web Crypto API)— 加密安全,由操作系统熵支持 - 单词列表:EFF Short Word List #1(1296个单词),嵌入在应用程序代码中
- 洗牌算法:Fisher-Yates(无偏、O(n))
- 强度算法:基于熵的计算:对于随机密码,熵 = 长度 × log2(字符集大小)。对于密码短语,熵 = 单词数 × log2(1296)。
- 强度阈值:弱0-29、一般30-49、良好50-69、强70-99、非常强100+位
- 剪贴板API:
navigator.clipboard.writeText(),带有视觉反馈 - 事件模型:按钮点击触发生成;滑块输入实时更新配置
浏览器兼容性
| 浏览器 | 最低版本 | 状态 |
|---|---|---|
| Google Chrome | 80+ | 完全支持 |
| Mozilla Firefox | 75+ | 完全支持 |
| Apple Safari | 13+ | 完全支持 |
| Microsoft Edge | 80+ | 完全支持 |
| Samsung Internet | 13+ | 完全支持 |
| Opera | 67+ | 完全支持 |
隐私与安全
- 零数据传输:所有密码生成在浏览器内存中进行
- 不使用Cookie、localStorage或sessionStorage
- 工具页面上无分析或跟踪脚本
- 初始页面加载后可在离线模式下完全运行
- 无需注册、登录或API密钥
- 使用加密安全的随机数生成(非Math.random())
功能特色
- 随机密码生成,支持可配置长度(8-128)和字符集
- 密码短语模式,使用EFF单词列表生成易记且安全的密码
- 自定义单词支持 — 使用您自己的任何语言单词生成密码短语
- 基于熵计算的实时强度指示器
- 加密安全的随机生成(crypto.getRandomValues)
- 100%客户端处理,零数据上传到任何服务器