О журнале
Рекомендации
Российские государственные стандарты шифрования и цифровой электронной подписи и их применение в защищенных автоматизированных системах
Гаврилов В.Е.
___________________________
В.Е. Гаврилов
Российский стандарт шифрования [1] разрабатывался и был принят в 1989г. как средство криптографической защиты в сетях передачи данных, однако, наличие различных режимов шифрования и простота реализации алгоритма позволяют расширить сферу его применения и использовать при создании современных защищенных автоматизированных систем. Алгоритм шифрования ГОСТ 28147-89 по своей структуре аналогичен широко распространенному стандарту криптографического преобразования DES. При этом существенно (до 256 бит против 56) увеличена длина ключа, а также допускаются произвольные узлы замены (перемешивающее преобразование). Заметим, что, по мнению группы авторов [11], для обеспечения коммерческой безопасности в симметричных шифрах (т. е. в шифрах, у которых ключи зашифрования и расшифрования совпадают) длина ключа должна быть не менее 90 бит. Действительно, используя программируемые логические матрицы ($400) можно дешифровать криптосистему с длиной ключа 40 бит (максимально допустимая длина ключа в шифрсистемах, предназначенных для поставки на экспорт по законодательству США) за 5 часов. Использование произвольных узлов замены представляется также весьма существенным с точки зрения повышения уровня доверия к алгоритму ГОСТ 28147-89. Так в [8] высказывается предположение о возможном использовании каких-либо слабостей, заложенных в фиксированных узлах замены алгоритма DES.
Алгоритм шифрования ГОСТ 28147-89 относится к классу блочных шифров, т. е. шифрпреобразование применяется к входным блокам по 64 бита. При этом реализованы следующие режимы работы:
- зашифрование (расшифрование) информации в режиме простой замены (Шифрующим преобразованием является псевдослучайная подстановка степени 2й, зависящая от ключа);
- зашифрование (расшифрование) информации в режиме гаммирования (Шифрующим преобразованием является суммирование входных блоков с псевдослучайной последовательностью, зависящей от ключа, по модулю 2м);
- зашифрование (расшифрование) информации в режиме гаммирования с обратной связью (При выработке очередного участка псевдослучайной последовательности шифрующего преобразования используется предшествующий входной блок, что затрудняет нарушителю навязывание ложной информации в канале без ее дешифрования);
- режим выработки имитовставки (Блок выходных данных, полученный в результате итеративного процесса, и существенно зависящий от всех входных блоков и результатов их промежуточных шифрпреобразований. Наличие имитовставки позволяет контролировать целостность передаваемой в зашифрованном виде информации).
В настоящее время алгоритм шифрования ГОСТ 28147-89 реализован в ряде сертифицированных программных и программно-аппаратных средств. Здесь представляется уместным предостеречь потенциальных пользователей защищенных компьютерных систем, а также разработчиков систем защиты информации, не обладающих достаточным опытом, от самостоятельных попыток реализации алгоритма шифрования. Действительно, безопасность информации в защищенных системах определяется комплексным подходом к ее обеспечению. Даже совершенно корректная с математической точки зрения реализация алгоритма шифрования не может сама по себе обеспечить защиту информации. Ярким примером, иллюстрирующим сказанное, служит описанная в [7] программная закладка, замаскированная под программу ускоритель типа "Turbo Krypton", которая подменяет алгоритм ГОСТ 28147-89 более слабым. Таким образом, возникает проблема обеспечения целостности и невозможности "обхода" соответствующего программного модуля. Кроме того, должна быть обеспечена защита от несанкционированного доступа к ключам, программным средствам шифрования и системе управления ключами. В процессе сертификации средств криптографической защиты проверяется выполнение перечисленных выше и некоторых других условий обеспечения безопасности информации, что требует решения многих сложных научно-технических и организационных задач.
Появление новых информационных технологий, переход на безбумажный документооборот и обработку информации, особенно в банковской и других коммерческих структурах, выявили новые направления в области информационной безопасности. Одним из важнейших является обеспечение безопасного информационного взаимодействия "недружественных" пользователей системы. С одной стороны, Концепция [4] предусматривает, что нарушителем может быть зарегистрированный пользователь системы, желающий превысить предоставленные полномочия, а в некоторых случаях даже разработчик системы. С другой стороны, зарегистрированный пользователь системы, оставаясь в рамках своих полномочий, мог бы, используя особенности безбумажного документооборота, предпринять недружественные действия в отношении партнера. В традиционных информационных технологиях этому в определенной степени препятствуют такие средства, как подпись уполномоченного на это лица и печать организации. При этом существенным является то обстоятельство, что физический носитель информации (бумага) и нанесенные на нее средства аутентификации (подпись и печать) неразрывны. В электронных документах физическая связь заменяется математической, позволяющей устанавливать подлинность информации на основе ее внутренней структуры. Это достигается за счет криптографического преобразования исходной информации с помощью секретного ключа, известного только подписывающему документ. Используемое в этих целях преобразование выбирается из класса однонаправленных функций, вычислительная сложность обращения которых очень велика. Общедоступный открытый ключ при этом позволяет достаточно просто проверить истинность некоторого математического соотношения, что и подтверждает подлинность подписанной информации. Естественно, что преобразованию подвергается не сама исходная информация зачастую очень большого объема, а результат ее предварительного сжатия (свертки) с помощью функции хэширования. Очевидно, что функция хэширования должна обладать хорошими "перемешивающими" свойствами с тем, чтобы обеспечить наибольшую зависимость результата свертки от каждого бита исходной информации, а также быть вычислительно необратимой. Более подробно требования к хэш-функции и шифрпреобразованию, положенному в основу ЭЦП, а также возможные атаки на них изложены в монографиях [6-8], [13] и публикациях [9], [12].
Российский стандарт цифровой подписи [3] построен на основе алгоритма Эль-Гамаля, в котором в качестве однонаправленной функции выбрано возведение в степень в конечном поле. Криптографическая стойкость этого алгоритма определяется вычислительной сложностью дискретного логарифмирования. В стандарте [3] описана также процедура генерации больших простых чисел, являющихся параметрами алгоритма ЭЦП, исключающая возможность получения известных слабых значений. Вычислительная необратимость хэш-функции [2] основана на использовании пошагового шифрпреобразования по алгоритму ГОСТ 28147-89 в режиме простой замены. При этом на каждом шаге итерации преобразуются очередной блок исходного текста и результат предыдущего шага.
Электронная цифровая подпись (ЭЦП) используется для реализации следующих функций:
- одностороннюю или многостороннюю аутентификацию пользователей и объектов системы;
- подтверждение целостности информации при обмене и хранении;
- подтверждение достоверности передачи информации по каналу связи;
- авторизацию информации;
- средство имитозащиты информации (в том числе - защиты от переадресации и навязывания ранее переданной информации);
- защиту от отказа источника информации от своего авторства.
Опишем теперь некоторые возможные применения стандартизированных криптографических средств при построении защиты автоматизированных компьютерных систем. В соответствии с требованиями [5] система защиты информации от несанкционированного доступа должна обеспечивать управление доступом к ресурсам системы и информации (разграничение доступа), регистрацию событий, конфиденциальность и целостность информации и целостность ресурсов системы. Криптографическая подсистема, обеспечивая конфиденциальность информации, при соответствующем распределении ключей одновременно может использоваться и для нужд подсистемы управления доступом. При этом совершенно не обязательно зашифровывать на независимых ключах каждый из субъектов доступа. Тот же эффект может быть достигнут при использовании многоуровневой криптографии [10] (иерархических ключевых систем). Заметим, что для обеспечения конфиденциальности информации при ее хранении в базах данных целесообразно использовать зашифрование в режиме простой замены. В этом случае расшифрование необходимого раздела (файла, директории) может производиться начиная с произвольного блока, тогда как при использовании режима гаммирования потребовалось бы расшифровывать достаточно длинные отрезки информации, даже если есть необходимость прочитать лишь один байт, поскольку на каждое шифрованное сообщение вырабатывается случайная синхропосылка. Вто же время, при зашифровании информации для ее передачи в канал связи предпочтительнее режим гаммирования с обратной связью с выработкой имитовставки. Это позволяет обеспечить защиту от навязывания ложной информации в канале (имитозащиту). Контроль целостности и авторизация информации достигаются с применением ЭЦП. Это же средство может применяться в подсистеме контроля целостности программных средств. Использование криптографических средств защитит от модификации и обеспечит авторизацию сообщений и в подсистеме регистрации событий.
В заключение еще раз отметим, что перечисленные выше положительные качества достигаются только на основе комплексного подхода к защите информации в системе. При этом средства криптографической защиты информации должны рассматриваться как неотъемлемая составная часть этого комплекса. Причем, в тех системах, где по условиям эксплуатации предусматривается использование функции шифрования, средства криптографической защиты информации целесообразно использовать в качестве базовых при построении всех подсистем системы защиты от несанкционированного доступа.
ЛИТЕРАТУРА
1. ГОСТ 281147-89. Системы обработки информации. Защита криптографическая Алгоритмы криптографического преобразования.
2. ГОСТ Р 34.11-94. Информационная технология. Криптографическая защита информации. Функция хэширования.
3. ГОСТ Р 34.10-94. Информационная технология. Криптографическая защита информации. Процедуры выработки и проверки электронной цифровой подписи на базе асимметричного криптографического алгоритма.
4. Гостехкомиссия России. Руководящий документ. Концепция защиты средств вычислительной техники и автоматизированных систем от несанкционированного доступа к информации., М., Военное издательство, 1992.
5. Гостехкомиссия России. Руководящий документ. Автоматизированные системы. Защита от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации., М., Военное издательство, 1992.
6. А. Саломаа. Криптография с открытым ключом., М., "Мир", 1996.
7. Теория и практика обеспечения информационной безопасности. Под редакцией П.Д. Зегжды., М., "Яхтсмен", 1996.
8. В. Жельников. Криптография от папируса до компьютера. M..ABF, 1996.
9. В.В. Андрианов, В.Г. Каминский, Л.Н. Сапегин. Защита авторства, безотказности и целостности электронных документов. Конфидент № 1,1997.
10. Р. Райвест. Многоуровневая криптография. Конфидент № 1,1997.
11. М. Блэйз, У. Диффи, Р. Райвест, Б. Шнайер, Ц. Шимому-ра, Э. Томпсон, М. Винер. Минимальные длины ключей в симметричных шифрах для обеспечения адекватной коммерческой безопасности. Newsbytes News Network, Feb.6,96.
12. Ю.H. Мельников. Электронная цифровая подпись. Возможности защиты. Конфидент №6, 1995.
13. В. Schneier. Applied cryptography, second edition. John Wiley & Sons, Inc. 1995.
© Информационное общество, 1997, вып. 1, с. 72-73.