ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
1081
1081
EMPFEHLEN
-
29.09.08 21:16 #1awaiK Tutorials.de Gastzugang
Hallo,
ich bin dabei ein Login Formular für eine Anwendung zu schreiben. Die Passwörter möchte ich mit der Klasse Rfc2898DeriveBytes hashen und in der Datenbank abspeichern. Als Datenbank wird ein SQL Server 2005 verwendet.
Die Methode GetBytes() bzw. die Eigenschaft Salt gibt mir den Hash und den Salt in Form eines Byte Arrays zurück. Ich weiß aber nicht welchene Datentyp ich in der Tabelle verwenden muss um diese Arrays zu speichern. Das konvertieren in int oder long bringt mich leider auch nicht weiter, da das Byte Array zu groß ist.
Ich hoffe ihr könnt mir helfen. Vielen Dank im vorauß.
EDIT: Außerdem kann man mit der Klasse direkt in einem Rutsch das Ganze iterieren.Geändert von awaiK (30.09.08 um 19:32 Uhr)
-
Hallo awaik,
innerhalb des SQL-Servers bieten sich dafür "binary" und "varbinary" an.
Wenn du immer die gleiche Länge für die Werte hast würde ich binary in der entsprechenden Länge definieren und fertig ist. Sollten sie sich unterscheiden wird dir wohl nichts anderes übrig bleiben als varbinary(MAX) zu verwenden.
Warum verwendest du eigentlich Rfc2898DeriveBytes? Das ist ja keine eigentliche Hashfunktion, sondern ein Schlüsselgenerator.
Reicht eine einfache Hashfunktion wie aus der SHA-Familie nicht? Bei denen hättest du immer eine feste Länge der Ausgabe.MfG Calvin
-
30.09.08 17:04 #3awaiK Tutorials.de Gastzugang
Hi,
vielen Dank für deine Antwort, werde es sofort umsetzen.
Vermutlich würde ein MD5 oder SHA Hash reichen, doch ich möchte einen Salt benutzen, darum verwende ich diese Klasse. Ich kann der GetBytes Methode einden Wert übergeben, welcher bestimmt wie groß der zurückgegebene Schlüssel ist. D.h eine feste Länge ist ebenfalls gegeben.
-
05.10.08 14:48 #4awaiK Tutorials.de Gastzugang
Hallo calvin65,
das speichern des Byte Arrays scheint zu funktionieren.
Leider stehe ich jetzt vor dem Problem dieses Array wieder auszulesen, bisher habe ich SqlDataReader dafür benutzt. Doch dieser scheint keine passende Methode anzubieten um die Daten wieder auszulesen.
Kannst du mir da eine Möglichkeit nennen?
Ähnliche Themen
-
Byte Array in MySQL Datenbank schreiben/auslesen
Von hebel2 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 5Letzter Beitrag: 28.09.10, 15:49 -
byte Array in Datei speichern und wieder in byte Array einlesen
Von riseX im Forum JavaAntworten: 5Letzter Beitrag: 22.02.10, 12:05 -
TXT auslesen und in Datenbank speichern.
Von refl3x im Forum PHPAntworten: 3Letzter Beitrag: 17.09.08, 10:44 -
BufferdImage über byte Array als Blob in Datenbank speichern
Von ARadauer im Forum JavaAntworten: 2Letzter Beitrag: 29.01.08, 13:02 -
JTable Zelle in Datenbank speichern und Auslesen?
Von Dadu2006 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 2Letzter Beitrag: 04.05.07, 09:10





Zitieren
Login




