АНАЛИЗ ПРОГРАММ КОДИРОВАНИЯ ИНФОРМАЦИИ Андреева А.В. Магистрант по направлению подготовки

advertisement
АНАЛИЗ ПРОГРАММ КОДИРОВАНИЯ ИНФОРМАЦИИ
Андреева А.В.1
1
Магистрант по направлению подготовки
«Прикладная математика и информатика»
BestCrypt
Volume
Encryption.
Платный
пакет
проприетарных
программ для создания на жёстком диске компьютера виртуального
зашифрованного диска. Виртуальный диск работает, как обычный дисковый
раздел. Однако такой подход не очень подходит для корпоративного
использования. Во-первых, когда размеры файла становятся велики (а это
неизбежно, поскольку любая компания обрабатывает большой объем
информации), скорость доступа к нему заметно снижается. Во-вторых,
надежность хранения данных при использовании данного метода защиты
относительно невелика. Файл-контейнер может быть поврежден из-за сбоев
на носителе в результате деятельности вируса или самого пользователя. В
этом случае вся конфиденциальная информация будет безвозвратно утеряна.
Рисунок 1. BestCrypt Volume Encryption
Между тем продуктов, осуществляющих шифрование реальных
разделов, на рынке совсем немного. Именно поэтому утилита BestCrypt
Volume Encryption выгодно отличается от многих своих конкурентов. Особо
стоит отметить, что зашифровывать она может не только отдельные разделы
жестких дисков или мобильных накопителей наподобие флеш-дисков, но и
различные распределенные тома: простые распределенные, зеркальные,
чередующиеся и тома RAID-5. Эта особенность позволяет использовать
рассматриваемую программу для защиты данных, размещенных на серверах.
Главное окно (рисунок 1) этой утилиты состоит из двух частей. В
первой все доступные в данный момент разделы отображаются в виде
таблицы. Для каждого тома выводятся его буква, статус (зашифрован или
нет), емкость, объем свободного пространства, файловая система и так далее.
Во второй части доступные разделы отображаются в виде наглядной схемы.
Все операции над томами выполняются с помощью иконок на панели
инструментов, главного или контекстного меню. То есть управление
рассматриваемой программой очень просто и удобно, оно доступно всем, в
том числе и начинающим пользователям.
Шифрование и расшифровка идут в фоновом режиме, и пользователь
не замечает разницы в работе с обычным и зашифрованным диском,
который, при необходимости, можно превратить в обычный, но нечитаемый,
файл.
Особенностью программы BestCrypt Volume Encryption является
большое количество реализованных в ней криптографических технологий.
На сегодняшний день пользователи этого продукта могут использовать для
защиты своей информации следующие алгоритмы: AES (длина ключа 256
бит), Blowfish (448 бит), CAST (128 бит), RC6 (256 бит), Serpent (256 бит),
Twofish (256 бит) и ГОСТ 28147-89 (256 бит). Все они считаются надежными,
всесторонне исследованными технологиями. А для генерации ключа
шифрования
применяются
действия самого
пользователя:
хаотичные
нажатия на кнопки клавиатуры и беспорядочные движения мышью. Такой
подход считается сегодня оптимальным, поскольку полностью устраняет
зависимость надежности системы защиты от качества генератора случайных
чисел. В мировой практике известны случаи, когда недостатки в разработке
последних настолько сужали границы возможных ключей шифрования, что
злоумышленники подбирали их за приемлемое время простым перебором.
У программы BestCrypt есть опция создания «скрытого» контейнера,
который криптографически гарантированно нельзя определить никакими
средствами.
Есть возможность шифрования файла виртуальной памяти, в котором
хранятся временные данные, в том числе там могут оказаться документы и
пароли, поэтому его шифрование является полезной возможностью с точки
зрения защиты информации.
Также присутствует функция шифрования системного диска с
последующей загрузкой с него.
В комплект программы входит утилита BCWipe, позволяющая удалять
файлы
без
возможности
их
восстановления.
Файлы,
подлежащие
уничтожению, затираются случайными данными, также чистятся служебные
таблицы размещения файлов и области свободного места.
В заключение можно сказать, что программа BestCrypt Volume
Encryption
действительно
хорошо
подходит
для
корпоративного
использования. Не обладая всем набором функциональных возможностей
дорогих продуктов, она тем не менее, обеспечивает действительно надежную
защиту конфиденциальной информации и стоит при этом относительно
недорого, но при это она не обеспечивает шифрование проходящего сетевого
трафика между клиентом и сервером.
E-NIGMA.
Это
платная
система
удалённого
хранения
конфиденциальной информации. Благодаря использованию криптографии с
открытым ключом, пользовательские данные на серверах компании хранятся
в зашифрованном виде.
Система разработана российской компанией «Тенденция» в 2006 году.
E-NIGMA осуществляет загрузку файла в удалённое хранилище
(рисунок 2), уничтожая конфиденциальную информацию с компьютера. В
зашифрованном виде многократно дублированный документ располагается
на распределённом массиве серверов.
Рисунок 2. E-NIGMA, загрузка файлов
Клиентское
программное
обеспечение
E-NIGMA
не
требует
инсталляции и может храниться на съемных носителях информации или
храниться удалённо. Авторизация пользователя осуществляется при помощи
уникального асимметричного ключа. Программное обеспечение требует
наличия доступа к защищённому хранилищу в Internet, при этом
поддерживаются доступ через прокси-сервер или через NAT-маршрутизатор.
Все коммуникации осуществляются исключительно в шифрованном
виде. В пробной версии E-NIGMA для криптографических операций
используется широко распространённая свободная библиотека OpenSSL, в
коммерческой
сертифицированная
криптобиблиотека
Агава-С,
соответствующая ГОСТ Р 34.10-2001. Используются асимметричный
криптографический алгоритм RSA c длиной ключа 1024, 2048, 4096 бит и
симметричный алгоритм AES с ключами длиной 256 бит, принятый в
качестве стандарта шифрования правительством США. Для противодействия
клавиатурным перехватчикам ввод пароля доступа к криптографическому
ключу возможен с помощью виртуальной клавиатуры.
После выполнения операций закачки файла в удалённое хранилище ENIGMA удаляет конфиденциальный документ с компьютера, производя
посекторное уничтожение электромагнитных следов файлов на жёстком
диске. В случаях, когда требуется повышенный уровень конфиденциальности
и информационной безопасности, по инициативе пользователя E-NIGMA
может включить режим уничтожения информации из файла подкачки
операционной системы при каждом выключении/перезагрузке компьютера.
Предусмотрена функция быстрого уничтожения заранее определённых папок
по комбинации клавиш или по аварийному извлечению носителя с ключом.
Загруженный в систему документ в зашифрованном виде по
интеллектуальному алгоритму синхронизации дублируется в массиве
территориально
распределённых
серверов,
что,
по
заявлениям
разработчиков, гарантирует сохранность, конфиденциальность и быстрый
доступ для авторизованного пользователя. В шифрованном виде хранятся
также имена файлов, папок, сама файловая структура и комментарии к
файлам. Все операции по шифрации/дешифрации файлов осуществляются
только клиентским программным обеспечением на компьютере пользователя
посредством персонального асимметричного ключа.
В рамках организации возможна совместная работа с файлами
посредством предоставления доступа другим членам рабочей группы.
Предоставление файлов в общий доступ для обеспечения безопасной
групповой работы осуществляется способом, схожим с предоставлением
общего
доступа
в
Windows.
Все
файлы
могут
быть
снабжены
комментариями.
TrueCrypt. Это программа для шифрования «на лету» для 32- и 64разрядных операционных систем семейств Microsoft Windows и новее (GUIинтерфейс), GNU/Linux и Mac OS X. Она позволяет создавать виртуальный
зашифрованный логический диск, хранящийся в виде файла. С помощью
TrueCrypt также можно полностью шифровать раздел жёсткого диска или
иного носителя информации, такой как флоппи-диск или USB флеш-память.
Все сохранённые данные в томе TrueCrypt полностью шифруются, включая
имена файлов и каталогов. Смонтированный том TrueCrypt подобен
обычному логическому диску (рисунок 3), поэтому с ним можно работать с
помощью обычных утилит проверки и дефрагментации файловой системы.
Лицензия программы считалась свободной, однако при её проверке для
включения TrueCrypt в Fedora были обнаружены опасные и делающие её
несвободной неоднозначности. В лицензию были внесены исправления.
Рисунок 3. TrueCrypt, внешний вид приложения
TrueCrypt умеет создавать зашифрованный виртуальный диск:
1. В файловом контейнере, что позволяет легко работать с ним –
переносить, копировать (в том числе на внешние устройства в
виде файла), переименовывать или удалять;
2. В виде зашифрованного раздела диска, что делает работу более
производительной и удобной, есть возможность шифровать
системный раздел;
3. Путём полного шифрования содержимого устройства, такого как
флоппи-диск или USB флеш-память.
В список поддерживаемых TrueCrypt алгоритмов шифрования входят
AES, Serpent, Twofish, Тройной DES, Blowfish и CAST5. Кроме того,
возможно использование каскадного шифрования различными шифрами.
Все алгоритмы шифрования используют XTS-режим, который более
безопасен, нежели режимы CBC и LRW для шифрования «на лету».
Программа позволяет выбрать одну из трёх хэш-функций: HMACRIPEMD-160, HMAC-Whirlpool, HMAC-SHA-512 для генерации ключей
шифрования и ключа заголовка.
Для доступа к зашифрованным данным можно применять ключевую
фразу, ключевые файлы или их комбинации. В качестве ключевых файлов
можно использовать любые доступные файлы на локальных, сетевых,
съёмных дисках и генерировать свои собственные ключевые файлы.
Одна из примечательных возможностей TrueCrypt – обеспечение двух
уровней правдоподобного отрицания наличия зашифрованных данных,
необходимого в случае вынужденного открытия пароля пользователем:
1. Создание скрытого тома, что позволяет задать второй пароль к
обычному тому для доступа к данным, к которым невозможно получить
доступ с основным паролем, при этом скрытый том может иметь любую
файловую систему и располагается в неиспользованном пространстве
основного тома.
2. Ни один том TrueCrypt не может быть идентифицирован так, как
невозможно отличить от набора случайных данных, то есть файл нельзя
связать с TrueCrypt как с программой, его создавшей, ни в какой форме
и рамках.
Другие возможности TrueCrypt:
1. Переносимость, что позволяет запускать TrueCrypt без установки в
операционной системе (необходимы права группы администраторов в
NT).
2. Поддержка создания зашифрованного динамического файла на дисках
NTFS. Такие тома TrueCrypt увеличиваются в размере по мере
накопления новых данных вплоть до указанного максимального
размера. Однако, использование подобной возможности несколько
уменьшает производительность и безопасность системы.
3. Шифрование системного физического либо логического диска для
Microsoft Windows-систем с предзагрузочной аутентификацией. (Такая
же функциональность встроена в Windows Vista (не всех редакций) и
Windows Server 2008 под именем BitLocker).
4. Изменение паролей и ключевых файлов для тома без потери
зашифрованных данных.
5. Возможность резервного сохранения и восстановления заголовков
томов (1024 байт).
a. Это может быть использовано для восстановления заголовка
повреждённого файла, позволяя подсоединить том после ошибки
на аппаратном уровне, в результате которого повредился
заголовок.
b. Восстановление старого заголовка также сбрасывает пароли тома
на те, что действительны для прежнего заголовка.
6. Возможность
назначать
комбинации
клавиш
для
монтирования/размонтирования разделов (в том числе и быстрого
размонтирования со стиранием ключа в памяти, закрытием окна и
очисткой истории), отображения и сокрытия окна TrueCrypt.
7. Возможность использовать TrueCrypt на компьютере с правами
обычного пользователя, правда, первоначальную установку программы
должен сделать администратор.
Pretty
Good
Privacy.
Компьютерная
программа,
позволяющая
выполнять операции шифрования (кодирования) и цифровой подписи
сообщений, файлов и другой информации, представленной в электронном
виде. Первоначально разработана Филиппом Циммерманном в 1991 году.
PGP имеет множество реализаций, совместимых между собой и рядом
других программ (GnuPG, FileCrypt и др.) благодаря стандарту OpenPGP
(RFC 4880), но имеющих разный набор функциональных возможностей.
Существуют
реализации
операционных
систем.
PGP
для
Кроме
всех
наиболее распространённых
свободно
распространяемых,
есть
коммерческие реализации.
Так как PGP развивается, некоторые системы позволяют создавать
зашифрованные сообщения с использованием новых возможностей, которые
не могут быть дешифрованы старыми системами. Отправитель и получатель
должны знать возможности друг друга или, по крайней мере, согласовать
настройки PGP.
На данный момент не известно ни одного способа взломать
шифрование
PGP
при
помощи
полного
перебора
или
уязвимости
криптоалгоритма. В 1996 году криптограф Брюс Шнайер охарактеризовал
раннюю версию PGP как «ближайшую к криптосистемам военного уровня».
Ранние версии PGP обладали теоретическими уязвимостями, поэтому
рекомендуется
пользоваться
современными.
Кроме
защиты
данных,
передаваемых по сети, PGP позволяет шифровать запоминающие устройства,
например, жёсткие диски, и файлы.
Криптографическая стойкость PGP основана на предположении, что
используемые алгоритмы устойчивы к криптоанализу на современном
оборудовании. Например, в оригинальной версии PGP для шифрования
ключей сессии использовался алгоритм RSA, основанный на использовании
односторонней
функции
(факторизация).
В
PGP
версии
2
также
использовался алгоритм IDEA, в следующих версиях были добавлены
дополнительные алгоритмы шифрования. Ни у одного используемого
алгоритма нет известных уязвимостей.
Рисунок 4. Pretty Good Privacy, главное окно
Шифрование PGP осуществляется последовательно хешированием,
сжатием данных, шифрованием с симметричным ключом, и, наконец,
шифрованием
осуществляться
с
открытым
одним
из
ключом,
причём
нескольких
каждый
поддерживаемых
этап
может
алгоритмов.
Симметричное шифрование производится с использованием одного из пяти
симметричных алгоритмов (AES, CAST5, TripleDES, IDEA, Twofish) на
сеансовом
ключе.
Сеансовый
ключ
генерируется
с
использованием
криптографически стойкого генератора псевдослучайных чисел. Сеансовый
ключ зашифровывается открытым ключом получателя с использованием
алгоритмов RSA или Elgamal (в зависимости от типа ключа получателя).
Каждый открытый ключ соответствует имени пользователя или адресу
электронной почты.
Пользователь PGP создаёт ключевую пару: открытый и закрытый
ключ. При генерации ключей задаются их владелец (имя и адрес электронной
почты), тип ключа, длина ключа и срок его действия.
PGP поддерживает три типа ключей RSA v4, RSA legacy (v3) и DiffieHellman/DSS (Elgamal в терминологии GnuPG).
Для ключей RSA legacy длина может составлять от 1024 до 2048 бит, а
для Diffie-Hellman/DSS и RSA – от 1024 до 4096. Ключи RSA legacy содержат
одну ключевую пару, а ключи Diffie-Hellman/DSS и RSA могут содержать
один главный ключ и дополнительные ключи для шифрования. При этом
ключ электронной подписи в ключах Diffie-Hellman/DSS всегда имеет размер
1024. Срок действия для каждого из типов ключей может быть определён как
неограниченный или до конкретной даты. Для защиты ключевого контейнера
используется секретная фраза.
PGP
поддерживает
аутентификацию
и
проверку
целостности
посредством цифровой подписи. По умолчанию она используется совместно
с шифрованием, но также может быть применена и к открытому тексту.
Отправитель использует PGP для создания подписи алгоритмом RSA или
DSA. При этом сначала создаётся хеш открытого текста (также известный
как дайджест), затем – цифровая подпись хеша при помощи закрытого ключа
отправителя. Для формирования хеша могут использоваться алгоритмы MD5,
SHA-1, RIPEMD-160, SHA-256, SHA-384, SHA-512.
В целях уменьшения объёма сообщений и файлов и, возможно, для
затруднения
криптоанализа
PGP
производит
сжатие
данных
перед
шифрованием. Сжатие производится по одному из алгоритмов ZIP, ZLIB,
BZIP2. Для сжатых, коротких и слабосжимаемых файлов сжатие не
выполняется.
Как при шифровании сообщений, так и при проверке цифровой
подписи, необходимо, чтобы принятый получателем открытый ключ
действительно
принадлежал
отправителю.
При
простом
скачивании
открытого ключа он может быть подменён. С первых версий PGP
поддерживает сертификаты открытых ключей, с помощью которых подмены
(или случайные ошибки передачи) легко распознаются. Однако недостаточно
просто создать сертификат, защищённый от модифицикации, так как при
этом гарантируется лишь целостность сертификата после его создания.
Пользователи также должны каким-нибудь способом проверить, что
открытый ключ в сертификате действительно принадлежит отправителю.
Заданная пара «имя пользователя – открытый ключ» может быть подписана
третьим лицом, удостоверяющим соответствие ключа и владельца. В таких
подписях может быть несколько вложенных уровней доверия. Хотя многие
программы читают и пишут эту информацию, очень немногие учитывают
этот уровень сертификата, принимая решение о принятии или отклонении
сертификата.
В последних спецификациях OpenPGP доверенные подписи могут
использоваться
для
поддержки
создания
центров
сертификации.
Доверенность сертификата означает, что ключ действительно принадлежит
указанному владельцу и может использоваться для подписи сертификатов
одним уровнем ниже. Сертификат уровня 0 означает обычную подпись.
Уровень 1 означает, что при помощи подписанного ключа можно создавать
сертификаты уровня 0. При помощи сертификата уровня 2 можно создавать
сертификаты уровня 1. Уровень 2 практически идентичен степени доверия, с
которой полагаются пользователи на списки доверенных сертификатов,
встроенные в браузеры.
Все версии PGP включают в себя способ отмены сертификата. Это
необходимо, если требуется сохранять безопасность связи при потере или
компрометации закрытого ключа. Отмена сертификата похожа на списки
отзыва сертификатов в централизованной инфраструктуре открытых ключей.
Современные
версии
PGP
также
поддерживают
сроки
истечения
сертификатов.
Проблема корректного определения принадлежности открытого ключа
владельцу характерна для всех криптографических систем с асимметричным
шифрованием. У неё не существует достаточно хороших решений.
Оригинальная схема PGP позволяет решить пользователю, использовать ли
схему проверки сертификатов, в то время как большинство других
инфраструктур открытых ключей требуют проверки каждого сертификата.
Исходя из проведенного анализа программ шифрования, можно
выделить сильные и слабые стороны каждого из них. К достоинствам
программы BestCrypt Volume Encryption бесспорно следует отнести его
поразительную скорость, великолепное качество математики, в особенности
алгоритмов шифрование данных в фоновом режиме, возможность превратить
в обычный, но нечитаемый, файл весь зашифрованный диск. Одной из
интересных
особенностей
программы
является
большое
количество
реализованных в ней криптографических технологий и то, что для генерации
ключа шифрования применяются действия самого пользователя: хаотичные
нажатия на кнопки клавиатуры и беспорядочные движения мышью. К
недостаткам можно отнести не обеспечивает шифрование проходящего
сетевого трафика между клиентом и сервером. Среди достоинств E-NIGMA –
замечательный метод загрузки файлов в удалённое хранилище, уничтожая
конфиденциальную информацию с компьютера. Так же замечательный
подход показан в отсутствии необходимости устанавливать приложение.
Недостатков у E-NIGMA немного. Это – хоть и высокая, но тем не менее
уступающая во многих случаях BestCrypt Volume Encryption скорость работы
в режиме реального времени. Также недостатком E-NIGMA является то, что
требует наличия доступа к защищённому хранилищу в Internet. Хотелось бы,
чтобы в будущем в E-NIGMA была включена возможность организации
своего защищенного сервера для хранения шифрованной информации.
TrueCrypt, широко представленна на рынке ПО, не является
совершенной и также её качество оставляет желать лучшего. Особенно это
связанно с лицензированием программы, что делает ее неоднозначно
свободной. Но производители пока не торопятся выпускать на рынок
предельно новое ПО, а просто изменили формулировку лицензии.
Список использованных источников
1. Черемушкин
А.В.
Лекции
по
арифметическим
алгоритмам
в
криптографии/ А.В. Черемушкин. – М.: Издательство Московского
центра непрерывного математического образования, 2000. – 352 c.
2. Ященко В.В., Варновский Н.П., Нестеренко Ю.В. и др. Введение в
криптографию/ В.В. Ященко. – М, 2004. – 332 с.
3. Мао Венбо. Современная криптография : теория и практика. : [пер. с
англ.] / Венбо Мао. – М. : Издательский дом «Вильямс», 2005. – 768 с.
4. Баричев С.Г., Гончаров В.В., Серов Р.Е. Основы современной
криптографии./ С.Г. Баричев. – М.: Горячая линия – Телеком, 2002. –
175 с.
5. Мунерман В.И. Опыт массовой обработки данных в облачных системах
(на примере WINDOWS AZURE) //Системы высокой доступности. - 2014.
- Т. 9. - № 2. С. 3.
6. Мунерман В.И. Опыт массовой обработки данных в облачных системах
(на примере WINDOWS AZURE) // Системы высокой доступности. 2014.
Т. 10. № 2. С. 8-3.
Download