Уничтожение данных
Уничтожение данных — последовательность операций, предназначенных для осуществления программными или аппаратными средствами необратимого удаления данных, в том числе остаточной информации.
Как правило, уничтожение данных используются государственными учреждениями, прочими специализированными структурами и предприятиями в целях сохранения государственной или коммерческой тайны. Существует широкий спектр доступных программных средств безопасного уничтожения данных, в том числе программы с открытым исходным кодом. Уничтожение данных используется также в средствах программного шифрования информации для безопасного удаления временных файлов и уничтожения исходных, поскольку в противном случае, используя классическое удаление, существует возможность восстановления исходного файла лицом, желающим получить доступ к личной или секретной информации.
Алгоритмы уничтожения информации стандартизированы, практически во всех ведущих государствах изданы национальные стандарты, нормы и правила, регламентирующие использование программных средств для уничтожения информации и описывающие механизмы его реализации.
Все программные реализации алгоритмов уничтожения данных основаны на простейших операциях записи, тем самым происходит многократная перезапись информации в секторах жесткого диска или блоках SSD-диска ложными данными. В зависимости от алгоритма это может быть сгенерированное генератором псевдослучайных чисел случайное число либо фиксированное значение. Как правило, каждый алгоритм предусматривает запись восьми битовых единиц (#FF) и нуля (#00). В существующих алгоритмах перезапись может производиться от одного до 35 и более раз. Существуют реализации с возможностью произвольного выбора числа циклов перезаписи.
Теоретически, простейшим методом уничтожения исходного файла является его полная перезапись байтами #FF, то есть битовой маской из восьми двоичных единиц (11111111), нулей либо любых других произвольных чисел, тем самым сделав невозможным его программное восстановление доступными пользователю программными средствами. Однако с использованием специализированных аппаратных средств, анализирующих поверхность магнитных и др. носителей информации и позволяющих восстановить исходную информацию исходя из показателей остаточной намагниченности (в случае с магнитными носителями) или др. показателя, существует вероятность, что простейшая перезапись не гарантирует полноценное уничтожение, подлежащей полному уничтожению информации.
С целью исключения любой возможности восстановления и разработаны существующие алгоритмы уничтожения данных.
- Наиболее известен и распространён алгоритм, применяемый в американском национальном стандарте Министерства обороны DoD 5220.22-M. Вариант E, согласно данному стандарту, предусматривает два цикла записи псевдослучайных чисел и один — фиксированных значений, зависимых от значений первого цикла, четвёртый цикл — сверка записей. В варианте ECE перезапись данных производится 7 раз — 3 раза байтом #FF, три #00 и один #F6[1].
- В алгоритме Брюса Шнайера: в первом цикле записывается #FF, во втором — #00 и в пяти остальных циклах — псевдослучайные числа. Считается одним из наиболее эффективных.
- В наиболее медленном, но, по мнению множества экспертов, наиболее эффективном алгоритме Питера Гутмана, выполняются 35 циклов, в которых записывают все наиболее эффективные битовые маски, данный алгоритм основан на его теории уничтожения информации[2].
Цикл | Данные | Цикл | Данные |
---|---|---|---|
1 | Псевдослучайные | 19 | #99 |
2 | Псевдослучайные | 20 | #AA |
3 | Псевдослучайные | 21 | #BB |
4 | Псевдослучайные | 22 | #CC |
5 | #55 | 23 | #DD |
6 | #AA | 24 | #EE |
7 | #92 #49 #24 | 25 | #FF |
8 | #49 #24 #92 | 26 | #92 #49 #24 |
9 | #24 #92 #49 | 27 | #49 #24 #92 |
10 | #00 | 28 | #24 #92 #49 |
11 | #11 | 29 | #6D #B6 #DB |
12 | #22 | 30 | #B6 #DB #6D |
13 | #33 | 31 | #DB #6D #B6 |
14 | #44 | 32 | Псевдослучайные |
15 | #55 | 33 | Псевдослучайные |
16 | #66 | 34 | Псевдослучайные |
17 | #77 | 35 | Псевдослучайные |
18 | #88 |
- В алгоритме, предусмотренном американским национальным стандартом NAVSO P-5239-26 для MFM-кодируемых устройств: в первом цикле записывается #01, во втором — #7FFFFFF, в третьем — последовательность псевдослучайных чисел, в четвёртом проходит верификация. В варианте для RLL — кодируемых устройств данного алгоритма во втором цикле записывается #27FFFFFF
- В алгоритме, описываемом германским национальным стандартом VSITR, с первого по шестой цикл записываются последовательно байты #00 и #FF, в седьмом #AA.
- Многими заявляется[уточнить] о существовании алгоритма, описанного российским государственным стандартом ГОСТ P 50739-95, предусматривающего запись #00 в каждый байт каждого сектора для систем с 4-6 класса защиты и запись псевдослучайных чисел в каждый байт каждого сектора для систем 1-3 класса защиты[3]. Однако данный ГОСТ содержит лишь формулировку «Очистка должна производиться путём записи маскирующей информации в память при её освобождении перераспределении», которая не содержит какой-либо детализации относительно порядка перезаписи, количества циклов и битовых масок[4]. В то же время, существует действующий руководящий документ Государственно технической комиссии России «Автоматизированные системы. Защита от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации», изданный в 1992 году и предусматривающий ряд требований к механизму уничтожения информации для систем определённых классов защищенности. В частности, для классов 3А и 2A «Очистка осуществляется двукратной произвольной записью в освобождаемую область памяти, ранее использованную для хранения защищаемых данных (файлов)», для класса 1Г предусмотрена однократная перезапись[5].
- В алгоритме Парагона первый цикл заключается в перезаписи уникальными 512-битными блоками, используя криптографически безопасный генератор случайных чисел. Затем — во втором цикле — каждый перезаписываемый блок переписывается своим двоичным дополнением. Третий цикл повторяет первый цикл с новыми уникальными случайными блокам. В четвёртом цикле происходит перезапись байтом #AA. Завершается уничтожение информации циклом верификации.
Как правило, для затруднения программного восстановления информации перезапись информации в отдельном файле согласно алгоритму уничтожения сопровождается установкой нулевого размера файла и его переименованием, используя произвольный набор символов. Затем следует удаление файла из таблицы размещения файлов.
Примечания
- Описание стандарта DoD 5220.22-M (англ.)
- Описание Алгоритма П. Гутмана (англ.)
- «След на воде» (недоступная ссылка). Дата обращения: 2 июня 2008. Архивировано 8 августа 2014 года.
- ГОСТ P 50739-95 Средства вычислительной техники. Защита от несанкционированного доступа к информации. Общие технические требования
- Руководящий документ Гостехкомиссии России «Автоматизированные системы. Защита от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации», 1992 год (недоступная ссылка). Дата обращения: 24 июля 2014. Архивировано 4 марта 2016 года.