РУБРИКИ |
Криптографические методы защиты информации |
РЕКЛАМА |
|
Криптографические методы защиты информацииДля начала выберем два очень больших простых числа (большие исходные числа нужны для построения больших криптостойких ключей. Например, Unix-программа ssh-keygen по умолчанию генерирует ключи длиной 1024 бита).Определим параметр n как результат перемножения р и q. Выберем большое случайное число и назовем его d, причем оно должно быть взаимно простым с результатом умножения (р -1)*(q -1). Отыщем такое число e, для которого верно соотношение (e*d) mod ((р -1) *(q -1)) = 1 (mod — остаток от деления, т. е. если e, умноженное на d, поделить на ((р -1) *(q -1)), то в остатке получим 1). Открытым ключом является пара чисел e и n, а закрытым — d и n. При шифровании исходный текст рассматривается как числовой ряд, и над каждым его числом мы совершаем операцию C(i)= ( M(i)e ) mod n. В результате получается последовательность C(i), которая и составит криптотекст. Декодирование информации происходит по формуле M(i) = ( C(i)d ) mod n. Как видите, расшифровка предполагает знание секретного ключа. Давайте попробуем на маленьких числах. Установим р=3, q=7. Тогда n=р*q=21. Выбираем d как 5. Из формулы (e*5) mod 12=1 вычисляем e=17. Открытый ключ 17, 21, секретный — 5, 21. Зашифруем последовательность «2345»: C(2)= 217 mod 21 =11 C(3)= 317 mod 21= 12 C(4)= 417 mod 21= 16 C(5)= 517 mod 21= 17 Криптотекст — 11 12 16 17. Проверим расшифровкой: M(2)= 115 mod 21= 2 M(3)= 125 mod 21= 3 M(4)= 165 mod 21= 4 M(5)= 175 mod 21= 5 Как видим, результат совпал.
Криптосистема RSA широко применяется в Интернете. Когда вы подсоединяетесь к защищенному серверу по протоколу SSL, устанавливаете на свой ПК сертификат WebMoney либо подключаетесь к удаленному серверу с помощью Oрen SSH или SecureShell, то все эти программы применяют шифрование открытым ключом с использованием идей алгоритма RSA. Действительно ли эта система так надежна? С момента своего создания RSA постоянно подвергалась атакам типа Brute-force attack (атака методом грубой силы, т. е. перебором). В 1978 г. авторы алгоритма опубликовали статью, где привели строку, зашифрованную только что изобретенным ими методом. Первому, кто расшифрует сообщение, было назначено вознаграждение в размере 100 долл., но для этого требовалось разложить на два сомножителя 129-значное число. Это был первый конкурс на взлом RSA. Задачу решили только через 17 лет после публикации статьи. Криптостойкость RSA основывается на том предположении, что исключительно трудно, если вообще реально, определить закрытый ключ из открытого. Для этого требовалось решить задачу о существовании делителей огромного целого числа. До сих пор ее аналитическими методами никто не решил, и алгоритм RSA можно взломать лишь путем полного перебора. Строго говоря, утверждение, что задача разложения на множители сложна и что взлом системы RSA труден, также не доказано. Компания RSA (httр://www.rsa.ru) регулярно проводит конкурсы на взлом собственных (и не только собственных) шифров. Предыдущие конкурсы выиграла организация Distributed.net (httр://www.distributed. net/), являющаяся Интернет-сообществом добровольцев. Участники Distributed.net загружают к себе на ПК небольшую программу-клиент, которая подсоединяется к центральному серверу и получает кусочек данных для вычислений. Затем все данные загружаются на центральный сервер, и клиент получает следующий блок исходной информации. И так происходит до тех пор, пока все комбинации не будут перебраны. Пользователи, участники системы, объединяются в команды, а на сайте ведется рейтинг как команд, так и стран. Например, участвующей в конкурсе по взлому RC5-64 (блочный шифр компании RSA, использующий ключ длиной 64 бита) организации Distributed.net удалось осуществить взлом через пять лет (1757 дней) работы. За это время в проекте участвовали 327 856 пользователей и было перебрано 15 268 315 356 922 380 288 вариантов ключа. Выяснилось, что была (не без юмора) зашифрована фраза «some things are better left unread» («некоторые вещи лучше оставлять непрочтенными»). Общие рекомендации по шифру RC5-64 таковы: алгоритм достаточно стоек для повседневных нужд, но шифровать им данные, остающиеся секретными на протяжении более пяти лет, не рекомендуется». 3.5 Комбинированные методы шифрования Одним из важнейших требований, предъявляемых к системе шифрования, является ее высокая стойкость. Однако повышение стойкости любого метода шифрования приводит, как правило, к существенному усложнению самого процесса шифрования и увеличению затрат ресурсов (времени, аппаратных средств, уменьшению пропускной способности и т.п.). Достаточно эффективным средством повышения стойкости шифрования является комбинированное использование нескольких различных способов шифрования, т.е. последовательное шифрование исходного текста с помощью двух или более методов. Как показали исследования, стойкость комбинированного шифрования не ниже произведения стойкостей используемых способов. Вообще говоря, комбинировать можно любые методы шифрования и в любом количестве, однако на практике наибольшее распространение получили следующие комбинации: 1) подстановка + гаммирование; 2) перестановка + гаммирование; 3) гаммирование + гаммирование; 4) паодстановка + перестановка; Типичным примером комбинированного шифра является национальный стандарт США криптографического закрытия данных (DES). 3.5.1 Криптографический стандарт DES В 1973 г. Национальное бюро стандартов США начало разработку программы по созданию стандарта шифрования данных на ЭВМ. Был объявлен конкурс среди фирм разработчиков США, который выиграла фирма IBM, представившая в 1974 году алгоритм шифрования, известный под названием DES(Data Encryption Standart). В этом алгоритме входные 64-битовые векторы, называемые блоками открытого текста, Преобразуются в выходные 64-битовые векторы, называемые блоками шифротекста, с помощью двоичного 56-битового ключа К. Число различных ключей DES-алгоритма равно 256>7*1016. Алгоритм реализуется в течение 16 аналогичных циклов шифрования, где на I-ом цикле используется цикловой ключ Ki , представляющий собой алгоритмически вырабатываемую выборку 48 битов из 56 битов ключа Ki, I=1,2,…,16. Алгоритм обеспечивает высокую стойкость, однако недавние результаты показали, что современная технология позволяет создать вычислительное устройство стоимостью около 1 млн. долларов США, способное вскрыть секретный ключ с помощью полного перебора в среднем за 3,5 часа. Из-за небольшого размера ключа было принято решение использовать DES-алгоритм для закрытия коммерческой(несекретной) информации. Практическая реализация перебора всех ключей в данных условиях экономически не целесообразна, так как затраты на реализацию перебора не соответствуют ценности информации, закрываемой шифром. DES-алгоритм явился первым примером широкого производства и внедрения технических средств в области защиты информации. Национальное бюро стандартов США проводит проверку аппаратных реализаций DES-алгоритма, предложенных фирмами-разработчиками, на специальном тестирующем стенде. Только после положительных результатов проверки производитель получает от Национального бюро стандартов сертификат на право реализации своего продукта. К настоящему времени аттестовано несколько десятков изделий, выполненных на различной элементарной базе. Достигнута высокая скорость шифрования. Она составляет в лучших изделиях 45 Мбит/с. Цена некоторых аппаратных изделий ниже 100 долларов США. Основные области применения DES-алгоритма: 1) хранение данных на компьютерах (шифрование файлов, паролей); 2) аутентификация сообщений (имея сообщение и контрольную группу, несложно убедиться в подлинности сообщения; 3) электронная система платежей (при операциях с широкой клиентурой и между банками); 4) Электронный обмен коммерческой информацией( обмен данными между покупателями, продавцом и банкиром защищен от изменений и перехвата. Позднее появилась модификация DESa — Triple Des («тройной DES» — так как трижды шифрует информацию «обычным» DESом) свободен от основного недостатка прежнего варианта — короткого ключа; он здесь в два раза длиннее. Но зато, как оказалось, Triple DES унаследовал другие слабые стороны своего предшественника: отсутствие возможности для параллельных вычислений при шифровании и низкую скорость.
3.5.2 ГОСТ 28147-89 В 1989 году в СССР был разработан блочный шифр для использования в качестве государственного стандарта шифрования данных. Разработка была принята и зарегистрирована как ГОСТ 28147-89. Алгоритм был введен в действие в 1990 году. И хотя масштабы применения этого алгоритма шифрования до сих пор уточняются, начало его внедрения, в частности в банковской системе , уже положено. Алгоритм несколько медлителен, но обладает весьма высокой стойкостью. В общих чертах ГОСТ 28147 аналогичен DES. Блок-схема алгоритма ГОСТ отличается от блок-схемы DES-алгоритма лишь отсутствием начальной перестановки и число циклов шифрования (32 в ГОСТ против 16 в DES-алгоритме). Ключ алгоритма ГОСТ — это массив, состоящий из 32-мерных векторов X1, X2,…X8. Цикловой ключ i-го цикла Ki равен Xs, где ряду значений i от 1 до 32 соответствует следующий ряд значений s: 1,2,3,4,5,6,7,8,1,2,3,4,5,6,7,8,1,2,3,4,5,6,7,8,8,7,6,5,4,3,2,1. В шифре ГОСТ используется 256-битовый ключ и объем ключевого пространства составляет 2256. Ни на одной из существующих в настоящее время или предполагаемых к реализации в недалеком будущем компьютерной системе общего применения нельзя подобрать ключ за время, меньшее многих сотен лет. Российский стандарт проектировался с большим запасом, по стойкости он на много порядков превосходит американский стандарт DES с его реальным размером ключа в 56 бит о и объемом ключевого пространства всего 256( и неудивительно: его ключ длиной 32 байта (256 бит) вчетверо больше ключа DES. Необходимое же на перебор всех ключей время при этом возрастает не в четыре раза, а в 25632-8=25624, что выливается уже в астрономические цифры), чего явно недостаточно. В этой связи DES может представлять скорее исследовательский или научный, чем практический интерес.
3.6 Выводы В 3 главе были рассмотрены несколько различных методов шифрования. Алгоритмы 3.1-3.4 в «чистом виде» использовались раньше, а в наши дни они заложены практически в любой, даже самой сложной программе шифрования. Каждый из рассмотренных методов реализует собственный способ криптографической защиты информации и имеет собственные достоинства и недостатки, но их общей важнейшей характеристикой является стойкость. Под этим понимается минимальный объем зашифрованного текста, статистическим анализом которого можно вскрыть исходный текст. Таким образом, по стойкости шифра можно определить предельно допустимый объем информации, зашифрованной при использовании одного ключа. При выборе криптографического алгоритма для использования в конкретной разработке его стойкость является одним из определяющих факторов. Все современные криптосистемы спроектированы таким образом, чтобы не было пути вскрыть их более эффективным способом, чем полным перебором по всему ключевому пространству, т.е. по всем возможным значениям ключа. Ясно, что стойкость таких шифров определяется размером используемого в них ключа. Приведу оценки стойкости рассмотренных выше методов шифрования. Моноалфавитная подстановка является наименее стойким шифром, так как при ее использовании сохраняются все статистические закономерности исходного текста. Уже при длине в 20-30 символов указанные закономерности проявляются в такой степени, что, как правило, позволяет вскрыть исходный текст. Поэтому такое шифрование считается пригодным только для закрывания паролей, коротких сигнальных сообщений и отдельных знаков. Стойкость простой полиалфавитной подстановки (из подобных систем была рассмотрена подстановка по таблице Вижинера) оценивается значением 20n, где n — число различных алфавитов используемых для замены. При использовании таблицы Вижинера число различных алфавитов определяется числом букв в ключевом слове. Усложнение полиалфавитной подстановки существенно повышает ее стойкость. Стойкость гаммирования однозначно определяется длинной периода гаммы. В настоящее время реальным становится использование бесконечной гаммы, при использовании которой теоретически стойкость зашифрованного текста также будет бесконечной. Можно отметить, что для надежного закрытия больших массивов информации наиболее пригодны гаммирование и усложненные перестановки и подстановки. При использовании комбинированных методов шифрования стойкость шифра равна произведению стойкостей отдельных методов. Поэтому комбинированное шифрование является наиболее надежным способом криптографического закрытия. Именно такой метод был положен в основу работы всех известных в настоящее время шифрующих аппаратов. Алгоритм DES был утвержден еще долее 20 лет назад, однако за это время компьютеры сделали немыслимый скачок в скорости вычислений, и сейчас не так уж трудно сломать этот алгоритм путем полного перебора всех возможных вариантов ключей (а в DES используется всего 8-байтный ),что недавно казалось совершенно невозможным. ГОСТ 28147-89 был разработан еще спецслужбами Советского Союза, и он моложе DES всего на 10 лет; при разработке в него был заложен такой запас прочности, что данный ГОСТ является актуальным до сих пор. Рассмотренные значения стойкости шифров являются потенциальными величинами. Они могут быть реализованы при строгом соблюдении правил использования криптографических средств защиты. Основными из этих првил являются: сохранение в тайне ключей, исключения дублирования(т.е. повторное шифрование одного и того же отрывка текста с использованием тех же ключей) и достаточно частая смена ключей.
4. Программные шифраторы Иногда необходимо зашифровать отдельный файл, чтобы передать его кому-нибудь или просто скрыть от посторонних. Это может быть личная переписка, фотоальбом, результат собственного труда. Возможно, вам необходимо обмениваться конфиденциальной информацией по электронной почте с коллегами. Очевидно, что конфиденциальности можно добиться двумя способами: применяя аппаратные шифраторы или специальные программы для шифрования. О программах как раз и пойдет речь в этой главе. 4.1 РGР 6.5.3 (www.рgрi.com, www.рgр.com), freeware РGР (Рretty Good Рrivacy) — пожалуй , самый известный и самый надежный шифровальщик. Автор программы , Рhiliр Zimmermann, практически всю свою жизнь посвятил шифрованию данных. Эта программа представляет целый ряд весьма мощных утилит. В папке Автозагрузка появляется РGРtray, который загружает РGР и отвечает за управление остальными элементами программы. Первым делом после установки программы необходимо зайти в РGРkeys и создать пару ключей — публичный и приватный. Ключи можно создавать по алгоритмам DSS и RSA , причем первый предпочтительнее. Длина ключа может находиться в пределах 1024-4096 бит. При создании ключей вам предстоит ввести строку символов, которой вы будете пользоваться в дальнейшем при расшифровке данных. Специалисты рекомендуют вводить строку из 100-200 символов, но учтите, что программа не работает с буфером обмена, так что эту последовательность вам предстоит вводить вручную каждый раз, когда вы будете расшифровывать какой-либо файл. Если вы забудете эту строку или испортите свой приватный ключ, то все, что было зашифровано предыдущим ключом, будет безвозвратно утеряно. Работает это все следующим образом: вы обмениваетесь публичными ключами со своими друзьями, поле чего можно переписываться по e-mail. Имея ваш публичный ключ, получатель сможет открыть письмо, но уже своим приватным кодом. При создании закодированного файла необходимо указать тех, кто сможет открыть этот файл. В появившееся окошко необходимо внести свой ключ, а так же ключи тех, кто также должен иметь доступ к шифруемой информации. Из программы РGРtools можно зашифровывать (шифрование осуществляется при помощи алгоритмов CAST, IDEA, и Triрe DES), подписывать, расшифровывать файлы, вызывать РGРkeys и Wiрe. Утилита Wiрe выполняет удаление файлов без возможности восстановления. 4.2 BestCryрt 6.04(httр://www.jetico.com) , freeware Данная программа финской фирмы Jetico обеспечивает безопасность данных при помощи создания виртуальных контейнеров. Под контейнерами понимается зашифрованный файл, хранящийся на логическом диске, который подключается к системе как еще один логический диск. При работе с программой первым делом придется создать контейнер. Для этого требуется указать имя файла, в котором будет содержаться информация, его размер, описание и логический диск, на котором он будет располагаться, а также алгоритм шифрования. Программа предоставляет на выбор четыре алгоритма: BLOWFISH, DES, ГОСТ 28147-89, TWOFISH. Все ключи, кроме DES, имеют длину 256 бит, длина ключа DES — 64 бита. Сегодня этого уже откровенно недостаточно для обеспечения по-настоящему высокого уровня конфиденциальности. Эти ключи могут остановить хакера, но если кому-то действительно понадобиться получить доступ к вашей информации , то он его получит. Для открытия диска можно установить режим «только для чтения», что запретит любой программе записывать на него информацию. Как обычно, можно попросить программу подключить диск каждый раз при загрузке и отключать по истечении какого-то времени или по комбинации горячих клавиш. При этом виртуальный диск может обслуживаться программами Norton Utilites и Nuts & Bolts как обычный логический диск. Вместе с программой BestCryрt устанавливается freeware утилита BCWiрe. Она предназначена для того, чтобы после удаления каких-либо файлов с жесткого диска их невозможно было восстановить. В программе есть еще одна замечательная утилита под названием BestCrytр Service Manager. Она предназначена для того, чтобы вы могли добавлять нужные и удалять ненужные алгоритмы шифрования и модули генерации ключей. Но это нужно лишь для тех, кто не доверяет алгоритму шифрования DES. Так что, если у вас есть другой алгоритм, то можно смело удалять старые алгоритмы шифрования и удалять новые. 4.3 Плюсы и минусы программных шифраторов.
Программы РGР и BesyCryрt во всем мире зарекомендовали себя как надежные , безошибочно реализующие криптографические алгоритмы. Но кроме этих программ существует масса других, менее известных, зачастую никем не проверяемых на надежность и стойкость от взлома, и это обстоятельство порождает недоверие к программам, ведь «программа, она и есть программа»: в коде программ нередко допускаются грубые ошибки, которые обнаруживаются лишь только после их поступления в продажу или свободное распространение. Хакерам значительно легче взломать программу, даже имея доступ к вашему компьютеру через сеть. Наконец, случается даже такое, что разработчики программ специально добавляют в программы такие функции (наличие которых, разумеется, не разглашается) , чтобы иметь беспрепятственный доступ к информации, зашифрованной даже на секретном ключе, который пользователи никому и никогда не отдали бы. Еще одно обстоятельство, явно не в пользу программных средств,— это их существенно меньшее быстродействие. Например, при аппаратной реализации национального стандарта (ГОСТа) время на обработку одного блока составляет примерно 5 мкс, при программной реализации, в среднем, 50-100 мкс. Поэтому при больших объемах защищаемой информации аппаратные методы представляются более предпочтительными. Программные методы, кроме того, могут быть реализованы только при наличии в составе компьютера мощного процессора, тогда как шифрующие аппараты с помощью стандартных интерфейсов могут подключаться практически к любым системам. Но есть также и плюсы. Один из них — это цена(а иногда и ее отсутствие) программного шифратора — зачастую перевешивает все минусы, т.к. аппаратные шифраторы стоят на несколько порядков дороже. Также достоинством программных методов реализации криптографической защиты является их гибкость, т.е. возможность быстрого изменения алгоритма шифрования. При этом можно предварительно создать пакет шифрования, содержащий программы для различных методов шифрования и их комбинаций. Смена программ будет производиться оперативно в процессе функционирования системы. 5. Аппаратные шифраторы Известно, что алгоритмы защиты информации(прежде всего шифрования) можно реализовать как программным, так и аппаратным методом. Рассмотрим аппаратные шифраторы: почему они считаются более надежными и обеспечивающими лучшую защиту. 5.1 Что такое аппаратный шифратор Аппаратный шифратор по виду и по сути представляет собой обычное компьютерное «железо», чаще всего это плата расширения, вставляемая в разъем ISA или РCI системной платы ПК. Бывают и другие варианты, например в виде USB-ключа с криптографическими функциями, но мы здесь рассмотрим классический вариант – шифратор для шины РCI. Использовать целую плату только для функций шифрования – непозволительная роскошь, поэтому производители аппаратных шифраторов обычно стараются насытить их различными дополнительными возможностями, среди которых:
Плата со всеми перечисленными возможностями называется устройством криптографической защиты данных – УКЗД. Шифратор, выполняющий контроль входа на ПК и проверяющий целостность операционной системы, называется также «электронным замком». Ясно, что аналогия неполная – обычные замки существенно уступают этим интеллектуальным устройствам. Понятно, что последним не обойтись без программного обеспечения – необходима утилита, с помощью которой формируются ключи для пользователей и ведется их список для распознавания «свой/чужой». Кроме того, требуется приложение для выбора важных файлов и расчета их контрольных сумм. Эти программы обычно доступны только администратору по безопасности, который должен предварительно настроить все УКЗД для пользователей, а в случае возникновения проблем разбираться в их причинах. Вообще, поставив на свой компьютер УКЗД , вы будете приятно удивлены уже при следующей загрузке : устройство проявится через несколько секунд после включения, как минимум сообщив о себе и попросив ключи. Шифратор всегда перехватывает управление при загрузке ПК (когда BIOS компьютера поочередно опрашивает все вставленное в него «железо»), после чего не так-то легко получить его обратно. УКЗД позволит продолжить загрузку только после всех своих проверок. Кстати, если ПК по какой-либо причине не отдаст управление шифратору, тот, немного подождав, все равно его заблокирует. И это также прибавит работы администратору по безопасности. 5.2 Структура шифраторов Рассмотрим теперь, из чего должно состоять УКЗД, чтобы выполнять эти непростые функции : 1. Блок управления – основной модуль шифратора, который «заведует» работой всех остальных. Обычно реализуется на базе микроконтроллера, сейчас их предлагается немало и можно выбрать подходящий. Главное – быстродействие и достаточное количество внутренних ресурсов, а также внешних портов для подключения всех необходимых модулей. 2. Контроллер системной шины ПК( например, РCI). Через него осуществляется основной обмен данными между УКЗД и компьютером. 3. Энергонезависимое запоминающее устройство(ЗУ) – обычно на базе микросхем флэш-памяти. Оно должно быть достаточно емким (несколько мегабайт) и допускать большое число циклов записи. Здесь размещается программное обеспечение микроконтроллера, которое выполняется при инициализации устройства( т.е. когда шифратор перехватывает управление при загрузке компьютера). 4. Память журнала. Тоже представляет собой энергонезависимое ЗУ; это действительно еще одна флэш-микросхема: во избежание возможных коллизий память для программ и для журнала не должны объединяться. 5. Шифропроцессор (или несколько) – это специализированная микросхема или микросхема программируемой логики РLD – Рrogrammable Logic Device. Собственно, он и шифрует данные. Подробнее об этом немного позже. 6. Генератор случайных чисел. Обычно представляет собой некое устройство, дающее статически случайный шум. Это может быть шумовой диод. А перед использованием по специальным правилам белый шум преобразуется в цифровую форму. 7. Блок ввода ключевой информации. Обеспечивает защищенный прием ключей с ключевого носителя, через него также вводится информация о пользователе для решения вопроса «свой/чужой». 8. Блок коммутаторов. Помимо перечисленных выше основных функций, УКЗД может по велению администратора безопасности отключать возможность работы со внешними устройствами: дисководами, CD-ROM, параллельными и последовательными портами, шиной USB и т.д. Если пользователь работает с настолько важной информацией, что ее нельзя ни печатать, ни копировать, УКЗД при входе на компьютер заблокирует все внешние устройства, включая даже сетевую карту. 5.3 Шифропроцессор Шифрование в УКЗД должно выполняться так, чтобы посторонним невозможно было узнать ключи и каким-либо образом повлиять на реализуемые алгоритмы. Иногда бывает полезно засекретить и правила преобразования ключей. Поэтому шифропроцессор логически состоит из нескольких структурных единиц : 1. Вычислитель – набор регистров , сумматоров, блоков подстановки и т.п., связанных между собой шинами передачи данных. Собственно, он и выполняет криптографические действия, причем должен делать это максимально быстро. На вход вычислитель получает открытые данные, которые следует зашифровать, и ключ шифрования, который, как известно, является случайным числом. А шифрование – это сложное математическое преобразование, поэтому его результат тоже очень похож на выбор случайных величин (попробуйте сжать зашифрованный файл каким-нибудь архиватором – при использовании серьезного алгоритма защиты это будет невозможно). 2. Блок управления. На самом деле это аппаратно реализованная программа, управляющая вычислителем. Если по какой-нибудь причине программа измениться, его работа начнет давать сбой. Это чревато, например, появлением данных в открытом виде вместо зашифрованного (хотя это крайний случай; более вероятно получение такой шифровки, которую ни вы сами, ни кто-либо еще уже не расшифрует никогда). Поэтому программа должна не только надежно храниться и устойчиво функционировать, но и регулярно проверять сама себя. Кстати, внешний блок управления(описанный выше) тоже периодически посылает ей контрольные задачи. На практике для большей уверенности ставят два шифропроцессора. Которые постоянно сравнивают свои результаты (если они не совпадают, шифрование придется повторить). Все это требуется для обеспечения неизменности алгоритма шифрования. 3. Буфер ввода-вывода необходим для повышения производительности устройства: пока шифруется первый блок данных, загружается следующий и т.д. То же самое происходит и на выходе. Такая конвейерная передача данных серьезно увеличивает скорость шифрования.
5.4 Быстродействие
Кстати, о скорости. Разумеется любому пользователю ПК желательно, чтобы присутствие в его компьютере УКЗД не отражалось на удобстве работы( конечно, если человек выполняет только разрешенные действия). Но, естественно шифрование данных отнимает некоторое время, причем раньше приходилось просто ждать, когда закончится шифрование, например, локального диска. В Windows позволялось заняться чем-то параллельно, но еще несколько лет назад шифраторы отвлекали на себя значительные ресурсы процессора, поэтому одновременно без заметного торможения можно было только раскладывать пасьянс. Современные УКЗД шифруют данные без помощи центрального процессора ПК. В шифратор лишь передается команда, а затем он сам извлекает данные из ОЗУ компьютера, шифрует их и кладет в указанное место. Процессор же при этом вполне может выполнять другие задачи. Исследования современных УКЗД показывают, что во время их работы производительность ПК практически не снижается. Возможно применение и нескольких УКЗД на одном компьютере, например на криптографическом маршрутизаторе: один шифрует отправляемую в Интернет информацию, второй принимаемую. Производительность такой системы не вносит задержек в работу локальной сети Fast Ethernet (100 Мбит/с). Потоковая скорость обработки данных – это один из основных параметров, по которым оценивают аппаратные шифраторы. Она изменяется в мегабайтах в секунду и зависит прежде всего от сложности алгоритма шифрования. Проще всего оценить ее по формуле: V = F x K / n,
где F - тактовая частота, K – размер стандартного блока шифрования, n - число тактов, требующееся на преобразование стандартного блока. Например, отечественный алгоритм ГОСТ 28147-89 имеет быстродействие 32 такта на 8-байтовый блок, а значит, теоретически скорость шифрования должна стремиться к 25 Мбайт/с при тактовой частоте 100 Мгц. Однако скорости аппаратной реализации этого алгоритма - 8-9 Мбайт/с. Ограничения являются чисто технологическими: отсутствие необходимого уровня разработок или элементной базы. Хотелось бы отметить, что программная реализация криптоГОСТа на ПК при тактовой частоте процессора 1 Ггц достигает 12-16 Мбайт/с. Хотя в этом случае аппаратная скорость шифрования теоретически могла бы быть около 250 Мбайт/с. 5.5 Шифраторы для защиты сетей Для защиты передаваемой в Сеть информации можно использовать как обычный шифратор, так и проходной (ПШ), который , помимо всего вышеперечисленного, является также полноценным сетевым адаптером Ethernet (т.е. шифратор и сетевой адаптер выполнены в качестве одной РCI-платы). Его достоинства в том, что он полностью контролирует весь обмен данными в по сети , а обойти его (как изнутри, так и снаружи) просто невозможно. ПШ являются достаточно сложными устройствами, так как они вместо центрального процессора компьютера вынуждены выполнять дополнительные функции по обработке информации. Обычно в ПШ ставят два шифропроцессора: один из них отвечает за шифрование отправляемых данных, а другой расшифровывает принимаемые. Такое устройство может хранить в себе несколько сотен ключей, чтобы каждый блок информации был зашифрован на своем, отличном от других. Это делает все ключи абсолютно недоступными злоумышленникам, но несколько затрудняет процесс управления ими. Технические трудности в течение определенного времени не позволяли разрабатывать надежные и быстродействующие ПШ. Однако с появлением на рынке дорогих, но очень качественных микросхем РLD решились многие проблемы создания сложных многофункциональных устройств, что стимулировало выпуск первых отечественных проходных шифраторов. Кстати, ПШ допускает и другое применение: он может стоять в разрыве между жестким диском компьютера и его контроллером. В этом случае все, что пишется на HDD, будет автоматически шифроваться. Разработчики аппаратных шифраторов и программного обеспечения для них, полагают, что уже скоро будут созданы УКЗД, осуществляющие управление не только работой дисководов, CD-ROM и портов ввода-вывода, но и всеми ресурсами ПК, т.е. компьютеру останется только передавать данные между процессором и оперативной памятью и обрабатывать их, все остальное сделает само УКЗД. Ясно, что абсолютному большинству пользователей это не потребуется. Но там, где ведется работа с важными и конфиденциальными документами, информация должна быть серьезна защищена. 5.6 Загрузка ключей шифрования Есть еще одна особенность, касающаяся безопасности: чтобы у злоумышленника не было совсем никаких шансов, необходимо ключи загружать в шифратор, минуя оперативную память компьютера, где их теоретически можно перехватить и даже подменить. Для этого УКЗД дополнительно содержит порты ввода-вывода, например COM или USB, к которым напрямую подключаются разные устройства чтения ключевых носителей. Это могут быть любые смарт-карты, специальные USB-ключи или электронные таблетки Touch Memory (их очень часто используют, например, для домофонов). Помимо прямого ввода ключей в УКЗД, многие из таких носителей обеспечивают и их надежное хранение – даже украв USB-ключ, без специального кода доступа к его содержимому не подобраться. 5.7 Как программы используют шифратор Установленный на компьютер шифратор может использоваться сразу несколькими программами, например программой прозрачного шифрования, «прогоняющей» данные сквозь шифратор, и программой электронной подписи, использующей для вычисления подписи получаемые от шифратора случайные числа. Для того чтобы не возникало коллизий при одновременном обращении к шифратору разных программ (представим, что одна из них шифрует логический диск, а вторая на другом ключе расшифровывает файл: если не управлять очередью выполнения шифратором их требований, получится абракадабра ), ставят специальное программное обеспечение управления ими( рис № ). Такое ПО выдает команды через драйвер шифратора и передает последнему данные, следя за тем , чтобы потоки информации от разных источников не пересекались, а также за тем, чтобы в шифраторе всегда находились нужные ключи. Таким образом УКЗД выполняет два принципиально разных вида команд: · перед загрузкой операционной системы — команды, зашитые в память шифратора. Они осуществляют все необходимые проверки и устанавливают требуемый уровень безопасности — допустим, отключают внешние устройства. · после загрузки, например, Windows — команды, поступающие через модуль управления шифраторами: шифровать данные, перезагружать ключи, вычислять случайные числа и т.д. Такое разделение необходимо из соображений безопасности — после выполнения команд первого блока, которые нельзя обойти, злоумышленник уже не сможет сделать что-либо запрещенное. Еще одно назначение ПО управления шифраторами — обеспечить возможность замены одного шифратора на другой (скажем на более «продвинутый» или быстрый), не меняя программного обеспечения. Это происходит аналогично, например, смене сетевой карты: шифратор поставляется вместе с драйвером, который позволяет программам выполнять стандартный набор функций. Те же программы шифрования и не заметят такой подмены, но будут работать в несколько раз быстрее. Таким же образом можно заменить аппаратный шифратор на программный. Для этого программный шифратор выполняют обычно в виде драйвера, предоставляющего тот же набор функций. Впрочем такое ПО нужно не всем шифраторам — в частности, ПШ , стоящий по дороге к HDD, достаточно настроить один раз, после чего о нем можно просто забыть. 5.8 Аппаратный шифратор «М-506» Рассмотрим в качестве примера один из отечественных аппаратных шифраторов производства ЗАО НИП «Информзащита» СКЗИ(Система криптографической защиты информации) М-506. М-506 представляет собой программно-аппаратный комплекс криптографической защиты информации, реализующий алгоритм шифрования данных по ГОСТ 28147-89. В этом комплексном средстве защиты информации возможности аппаратного шифратора дополнены широким спектром других функций информационной безопасности СКЗИ М-506 состоит из следующих компонентов · сервер безопасности. Установленный на выделенном компьютере или контроллере домена, он собирает и обрабатывает информацию о состоянии всех защищаемых рабочих станций и хранит данные о настройках всей системы защиты; · средство защиты информации от несанкционированного доступа (СЗИ) Secret Net NT 4.0. Данным СЗИ оснащаются все рабочие станции, на которых устанавливается также электронный замок «Соболь». Тем самым защищаются ресурсы компьютера и обеспечивается регистрация входа пользователя в систему, предъявления незарегистрированного идентификатора, введения неправильного пароля, превышения числа попыток входа в систему;· подсистема управления. Этот программный компонент устанавливается на рабочем месте администратора системы и позволяет ему конфигурировать СЗИ Secret Net (а также управлять встроенными возможностями операционной системы), контролировать все события, влияющие на защищенность системы, и реагировать на них в режиме реального времени и в терминах реальной предметной области (сотрудник, задача, подразделение, помещение);· криптоменеджер. Он устанавливается на автономном компьютере и выполняет следующие функции: создание ключей шифрования, изготовление ключевых дискет, ведение базы созданных ключей на жестком диске компьютера.Реализованная в СКЗИ М-506 клиент-серверная архитектура позволяет сосредоточить в одном месте функции управления безопасностью корпоративной сети и повысить живучесть всей системы защиты: даже выход из строя сервера безопасности не приводит к снижению уровня защищенности. Развитые возможности защиты от несанкционированного доступа (НСД) интегрированы с криптографическими механизмами: электронной цифровой подписью, «прозрачным» шифрованием файлов и шифрованием сетевого трафика.Для легального пользователя, которому предоставлено право работать с зашифрованным сетевым ресурсом, данный ресурс предстает в своем обычном, незашифрованном виде («прозрачный» режим криптографического преобразования). Но это не значит, что конфиденциальная информация передается по сети в открытом виде: сетевой трафик шифруется, а расшифровывание происходит только на рабочей станции пользователя.Отметим, что все компоненты СКЗИ М-506 функционируют в замкнутой программной среде, недоступной воздействию вирусов. О высоком качестве данного криптосредства позволяет судить тот факт, что оно сертифицировано ФАПСИ(Федеральное агентство правительственной связи и информации) для защиты информации, содержащей сведения, составляющие государственную тайну.
5.9 Проблемы применения аппаратных шифраторов Что же мешает широкому применению аппаратных шифраторов — или, выражаясь точнее, обусловливает их меньшую распространенность по сравнению с криптографическим ПО? Прежде всего цена — в любом случае стоимость аппаратного шифратора будет выше, чем чисто программного решения. Но для организаций, всерьез заботящихся об информационной безопасности, использование аппаратных шифраторов в силу перечисленных выше причин безусловно желательно — во всяком случае, для защиты наиболее важных ресурсов. Производители аппаратных криптографических средств постоянно дополняют свои продукты новыми возможностями, и по соотношению цена/качество (если понимать под последним прежде всего функциональность) аппаратные шифраторы выглядят более предпочтительно, если их сравнивать с соответствующим ПО. Зачастую на выбор шифрующего средства (программного или аппаратного) влияет и чисто психологический эффект. Кажется, гораздо проще переписать из Интернета одну из бесплатных или условно-бесплатных программ шифрования и активно ее использовать, в том числе для защиты информационного обмена со сторонними организациями, в то время как закупка аппаратного шифратора представляется началом долгого процесса получения всевозможных лицензий, сбора согласующих виз и т. п. Иными словами, на первый план выходят даже не денежные соображения, а попытки сэкономить время и облегчить себе жизнь. Замечу, однако, что в нормативных актах, регулирующих практику применения криптографических (шифровальных) средств, не проводится различий между программными и аппаратными средствами: оформлять использование криптосредств надо в любом случае. Другое дело, что документы эти могут быть разными — или лицензия ФАПСИ (ФАПСИ - Федеральное агентство правительственной связи и информации) . Ведомство РФ, в числе прочего занимающееся разработкой криптографических алгоритмов и отвечающее за сертификацию СКЗИ (Средства криптографической защиты информации) в части криптографических функций на использование криптосредств, или договор с организацией, имеющей необходимую лицензию ФАПСИ на предоставление услуг по криптографической защите конфиденциальной информации. Поэтому переход к применению аппаратных шифраторов можно совместить с оформлением упомянутых выше документов.
6. Советы и рекомендации Рассмотрев в двух предыдущих главах программные и аппаратные шифраторы, сравнив их достоинства и недостатки, каждый скорее всего задастся вопросом: «Что же все таки лучше, программная реализация или аппаратная?». С одной стороны надежность, быстродействие но высокая цена, а с другой доступность, простота в настройке и управлении, но значительно меньшая защищенность от взлома. К решению этого вопроса нужно, прежде всего, подходить, исходя из тех функции, которые шифратор будет выполнять. Если вам нужно защитить какие-то файлы от родственников или коллег по работе, файлы, которые не представляют материальной ценности и которые вряд ли заинтересуют профессионального взломщика (например, личная переписка, дневник и т.п.), то приобретение программного шифратора , как с материальной точки зрения , так и с точки зрения необходимого уровня защищенности, является наиболее выигрышным для вас. Что можно порекомендовать тем, кто решил установить программный шифратор? Во-первых пользоваться надо только проверенными программами, которые успешно применяются несколько лет и зарекомендовали себя как надежные средства, хорошо противостоящие взлому, и которые, естественно, написаны без ошибок. Во-вторых , как показала практика, не следует приобретать версии программ, оканчивающиеся на «0»(2.0,3.0,4.0 и т.д.), т.к. именно в них чаще всего встречаются т.н. «дыры», которые может обнаружить кто-либо и использовать в собственных целях, и именно в этих версиях чаще встречаются ошибки, ведущие не только к ухудшению работы программ, но и, иногда , вообще к их неправильной работе(может, например, случиться так, что зашифровав какой-либо файл вы потом расшифруете с ошибками или вообще не расшифруете). Это объясняется тем, что , смена версии программы с 2.2 или 2.6 на 3.0 подразумевает по собой значительные изменения, выражающиеся в добавлении новых или расширении старых функций; а т.к. их вряд ли кто-то тщательно проверял на возможность отказа или взлома ( самую тщательную проверку, как правило, устраивают именно пользователи, подкладывая программе какую-нибудь «свинью», дабы убедиться в надежности программы),то жертвой такой халатности производителя можете стать вы. В-третьих нужно бдительно охранять собственные, секретные, ключи, чтобы они не стали достоянием общественности, а то от такой защиты информации будет мало толка. Если же вы владеете или работаете со строго секретной или конфиденциальной информацией (например, с информацией , являющейся коммерческой тайной), то приобретение аппаратного шифратора — это для вас. Рекомендовать можно следующее: Прежде всего — готовности довести эту покупку до конца, ведь ответственным за информационную безопасность следует помнить, что именно они окажутся крайними в случае утечки конфиденциальной информации или ее разглашения, а ущерб, который наносят компаниям реализованные угрозы информационной безопасности, как правило, многократно превышает затраты на оснащение средствами защиты, в том числе на закупку СКЗИ. Очевидно и то обстоятельство, что приобретение СКЗИ должно быть частью общей корпоративной политики в отношении информационной безопасности. Отсутствие продуманной стратегии, хаотичность действий способны превратить систему защиты информации в сшитый из дорогих лоскутов тришкин кафтан. Наконец, следует понимать, что покупкой аппаратных СКЗИ у пользователей (а также администраторов) начинается в буквальном смысле новая жизнь, где нет места лени и беззаботности. Аппаратный шифратор из эффективного средства защиты информации может превратиться в не менее эффективное средство ее гарантированного уничтожения: скажем, потеря или сбой единственного носителя с ключами означает, что вы лишились зашифрованной информации навсегда. Поэтому не надо скупиться на приобретение более надежных по сравнению с дискетами носителей криптографических ключей; не стоит забывать, как важно делать копии ключевых носителей и убирать их в безопасное хранилище вместе с распечаткой пароля, а сами пароли нужно менять регулярно, используя многосимвольные комбинации с неповторяющимся набором знаков. Нельзя не заметить, что производители и поставщики аппаратных шифраторов по-прежнему ориентируются прежде всего на достаточно состоятельных заказчиков — в большинстве своем представителей государственных структур, которые должны выполнять весьма жесткие требования по защите информации и потому охотно приобретают криптографическое «железо». За бортом при такой постановке вопроса остаются потребности гораздо более многочисленных покупателей — компаний среднего и малого бизнеса. Эти компании, с одной стороны, дозрели до понимания необходимости защиты информации (в том числе применения криптографии), но с другой — определенно не в состоянии расходовать тысячи долларов на закупку аппаратных СКЗИ. Достойной альтернативой аппаратным СКЗИ на этом новом сегменте рынка могли бы стать аппаратные мини-шифраторы — брелоки для шины USB. Подобные решения уже появились в нашей стране, и как знать — может быть когда-нибудь они вытеснят с рынка ставших уже привычными «большие» СКЗИ. 7. Заключение Итак, в этой работе был сделан обзор наиболее распространенных в настоящее время методов криптографической защиты информации и способов ее реализации. Выбор для конкретных систем должен быть основан на глубоком анализе слабых и сильных сторон тех или иных методов защиты. Обоснованный выбор той или иной системы защиты в общем-то должен опираться на какие-то критерии эффективности. К сожалению, до сих пор не разработаны подходящие методики оценки эффективности криптографических систем. Наиболее простой критерий такой эффективности - вероятность раскрытия ключа или мощность множества ключей (М). По сути это то же самое, что и криптостойкость. Для ее численной оценки можно использовать также и сложность раскрытия шифра путем перебора всех ключей. Однако, этот критерий не учитывает других важных требований к криптосистемам:
Поэтому желательно конечно использование некоторых интегральных показателей, учитывающих указанные факторы. Но в любом случае выбранный комплекс криптографических методов должен сочетать как удобство, гибкость и оперативность использования, так и надежную защиту от злоумышленников циркулирующей в системе информации. Литература 1. Партыка Т.Л., Попов И.И. Информационная безопасность. Учебное пособие для студентов учреждений среднего профессионального образования.— М.: ФОРУМ: ИНФРА-М, 2004. 2. Крысин А.В. Информационная безопасность. Практическое руководство — М.: СПАРРК, К.:ВЕК+,2003. 3. Тарасюк М.В. Защищенные информационные технологии. Проектирование и применение — М.: СОЛОН-Пресс, 2004. 4. Лукашов И. В. Криптография? Железно! //Журнал «Мир ПК». 2003. № 3. 5. Панасенко С.П., Защита информации в компьютерных сетях // Журнал «Мир ПК» 2002 № 2. 6. Бунин О. Занимательное шифрование // Журнал «Мир ПК» 2003 №7. 7. Панасенко С. П., Ракитин В.В. Аппаратные шифраторы // Журнал «Мир ПК». 2002. № 8. 8. Панасенко С. П. Чтобы понять язык криптографов // Журнал «Мир ПК». 2002. № 5. 9. Панасенко С. П. Чтобы понять язык криптографов // Журнал «Мир ПК». 2002. № 6 .
Страницы: 1, 2 |
|
© 2000 |
|