26. februar 2002 - 18:08Der er
4 kommentarer og 1 løsning
DES crypt funktion under Linux
Jeg vil bare ved hvordan jeg kan bruge funktionen crypt (DES password krypteringsfunktion som bruges under Linux til kryptering af bruger passwords) i mine egne programmer. Det eneste jeg ved er dem jeg har læst i man crypt
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
int main(int argc, char *argv[]) { char *salt="a9"; char *key="Secret";
printf("%s\n", crypt(key, salt)); exit(0); }
Kompileres med:
gcc -Wall -O2 -o crtest crtest.c -lcrypt
Output når programmet køres er:
a9sdK.nqgQTZg
Håber det hjælper ...
Og ja, salt værdien er de to første tegn i output. For at checke et kodeord i eks /etc/shadow mod et plaintext password er:
1) Læs salt værdien fra passwordet i /etc/shadow (de to første bytes) 2) encpassword=crypt(plaintextpassword, salt_fra_step_1); 3) if (strcmp(encpassword, password_fra_step_1)) printf("mismatch"); else printf("match");
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.