|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Нужна помощь с определением алгоритма шифрования
Всем привет! Нужно поправить в игре некоторый текст. Файл локализации чем то закодирован, если есть люди разбирающиеся в криптографии, помогите пожалуйста расшифровать.
Игра: Рандеву с незнакомкой 4, год выхода: 2002, написана на Delphi. Пример закодированной строки: 040,/ ,<15. Ооибгт-ДЯааиувЮдЯь,э рнлэ* Ятъ-коиппжяслыиусоемлииснл. Она же, раскодированная: Привет. Давай угадаю, я сплю, а ты - мой приятный утренний сон. Также прикреплю весь файл локализации. Интересно что слову привет соответствует Ооибгт, что за цифры до этого, не удалось выяснить. |
#2
|
|||
|
|||
Сегодня ковырял экзешник в DelphiDecompiler, он использует ComObj и OleServer, при этом в папках игры нет ни одного вордовского документа, возможно эта информация поможет, известно что разработчики данной игры любят для защиты поменять пару байт, например видео у них защищено заменой первого байта на произвольный.
|
#3
|
||||
|
||||
Ну многие программы не используют документы офиса. В этом нет ничего плохого.
Пишу программы за еду. __________________ |
#4
|
|||
|
|||
Это я понимаю, я имел ввиду что может этот как то через OLE загружается, так как в папке кроме этого файла только графика и аудио. Разработчики те еще "шифраторы", я уже сообщил как мощно они зашифровали видео, а этот файл локализации у них вообще в формате bmp, это я на txt сам поменял. Известно что длина строки одинаковая и зашифрованная и расшифрованная. Тут может быть вообще нет шифрования, может кодировка другая, или файл не текстовый а на подобии ворда что то. Третий день уже ковыряюсь, чем только не пытался открыть
|
#5
|
|||
|
|||
1. ComObj и OleServer совершенно не обязательно связаны с офисом. Они просто относяться к технологии COM. Через нее,в т.ч. используется DirectX. И проигрывание видео тоже через COM можно играть (кодеки).
2. Расширение файла никак не завязано на его содержимое, так что хоть горшком назови. 3. Если длинна строки до шифрования и после одинаковая, то, скорее всего, используется какое-то достаточно простое симетричное шифрование. Что можно попробовать. Если известна какая-то строка в шифрованном и расшифрованном виде, то можно попробовать проверить на простой XOR. Т.е. если поXORить строку с ее же зашифрованной версией, то, по идее, ты получишь пароль. Соответсвенно, этот пароль можно попробовать применить к другой строке и посмотреть, получается ли расшифровка. Однако, т.к. мы не знаем где начало зашифрованного блока, то, возможно, надо будет этот пароль "подвигать" по строке что бы найти правильное положение. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Shaft (11.07.2017)
|
#6
|
|||
|
|||
Это вариант, завтра буду пробовать. Первая строка известна и шифрованная и расшифрованная, я пока не уверен но по моему результат шифрования зависит от длины строки. Известно что в первой строке слово Ооибгт это Привет, поиграл я сегодня в эту игру, там целая куча приветов а в шифрованном файле слово Ооибгт встречается только 2 раза, и в обоих случаях длина строки равна 63. Еще известно что если в шифрованном файле длину строки уменьшить или увеличить хотя бы на 1 символ, то игра зависает, а если менять буквы с сохранением длины строки, то неправильно расшифровывает, но не всю строку а только измененные буквы.
|