Be3geBJIa3, вообще странно, у меня 10.9.1 прекрасно по старому логин протоколу логиниться через мой корректор, единственное из за неполного кряка он ожидает все пакеты от логина закодированные под BFом еще и LoginXORом, и сам XORом шифрует
может у тябя так же?)
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor, может я немного не правильно выражаю мысли, меня не на одном форуме не могут понять что мне нужно.
Мне нужно реализовать подключение к логин серверу С4 (без RAS) волкера 10.9.3 (не 10.9.1), так сказать, все операции сделать на делфи в своей длл без стороних програм. Запустил лоадер, загрузился волкер и все. Все это для автоматизащии запуска. Много програм приходится контролировать, а так запустил програму автостарта 1-100 ботов и все. Многим же не нужны расширенные скрипты, хватает функционала волкера, а как это сделать и где взять эти ключи RSA я никак не могу понять, просто никогда не занимался криптографией.
Тут la2_client_emu, есть пример, да и на форуме тоже, как получив от сервера пакет init, разобрать его, но мне нужно еще и самому создать этот замыслованый init (186) пакет и потом еще расшифровать чтобы получить логин и пароль.
Не хочется придумывать своего бота, хватает и волкера, просто сервер _BsFG.ru (абисс) и там постояно что-то меняется, а так своя програма, сразу, что нужно исправил и все.
Последний раз редактировалось Be3geBJIa3, 24.07.2009 в 10:57.
Be3geBJIa3, ты пароль хочешь именно расшифровать из отправленного тебе волкером пакета? Это не так просто. Я бы эти данные просто взял напрямую из бота. ТОгда бы не пришлось мудрит с секретным ключом, который ещё надо правильно составить. Шлешь ворлкеру первыйпакет Init, где вместо RSA ключа что угодно, все равно расшифровывать не будем.
Краткая инструкция и пояснения, почему это невозможно, хотя и возможно с извращениями
1. Нужно расшифровать пакет от IL бота RequestAuthLogin
Выглядит он так
Теперь о том, почему это невозможно.
Чтобы расшифровать логин и пароль нужно знать закрытый ключ RSA, который знает только сервер. Не зная его нормальный логи и пароль можно получить лишь перебором, используя открытый ключ из walker-а
Хотя я вполне допускаю, что этот закрытый ключ сервера не знаю только я, и его можно добыть например из исходников java-сервера.
Мне он неизвестен, поэтому и я пишу "невозможно". Если кто-нибудь знает его или другую информацию о том, как получить логин и пароль из зашифрованного RSA пакета бота - пишите, тогда dll - перекодировщик создать несложно.
И тут мы как - раз подходим к методу с "извратом".
Мы ведь знаем и логин и пароль! Это ведь наш бот!
Т.е. можно не получать логин и пароль из пакета бота, а например из внешнего .ini файла. Тогда достаточно заранее наколотить в него все логины и пароли наших ботов и мы получим работоспособный, хотя и не совсем безопасный (пароли все в открытом виде) способ.
Остальный вопросы преобразования тривиальны и не интересны.
dmitry501, на самом деле секретный ключ на сервере генерируется для каждого подключения отдельно, поэтому мы знать его не можем. А для волкера мы как бы и есть сервер, тоесть мы сами генерируем секретный ключ, отправляем в первом пакете Init обычный, а потом получив от волкера пакет RequestAuthLogin расшифровываем и пересылаем дальше уже в формате ц4. Проблемма лишь в том что это сделать не просто. Хотя думаю есть библиотеки которые позволяют сделать это без особых утруждений.
секретный ключ на сервере генерируется для каждого подключения отдельно
генерация ключа довольно ресурсоёмкий процесс так что сервак генерит несколько ключей при его запуске а при подключении уже просто выбиает один из них и с ним работает)
Цитата:
Сообщение от Be3geBJIa3
Мне нужно реализовать подключение к логин серверу С4 (без RAS) волкера 10.9.3 (не 10.9.1)
ну я про 10.9.1 рассказывал к тому что он скорее всего по авторизации ничем от 10.9.3 не отличается, у тебя этот 10.9.3 верифицируется как?, официально или какимнить видом кряка?, если кряком то 99,9% что тебе подходит метод которым я работаю с 10.9.1 (и с 10.8.6 кстати так же было)
__________________
Я здесь практически не появляюсь!, Skype - ikskor
Да мне всегото нужна рабочая пара RSA ключей для ла2, 2 функции (скрамбле, дескрамбле), и 2 функции:
Procedure RSAEncrypt(P : String; Var exp, modb : TFGInt; Var E : String);
Procedure RSADecrypt(E : String; Var exp, modb, d_p, d_q, p, q : TFGInt; Var D : String);
из пакета FGInt.
Только где взять ключи, 1 проблема,
deScrambleRSAKey есть, где взять ScrambleRSAKey если такая есть,
какие аргументы используют RSAEncrypt, RSADecrypt.
Вродебы все.
xkor, с кряком, конечно подойдет, только как это реализовать? просто у меня вылетел тот период когда все мучали 10.8.6, я использую 10.7.4, но щас переходят на СТ2.2 и слишком много пакетов переделывать для гейм сервера, ведь проще приучить 10.9.3 к логину С4, тем более если многие уже это сделали с 10.8.6.
Если подойти с другой стороны.
Задача такая написать на делфи простейший логин-сервер для тестирования бота, типа walker 10.9.3 (верификация отломана), т.е. для СТ2.2.
Какие для этого нужны функции и порядок для создания init пакета. Пару RSA ключей взять постояную и заведомо известную.
Последний раз редактировалось Be3geBJIa3, 24.07.2009 в 17:28.
Procedure RSAEncrypt(P : String; Var exp, modb : TFGInt; Var E : String);
Procedure RSADecrypt(E : String; Var exp, modb, d_p, d_q, p, q : TFGInt; Var D : String);
из пакета FGInt.
готовые RSAEncrypt и RSADecrypt из пакета FGInt работают не так как надо для линейки, но гдет на этом форуме постилась RSAEncrypt на основе FGInt работающая правильно, а поскольку в RSA и зашифровка и дешифрока это вобщем то один и тот же алгоритм (если не рассматривать их оптимизированные версии) то и в качестве RSADecrypt её юзать можно, надо только вместо открытого ключа подставлять закрытый)
Цитата:
Сообщение от Be3geBJIa3
deScrambleRSAKey есть, где взять ScrambleRSAKey если такая есть
хех, ScrambleRSAKey это deScrambleRSAKey в обратном порядке, если не можешь переписать deScrambleRSAKey в ScrambleRSAKey то дальше тебе идти не стоит)
Цитата:
Сообщение от Be3geBJIa3
Задача такая написать на делфи простейший логин-сервер для тестирования бота, типа walker 10.9.3 (верификация отломана), т.е. для СТ2.2.
Какие для этого нужны функции и порядок для создания init пакета. Пару RSA ключей взять постояную и заведомо известную.
голин сервер (для СТ1-СТ2.3 ибо авторизация у них одинаковая) на дельфи у меня написан (правда пока до стадии когда он должен выдать список серверов, но авторизация по RSA полностью готова) так что помочь советом могу, правда у меня RSA построено на библиотеке libgmp-3.dll (ибо в 20 раз быстрее FGInt) и ключи у меня не постоянные а при старте генерятся 10 новых как и положено.
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor, вот ты пишешь что у тебя по 10 ключей генерится каждый раз, а я уже какой день прошу всего 1-ну рабочую пару RSA ключей. В инете можно найти готовые или генератор, но мне нужны для ла2, небольшая но есть разница. xkor, если тебя не затруднит, дай пожалуйста в пм всего 1 рабочую пару для ла2.
Последний раз редактировалось Be3geBJIa3, 25.07.2009 в 12:42.