Hallo,
ich bin totaler Anfänger was Java angeht, und hoffe das mir jemand helfen kann. Folgendes Problem:
Ich habe eine Datenbank mit einem Passwort in MD5-Hash und ich habe es schon geschafft, diesen MD5-Hash
auszulesen. Nun habe ich eine Funktion im Internet gefunden, die mir einen String -> MD5 Hash umwandelt und
dann wollte ich diese beiden Werte vergleichen. Syntax scheint alles okay zu sein, denn es gibt keine Fehler oder Warnings. Daher denke ich , dass es evt was mit den Casten zu tun hat. Hier was ich bis jetzt gemacht habe (vereinfachte Fassung).
Der Parameter name ist erstmal nicht wichtig, und das passwort halt. Ich rufe die Funktion von irgendwo auf und eigentlich sollt da JA stehen.
Ich habe auch schon versucht
String wert = (String) md5;
String wert2 = (String) rset.getString(1);
und die dann vergleichen, geht aber auch nicht.
Hoffe mir kann jemand helfen, und sorry das ich gerade so etws komisch schreibe, aber ich muss eigentlich schon unterwegs sein
Vielen Dank,
Hauke
ich bin totaler Anfänger was Java angeht, und hoffe das mir jemand helfen kann. Folgendes Problem:
Ich habe eine Datenbank mit einem Passwort in MD5-Hash und ich habe es schon geschafft, diesen MD5-Hash
auszulesen. Nun habe ich eine Funktion im Internet gefunden, die mir einen String -> MD5 Hash umwandelt und
dann wollte ich diese beiden Werte vergleichen. Syntax scheint alles okay zu sein, denn es gibt keine Fehler oder Warnings. Daher denke ich , dass es evt was mit den Casten zu tun hat. Hier was ich bis jetzt gemacht habe (vereinfachte Fassung).
Code:
public void login(String name, String passwort)
throws ClassNotFoundException, SQLException
{
Class.forName("oracle.jdbc.driver.OracleDriver");
String md5 = Datenbank.getMD5Hash(passwort);
String url = "jdbc:oracle:thin:@//localhost:1521/xe";
Connection conn =
DriverManager.getConnection(url,"user", "pw");
conn.setAutoCommit(false);
Statement stmt = conn.createStatement();
ResultSet rset = stmt.executeQuery("select PASSWORT from BENUTZER WHERE IDENT = 28");
while (rset.next()) {
if(rset.getString(1) == md5) System.out.println("JA");
Der Parameter name ist erstmal nicht wichtig, und das passwort halt. Ich rufe die Funktion von irgendwo auf und eigentlich sollt da JA stehen.
Ich habe auch schon versucht
String wert = (String) md5;
String wert2 = (String) rset.getString(1);
und die dann vergleichen, geht aber auch nicht.
Hoffe mir kann jemand helfen, und sorry das ich gerade so etws komisch schreibe, aber ich muss eigentlich schon unterwegs sein
Vielen Dank,
Hauke