Pergunta

Eu estou tentando escrever algum código para trabalhar com um arquivo de senhas htdigest. A documentação posso encontrar parece alegação de que o formato do arquivo é:

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

Se for esse o caso, então por que não faz este trabalho para mim? Eu criei um arquivo com o htdigest linha de comando assim:

htdigest -c test b a

Quando for solicitada uma senha entrei 'c'. Isso cria um arquivo com o conteúdo:

a:b:02cc8f08398a4f3113b554e8105ebe4c

No entanto, se eu tentar derivar esse hash não posso,

echo a:b:c | md5

me dá "49d6ea7ca1facf323ca1928995420354". Existe algo óbvio que estou em falta aqui?

Graças

Foi útil?

Solução

echo por padrão adiciona uma nova linha de fuga:

echo -n a:b:c | md5

deve funcionar como você espera.

Outras dicas

Hm, parece que eu respondi minha própria pergunta. Meu caso de teste foi falho, 'eco' está adicionando caracteres extras (não tenho certeza qual). Por exemplo

echo a:b:c | wc

dá 6 caracteres em vez de 5. Calculando o hash em http: // md5-hash on-line .waraxe.us / dá o valor correto. Desculpe a todos!

Aqui está como você definir a senha para um determinado usuário.

sudo htdigest /etc/apache2/.htdigest yourrealm.com yourusername
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top