nu-fg Geschrieben 3. Mai 2004 Geschrieben 3. Mai 2004 Hallo! Folgendes Problem: Ich möchte ein Passwort verschlüsselt in einer Datenbank ablegen und hinterher wieder zwecks Log-In auslesen. Zum Ver- bzw. Entschlüsseln benutze ich die Klasse "Cipher" und den DES-Algorithmus. Leider sind im verschlüsselten String Sonderzeichen enthalten, die die Datenbank nicht verarbeiten kann. Jedenfalls kommt nicht der String wieder raus, den ich ursprünglich in der DB gespeichert habe. Das macht das Log-In etwas schwierig Wie könnte ich denn sonst verschlüsseln, um das zu vermeiden? Bzw. kann man der Cipher-Klasse evt. sogar klar machen, welchen Zeichensatz sie verwenden darf (Zum Ändern der Ländereinstellungen der DB bin ich natürlich nicht berechtigt... :eek: ) Sollte ich einen anderen Algorithmus verwenden? Kennt jemand eine Lösung für mein Problem?? Danke schonmal!!!
kingofbrain Geschrieben 4. Mai 2004 Geschrieben 4. Mai 2004 Hi, das ist in meinen Augen ein recht unüblicher Weg für den Login, weil Du ja die User-Passwörter jederzeit entschlüsseln kannst und sie somit missbraucht werden können. Ein Weg, der recht oft gegangen wird, ist eine Verschlüsselung in eine Richtung. Du könntest Dir ja mal die Klasse MessageDigest ansehen, die kann z.B. SHA und MD5. Das sind recht einfach zu bedienende Arten der Prüfzifferberechnung in Java. Wenn es Dich genauer interessiert, dann schau mal bei http://www.javabuch.de im Kapitel "Sicherheit / Kryptografie". Da steht auch Einiges. Wenn der User sich dann einloggt, wird seine Eingabe mit dem selben Algorithmus verschlüsselt und mit dem gespeicherten Wert verglichen. Bei uns in einer MySQL funktioniert das prächtig - ich habe allerdings keine Ahnung, welche Ländereinstellungen usw. Einfach mal ausprobieren und schauen, was für Prüfziffern generiert werden. Peter
MasterC Geschrieben 4. Mai 2004 Geschrieben 4. Mai 2004 Richtig, normalerweise werden die verschlüsselten Passwörter miteinander verglichen.
nu-fg Geschrieben 4. Mai 2004 Autor Geschrieben 4. Mai 2004 Hört sich gut an! Werds mal mit dem Message Digest und deiner Methode ausprobieren. Ein MD5-Algorithmus wird unserem Code Review wohl auch eher standhalten als DES :floet: Danke für den Tipp
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden