Применение хэширования для подтверждения неизменности файлов при копировании электронных доказательств

Бесплатный доступ

В статье рассматриваются вопросы применения хэш-функций для подтверждения неизменности электронной информации в процессе её копирования и использования в криминалистической практике. Обосновывается необходимость проверки тождественности оригинала и копии электронных данных, что особенно актуально при работе с большими объёмами информации и не мультимедийными файлами. Раскрывается алгоритм применения хэш-функций: вычисление хэш-суммы оригинала, создание копии и сравнение контрольных значений. Особое внимание уделяется достоинствам метода - детерминированности, компактности результата и невозможности восстановления исходных данных из хэш-значения. Отмечены также недостатки, в том числе вероятность коллизий и высокая чувствительность к изменениям исходного файла. Рассматриваются возможности применения «нечётких хэш-функций» как перспективного направления исследований. Предложен алгоритм действий следователя при копировании электронных доказательств с использованием как специализированных, так и штатных программных средств.

Еще

Электронные доказательства, хэш-функция, хэш-сумма, копирование, криминалистика, неизменность данных, целостность информации, контрольная сумма, нечёткое хэширование

Короткий адрес: https://sciup.org/14137313

IDR: 14137313   |   УДК: 343.98   |   DOI: 10.24412/2220-2404-2025-9-31

Application of hashing for confirming the integrity of files in the process of copying electronic evidence

The article examines the use of hash functions to confirm the integrity of electronic information during its copying and application in forensic practice. It substantiates the necessity of verifying the identity of the original and the copied electronic data, which is particularly relevant when dealing with large volumes of information and non-multimedia files. The algorithm of applying hash functions is described: calculating the hash value of the original, creating a copy, and comparing control values. Special attention is given to the advantages of the method - determinism, compactness of the result, and the impossibility of restoring the original data from the hash value. The disadvantages are also noted, including the possibility of collisions and the high sensitivity to even minor file modifications. The potential of using «fuzzy hash functions» as a promising research direction is considered. An algorithm of investigator’s actions for copying electronic evidence with the use of both specialized and standard software tools is proposed.

Еще

Текст научной статьи Применение хэширования для подтверждения неизменности файлов при копировании электронных доказательств

В практике копирования электронной информации возникает важный и закономерный вопрос о том, как убедится в том, что полученная на иной носитель копия информационно соответствует оригиналу. Как следователю убедится, что процесс копирования прошел корректно и полученный в результате файл действительно содержит информацию, которая была на оригинальном

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

Обсуждение

Копирование может выступать как обособленный от изъятия носителя способ (средство) получения доказательств, на основе данных, хранящихся на носителе электронной информации: в том случае, если принимается решение о копировании без изъятия самого носителя электронной информации. Причиной может быть, как принципиальная невозможность изъятия носителя (например, в случае, если в качестве носителя выступает удаленный сервер), так и просто в результате признание следователем изъятия носителя нецелесообразным в рамках конкретной следственной ситуации.

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

Скачивание файлов, из источников в сети Интернет или иной информационной сети (например, локальной сети) мы считаем частным случаем копирования, поскольку, в этом случае результатом копирование является получение файла, отличие только в пути, который проходит информация. Однако, в этом случае требуется дополнительно фиксация в протоколе откуда, в какое время и с использованием какого программного обеспечения был получен файл.

Хэширование может применятся, как в первом, так и во втором случае, но нами в рамках настоящей статьи рассматривается преимущественно первая ситуация.

Как установлено в Р 34.11–2012. «Информационная технология. Криптографическая защита информации. Функция хеширования», хэш-функция – это алгоритм, отображающий данные произвольной длины в битовую строку фиксированной длины (хэш-значение); в прикладных стандартах она используется, в том числе, для обеспечения целостности и аутентичности информации [1].

Вопрос использования в криминалистике хэш-функций поднимался неоднократно, как напрямую, так и с точки зрения смежных областей. Рассматривался также вопрос применения хэш-функций при копировании электронной информации для фиксации состояния компьютерной информации в конкретный момент времени и обеспечения возможности идентификации такой информации в дальнейшем [2, c. 135]. Д.В. Овсянников описывает хэширование, как способ обеспечения целостности компьютерной информации с использованием специального программного обеспечения [3, c. 18]. Ю.А. Бондаренко рассматривал вопрос о применении возможности использования данных хэш-функций при расследовании мошенничеств с использованием электронных подписей [4]. Необходимо также отметить предложения по использованию хэш-функция для удостоверения электронных доказательств при передачи на судебноэкспертное исследование [5, c. 258].

Алгоритм работы хэш-функции следующий:

  • 1.    Алгоритм хэширования (например, SHA-256) принимает на вход данные любой длины.

  • 2.    Преобразует их в строку фиксированной длины (например, 64 символа для алгоритма SHA-256).

  • 3.    Результат всегда одинаков для одних и тех же входных данных. Даже минимальное изменение входных данных полностью меняет хэш.

У данного метода есть существенные достоинства, кроме того, что это единственный на сегодня надежный способ убедится в точном совпадении копии и «оригинала». Хэш детерминирован, то есть одни и те же данные будут давать один и тот же результат. Также результаты хэширования являются необратимыми, то есть по хэшу нельзя восстановить исходный файл (достаточно очевидно, что невозможно получить целый файл из множества бит всего из 64 символов). Достоинством получения хэш-суммы является то, что она позволяет любой объем данных зафиксировать в виде относительно небольшой последовательности символов, пригодной, в том числе, для занесения в бумажный протокол и дальнейшего сравнения с заново рассчитанной хэш-функции, что позволит убедиться в неизменности файла.

Ну и конечно, незаменимость применения хэш-функций состоит в том, что запись хэш суммы при копировании данных позволяет удостоверится в их неизменности на протяжении всего процесса расследования, может удостоверить неизменность путем сверки хэш сумм оригинала файла и его копии или сверки с хэш-суммой, занесенной в протокол следственного действия.

Есть также и недостатки: первый получил название «коллизия». Это проблема возникает, когда мы пытаемся свести бесконечное множество (набор данных всех потенциально существующих, существовавших и вероятно созданных в будущем файлов – бесконечен) к конечному множеству – число перестановок букв и цифр в хэш-сумме хоть и очень велико, но не бесконечно, поскольку хэш сумма имеет конечное число символов (например, 64 символа для алгоритма SHA-256). Это приводит к тому, что в теории может существовать два различных набора данных – два файла, каждый из которых содержит разный набор данных, но хэш суммы у них совпадают. Однако, на практике практически невозможно представить ситуацию, чтобы совпадению были подвержены два осмысленных набора данных. Кроме того, существует проблема поиска таких коллизий, решенная для алгоритма MD5, впоследствии признанным небезопасным и постепенно выведенным из использования [6].

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

Если мы хотим использовать данную конструкцию для удостоверения неизменности файлов, то необходимо учитывать, что любое, даже совершенно случайное или ненамеренное и незначительное изменение в файле, сделанное самим пользователем, либо произведенное в автоматическом режиме в результате работы какой-либо программы делает такой файл недопустимым доказательством. При этом с точки зрения пользователя, информация, содержащаяся в файле – не изменится.

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

В качестве примера можно рассмотреть изображение, каждый отдельный пиксель которого закодирован цветом, определяемым тремя числами от 0 до 255 для 3 цветов – красного, зеленого и синего (система RGB), где число – интенсивность цвета для каждого отдельного пикселя. Для примера, визуально определить изменения интенсивности красного цвета с 41 до 42 на отдельном пикселе или даже группе пикселей никак не повлияет на воспринимаемое человеком изображение. Визуально определить такое изменение невозможно, но с точки зрения хэш функций это будет два разных файла.

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

Существуют технические решения проблемы идентификации схожих, но не идентичных файлов, одно из них – применение «нечетких хэш-функций». Они по своим свойствам аналогичны традиционным, то есть преобразуют массив данных в конечную строку определенной длины, однако нечёткая хэш-сумма действует наоборот, и, при незначительном изменении исходного файла, изменяет своё значение пропорционально объему изменений исходных данных [7, c. 42]. Достигается это за счёт разбивки исходного файла на отдельные куски и применение хэш-функции к ним по отдельности, после чего на их основе высчитывается итоговый результат. Применение нечетких хэш-функций в криминалистике на сегодняшний день не рассматривалось, однако это перспективное направление исследований, которое может решить обозначенные проблемы.

Алгоритм применения хэш-функций в криминалистике основывается на необходимости подтверждения неизменности электронных доказательств в процессе их копирования.

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

Существует два варианта действий, если речь идет о внешнем или внутреннем носителе электронной информации (например, о Flash-накопителе, HDD и др.), то есть к устройству, не обладающему операционной системой, и значит возможности осуществить хэширование, в этом случае такой носитель необходимо подключить к устройству следователя или эксперта, как это описывает П.С. Пастухов [8].

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

Второй случай сложнее, поскольку в этом случае программное обеспечение для вычисления хэш

суммы файлов, необходимо подбирать в зависимости от операционной системы исследуемого компьютера. На практике для фиксации контрольных сумм на самом исследуемом устройстве (когда извлечение носителя невозможно) можно использовать штатные, не специализированные средства, доступные на соответствующей операционной системе: в среде Windows – встроенную утилиту «certutil» для расчёта SHA-256, в средах Unix/Linux – стандартную команду «sha256sum», на компьютерах Apple – утилиту «shasum». Однако, могут применятся и специализированные криминалистические программы, например, можно привести FTK Imager [9], EnCase Forensic [10], X-Ways Forensics [11], отечественный комплекс Мобильный криминалист [12] и многие другие.

После получения хэш-суммы исходного файла необходимо осуществить копирование. Необходимо уточнить, что копирование может быть применено не только к отдельному файлу, но и, например, к каталогу (папке), содержащей множество файлов, а также и к условно «пустому» пространству носителя. Так, можно провести полное копирование и частичное копирование данных, содержащихся на электронном носителе информации. При частичном копировании создание копии происходит на уровне файловой системы - копируются отдельные файлы и каталоги (папки), содержащие отдельные файлы, при этом такое копирование выполняется штатными средствами операционной системы и не затрагивает пустое пространство носителя, а также поврежденные, частично или полностью удаленные файлы. Применение хэш-функции возможно, как при полном, так и при частичном копировании.

Частичное копирование применяется, если полное по какой-то причине невозможно или нецелесообразно, например, приходится осматривать работающую компьютерную систему, либо, с целью оперативного получения информации, размер носителя информации слишком большой [13, c. 107].

При копировании информации с электронного носителя информации необходимо не допускать изменений информации на оригинальном носителе. Дело в том, что при подключении носителя электронной информации сама система может вольно или невольно вносить изменения в его содержание. Что бы этого избежать применяются специальные устройства на аппаратном уровне блокирующие внесение изменений в исходный носитель электронной информации. Примером таких устройств является Tableau Forensic Imager [14] или WiebeTech Forensic ComboDock [15].

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

Результаты

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

Заключение

Таким образом, для осуществления копирования необходимо наличие в распоряжении следователя переносного компьютерного устройства универсального назначения с операционной системой (ноутбук), позволяющего осуществлять подключение внешних устройств, аппаратные устройства для защиты от записи на подключаемых к нему устройствах, переходники для подключения различных технических устройств. Электронные носители информации, на которые осуществляется   копирование,   программное обеспечение, которое обеспечивает полное копирование электронной информации путем создания полного образа носителя, а также программное обеспечением для частичного копирования, обеспечивающим сохранение метаданных и фиксацию хэш-суммы (контрольной суммы).

Для копирования файлов с использованием хэш функций можно применять следующий алгоритм:

  • 1.    Определить файл или электронный носитель информации, подлежащий копированию;

  • 2.    Вычислить хэш-сумму оригинала с использованием специализированного ПО;

  • 3.    Создать побитовую копию (образ) носителя или копию файла;

  • 4.    Вычислить хэш-сумму копии тем же программным средством;

  • 5.    Сравнить хэш-суммы оригинала и копии;

  • 6.    Зафиксировать в протоколе алгоритм, программу и полученные значения хэш-сумм.

Таким образом, рекомендации по использованию хэш-функций должны также учитывать, что в некоторых случаях необходимо сравнивать не только полученные хэш-функции, но и сами файлы, в том случае, если такое сравнение возможно. Кроме того, своё применение могут найти «нечеткие хэш-функции».