1 Pluspunkt 0 Minuspunkte

Wie kann ich das auslesen von einem gespeicherten Passwort verhindern wenn ich in einem Programm ein Passwort abgleichen will? Mit einem Debugger kann doch jeder den String auslesen aber wie kann man das verhindern?

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv)
{

    char passwd[] = "topsecret";

    if(strcmp(argv[1], passwd) == 0)
        printf("OK");

    return 0;

}
von  

1 Antwort

1 Pluspunkt 0 Minuspunkte
Die einfachste Lösung wäre wahrscheinlich einen Hash zu verwenden. Statt das gespeicherte Passwort mit der Eingabe zu vergleichen erstellst du einen Hash des eingegebenen Passwort und vergleichst es mit dem gespeicherten Hash.
von (868 Punkte)