Godfather Encrypt -> PHP Login

  • Hallo erstma,
    ich versteh einfach nich wie ich das machen soll, das es das encryptete PassWort ausliest und es mit php "umwandelt" damit man sich einloggen kann.
    Wär sehr gut wenn mir das jemand in PHP umschreiben könnte oder es vielleicht irgendwo liegen hat :D


    Hier der Encrypt:

    for(new x=0; x < strlen(string); x++)
    {
    string[x] += (3^x) * (x % 15);
    if(string[x] > (0xff))
    {
    string[x] -= 256;
    }
    }
    return 1;


    Danke im Vorraus, Flummi

  • $i ist für die Schleife
    $string ist die ausgabe


    PHP
    function getHash($str)
    $string = "";
    for($i = 0;$i<strlen($string);$i++)
    {
    $string[i] += (3^x)*(x%15);
    if($string > (0xff))$string[i]-=256;
    }
    return $string;
    }

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Ich hab das ganze Script schon aufn Kopf gestellt, aber es will nicht funtionieren -.-
    //Edit: Fehler^^ : Wenn ich das passwort eingeben dann kommt da Passwort falsch... Manchmal geht das Encryptete Passwort (wenn ich was ändere)
    Hab das von hier:
    [Hilfe] Php Control Panel Login mit .ini


    Code:



    *PUSH*

  • Ich hab jetzt nicht wirklich Ahnung von PHP,aber glaube da ist auch ein Fehler in der getHash() Funktion.

    PHP
    function getHash($str)
    $string = "";
    for($i = 0;$i<strlen($string);$i++)
    {
    $string[i] += (3^x)*(x%15);
    if($string[i] > (0xff))$string[i]-=256; // muss es hier nicht auch [i] in der if() - Abfrage sein :-0 ?
    }
    return $string;
    }
  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Da ist noch einiges mehr an der Funktion falsch.Ich kann dir da aber auch nicht 100% helfen,ich kann nämlich auch kein PHP :p.
    Versuch es mal so,wäre aber besser du schaust dich nach jemanden um der Ahnung von PHP hat.

    PHP
    function getHash($str)
    $string = "";
    for($i = 0;$i<strlen($string);$i++)
    {
    $string[$i] += ( 3^$i ) * ( $i % 15);
    if($string[$i] > (0xff)) $string[$i]-=256; 
    }
    return $string;
    }
  • Wahrscheinlich eher:

    PHP
    function getHash($str)
    $string = $str;
    for($i = 0;$i<strlen($string);$i++)
    {
    $string[$i] += ( 3^$i ) * ( $i % 15);
    if($string[$i] > (0xff)) $string[$i]-=256; 
    }
    return $string;
    }


    Wie gesagt,Ich weiss es nicht.Frag jemanden der Ahnung von PHP hat.

  • Als Error spuckt er nur aus...:

    Code
    Fatal error: Cannot use assign-op operators with overloaded objects nor string offsets in /usr/www/users/gtfw/enc.php on line 8

    das der Zeile

    PHP
    $string[$i] += ( 3^$i ) * ( $i % 15);

    entspricht
    Ich befasse mich nun bereits seit etwa 12 Monate mit PHP, diesen Fehler kannte ich bisher noch nicht.

  • Wenn du in deinem Gamemode siehst wie das ganze verschlüsselt wird (schau Include, etc.) dann würde ich dir empfehlen das eingegebene Passwort zu VERSCHLÜSSELN (nicht ent-) und dann zu überprüfen ob die beiden übereinstimmen. Genauso mache ich es in meinem UCP, nur dass es dort nicht ganz so kompliziert ist, da ich MD5 verwende was PHP-integriert ist.


    Mit freundlichen Grüßen
    Padarom

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • Wenn du in deinem Gamemode siehst wie das ganze verschlüsselt wird (schau Include, etc.) dann würde ich dir empfehlen das eingegebene Passwort zu VERSCHLÜSSELN (nicht ent-) und dann zu überprüfen ob die beiden übereinstimmen. Genauso mache ich es in meinem UCP, nur dass es dort nicht ganz so kompliziert ist, da ich MD5 verwende was PHP-integriert ist.


    Mit freundlichen Grüßen
    Padarom


    Encrypt bedeutet nicht Uncrypt!



    B2T:
    Mach vorher

    PHP
    $string = array();