Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Алгоритм шифрования ГОСТ 28147-89



ГОСТ 28147-89 – это стандарт, принятый в 1989 году в Советском Союзе и установивший алгоритм шифрования данных, составляющих гостайну. В начале 90-х годов алгоритм стал полностью открытым. В Российской Федерации установлен единый стандарт криптографического преобразования текста для информационных систем. Он рекомендован к использованию для защиты любых данных, представленных в виде двоичного кода, хотя не исключаются и другие методы шифрования.

ГОСТ предусматривает 3 основных режима шифрования (простая замена, гаммирование, гаммирование с обратной связью), а также режим выработки имитовставки. Режим простой замены в основном предназначен для шифрования ключевой информации. Режим выработки имитовставки (криптографической контрольной комбинации) предназначен для имитозащиты шифруемых данных, то есть для их защиты от случайных или преднамеренных несанкционированных изменений.

Алгоритм построен по тому же принципу, что и DES – это классический блочный шифр с секретным ключом – однако отличается от DES'а большей длиной ключа, большим количеством раундов, и более простой схемой построения самих раундов. Ниже приведены его основные параметры, для удобства - в сравнении с параметрами DES'а:

Параметры ГОСТ DES
1. Размер блока шифрования 64 бита 64 бита
2. Длина ключа 256 бит 56 бит
3. Число раундов    
4. Узлы замен (S-блоки) не фиксированы фиксированы
5. Длина ключа для одного раунда 32 бита 48 бит
6. Схема выработки раундового ключа простая сложная
7. Начальная и конечная перестановки битов нет есть

В силу намного большей длины ключа ГОСТ гораздо устойчивей DES'а к вскрытию путем полного перебора по множеству возможных значений ключа.

Для шифрования блок текста сначала разбивается на левую половину и правую половину . В -ом раунде алгоритма ГОСТ выполняются следующие преобразования:

Функция f действует по следующему правилу. Сначала правый блок складывается по модулю 232 с подключом . Полученное 32-битовое сообщение делится на восемь 4-битовых частей. Каждое из этих 4-битовых чисел преобразуется соответствующим S-блоком в другое 4-битовое число. Поэтому любой S-блок определяется некоторой 16-битовой перестановкой на множестве из 16 элементов 0, 1,..., 15. Например, в Центробанке использовались следующие S-блоки:

= (4 10 9 2 13 8 0 14 6 11 1 12 7 15 5 3),

= (14 11 4 12 6 13 15 10 2 3 8 I 0 7 5 9),

= (5 8 1 13 10 3 4 2 14 15 12 7 6 0 9 11),

= (7 13 10 I 0 8 9 15 14 4 6 12 11 2 5 3),

= (6 12 7 1 5 15 13 8 4 10 9 14 0 3 11 2),

= (4 11 10 0 7 2 1 13 3 6 8 5 9 12 15 14),

= (13 11 4 1 3 15 5 9 0 10 14 7 6 8 2 12),

= (l 15 13 0 5 7 10 4 9 2 3 14 6 11 8 12).

После преобразования S-блоками полученное 32-битовое сообщение сдвигается циклически влево на 11 позиций.

Ключевое расписание. Исходный 256-битовый ключ делится на восемь 32-битовых подключей , они используются в 32 тактах в следующем порядке: 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. При расшифровании порядок использования подключей меняется на противоположный.

Варианты заданий.





Дата публикования: 2015-04-10; Прочитано: 518 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...