Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 669

/ вопрос открыт /

Здравствуйте, уважаемые эксперты!

Подскажите алгоритм исследования неизвестного формата файла. Он содержит только текст. Нужно получить его.

Фамилия Имя Отчество Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Фамилия Имя Отчество (статус: Посетитель)
Вопрос отправлен: 25 июня 2007, 16:52
Состояние вопроса: открыт, ответов: 2.

Ответ #1. Отвечает эксперт: Вадим К

Здравствуйте, Emfs!
В общем едиственного решения нет. Например, возмём файл с текстом программы на паскале. Казалось он не упорядочен и структура слабо просматривается. Но есть формы Бэкуса-Навара, которые чётко всё описывают.
Конкретизируйте вопрос.

Ответ отправил: Вадим К (статус: Академик)
Время отправки: 25 июня 2007, 17:05

Ответ #2. Отвечает эксперт: min@y™

Короче, так...
Насколько я понял, программа Cross+A является средством "для решения кроссвордов, сканвордов, криптарифмов, судоку и японских кроссвордов (черно-белых и многоцветных нонограмм), а также для поиска анаграмм, словосочетаний, цепочек слов и метаграмм."

Я изучил 2 твоих файла *.dic. Это базы данных словарей программы. У них есть общая сигнатура - 1-е 8 байт FA 0F A0 FE DF EA F0 2F. Размеры исходного и файла и базы, естественно, не совпадают. Начало/конец полезных данных в файле я не нашёл. В конце, также, может быть некая контрольная сумма, не исключено.

Дальше ничего о кодировании данных сказать не могу, но могу предположить, что авторы программы придумали свой неплохой алгоритм шифрования и/или сжатия данных. Сама программа и дополнительные базы словарей являются платными. Я думаю, что авторы не хотят, чтобы люди пользовались данными из словарей нахаляву, т.е. в обход использования программы.

Что тут ещё можно добавить... В принципе, нет ничего невозможного. Алгоритм преобразования данных из базы в нормальное текстовое представление можно тупо подглядеть из-под дебаггера (например, OllyDbg). Для этого нужна сама программа Cross+A и неплохое знание ассемблера.

З.Ы. Гугление ничего не дало, кроме сайта программы. :(

Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 27 июня 2007, 08:57
Оценка за ответ: 5


Мини-форум вопроса

Всего сообщений: 11; последнее сообщение — 14 декабря 2007, 08:32; участников в обсуждении: 3.
Фамилия Имя Отчество

Фамилия Имя Отчество (статус: Посетитель), 26 июня 2007, 05:15 [#1]:

По-другому. Авторы программ-ищеек добавляют разные форматы, при сканировании которых программа "выдергивает" из них текст и т.д.

Но кроме известных форматов они реализовывают и нераспространенные. Они же получают/выясняют структуру хранения данных в них. Вот как это они делают хотел узнать.

Или для этого нужен очень большой опыт.

Я как-то написал себе маленькую программу-конвертер из файлов-pbm в epd, pgn и т.д. (про шахматы), а вот с другим (dic - словарь программы Cross+A) не получается. Использовал hex-редактор.

М.б. здесь посмотрите/подскажете решение?
В общем, хочу просто вытащить из словаря весь текст.
min@y™

min@y™ (статус: Доктор наук), 26 июня 2007, 08:19 [#2]:

Файл словаря в студию! Посмотрим, что за зверь.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Фамилия Имя Отчество

Фамилия Имя Отчество (статус: Посетитель), 26 июня 2007, 08:44 [#3]:

http://anton.vo.uz/load/1-1-0-3

Файл словаря. Содержит три слова:
Первоеслово
Второеслово
Третьеслово

Соответственно с описаниями:
Описание первого слова.
Описание второго слова.
Описание третьего слова.
Фамилия Имя Отчество

Фамилия Имя Отчество (статус: Посетитель), 26 июня 2007, 08:46 [#4]:

Не та ссылка. Вот правильная:
http://anton.vo.uz/_ld/0/3_b0K.dic
min@y™

min@y™ (статус: Доктор наук), 26 июня 2007, 09:50 [#5]:

Скачал файл. Он знаимает 133 байта. Текста в открытом виде там нет, видать зашифрован. Если это конечно тот файл, который надо. Какая программа формирует этот файл из исходного текста? Если фозможно, сформируй и выложи файл из текста, включающего в себя все символы от #32 до #255, строго по порядку. Это может помочь в восстановлении алгоритма шифрования.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Фамилия Имя Отчество

Фамилия Имя Отчество (статус: Посетитель), 26 июня 2007, 12:07 [#6]:

http://anton.vo.uz/_ld/0/4_AllSmbls.dic
В этом файле слово "ВСЕБУКВЫ" содежит описания с символами от #32 до #255
#32 до #255:

ВСЕБУКВЫ
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ЂЃ‚ѓ„…†‡?‰Љ‹ЊЌЋЏђ‘’“”•–—˜™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя
Фамилия Имя Отчество

Фамилия Имя Отчество (статус: Посетитель), 26 июня 2007, 12:29 [#7]:

Описание начинается с пробела, заканчивается буквой "я".
Фамилия Имя Отчество

Фамилия Имя Отчество (статус: Посетитель), 27 июня 2007, 13:38 [#8]:

Мы совместно приобретали эту программу, так что она у меня зарегистрирована.
Понятно, что авторы не хотят. Но, как оказалось, я теперь не хочу пользоваться их программой! Мне нужен словарь, который я собрал с помощью неё в свое время (очень большой!). А вот теперь, когда я использую другую, более удобную, хочу все данные перенести туда, а в Cross+A нет экспорта. Вот почему появился этот вопрос.
А ассемблер я не знаю...
LexIMoSoft

LexIMoSoft (статус: Посетитель), 13 декабря 2007, 23:39 [#9]:

Я Илья Морозов, один из авторов программы "Cross+A". Был неприятно удивлен, обнаружив эту тему на сайте. Мы защищаем данные от копирования не потому, что мы какие-то злодеи; работа над базой слов началась еще в 90-е годы прошлого века, мы "перелопатили" сотни справочников, словарей, энциклопедий. Нам будет очень жаль, если кто-то украдет нашу базу слов и выложит ее в сеть, "прикрутив" примитивную программу-поисковик (однажды уже такое произошло; после этого происшествия мы и усложнили способ кодирования данных).

Уважаемый Emfs, почему Вы не обратились за помощью к нам, авторам программного продукта? Если речь идет о ВАШЕЙ базе слов - присылайте, переконвертируем ее в текстовый файл. Но у меня есть подозрение, что "Ваша" база слов - это, по большей части, наша база слов, с некоторыми добавлениями...

Господа эксперты! Пожалуйста, не "ломайте" наш программный продукт! Я, например, нищий бюджетник из Иванова, работаю в ВУЗе - не лишайте меня источника дохода!
Фамилия Имя Отчество

Фамилия Имя Отчество (статус: Посетитель), 14 декабря 2007, 05:40 [#10]:

Ответ в ПМ.
min@y™

min@y™ (статус: Доктор наук), 14 декабря 2007, 08:32 [#11]:

Цитата:


Пожалуйста, не "ломайте" наш программный продукт! Я, например, нищий бюджетник из Иванова, работаю в ВУЗе - не лишайте меня источника дохода!


Знания должны быть общедоступными и бесплатными!

Цитата:


усложнили способ кодирования данных


Кому надо - всё равно поломают. Какой смысл? Что толку усложнять, если всё видно в отладчике?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:44
Выполнено за 0.02 сек.