Показать сообщение отдельно
Старый 22.06.2009, 23:49   #64
Местный
 
Аватар для Yegor
 
Регистрация: 05.04.2009
Сообщений: 1,436
Сказал Спасибо: 306
Имеет 122 спасибок в 98 сообщенях
Yegor пока неопределено
По умолчанию

xkor, да я все эти темы перерыл все нашел. Дескремблирую ключ твоей функцией, скремблирую функцией из примера la2_client_emu. Вот как там пакет строится :

procedure RequestAuthLogin(login,password: string);
var
data: array[0..175] of byte;
crypt_text: string;
begin
FillChar(data,Length(data),0);
crypt_text:=RSAEncrypt(login,password,RepairKey(rs aKey2));
Move(crypt_text[1],data[1],128);
Move(GGAuthResponse,data[129],4);
data[149]:=8;
AddCheckSumm(Data,160);

SendPkt(Data,176);
end;

один нюанс в описании пакетов http://www.la2kings.ru/la2bot/packets.html в этом пакета видно что перед логином идут не все нули а есть один символ $20, может это не опечатка?

RequestAuthLogin (RSA)


Формат:
AA 00 // Длина
00 // Тип
[начало зашифрованного блока]
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20
00 00 XX XX XX XX XX XX XX XX XX XX XX XX XX XX // Login (учтите, эта строка - массив из 14 символов)
XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX // Password (... из 16 символов ...)
[конец зашифрованного блока]
XX XX XX XX // GGAuthResponse из GGAuth
XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX
08 00 00 00 00 00 00 00 00
XX XX XX XX // чексумма
00 00 00 00

Последний раз редактировалось Yegor, 22.06.2009 в 23:54.
Yegor вне форума   Ответить с цитированием