Hallo zusammen,
wir möchten mit unserem gesamten Shop von XTC auf Oxid wechseln.
Nun wird es einem leider nicht unbedingt einfach gemacht, was die unterschiedlichen Verschlüsselungstechniken der Passwörter angeht. Wobei Oxid durch die Verwendung von Salt natürlich mehr Sicherheit bittet.
Jetzt habe ich im Forum gelesen und kann es mir auch selbst vorstellen, dass es möglich ist die Salt-Verschlüsselung aufzuheben und zu umgehen. Was jedoch nicht beschrieben wurde ist wie.
Eigentlich müsste ja einfach der Loginmechanismus umgeschrieben werden, nach dem Motto if (xt_Hash) --> kein Salt ifnot (xt_Hash) --> Salt … Damit müsste es doch rein logisch möglich sein, auch die MD5-Passwörter ohne Salt aus anderen Shops zu übernehmen.
Derzeit benutze ich Version 4.6.1_45706 … wäre euch dankbar, wenn mir jemand sagen könnte, wo ich die entsprechenden Funktionen finde.
Danke. 
Was du am besten tust ist ein Modul zu schreiben dass den Login ein bisschen anpasst, angehen würde ich das in etwa so:
Modul auf oxuser::login schreiben:
public function login( $sUser, $sPassword, $blCookie = false){
try{
$blResult = parent::login( $sUser, $sPassword, $blCookie );
}catch( oxUserException $e){
//Hier eigene Logik, quasi eine kopie vom core login
}
return $blResult;
}
In deiner eigenen Logik nimmst du eine abgewandelte _getLoginQuery die mit deiner XTC Datenbank zusammenpasst.
Danke an aggrosoft. Hast mich auf die richtige Spur geführt.
Am Ende habe ich die core/oxuser.php die Funktion _getLoginQuery geändert.
statt
$sPassSelect = " oxuser.oxpassword = MD5( CONCAT( ".$oDb->quote( $sPassword ).", UNHEX( oxuser.oxpasssalt ) ) ) ";
hab ich nun
$sPassSelect = " (oxuser.oxpassword = CONCAT(MD5( ".$oDb->quote( $sPassword )." ) ) OR oxuser.oxpassword = MD5( CONCAT( ".$oDb->quote( $sPassword ).", UNHEX( oxuser.oxpasssalt ) ) )) ";
damit funktionieren die alten MD5-Passwörter der XTC-Kunden sowie die neuen mit Salt.
Vielleicht hilft es ja mal jemandem mit ähnlichem Problem. 
Hi
na ja… dann sind die alten Passwörter aber nach wie vor “unsicher”. Und Du hast schon ein Modul geschrieben und nicht einfach im Core gehackt?
Gruß
Bei einer XTC-Migration habe ich die MD5-Passwörter 1:1 in die Oxid 460 Datenbank übertragen und das funktioniert ohne jegliche Codeänderung. Dabei ist der Sicherheitsstatus so wie vorher in XTC. Neukunden werden natürlich automatisch mit Salt angelegt.