Я написал прогу которая криптует заданный пароль в md5:
#!/usr/bin/perl
use Digest::MD5 qw(md5_base64);
$passwd = "passwd";
$hash = md5_base64($passwd);
print "$hash\n";
На выходе получается:
dqIXO+Y5MlTnL/pNbfEDCg
Но криптованный пароль из /etc/shadow выглядит так:
$1$q/tlV7lJ$oxoHaOkR2dWCzL4osNn.31
То есть если отбросить все между символами '$' и сами символы, то все нормально. Так вот как генерить часть пароля между символами '$' программно?
> Я написал прогу которая криптует заданный пароль в md5: > #!/usr/bin/perl > use Digest::MD5 qw(md5_base64); > $passwd = "passwd"; > $hash = md5_base64($passwd); > print "$hash\n"; > > На выходе получается: > dqIXO+Y5MlTnL/pNbfEDCg > > Но криптованный пароль из /etc/shadow выглядит так: > $1$q/tlV7lJ$oxoHaOkR2dWCzL4osNn.31 > > То есть если отбросить все между символами '$' и сами > символы, то все нормально. Так вот как генерить часть > пароля между символами '$' программно? > > Или это легче сделать на Си?
Так таж часть салтом вроде называеться...
Разберись с md5.pm получше...
[Unix] [Perl] md516.05.01 11:59 Автор: Sergei Статус: Незарегистрированный пользователь
> > Так таж часть салтом вроде называеться... > > Разберись с md5.pm получше... > > Я уже прочитал все маны. Про генерацию салта ничего не > нашел! Если кто знает как подскажите плз. Очень надо!
Я не очень крут в md5 (не уверен что там есть салт... (уверен на 98% :)) но насколько я знаю - он также как и в des генериться отфонарно и его не угадать сначала. salt это две буквы (в des'е покрайней мере). Они используються для кодирования слова но это не "ключь" больше пока ничего больше сказать не могу, потомучто незнаю. sorry.
[Unix] [Perl] md517.05.01 16:26 Автор: Sergei Статус: Незарегистрированный пользователь
> Я не очень крут в md5 (не уверен что там есть салт...
Конечно есть!
> (уверен на 98% :)) но насколько я знаю - он также как и в > des генериться отфонарно и его не угадать сначала. salt это > две буквы (в des'е покрайней мере).
в md5 это 9 символов
> кодирования слова но это не "ключь" больше пока ничего > больше сказать не могу, потомучто незнаю. sorry.