Получение хеш-значения пароля с помощью crypt(3)

#include <unistd.h> 
#define _XOPEN_SOURCE                                                                                        
                                                                     
int main(int argc, char **argv){ /*argv[1] -- key; argv[2] -- salt*/ 
  char* c=crypt(argv[1], argv[2]);                                   
  write(1, c, sizeof(c));                                            
  return 0;                                                          
}

В man-е сказано, что если нужно получить строку $6$salt$encryped (именно в таком виде она в файле /etc/shadow) необходимо передать ф-ии crypt() два аргумента: key и $6$salt$. При вызове программы ./a.out qwerty '$6$salt$' она просто возвращает второй аргумент.


Ответы (0 шт):