Проблема создания отечественных криптографических систем
27 мая 2009
Рубрика: Новости. Тэги:
Автор: А. Суванов.

То, что информация имеет ценность, люди осознали очень давно, — недаром переписка сильных мира сего издавна была объектом пристального внимания их недругов и друзей. Тогда-то и возникла задача защиты этой переписки от чрезмерно любопытных глаз. Люди пытались использовать для решения этой задачи самые разнообразные методы, и одним из них была тайнопись — умение составлять сообщения таким образом, чтобы его смысл был недоступен никому, кроме посвященных в тайну. Есть свидетельства тому, что искусство тайнописи зародилось еще в доантичные времена.

На протяжении всей своей многовековой истории, вплоть до совсем недавнего времени, это искусство служило немногим, в основном верхушке общества, не выходя за пределы резиденций глав государств, посольств, разведывательных миссий. И лишь несколько десятилетий назад все изменилось коренным образом: информация приобрела самостоятельную коммерческую ценность и стала широко распространенным, практически рядовым товаром. Информацию производят, хранят, транспортируют, продают и покупают, а значит — воруют и подделывают и, следовательно, ее необходимо защищать. Современное общество все в большей степени становится информационно-обусловленным, успех любого вида деятельности все сильней зависит от обладания определенными сведениями и от отсутствия их у конкурентов. И чем сильней проявляется указанный эффект, тем больше потенциальные убытки от злоупотреблений в информационной сфере и тем больше потребность в защите информации. Одним словом, возникновение индустрии обработки информации привело к возникновению индустрии средств защиты информации.

Среди всего спектра методов защиты данных от нежелательного доступа особое место занимают криптографические методы. В отличие от других методов они опираются лишь на свойства самой информации и не используют свойства ее материальных носителей, особенности узлов ее обработки, передачи и хранения. Образно говоря, криптографические методы строят барьер между защищаемой информацией и реальным или потенциальным злоумышленником, пытающимся узнать эту информацию. Под криптографической защитой в первую очередь подразумевается шифрование данных. Раньше, когда эта операция выполнялась человеком вручную или с использованием различных приспособлений, и при посольствах содержались большие отделы шифровальщиков, развитие криптографии сдерживалось проблемой реализации шифров, ведь придумать можно было все, что угодно, но как это реализовать…

Появление цифровых электронно-вычислительных машин, приведшее, в конечном итоге, к созданию мощной информационной индустрии, изменило все коренным образом и в этой сфере. С одной стороны, взломщики шифров получили в свои руки чрезвычайно мощное орудие, с другой стороны, барьер сложности реализации исчез, и для создателей шифров открылись практически безграничные перспективы. Все это определило стремительный прогресс криптографии в последние десятилетия.

В современном мире для обеспечения информационной безопасности и защиты информации в информационно-телекоммуникационных сетях многие зарубежные страны используют свои национальные стандарты шифрования данных.

Важной задачей в обеспечении гарантированной безопасности информации в информационных системах (ИС) является разработка и использование стандартных алгоритмов шифрования данных. Первым среди подобных стандартов стал американский DES, представляющий собой последовательное использование замен и перестановок. В настоящее время все чаще говорят о неоправданной сложности и невысокой криптостойкости этого криптоалгоритма. На практике приходится использовать его модификации.

Более эффективным является отечественный стандарт шифрования данных.
Центром научно-технических и маркетинговых исследований (ЦНТМИ) Unicon.uz были разработаны государственные стандарты O‘zDSt 1092:2005 «Информационная технология. Криптографическая защита информации. Процессы формирования и проверки ЭЦП» и O‘zDSt 1105:2006 «Информационная технология. Криптографическая защита информации. Алгоритм шифрования данных», которые были утверждены и введены 1 октября 2006 г. в действие постановлениями Узбекского агентства стандартизации, метрологии и сертификации. Они были разработаны специально для того, чтобы на их основе реализовывались криптографические модули, необходимые для различных криптографических задач.

Одну из таких криптографических задач мы поставили перед собой — создание криптографической системы на основе .Net-технологий.

Среда .Net выбрана не случайно. Технология .Net считается одной из новых технологий программирования, и она стремительно развивается. Все больше компаний, занимающихся разработкой программного обеспечения, выбирают именно .Net-технологию, так как в современном мире трудно представить обмен информацией без сети, а технология .Net легко справляется с этой задачей. Значит, все больше появляется продуктов, разработанных в среде разработки .Net.

Для реализации криптомодулей мы выбрали .Net-технологии для того, чтобы они могли легко интегрироваться в системы, которые разрабатывались в среде разработки .Net. Пока, как нам известно, еще не существует криптомодулей, основанных на отечественных криптоалгоритмах, написанных на языке C#.

Криптографическая система, реализованная нами, состоит из 2 криптомодулей, O‘zDst 1105:2006 и ЭЦП O‘zDst 1092:2005.

Криптомодуль O‘zDst 1105:2006 реализован строго по стандарту O‘zDst 1105:2006, не считая некоторую оптимизацию, которая не меняет результата шифрования (это показывает тестирование), а только увеличивает скорость шифрования, не уменьшая при этом надежность криптоалгоритма.

Основой данной оптимизации является таблица хранения этапных ключей. Дело в том, что в криптоалгоритме этапные ключи генерируются в каждом блоке шифртекста. Значит, этапных ключей будет сгенерировано столько раз, сколько блоков у шифртекста. Чем больше объем у информации, тем медленнее будет работать алгоритм. А этапные ключи, генерирумые в каждом блоке, сначала равны друг другу на определенном этапе. Это означает, что перед тем, как начать разбиение шифртекста на блоки, можно сгенерировать необходимое количество этапных ключей и при операции шифрования использовать уже готовые этапные ключи на определенном этапе. Именно на этом и основана наша оптимизация. Скорость шифрования возросла во сто раз.

При этом наш метод оптимизации не меняет последовательности использования всех необходимых для шифрования или расшифрования данных, а только управляет некоторыми из них.

Криптомодуль реализован на битовой основе. Это означает, что все операции шифрования производятся с битами. Это показатель хорошей скорости криптомодуля.

Криптомодуль ЭЦП O‘zDst 1092:2005 реализован на основе отечественного стандарта O‘zDst 1092:2005. Он также работает на битовом уровне.

Для реализации криптомодуля ЭЦП мы использовали зарубежную хеш-функцию SHA 256. Она признана в мире как одна из надежных и быстрых функций хеширования.

Для генерации больших случайных или псевдослучайных чисел, а также для математических операций мы использовали класс BigInteger, написанный только для .Net-разработчиков. Этот класс может хранить числа любой величины, а также производить над ними простейшие математические операции.

В этом криптомодуле мы тоже разработали оптимизацию. Очень сложно сгенерировать простое большое число размером выше 256 бит, а потом найти для него случайное простое число q, чтобы они были взаимнопростыми. Это требует немало ресурсов и времени.

Мы решили эту проблему следующим образом — изменили порядок генерации чисел.
1) Сначала создается число i, которое равно девяти в пятнадцатой степени.
2) Потом генерируется большое простое число q, равное 256 битам.
3) Далее число q умножается на i и увеличивается на единицу.
4) Вычисленное число проверяется на простату, и в случае положительного результата называется p, если нет, цикл будет повторяться до тех пор, пока не найдется число p. Обычно количество циклов составляет от 1-5 раз.

Криптомодуль работает правильно, оптимизации, придуманные нами, уже применяются. Криптомодуль ЭЦП применяется компанией «OOO BAIK Technologies» как модуль электронно-цифровой подписи в своем документообороте «GERMES» уже более года, и пока не было обнаружено никаких сбоев или ошибок в криптомодуле, разработанном нами.

Orphus system
Подписывайтесь на канал infoCOM.UZ в Telegram, чтобы первыми узнавать об ИКТ новостях Узбекистана
В Telegram
В Одноклассники
ВКонтакте