Электронная библиотека

Хакер


Хакер

Xakep Online -> Журнал, номер #011, стр. 011-074-2


Ну вот. Теперь ты знаешь, где находятся ресурсы, и можешь приступать к издевательству над ресурсами System Shock. Хороших мыслей твоему извращенному уму! Главное - не заблудись в ресурсах, их там очень много, можно замучить игру до неузнаваемости. А еще обрати внимание на качество спрайтов: большинство из них примитивны. Вот так мы и выводим игрульки на чистую воду ;))

Азы жестоких издевательств

Все, конечно, хорошо и классно, но как самому додуматься, что файл с расширением .CRF - это на самом деле простой архив? Ведь не буду же я каждую игру тебе по кускам разжевывать, верно? Но, надеюсь, ты и сам захочешь научиться узнавать, для чего реально предназначен конкретный файл. Научившись этому, ты почувствуешь себя настоящим Хакером! :-)

Итак, начнем учиться распознавать реальное назначение файлов. Практически все файлы состоят из двух частей: заголовок и данные. Сами данные нас особо не интересуют. Конечно, эти самые данные и представляют собою всю необходимую инфу, однако в большинстве случаев ты там все равно ни хрена не поймешь. А вот в заголовке есть много чего интересного. Самое интересное для нас на данном этапе - это первые два байта. Хотя заголовки в разных типах файлов сильно отличаются друг от друга, но все же обычно первые два байта служат одной и той же цели - идентификации файла. Например, когда программа "Фотожоп" читает файл .BMP, он проверяет первые два байта, и если они равны "BM", значит, это .BMP, а если нет, то значит, это чего-то другое. Точно также поступают все проги, когда они открывают какой-либо файл.

Итак, первые два байта (в программистских кругах откликаются на "сигнатура"), это идентификатор формата файла, который подтверждает, что он действительно относится к данному семейству файлов. Все расширения типа .BMP или .WAV - это только условность, сделанная для удобства. Какое расширение - вообще-то, пофиг. Главное - содержимое, а формат содержимого определяется сигнатурой. Вот по ней ты и можешь узнать, что именно прячут в файле.

С учетом всего вышесказанного, стратегия поиска ресурсов немного изменилась, теперь ты должен открывать все файлы в режиме просмотра (в Windows Commander или в Нортоне жмешь на пимпу F3) и просматривать сигнатуру, то есть первые два байта.

Рассмотрим .JPG файл. Это наиболее сложный формат, потому что здесь сигнатура не постоянна, хотя в большинстве случаев это "яШ". Дополнительным идентификатором .JPG является "JFIF" начиная с 7 байта. Чуть дальше ты можешь увидеть название программы, с помощью которой был создан данный файл (на рисунке это Photoshop 3.0).

Чтобы тебе было легче, я приведу несколько сигнатур. В скобках приведены шестнадцатиричные значения сигнатур:

.BMP - "BM" (42 4D);

.ZIP - "PK" (50 4B);

.DLL - "MZ" (4D 5A), эти файлы имеют для нас особый интерес, поэтому я расскажу тебе о них в другой раз. Читай ближайшие номера Х;

Назад на стр. 011-074-1  Содержание  Вперед на стр. 011-074-3