Как работает carving-алгоритм восстановления данных

В статье «» мы рассмотрели, как инструменты восстановления файлов могут вернуть удаленные документы просто с использованием данных файловой системы. Но что, если файл был удален давно, и записи о нем в файловой системе больше не существует? Что, если диск был отформатирован или перераспределен по разделам, а файловая система пуста или вообще отсутствует? И, наконец, что, если файловая система была заменена другой (например, Linux или Ubuntu, если вы экспериментировали с альтернативной ОС)? Если это так, традиционные средства восстановления файлов будут бессильны восстановить хоть что-либо.

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

Например, файлы ZIP обычно начинаются с «PK», за которым следуют двоичные данные в предопределенном формате. Анализируя эти двоичные данные, «carving»-алгоритм может определить, является ли это «PK» началом ZIP-файла (если все числа совпадают) или это просто пара символов в текстовом документе – таком, как этот .

Если алгоритм подтверждает принадлежность подписи фактическому файлу, программа начнет анализировать заголовок файла. Анализируя заголовок, инструмент восстановления данных может рассчитать исходную длину файла. Зная начальный адрес файла на диске и его длину, программа может узнать, какие секторы диска используются данными этого файла, прочитать их и собрать исходный файл.

«Carving»-алгоритм: вопросы и сложности

Вы уже догадываетесь, какими могут быть сложности в использовании данного алгоритма? Во-первых, без файловой системы невозможно определить исходное имя файла. Восстановленные файлы сохраняются как «image0001.jpg» или «document012.jpg» их исходные имена не сохраняются. Другая проблема связана с фрагментацией диска. Если файл хранился в системе фрагментарно, а не весь целиком, что очень характерно для больших файлов, «carving»-алгоритм также не сможет восстановить файл целиком.

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
pohozhie-programmy.ru
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: