Ich benutze Java Message Digest, um MD5-Hash zu erstellen, der für die Authentifizierung verwendet wird. Der MD5-Hash wird in der Datenbank als varchar2 gespeichert. Ich habe einen Test gemacht, um einen Benutzer auf meinem Tomcat-Server auf meinem lokalen Laptop zu erstellen. Als ich den Krieg auf dem Tomcat-Testserver unter Linux-Redhat bereitgestellt habe, ist die Authentifizierung fehlgeschlagen, da Hash nicht zugeordnet wurde. Ich habe den Benutzernamen und das Passwort überprüft: Sie sind alle korrekt. Beide Webserver zeigen auf dieselbe Datenbank.
Ich vermute, dass der Hash, der auf meinem lokalen Laptop erzeugt wird, sich von dem unterscheidet, den der Testserver generiert hat. Habe ich recht?
Unten ist der Code, mit dem ich den Hash generiert habe.
%Vor%Die zurückgegebene Zeichenfolge wird in der Datenbanktabelle gespeichert, die unten definiert ist
%Vor%Hier ist die Ausgabe der Java-Version auf meinem Laptop
%Vor%Hier ist die Ausgabe der java-Version auf dem redhat-Server
%Vor% Es ist möglich, dass Sie den Standardzeichensatz verwenden, um die Bytes zu generieren, die Sie an die Methode MD5.digest()
übergeben, und dieser Zeichensatz unterscheidet sich zwischen Ihrem Laptop und dem Server.
Das könnte ein Grund sein, warum Sie unterschiedliche Ergebnisse sehen. Sonst ist es nicht möglich, dass es andere Ergebnisse erzeugt.
Zum Beispiel -
%Vor%Nur wenn Sie unterschiedliche Daten in den MD5-Digest eingeben. Einmal wäre es Zufall, HashCode-Werte einzugeben.
Es gibt nur einen MD5-Algorithmus, der überall auf der gleichen Eingabe das gleiche Ergebnis liefert.
Überprüfen Sie, ob Ihr Hash gesalzen ist. Salting bedeutet, dass das Passwort mit einer anderen Zeichenfolge verknüpft wird, um die Hash-Sicherheit zu erhöhen (um den Effekt von rainbow-Tabellen rückgängig zu machen)
Es kann sein, dass Ihre Datenbank-Hashes gesalzt sind: daher der Unterschied zwischen Ihren (ungesalzenen oder falsch gesalzenen) MD5-Hashes.
Jede Eingabe des MD5-Algorithmus führt zu demselben Hash. Das ist der Punkt eines Hash-Algorithmus.
Tags und Links java md5 message-digest