HxD для редактирования файлов в шестнадцатеричном коде

HxD для редактирования файлов в шестнадцатеричном коде

Начиная писать обзор hex-редактора c коротким названием HxD, мы и не предполагали, что эта на первый взгляд ничем не выделяющаяся утилита обладает таким внушительным набором функций. Конечно же, в первую очередь это редактирование файлов в шестнадцатеричном коде с сопутствующими возможностями замены и вставки байтов. А теперь просто перечислим остальные функции HxD: редактирование дисков, оперативной памяти, склейка и разделение, сравнение и надёжное удаление файлов, подсчёт контрольных сумм файла различными алгоритмами и статистика использования символов в тексте.

После запуска HxD открываем файл и видим его содержимое в двух панелях: слева отображается шестнадцатеричный код, а справа представлено обычное текстовое содержание файла.

Содержимое файла в HxD

Для редактирования содержимого файла просто ставим курсор в текстовой панели и вводим текст. Изменённые данные отображаются красным цветом, чтобы их легко было найти. Можно изменить информацию и в шестнадцатеричном режиме, тут уже потребуется вводить код символа, состоящий из двух позиций: это могут быть цифры от 0 до 9 или буквы от A до F. Ещё одна полезная функция, предоставляемая HxD, это выделение нескольких байтов для последующих операций.

Редактирование файла в шестнадцатеричном коде в HxD

Выделенный блок можно удалить, при этом остальные данные смещаются влево и изменяется размер файла. В большинстве случаев удаление части кода в файле может привести к нарушению его целостности и невозможности открыть в приложении. Правый клик на выделенном блоке и выбор в меню пункта Заполнить выделение позволит настроить параметры замены байтов. В окошке можно вручную ввести код, который будет заменяться в байтах. Есть и возможность заполнения байтов случайными числами в указанном диапазоне (опция Случайные байты). Кнопка [Нуль-байты] позволяет выбрать заполнение нулями. В списке Шаги можно добавить несколько проходов и для каждого указать заменяемые символы. В результате HxD перепишет выделенные байты несколько раз, по окончании они будут содержать данные, указанные для последнего шага.

Настройка параметров заполнения выделенных байтов в HxD

Есть и другой способ выделения блока, особенно эффективный для больших объёмов данных. Правым кликом в тексте выбираем пункт мню Выделить блок и настраиваем параметры выделения. Указываем смещение от начала файла и на выбор смещение конца или длину блока. Значения смещения можно вводить как шестнадцатеричном виде (hex), так и более привычном нам десятеричном (dec). В результате мы получаем выделенный блок указанной размерности.

Параметры выделения блока в HxD

Через меню Правка – Вставить байты открывается окно настроек параметров добавления данных в файл. Здесь в первую очередь указываем количество добавляемых байтов. Можно и ввести шаблон заполнения, эту последовательность шестнадцатеричных данных HxD будет вставлять в добавленные байты.

Параметры вставки байтов в HxD

Кнопка [Открыть диск] вызывает список подключённых в системе дисков, которые можно также открыть в редакторе. В этом режиме появляется новая панель инструментов для перемещения по секторам диска, а справа от двух основных панелей появляется ещё одна с указанием сектора. По умолчанию диск открывается только для чтения, если же отключить одноимённую опцию при выборе диска, у нас появится возможность редактировать содержимое диска и сохранять внесённые изменения. Конечно же, редактирование диска в шестнадцатеричном коде нужно выполнять осторожно, точно зная, что необходимо исправить. Необдуманное изменение данных диска может привести к потере файлов ил нарушению их целостности.

Редактирование диска в HxD

Не менее полезной окажется функция [Открыть RAM], позволяющая выбрать приложение в списке процессов и изменять содержимое оперативной памяти. Отчасти аналогичный функционал предлагают многочисленные утилиты для взлома игр, позволяющие добавить «жизни», деньги и др.

Выбор процесса в оперативной памяти для редактирования в HxD

Дальнейшие действия и возможности ничем не отличаются от редактирования файлов в шестнадцатеричном коде.

Редактирование данных приложения в оперативной памяти в HxD

Напоследок отметим ещё некоторые возможности hex-редактора HxD. Программа умеет отображать данные в нескольких кодировках: Ansi, DOS, EBCDIC и Macintosh. Настраивается базис смещения и группировка байтов (по умолчанию по одному), количество байтов в строке. Если есть необходимость надёжного удаления файла, без возможности его удаления, можно выбрать в меню Дополнительно — Файловые инструменты – Надёжное удаление (Шредер).

Ещё пара функций HxD не помешает при работе с файлами. Через меню Дополнительно — Файловые инструменты – Объединить открывается окно настроек склейки файлов. В списке можно выбрать сколько угодно файлов, после чего программа объединит их в один и сохранит под указанным именем. Противоположная по результату функция позволяет разделить один файл на несколько частей. В этом случае открываем разделяемый файл, вводим базовое имя для частей файла, а также выбираем или вводим размер частей.

Параметры разделения файла на несколько частей в HxD

Нередко могут пригодиться возможности HxD для сравнения файлов (Анализ – Сравнение файлов – Сравнить). Здесь всё просто: выбираем два файла и видим их шестнадцатеричный код в двух панелях. Нажимая клавишу F6, можно переместиться на следующее отличие, а комбинация клавиш Shift + F6 возвращает нас на предыдущее отличие. Таким образом, можно быстро просмотреть все отличающиеся данные в файлах.

HxD предлагает нам и такую функцию, как подсчёт контрольных сумм файла (меню Анализ – Контрольные суммы). Причём на наш выбор сразу несколько алгоритмов подсчёта: Checksum (8, 16, 32, 64), CRCs (16 и 32), Custom CRC, SHA (1, 256, 384, 512), MD5 (а также 2 и 4). Программистов, возможно, заинтересуют экспортные возможности программы. HxD поддерживает экспорт в исходный код Pascal, C, Java, C#, VB.NET, форматированный вывод как обычный текст, HTML, Richtext и TeX, а также шестнадцатеричные файлы Intel HEX и Motorola S-record.

Для быстрого перемещения можно использовать закладки. Для установки закладки жмём клавиши Ctrl + Shift + цифра, а для перехода на закладку просто Ctrl + цифра.

И, наконец, ещё одна интересная возможность hex-редактора. Это статистика символов в файле (Анализ — Статистика), особенно полезная для текстовых данных. На диаграмме каждый столбец соответствует одному символу, а всего их, как известно 256. И чем выше столбец, тем чаще в тексте встречается соответствующий символ. При клике на столбце в статусной строке отображается символ и его шестнадцатеричный код, процент в тексте и количество.

Статистика использования символов в тексте в HxD

Характеристики:
Язык интерфейса: русский, английский и др.
ОС: Windows 95, 98, Me, 2000, XP, 2003, Vista
Размер файла: 874 Кб
Лицензия: бесплатная

34685
RSS
Гость
15:47
Ну это все понятно .а как например шестнадцатиричный код реверсировать либо наоборот привести в первноначальный вид? Так и не сказано ничего
Гость
13:37
*04 идеально спасибо!
Гость
13:59
Отредактировал я файл exe, размер естественно увеличился. Файл теперь не работает. Ни чего не описали, про такие случаи и что делать когда изменёный файл больше оригинала
Загрузка...
Яндекс.Метрика