Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache htdigest文件格式_Apache_Hash_Md5_Htdigest - Fatal编程技术网

Apache htdigest文件格式

Apache htdigest文件格式,apache,hash,md5,htdigest,Apache,Hash,Md5,Htdigest,我正在尝试编写一些代码来处理htdigest密码文件。我能找到的文档似乎声称该文件的格式为: user:realm:MD5(user:realm:pass) 如果是这样的话,为什么这对我不起作用?我使用命令行htdigest创建了一个文件,因此: htdigest -c test b a 当提示输入密码时,我输入了“c”。这将创建一个包含以下内容的文件: a:b:02cc8f08398a4f3113b554e8105ebe4c 但是如果我尝试导出这个散列,我不能 echo a:b:c |

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

user:realm:MD5(user:realm:pass)
如果是这样的话,为什么这对我不起作用?我使用命令行htdigest创建了一个文件,因此:

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

a:b:02cc8f08398a4f3113b554e8105ebe4c
但是如果我尝试导出这个散列,我不能

echo a:b:c | md5
给我“49d6ea7ca1facf323ca1928995420354”。这里有什么明显的我遗漏的吗


谢谢

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

echo a:b:c | wc

给出6个字符,而不是5个字符。计算处的散列将给出正确的值。对不起大家

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

echo -n a:b:c | md5

应按预期工作。

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

sudo htdigest /etc/apache2/.htdigest yourrealm.com yourusername