WMW

htpasswd生成器

Free

使用 bcrypt 或 SHA 生成真实的 Apache .htpasswd 文件,已与官方 htpasswd 命令行工具逐字节核对,支持同时添加多个用户。

完全在您的浏览器中运行。您的用户名和密码永远不会上传到任何地方。

算法

数值越高,计算越慢,但抗破解能力越强。Apache 自身的默认值为 5;大多数当前指南建议使用 10 或更高。

用户

最近活动

所有人可见。所有访客的最近 20 次使用记录,最新的在前。

暂无活动记录。快来成为第一个吧。

评论 (0)

觉得这个工具有用吗?留下评论、分享一个小技巧,或者告诉我们如何改进它。

访客评论在发布前会经过审核。 登录 即可立即发布。

暂无评论,快来抢沙发分享您的想法吧!

此工具的功能

此工具为 HTTP 基本身份验证生成真实的 Apache .htpasswd 文件。添加一个或多个用户名和密码对,选择 bcrypt(推荐,成本因子可调)或 SHA,即可获得一个可直接保存的文件,已验证与 Apache 自身 htpasswd 命令行工具的输出逐字节匹配。

工作原理

.htpasswd 文件中的每一行都遵循 用户名:哈希密码 的格式。对于 bcrypt,系统会为每个密码生成一个随机的 16 字节盐值,并与您选择的成本因子结合,生成 $2y$ 样式的哈希;对于 SHA,密码会经过一次 SHA-1 运算,并以 {SHA} 前缀进行 base64 编码。在此工具发布前,两种格式都已与 Apache htpasswd 工具的真实输出进行了核对,以确认完全匹配。

解决的问题

常见问题

›为什么不包含旧的 Apache MD5(apr1)格式?

自 httpd 2.4.4 以来,Apache 官方文档就推荐使用 bcrypt 而非基于 MD5 的 "apr1" 格式,并将较旧的 crypt() 和 MD5 方法称为遗留方式。与其提供一种我们无法独立逐字节验证是否与真实 Apache 输出一致的算法,本工具专注于 bcrypt 和 SHA,两者都已验证与真实的 htpasswd 命令行工具完全匹配。

›bcrypt 应该使用什么成本因子?

Apache 自身的 htpasswd 工具默认值为 5,这是几十年前为兼容较慢的硬件而选定的。对于今天的新部署,常见建议是 10 到 12;更高的值计算更慢(这正是目的所在,它会提高暴力破解的成本),但也会使实际登录的验证速度略微变慢。

›这里的 bcrypt 和 SHA 有什么区别?

Bcrypt 是一种专为密码哈希设计的慢速算法,内置随机盐值且成本可调,是 Apache 目前推荐的选择。SHA({SHA}密码)只是一次快速的 SHA-1 运算,没有盐值,之所以提供它是为了兼容非常旧的 Apache 配置或特意期望这种格式的脚本,不建议用于新部署。

›生成的文件实际放在哪里?

将输出保存为一个文件(通常命名为 .htpasswd),放在您网站公共网站根目录之外,然后在 Apache 配置中将 AuthUserFile 指令指向该路径,并在相应的 <Directory> 或 .htaccess 块中配合 AuthType Basic 和 Require valid-user 指令。

›我可以一次添加多个用户吗?

可以,使用“添加用户”按需添加任意数量的用户名和密码行;输出框会将每一行合并成一个文件,每行一个用户,与 Apache 期望的格式完全匹配。

相关工具