Коллектив авторов - Шпионские штучки и устройства для защиты объектов и информации
* * *
Программы, защищенные описанным выше методом, гарантированы от копирования при помощи стандартных средств (Copy, Хсору, Disk-copy, Norton Utilities и т. д.), однако программы защиты, а, следовательно, и их "уникальные" характеристики подвержены тиражированию.
Вследствие этого ряд производителей программного обеспечения отказываются от продажи программ на дискетах, а размещают свои изделия непосредственно в операционной системе при покупке ПК, обеспечивая тем самым соответствующую защиту для них.
Описанные выше методы защиты достаточно эффективны, но не гарантируют от разрушения и потерь информации в результате ошибок пользователя, сбоев программ или действий злоумышленника в обход защиты. В подобных случаях в ПК должны быть предусмотрены восстановительные мероприятия: страхование, резервирование, создание архивных копий. Использование архивов оценивается специалистами как весьма полезная мера сохранения информации от потерь.
4.2.4. Удаление файлов с жесткого диска
Удаление файлов средствами DOS (например, нажатием на клавишу <F8> в Norton Comander) не приводит к стиранию (уничтожению файлов с жесткого диска). Файл может быть восстановлен специальными программными средствами, например, утилитами UnErase и DiskEdit (входящими в состав Norton Utilities) или UnDelet, входящей в состав дистрибутива DOS.
Кроме того, неиспользуемая часть последнего кластера, занимаемого файлом, может содержать информацию, доступную утилите Diskedit.
Даже форматирование (высокоуровневое) жесткого диска не разрушает область данных, и информация может быть восстановлена с помощью специальных программных средств (в простейшем случае с помощью утилиты Unformat).
При работе со многими современными программными продуктами (например, с широко распространенным текстовым редактором Word for Windows) ваши данные размещаются во временном файле, который впоследствии автоматически удаляется. Вы можете и не знать о его существовании, однако файл остается на диске и может быть извлечен посторонним лицом.
Таким образом, возникает необходимость предотвращения всякий возможности доступа к незашифрованной информации.
"Необратимое" стирание данных с жесткого диска осуществляется, как правило, путем записи на занимаемое ими место заданного двоичного числа (обычно 0).
В соответствии со стандартом Министерства Обороны США, данные стираются путем выполнения как минимум трех циклов, каждый из которых включает запись в каждый бит единиц, а затем — нулей.
Подобный алгоритм осуществляет утилита Wipeinfo,входящая в состав Norton Utilities.
4.2.5. Создание архивов
При эксплуатации персональных компьютеров по самым различным причинам возможны порча или потеря информации на магнитных дисках. Это может произойти из-за физической порчи магнитного диска, неправильной корректировки или случайного уничтожения файлов, разрушения информации компьютерным вирусом и т. д. Для того чтобы уменьшить потери в таких ситуациях, следует иметь архивные копни используемых файлов и систематически обновлять копии изменяемых файлов. Для хранения архивов данных можно использовать внешние запоминающие устройства большой емкости, которые дают возможность легко скопировать жесткий диск (например, стримеры. "Арвид" и др.)
Для копирования файлов можно, разумеется, использовать следующие средства:
— стандартные команды Copy, Хсору, Diskcopy;
— программные средства PCtools, Norton Commander, Windows;
— программы непрерывного копирования Backup и Restore.
Однако при этом архивные копии занимают столько же места, сколько занимают исходные файлы, и для копирования нужных файлов может потребоваться много дискет.
Более удобно для создания архивных копий использовать специально разработанные программы архивации файлов, которые сжимают информацию. При архивировании степень сжатия файлов сильно зависит от их формата. Некоторые форматы данных (графические, Page Maker и др.) имеют упакованные разновидности, при этом сжатие производится создающей исходный файл программой, однако лучшие архиваторы способны поджать и их. Совсем другая картина наблюдается при архивации текстовых файлов, файлов PostScript и им подобных (текстовые файлы обычно сжимаются на 50–70 %, а программы на 20–30 %).
Наиболее популярны архиваторы ARJ, LHA, КАК и PKZIP (имеет отдельный распаковщик PKUNZIP).
Большинство из этих программ не надо специально покупать, они предлагаются как программы условно-бесплатные (Shareware) или свободного распространения (Freeware). Хорошую помощь при архивации программ (поскольку каждый пользователь имеет любимый архиватор) могут оказать вам специальные "оболочки" (так называемые Packer-Shells), такие как SHEZ или GUS, которые самостоятельно определяют компрессированный файл и помогают его распаковать (так называемый процесс разархивации); аналогичные средства имеются в современных оболочках общего назначения (Norton Commander, Dos Navigator и др.).
Подобные оболочки обычно лишь управляют имеющимися программами-архиваторами общего пользования. Архиватор RAR имеет собственную встроенную оболочку.
Рис. 4.2. Оболочка архиватора RAR
Принцип работы архиваторов основан на поиске в файле "избыточной" информации и последующем ее кодировании с целью получения минимального объема. Самым известным методом архивации файлов является сжатие последовательностей одинаковых символов. Например, внутри вашего файла находятся последовательности байтов, которые часто повторяются. Вместо того чтобы хранить каждый байт, фиксируется количество повторяющихся символов и их позиция. Для наглядности приведем следующий пример.
Упаковываемый файл занимает 15 байт и состоит из следующей последовательности символов:
BBBBBLLLLLAAAAA
В шестнадцатиричной системе
42 42 42 42 42 4С 4С АС АС АС 41 41 41 41 41
Архиватор может представить этот файл в виде (шестнадцатиричном):
01 05 42 06 05 AC OA 05 41
Эти последовательности можно интерпретировать следующим образом: с первой позиции 5 раз повторяется знак В, с шестой позиции 5 раз повторяется знак L и с позиции 11 повторяется 5 раз знак А.
Согласитесь, очень простая демонстрация алгоритма архивации. Очевидно, что для хранения файла в его последней форме требуется лишь 9 байт — меньше на 6 байт.
Описанный метод является простым и очень эффективным способом сжатия файлов. Однако он не обеспечивает большой экономии объема, если обрабатываемый текст содержит небольшое количество последовательностей повторяющихся символов. Более изощренный метод сжатия данных, используемый в том или ином виде практически любым архиватором, — это так называемый оптимальный префиксный код, и в частности, алгоритм Хаффмана, или кодирование символами переменной длины. Код переменной длины позволяет записывать наиболее часто встречающиеся символы и фразы всего лишь несколькими битами, в то время как редкие символы и фразы будут записаны более длинными битовыми строками. Например, анализируя любой английский текст, можно установить, что буква Е встречается гораздо чаще, чем Z, а X и Q относятся к наименее встречающимся. Таким образом, используя специальную таблицу соответствия, можно закодировать каждую букву Е меньшим числом бит, используя более длинный код для более редких букв, тогда как в обычных кодировках любому символу соответствует битовая последовательность фиксированной длины (как правило, кратной байту).
Популярные архиваторы ARJ, РАК, LHARC, PKZIP работают на основе алгоритма Лемпела-Зива. Эти архиваторы классифицируются как адаптивные словарные кодировщики, в которых текстовые строки заменяются указателями на идентичные им строки, встречающиеся ранее в тексте. Например, все слова этой книги могут быть представлены в виде номеров страниц и номеров строк некоторого словаря. Важнейшей отличительной чертой этого алгоритма является использование грамматического разбора предшествующего текста с разложением его на фразы, которые записываются в словарь. Указатели позволяют делать ссылки на любую фразу в окне установленного размера, предшествующем текущей фразе. Этот размер определяет границы поиска соответствия; при его увеличении возрастает плотность упаковки, но снижается скорость работы программы. Если соответствие найдено, текущая фраза заменяется указателем на ее предыдущее вхождение.
Программы-архиваторы позволяют не только сэкономить место на архивных дискетах, но и объединять группы совместно используемых файлов в один архивный файл, что заметно облегчает ведение архивов.
К основным функциям архиваторов относятся:
— архивация указанных файлов пли всего текущего каталога;
— извлечение отдельных или всех файлов на архива в текущий каталог (пли в указанный каталог);