Помогите Настройка лаунчера от "Сашка"

Статус
Закрыто для дальнейших ответов.

Crisis2010

Активный участник
Баллы
68
Имя в Minecraft
Crisis2010
Здравствуйте, такая проблема, был раньше лаунчер, он читает какой то странный хеш
Пример:
8c823d94c71d3e1a19d2a4824d8e4108e63a9c5afafb9d43df0ec094ad7b633a82e4c04d9b0987919fbc6f069d41dc9018b40b1c6e5f4247f89ef32bddc29646057872067462
хеш который используется в данный момент
А вот хеш который принимает лаунчер от "Сашка":
d9075cf27fab8f02bb24e8e87ac442f5

Может кто прикрутить чтение хеша к лаунчеру от "Сашка" ?
Код:
<?php
define('INCLUDE_CHECK',true);
require_once 'functions.php';
include ("connect.php");
$login=$_POST['user'];
$password=$_POST['password'];
$ver=$_POST['version'];
 
        if(getGameInfo('launcher') == $ver){
 
            $result = mysql_query("SELECT $db_columnPass FROM $db_table WHERE $db_columnUser='$login'") or die ("Запрос к базе завершился ошибкой."); //извлекаем из базы все данные о пользователе с введенным логином
                $myrow = mysql_fetch_array($result);
 
            $realPass = $myrow[$db_columnPass];
 
                if (checkPass($realPass,$password))
                {
                    $sessid = generateSessionId();
                    $gamebuild=getGameInfo('build');
 
                    mysql_query("UPDATE $db_table SET $db_columnSesId='$sessid' WHERE $db_columnUser = '$login'") or die ("Запрос к базе завершился ошибкой.");
 
                    $dlticket = md5($login);
                    echo $gamebuild.':'.$dlticket.':'.$login.':'.$sessid.':';
                }
            else {
                echo "Bad login";
                }
        }
        else{
            echo 'Old version';
            }
?>
Код:
 <?php
if(!defined('INCLUDE_CHECK')) die('У вас нет прав на выполнение данного файла!');
 
function generateSessionId(){
    // generate rand num
    srand(time());
    $randNum = rand(1000000000, 2147483647).rand(1000000000, 2147483647).rand(0,9);
    return $randNum;
}
 
function getGameInfo($type){
    include ("connect.php");
    switch($type){
    case 'build':
        $query = mysql_query("SELECT * FROM $db_GameDatatable WHERE $db_Propertycolumn = 'latest-game-build'") or die ("Запрос к базе завершился ошибкой."); 
            $resource = mysql_fetch_array($query);
            return $resource[$db_Valuecolumn];
    break;
 
    case 'launcher':
        $query = mysql_query("SELECT * FROM $db_GameDatatable WHERE $db_Propertycolumn = 'launcher-version'") or die ("Запрос к базе завершился ошибкой.");
            $resource = mysql_fetch_array($query);
            return $resource[$db_Valuecolumn];
    break;
 
    }
}
function regUsers($mode,$rt){
include ("connect.php");
$users = mysql_query("SELECT `id` FROM $db_table") or die ("FATAL BASE DATA ERROR");
if ($mode=="")
{
return mysql_num_rows($users);
}
elseif ($mode=="regtext")
{
$rt=$rt."Всего ".mysql_num_rows($users)." зарегистрированн";
if (substr(mysql_num_rows($users), strlen(mysql_num_rows($users))-2, 1)=="1")
{
$rt=$rt."ых пользователей";
 
}
else
{
switch (substr(mysql_num_rows($users),strlen(mysql_num_rows($users))-1, 1))
{
 
case 1:$rt=$rt."ый пользователь";break;
case 2:$rt=$rt."ых пользователя";break;
case 3:$rt=$rt."ых пользователя";break;
case 4:$rt=$rt."ых пользователя";break;
case 5:$rt=$rt."ых пользователей";break;
case 6:$rt=$rt."ых пользователей";break;
case 7:$rt=$rt."ых пользователей";break;
case 8:$rt=$rt."ых пользователей";break;
case 9:$rt=$rt."ых пользователей";break;
case 0:$rt=$rt."ых пользователей";break;
 
default:
    $rt=$rt." Ошибка падежа(надо было лучше учится в школе!)";
}
}
return $rt;
}
}
 
function checkPass($realPass,$password){
            if (strlen($realPass) == 32)
            {
                $cp = md5($password);
            }
            else {
                if(strpos($realPass,'$SHA$') !== false)
                {
                    $ar = preg_split("/\\$/",$realPass);
                    $salt = $ar[2];
                    $cp = '$SHA$'.$salt.'$'.hash('sha256',hash('sha256',$password).$salt);
                }
                else
                {
                    $saltPos = (strlen($password) >= strlen($realPass) ? strlen($realPass) : strlen($password));
                    $salt = substr($realPass, $saltPos, 12);
                    $hash = hash('whirlpool', $salt . $password);
                    $cp = substr($hash, 0, $saltPos) . $salt . substr($hash, $saltPos);
                }
            }
         
            if ($realPass==$cp) {
                return true;
            }
            else {
                return false;
            }
}
?>

То что выше это функции и авторизация из старого лаунчера, а вот куда нужно прикрутить:
http://yadi.sk/d/KaRgk3rr5UPiE
Не поместились в тему, слишком много букв.

Помогите, а то я пытался и не получилась, я в этом не слишком силён.
 
если сегодня не загуляю как вчера, сделаю 🙂

напиши мне а ЛС ссылкой на тему, а то потеряется...
 
нужен доступ к фтп сайта и базам, чтоб отдебажить
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх