Цитата:
Сообщение от oSg
Хм, разница в два байта откуда-то взялась
Код:
BA 83 D5 53 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 08 00 00 00 00 00 00 99 B3 88 E0 64
17 C8 CD 33 9A F5 9E 26 9D C1 3A 00 00 00 00 E7
DC C2 41 00 00 00 00 00 00 00 00 00 00
Это дамп после шифрованных блоков
До 08 правильно, потом различия
|
А, забыл сказать, что я длину не дописал на картинке.
Кстати, всё так же не работает. Логин и пароль те, что надо, но сервер не хавает.
Кстати, может подскажете, что там еще есть в пакете, чего я не указал в описании?
Добавлено через 6 часов 29 минут
Собсно, на Линдвиор (яву) получилось залогинится, на офф (и Линдвиор на dragonwind.ru) не пускает - "неверный пароль". 99%, что проблемма в RSA-блоке.
Добавлено через 21 час 27 минут
Проблема решена.
Ночью психанул и написал свой эмулятор логин-сервера (т.к. это для меня быстрее, чем поднять ява-сборку с дебагингом пакетов
). Оказалось, был в нескольких шагах от успеха.
Оказалось, что те саммые 52 байта данных в каждом из этих блоков выравниваются не по левой стороне, а по правой, т.к. блок, начинающийся с той самой
четверки, обозначающей длину последующей секции в 52 байта, начинается не с первого байта, а с 75-го.
Самое интересное - то, что на яве работают оба варианта, а на офе - только этот. Наверное, разница в RSA-отступах нулями, но голова уже трещит, не хочу и думать больше об этом. RSA у меня ванильной имплементации, так что виноваты NCSoft со своими "пакращеннями".
Такое количество матов и теплых слов в адреса матерей корейцев, как вчера, я за последний год вряд ли употребил.