7

我正在尝试编写一些代码来处理 htdigest 密码文件。我能找到的文档似乎声称该文件的格式是:

user:realm:MD5(user:realm:pass)

如果是这样,那为什么这对我不起作用?我使用命令行 htdigest 创建了一个文件,因此:

htdigest -c test b a

当提示输入密码时,我输入了“c”。这将创建一个包含以下内容的文件:

a:b:02cc8f08398a4f3113b554e8105ebe4c

但是,如果我尝试导出这个哈希,我不能,

echo a:b:c | md5

给我“49d6ea7ca1facf323ca1928995420354”。我在这里有什么明显的遗漏吗?

谢谢

4

3 回答 3

14

echo默认情况下添加一个尾随新行:

echo -n a:b:c | md5

应该按您的预期工作。

于 2008-12-27T01:53:47.653 回答
2

嗯,我似乎已经回答了我自己的问题。我的测试用例有缺陷,'echo' 添加了额外的字符(不确定是哪个)。例如

echo a:b:c | wc

给出 6 个字符而不是 5 个。在http://md5-hash-online.waraxe.us/计算哈希值会给出正确的值。对不起大家!

于 2008-12-27T01:49:13.043 回答
0

以下是为给定用户设置密码的方法。

sudo htdigest /etc/apache2/.htdigest yourrealm.com yourusername
于 2009-09-22T22:10:41.890 回答