Авто/Мото Бизнес и финансы Дом и семья Интернет Компьютеры Культура и искусство Медицина и Здоровье Наука и образование Туризм и путешествия Спорт Строительство и ремонт Дети и их родители

     Компьютеры » Безопасность » Стандарты криптографической защиты информации России и США.    

Стандарты криптографической защиты информации России и США.

Главная




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

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

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

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

Эволюция создания блочных шифров

Ныне действующий в России стандарт шифрования, ГОСТ 28147-89 [1], был принят в 1989 году. Однако ряд фактов свидетельствуют о том, что разработан он был как минимум на десять лет раньше. По своей архитектуре ГОСТ 28147-89 достаточно близок к прежнему стандарту шифрования США - DES (Data Encryption Standard), который был разработан примерно в то же самое время и действовал в период с 1977 по 2001 год.

В 1970-е годы основной доминантой при проектировании шифров, в том числе ГОСТа и DES, было обеспечение приемлемой стойкости при жестких требованиях к сложности реализации, т.е. минимизации необходимых для реализации ресурсов. Это было обусловлено ограничениями электронных компонентов вычислительных систем, разработанных к тому времени. Важнейшими отличиями ГОСТа от DES были более простая функция шифрования и гораздо больший размер ключа. В функции шифрования DES использовались битовые перестановки общего вида и замены 6 на 4 бита, в ГОСТе вместо битовых перестановок применен циклический сдвиг 32-битового элемента данных, а замена осуществляется в группах по 4 бита. И как следствие, раунд ГОСТа имеет худшие показатели нелинейности и рассеивания по сравнению с раундом DES. По этой причине число раундов в ГОСТе вдвое больше по сравнению с DES -32 против 16. Вместе с использованием операции сложения по модулю 232, подразумевающей относительно сложную схему переноса двоичных разрядов, все это приводит к тому, что аппаратная реализация ГОСТа несколько сложнее и значительно медленнее при использовании той же самой элементной базы.

С программной же реализацией дело обстоит с "точностью до наоборот": несмотря на вдвое большее число раундов, программная реализация отечественного стандарта минимум вдвое быстрее действует на любых марках ЭВМ, так как битовые перестановки общего вида, которыми изобилует DES, крайне неэффективно реализуются абсолютно на всех неспециализированных процессорах. Указанные особенности позволяют заключить, что DES оптимизировался разработчиками для аппаратной реализации, а ГОСТ - для программной на 32-битовых машинах.

Второе отличие ГОСТа от DES -гораздо больший размер ключа, 256 бит против 56. Размер ключа DES был искусственно ограничен АНБ США. Именно малый размер ключа и привел к тому, что во второй половине 1990-х годов DES-шифровки неоднократно взламывались распределенной вычислительной средой, организованной на базе сети Интернет, и специально созданным для этой цели устройством. В конечном итоге это послужило причиной отказа от стандарта DES и принятия нового стандарта шифрования в США. Размер же ключа ГОСТа находится на вполне современном уровне, -ключ размером 128-256 бит в настоящее время считается вполне безопасным и довольно практичным для одноключевых блочных шифров.

Однако за время, прошедшее с момента разработки DES и ГОСТа, подходы к конструированию блочных шифров претерпели некоторые изменения.

    В настоящее время возможности технической базы по реализации шифров возросли на несколько порядков и пропорционально увеличились возможности их криптоанализа. В связи с этим первоначальные требования к экономичности реализации шифров перестали быть доминирующим фактором, в то время как требования к их стойкости существенно возросли. Именно это является движущей силой изменения подходов к конструированию блочных шифров с секретным ключом. Итерационный подход к построению шифров в целом сохранился, но повсеместное распространение получило использование гетерогенных шифрующих структур, состоящих из сильно отличающихся друг от друга раундовых преобразований. Наряду со сбалансированными сетями Файстеля получили распространение несбалансированные сети, а также принципиально иные архитектуры, такие, как "Квадрат". Многие архитектуры основаны на прямых преобразованиях шифруемого блока и совсем не обеспечивают функциональной эквивалентности процедур за- и расшифрования либо обеспечивают ее частично. В функциях раундового преобразования стал .использоваться широкий спектр операций: помимо аддитивных применяются мультипликативные операции, а .также различные алгебраические операции в конечных полях. Раунды шифрования стали более сложными. Для внесения нелинейности в преобразование по-прежнему активно используются операции замены в битовых группах, но размер битовых групп, в которых производится замена, вырос до 8 и более битов. Для конструирования узлов широко используется алгебраический подход. Для выработки массива ключевых элементов из ключа шифрования используются достаточно сложные схемы, позволяющие создать связь между битами различных ключевых элементов нелинейной и достаточно запутанной, что, безусловно, увеличивает стойкость шифра к известным видам криптоанализа.

Стандарты шифрования США и России: архитектурные различия

Как уже отмечалось выше, причиной замены стандарта шифрования в США стала очевидная криптографическая слабость прежнего стандарта, обусловленная малой длиной ключа. Кроме того, стандарт был очень неудобным для программной реализации.

В октябре 2000 г. департамент торговли США подвел итоги конкурса по выработке нового стандарта. Из 15 шифров, выдвинутых на конкурс, был выбран алгоритм Rijndael [3], разработанный бельгийскими криптографами. Новый стандарт вступил в действие с начала 2002 г. и получил аббревиатуру AES (Advanced Encryption Standard). Сравнительные характеристики шифров ГОСТ и AES приведены в табл. 1.

Таблица 1. Сравнительные характеристики алгоритмов ГОСТ 28147-89 и AES


Рис. 1. Схема преобразования данных при шифровании по алгоритмам ГОСТ 28147-89 (а) и AES (б)

Раунды шифрования

В алгоритме ГОСТ 28147-89 используется сравнительно несложная функция шифрования, состоящая из аддитивной операции комбинирования входного полублока с ключевым элементом раунда (сложения их по модулю 232, подстановки, выполняемой независимо в восьми 4-битовых группах, и битовой перестановки) вращения на 11 бит в сторону старших разрядов. Схема раунда шифрования по ГОСТ показана на рис. 2а.


Рис. 2. Схема преобразования данных для одного раунда шифрования по алгоритмам ГОСТ 28147-89 (а) и AES (б)

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