Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
 
 
Опции темы Опции просмотра
Старый 29.02.2008, 00:39   #9
Гость
 
Сообщений: n/a
По умолчанию

Эхх что то не работает...

Код:
<?

include 'x_blowfish.php';


// Вычисляет чек сумму для login сервера
function checksum($raw) {
    $ckecksum = 0;
    $raw = unpack("L*",$raw);
    for ($i=1;$i<=count($raw);$i++) {
        $ckecksum ^= $raw[$i];
    }
    return pack("L",$ckecksum);
}
// Вывод пакета для отладки
function _p($hex) {
	print str_repeat("_",54);
	for ($i=0;$i<strlen($hex);$i++) {
		if ($i % 0x10 == 0) printf("\r\n0x%02X | ",$i);
		printf("%02X ",ord($hex{$i}));
	}
	print "\r\n";
}


$key = "_;5.]94-31==-%xT!^[$\x00";
$crypt = new x_blowfish($key);

$packet  = "\x32\x00";
$packet .= "\x00";
$packet .= str_pad("111",14,"\x00");
$packet .= str_pad("222",16,"\x00");
$packet .= "\x08";
$packet .= str_repeat("\x00",8);
$packet .= str_repeat("\x00",4);
$packet .= str_repeat("\x00",4);

$checksum = checksum(substr($packet,2,-8));
$packet = substr_replace($packet,$checksum,42,4);

/*
32 00 0C DD D7 23 42 49 DE 11 37 C2 1A 04 97 B5 
5C 21 B8 C5 CC 87 59 BC 82 CC 43 C6 34 40 6D AE 
0A 76 41 61 6F 5C 4B BD 6F A5 D7 30 FE 25 9C 55 
E1 23 
*/

_p($packet);
$encode = substr($packet,2);
$encode = $crypt->bfEncode($encode,48);
$packet = substr_replace($packet,$encode,2);
_p($packet);

?>
выводит
Код:
______________________________________________________
0x00 | 32 00 00 31 31 31 00 00 00 00 00 00 00 00 00 00
0x10 | 00 32 32 32 00 00 00 00 00 00 00 00 00 00 00 00
0x20 | 00 08 00 00 00 00 00 00 00 00 32 03 31 0B 00 00
0x30 | 00 00
______________________________________________________
0x00 | 32 00 6A A2 F1 52 EC 1E 53 7B FD 44 DF 1F AC D6
0x10 | A9 48 D9 6D B9 83 9F 3F 85 1A 3E 22 BC 4F 3A 21
0x20 | 06 2D 6E 37 CA 26 6C FD C7 19 E5 8A F9 91 6F 6F
0x30 | 45 6A
А должно быть

Код:
32 00 0C DD D7 23 42 49 DE 11 37 C2 1A 04 97 B5 
5C 21 B8 C5 CC 87 59 BC 82 CC 43 C6 34 40 6D AE 
0A 76 41 61 6F 5C 4B BD 6F A5 D7 30 FE 25 9C 55 
E1 23
Никак что то не совпадает :(
  Ответить с цитированием
 

  CoderX :: Forums > Основные форумы > Программинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 00:03.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!