Доброй ночи, пробую разобраться с дешифрацией пакетов от сервера. На разных форумах вычитал что для дешифрования используется L2BlowFish, нашел его, посмотрел... на сколько я понял, теперь мне необходим ключ дешифрования, который клиент получает от сервера при установке соединения. Сниффером просматриваю входящие пакеты на порту 2106. После ввода логина/пароля и начала входа, приходят 4 пакета, 186, 42, 66, 26 байт. В каком их них искать этот КЛЮЧ?
Я надеюсь что мне ответят на первую часть вопроса, и на ответ на вторую часть я тоже надеюсь =)
Код:
var
KeyBF: String;
bfData: L2BlowFish;
_b: String; //Тут у меня содержимое пакета на порту 7777
_x: array [0..2500] of Char; //:confused:
...
//Я предположил что пакет размером 42 байта содержит ключ и...
bfData:=L2BlowFish.Create;
FillChar(KeyBF,21,0);
Move(_b[1],KeyBF,20);
bfData.Init(KeyBF, 21); //Попытался
...
//А к остальным пакетам, я стал применять это шаманство
Move(_b, _x, PacketInfo.PacketLen);
bfData.bfDecode(_x, PacketInfo.PacketLen);
...
//Дальше я вывел то, что попало в заветный _x, и я думаю вы догадались что я увидел...
Когда в игре начинаешь перемещать персонажа, идут пакеты по 31 байт. (незнаю зачем я это написал)
Вразумите меня, как работать с этой дешифрацией? Клиент GFPlus RUOFF
Последний раз редактировалось Coder, 10.05.2010 в 02:16.
Причина: Корректировка мысли
Два первых поста я читал до вопроса сюда, в третьем тоже нет ответа.
Я не ищу средств организовать соединение самостоятельно, а хочу понять как расшифровать пакет от сервера. Перехват пароля и т.п. мне не интересны. Нужны только расшифрованные пакеты в игре, от сервера.
Ну подскажите плиз, примером, что сделать то?
Присоединяюсь к вопросу... Все указанные ссылки перечитал, но так и не понял как из первого пакета длиной 184(+2) байта получить ключ которым можно расшифровывать все последующие пакеты...
xkor, на логин да, до выбора сервера я доходил на своем старом боте для Шока (последний раз проверял пол года назад), но Coder интересуется уже игровым траффиком .