Seite 1 von 1

md5 + salt / Passwörter für Joomla generieren

Verfasst: 03.10.2010 15:38
von smateja
Hallo zusammen,

ich quäle mich jetzt schon länger mit dem Versuch herum, via mysql + PB mich an eine joomla Datenbank zu verbinden und hier die Benutzernamen + Kennwörter dann in meinem Projekt zu verwenden. Leider verschlüsselt hier Joomla in aktueller Version mit md5 + salt.

Hat jemand eine idee wie ich aus einem String ein md5+salt kennwort generieren kann.

Habe das forum auch schon durchsucht und leider bislang noch nichts passendes gefunden.

Merci

Re: md5 + salt / Passwörter für Joomla generieren

Verfasst: 03.10.2010 15:53
von c4s

Re: md5 + salt / Passwörter für Joomla generieren

Verfasst: 03.10.2010 16:11
von smateja
Danke für deine schnelle Antwort - weiß jetzt leider immer noch nicht wie ich das so verwenden kann, dass ich joomla 1.5 konforme passwörter erzeugen kann.

Re: md5 + salt / Passwörter für Joomla generieren

Verfasst: 03.10.2010 16:59
von edel

Re: md5 + salt / Passwörter für Joomla generieren

Verfasst: 03.10.2010 19:29
von smateja
hi Edel,

danke für deine Antwort und das mitsuchen.

Mir scheint allerdings, dass es hier um eine Joomla Version 1.x und eine frühe 1.5er geht - die einfach nur via MD5 verschlüsseln.

Hab das eh noch nicht ganz verstanden was es mit dem SALT auf sich hat. ist das ne Art String den man einfach mit dazu gibt bevor man es mit MD5 verschlüsselt?

Wenn Ja - muß es ja in der Joomla isntallation quasi irgendwo ein Gegenstück geben - welches ich auch noch nicht entdeckt habe.

so on...

Ich bleib da dran - sobald sich hier mehr tut poste ich - evtl. interessiert das ja noch mehr.

LG

Re: md5 + salt / Passwörter für Joomla generieren

Verfasst: 03.10.2010 20:43
von edel
Nein, der Link erklaert das schon richtig.

Wenn du dich registrierst, generiert joomla ein zufaelligen Salt (32 Zeichen lang).
Dieser wird mit dem Passwort verbunden und daraus ein der Hashwert gebildet.
Der Hashwert wird dann wieder mit dem Salt verknuepft, als Trennzeichen benutzt
Joomla ':'. Dieser String wird dann in der Datenbank gespeichert.

Code: Alles auswählen

Procedure.s GenJoomlaPassword(Password.s, Salt.s)
    Protected result.s
    Protected buffer.s = Space(100)
    Protected len.l
    
    len = PokeS(@buffer, Password + Salt, -1, #PB_Ascii)
    
    result = MD5Fingerprint(@buffer, len)   
    
    ProcedureReturn result + ":" + salt
EndProcedure
Wenn du das Passwort nun vergleichen willst, drehst du das ganze einfach herum.

Code: Alles auswählen

Procedure IsJoomlaPassword(Password.s, jPassword.s)
    Protected result
    Protected hash.s
    Protected salt.s
    Protected buffer.s = Space(100)
    
    hash = StringField(jPassword, 1, ":")
    salt = StringField(jPassword, 2, ":")
    
    len = PokeS(@buffer, Password + salt, -1, #PB_Ascii)
    
    If MD5Fingerprint(@buffer, len) = hash
        result = #True
    Else
        result = #False
    EndIf
    
    ProcedureReturn result
EndProcedure

Code: Alles auswählen

jPass.s = GenJoomlaPassword("000000", "IJHkj32hkj4234kj2khKJHKJHki32ldv")

Debug jPass 

If IsJoomlaPassword("000000", jPass)
    Debug "passwort ist richtig"
Else
    Debug "passwort ist falsch"
EndIf

Re: md5 + salt / Passwörter für Joomla generieren

Verfasst: 03.10.2010 20:59
von smateja
Hach Edel, du bist der Held in meiner Welt.

Dickes Dankeschön an dich.

LG