Имитовставка по ГОСТ 28147-89




ГОСТ 28147-89 предусматривает выработку имитовставки в соответствующем режиме. Длина имитовставки от 1 до 32 бит. Её выработка происходит по следующей схеме: Открытый текст TO разбивается на блоки длиной 64 бита. Последний блок в случае необходимости дополняется нулями.

TO = TO(1), TO(2), …, TO(n)

Первый блок TO(1) шифруется в режиме простой замены ГОСТ 28147-89 тем же ключом, что и сообщение, но с применением 16 циклов вместо 32. Результат по битам по модулю 2 складывается с вторым блоком TO(2) и так же шифруется. Результат складывается с третьим блоком... и так далее.

I=E'k(TO(N) Å E'k(TO(N-1) Å E'k(…E'k(TO(2) Å E'k(TO(1))) …))

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

Имитовставка обычно передаётся в конце сообщения и может вычисляться либо отдельно от шифрования/расшифрования, либо в его процессе.

МАС на основе хэш-функции

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

НМАС

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

При разработке алгоритма НМАС преследовались следующие цели:

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

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

Введем следующие обозначения:

Н - встроенная хэш-функция, например MD5, SHA-1 или RIPEMD-160.
M – подаваемое на вход HMAC сообщение (включая биты заполнителя, требуемые встроенной функцией хеширования).
Yi – i-й блок M, 0 £ i £ L-1.
L – число блоков в M.
b - длина блока используемой хэш-функции.
n - длина хэш-кода.
K - секретный ключ. Если длина ключа больше b, ключ подается на вход хэш-функции, чтобы получить n-битовый ключ. Рекомендуется длина ключа ³ n.
K+ - ключ K с добавленными в начало нулями, чтобы в результате длина получилась равной b битам.

Вводится два вспомогательных значения:

Ipad - значение '00110110', повторенное b/8 раз.
Opad - значение '01011010', повторенное b/8 раз.

В этом случае алгоритм НМАС можно представить формулой

НМАС = Н [(K+ Opad) || H[(K+ Ipad) || M] ]

Подробно описать алгоритм можно следующим образом:

1. К значению K слева добавляются нули, чтобы получить b-битовую строку K+ (например, если K имеет длину 160 битов и b = 512, то значение K будет дополнено 44 нулевыми байтами 0x00).

2. Значение K+ связывается операцией XOR с ipad, в результате чего получается b-битовый блок Si.

3. К Si присоединяется M.

4. К потоку, полученному на шаге 3, применяется функция H.

5. Значение K+ связывается операцией XOR с opad, в результате чего получается b-битовый блок S0.

6. Результат хеширования, полученный на шаге 4, присоединяется к S0.

7. К потоку, полученному на шаге 6, применяется функция H, и результат подается на выход.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-27 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: