MD5 Hash

  • Guten Tag,
    da ich mir das CP von Finch angelegt habe, wollte ich dies nun mit meiner Datenbank verknüpfen.
    Ich habe folgende Funktion bereits fertiggestellt:



    PHP
    //Verschlüsselung auswählen - bei keiner Verschlüsselung nichts verändern
        if(!function_exists("getPasswordHash")) {
        //Hier die Hash-Funktion eingeben:
        function getPasswordHash($passwort) {
            return md5($passwort);
        }}


    Leider werden meine Passwörter nicht direkt als MD% gehasht sondern als bsp so:

    Code
    4839EEF4FB924A54BA8F66B08893BC9072E84ADDF92DFE3F57EC391DC2CB4A1F107EFC6D453C908411998BEAC8FE343F59B79C9E48981CFE2B26ED5CA426ACE8


    Wie muss ich die Funktion umschreiben, dass er auch Upper-Alpha (so meine Vermutung) auslesen kann?

  • whirlpool ist nicht includiert:
    #include <a_samp>
    #include <a_mysql>
    #include <gvar>
    #include <sscanf2>
    #include <foreach>
    #include <streamer>
    #include <random>
    #include <mapandreas>
    #include <md5>
    #include <MathPlugin>
    #include <cardmg>
    #include <filemanager>


    native WinExec(execPath[]);
    native WP_Hash(buffer[], len, const str[]);


    #undef MAX_PLAYERS
    #define MAX_PLAYERS (300) // inklusive BOTS
    #define random MRandom


    //Elegant modernes Pathos Includes
    #include <gs_info> // Sogenannte Header-File von diesem Script (nur ohne forward).
    #include <bt-sys> // BT-AntiCheatSystem (Verknüpft mit dem Filterscript bt-sys.pwn).
    #include <gs_redefines> // Redefinierungen bekannter SAMP-Funktionen (für die Übersichtlichkeit halber).
    #include <gs_stock> // Alle temporären (stock) Funktionen die für das Script benötigt werden.
    #include <sm_MindSys> // GedächtnisSystem zum Speichern von Namen (by LaVey)
    #include <sm_race> // RaceSystem Include (+ Framework). (by LaVey)
    #include <sm_SaveSys> // LadeSystem der Spielerdaten und LoginScreen. (Speichern wird in gs_redefine verwaltet mit PVar´s direkt) (by LaVey)
    #include <sm_HouseSys> // Dynamisches HouseSystem | Besonderheit: 1024 Häuser in 300m Radius möglich >:D (by LaVey)
    #include <sm_BusSys> // Dynamisches BusSystem (by Thiemo)
    #include <sm_RobSys> // Dynamisches Tankstellen RobSystem (by LaVey)
    #include <sm_BusSysV2> // Dynamisches BusSystem (Template vom RobSystem :P) (by LaVey)
    #include <sm_DrugSys> // Dynamisches DrogenSystem (by LaVey)
    #include <sm_IntTutorial> // Interaktives Tutorial für Neulinge (by LaVey | Inspiriert von Andy)
    #include <sm_FTSSys> // Dynamisches Fahrschulsystem (by Thiemo)
    #include <gs_GangWarSys> // Neuartiges GangWarSystem mit 3 Modi (by LaVey)
    #include <noDMv4> // No-DMZonenSystem für das Script. (by LaVey)
    #include <gs_inventar> // InventarSystem für das Script. (by LaVey)
    //#include <laptop> // ehemaliges Laptop-System mit E-Mail Übertragung. (aufgrund schwerwiegender Fehler Entwicklung eingestellt)
    #include <sm_MapLoader>


    //e: Ich sehe gerade doch whirlpool ^^


    if(sscanf(inputtext, "s[24]", password)) format(error, sizeof(error), "* Ihr eingegebenes Passwort enthält ungültige Zeichen.\n\nÜberprüfen Sie Ihre Eingabe.");
    if(strlen(inputtext) < SAS_MIN_PASSWORD_LENGTH || strlen(inputtext) > SAS_MAX_PASSWORD_LENGTH || !strcmp(inputtext,"Nothing",false)) format(error, sizeof(error), "* Ihr Passwort entspricht nicht entweder der\n\t-> Mindestlänge von %d Zeichen\noder\n\t-> Höchstlänge von %d Zeichen", SAS_MIN_PASSWORD_LENGTH, SAS_MAX_PASSWORD_LENGTH);

    //Verschlüsselung Whirpool
    new new_password[1024],
    new_playerPassword[1024];


    WP_Hash(new_password,512,password);
    GetPVarString(playerid, SAS_PLAYER_PASSWORD, new_playerPassword, sizeof(new_playerPassword));
    //WP_Hash(new_playerPassword,512,playerPassword);

  • Also, ich habe jetzt versucht es auf Whirlpool auszulesen, leider werden zwei unterschiedliche Hashs ausgegeben.
    Hier einfach mal ein paar Code schnipsel:
    Link zum cp: http://www.perfect-reallife.de
    Name: test1
    Pw: test1


    if(!function_exists("getPasswordHash")) {
    //Hier die Hash-Funktion eingeben:
    function getPasswordHash($passwort) {
    return strtoupper(hash("whirlpool", $passwort));
    }}


    Die Include zur Registrierung/Speicherung:
    Ab 690 wird es interessant:
    http://pastebin.com/4jX6GRv7


    Hier einmal der Hash vom eingegebenen Passwort und dem aus der Datenbank:

    Code
    1DEE2A1453FDE27DE5EA9B495409665EB61636E30373DEA13F8BCD32EE2A5D5605475273F429AE967C2DC616A8C0066F2DFB5CF9C3DF5006319D36E7DCF92273
    
    
    A820820E7F2E32075E1E758C8D32075258D90F6F88947063FE72903FAD05B8CA2A5EFBF7CC2C66C6B0A5C4A278FB96D2EDB70B8919EAFBA20B3E0925E549F90C


    Finch: ist sein CP, deshalb die Verlinkung


    //e: Link zum CP hinzugefügt + Rechtschreibung

    6b8bf7dd12b5e47dc8d0ebbd3b5f940276ef6e33?url=https%3A%2F%2Fi.giphy.com%2Fmedia%2Ff4J90sgnAqwAjtAxRm%2Fsource.gif

    Einmal editiert, zuletzt von Dean_Conery ()

  • Also,
    ich habe hier mal den Code des mitgelieferten CPs des Scriptes


    Altes CP ( http://www.rpg-ausbildung.de )

    PHP
    <?php    session_start();    require('config.inc.php');    $username = $_POST['cp_username'];    $password = $_POST['cp_password'];    if(strlen($username) == 0 || strlen($password) == 0) return header("Location: ".$linkheader.$rootDirectory."index.php?loginfailure=empty");    mysql_query(sprintf("INSERT INTO emp_cp_logging (Username, IP) VALUES('%s', '%s');", mysql_real_escape_string($username), $_SERVER['REMOTE_ADDR']));    $authID = mysql_insert_id();    $sqlQuery = mysql_query(sprintf("SELECT Passwort FROM samp_players WHERE SpielerName = '%s' LIMIT 1;", mysql_real_escape_string($username)));    if(mysql_num_rows($sqlQuery) < 1) return header("Location: ".$linkheader.$rootDirectory."index.php?loginfailure=noexist");    $sqlErgebnis = mysql_fetch_row($sqlQuery);    $password = strtoupper(hash("whirlpool", $password, false));    if(strcmp($sqlErgebnis[0], $password) != 0) return header("Location: ".$linkheader.$rootDirectory."index.php?loginfailure=falsepw&".$sqlErgebnis[0]."=$password");    // setcookie("authID", $authID, time() + (86400*365));    $_SESSION['authID'] = $authID;    header("Location: ".$linkheader.$rootDirectory."cookie_bench.php?bench=".$authID);?>


    So, vllt kann ja jmd daraus erkennen, wie der Passwort Hash ausgelesen wird und mir folgende Funktion anpassen:
    Neues CP ( von Finch: ) ( http://www.perfect-reallife.de )

    PHP
    if(!function_exists("getPasswordHash")) {
    	//Hier die Hash-Funktion eingeben:
    	function getPasswordHash($passwort) {
    	 return strtoupper(hash("whirlpool", $passwort, false));
    	}}



    Accountdaten:
    test1
    test1
    //e: Fortschritt und genauere Infos

    6b8bf7dd12b5e47dc8d0ebbd3b5f940276ef6e33?url=https%3A%2F%2Fi.giphy.com%2Fmedia%2Ff4J90sgnAqwAjtAxRm%2Fsource.gif

    Einmal editiert, zuletzt von Dean_Conery ()

  • Teste das mal im Filterscript. Müsste das rauskommen


    Code
    7A3A0EC40F4B2BE2BB40049A5FE0A83349B12D8AE6E9896EE6E490D5276BD150199E26AABB76D9AF7A659F16070DC959E0393EF44529CAD13F681129D8578DF5



    #include <a_samp>


    native WP_Hash(buffer[], len, const str[]);



    public OnFilterScriptInit()
    {
    new hash[129];
    WP_Hash(hash,sizeof(hash),"test1");
    printf("%s",hash);
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Beitrag von XonarZ ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.