-lcrypt를 연결하면 문제는 내 명령 줄 인수와 상관없이 동일한 암호화를 얻게된다는 것입니다. 내가 소금을 바꿀 때만 암호화가 바뀌는 것 같습니다. 내 코드에서이 결함으로 이어질 수있는 점은 무엇입니까? crypt(*enc, salt)
에서왜 암호화 기능이 여기에서 작동하지 않습니까?
#define _XOPEN_SOURCE
#include <unistd.h>
#include <math.h>
#include <stdio.h>
#include <string.h>
int main(int argc, char *enc[])
{
if (argc != 2)
{
printf("Improper command-line arguments\n");
return 1;
}
char *salt = "ZA";
printf("%s \n", crypt(*enc, salt));
}
enc [1]의 첫 번째 인수를 변경 했는데도 여전히 이해가되지 않습니다. printf ("% s \ n", crypt ("drain", salt)); 첫 번째 인수에 관계없이 동일한 암호화를 얻으며 소금 만 변경하면 암호화가 변경됩니다. 왜 그런가요? – user3303819
@ user3303819 - 귀하의 의견을 이해할 수 없습니다. –