Message authentication algorithm

Message authentication algorithm

Message Authentication Algorithm (MAA, алгоритм аутентификации сообщений) - алгоритм проверки целостности сообщения была разработана D.W. Davies и D.O. Clayden и опубликована в 1983 г. Алгоритм обеспечивает целостность сообщения, но не обеспечивает конфиденциальность. Стойкость алгоритма основывается на секретности ключа. После опубликования алгоритм привлек внимание Комитета клиринговых банков Лондона (Committee of the London Clearing Banks) и Технический комитет 68 (Technical Committee 68 ) Международной организации по стандартизации, которая приняла его в качестве одного из утвержденных алгоритмов аутентификации сообщений. Алгоритм является частью ISO 8731-2. На PC и рабочих станциях он работает только на 40% медленнее, чем MD5.

Работа алгоритма

MMA схема.jpeg

Входные данные
1. Сообщение S - битовая строка длины 32L, где L принимает значения от 0 до 10^6
2. Секретный ключ Z длины 64 бита. Ключ состоит из двух 32 разрядных чисел J и K.
Выходные данные
1. Message authentication code длиной 32 бита

Расширение ключа
Первой частью работы алгоритма является расширение 64-х битного ключа (два 32-х битных слова J и K) до 192 бит (шесть 32-х битных слов: X, Y, W, V, S, T). Эти значения находятся следующим образом:
1. X<- [j^4 mod (2³² - 1)] xor [j^4 mod (2³² - 2)]
2. Y<- [k^5 mod (2³² - 1) xor k^5 mod (2³² - 2)]*(1+p)² mod (2³² - 2)
3. V<- [j^6 mod (2³² - 1)] xor [j^6 mod (2³² - 2)]
4. W<- [k^7 mod (2³² - 1) xor k^7 mod (2³² - 2)]*(1+p)² mod (2³² - 2)
5. S<- [j^8 mod (2³² - 1)] xor [j^8 mod (2³² - 2)]
6. T<- [k^9 mod (2³² - 1) xor k^9 mod (2³² - 2)]*(1+p)² mod (2³² - 2)
На следующем шаге работы алгоритма происходит замена "слабых" битов (то есть равных 00х или FFх) путем логического сложения их с P.
Константы
Константа А,B,C,D определены следующим образом:
A <- 0x02040801
B <- 0x00804021
C <- 0xbfef7fdf
D <- 0x7dfefbff
Главный цикл
Цикл проходит по всем элементам Xi (1<=i<=L) и его результатом являются значения H1 и H2. На первом шаге цикла переменные H11 и H21 инициализируются значениями X и Y соответственно.

      Шаг1.

Циклический сдиг V на 1 бит влево.
Ki= V xor W.

      Шаг2.

T1= H1i xor Xi;
T2= H2i xor Xi;
M1= ((Ki xor T1) or B ) and D
M1= ((Ki xor T2) or A ) and C

      Шаг3.

H1(i+1) = (M2 * T1) mod (2³² - 1)
H2(i+1) = (M1 * T2) mod (2³² - 2)

В результате получаем значения H1 и H2 равные H1l и H2l соответственно.
The Coda
MAC код формируется следующим образом: H=H1 xor H2.

Литература

D.W. Davies, D.O. Clayden "The Message Authenticator Algorithm (MAA) and its Implementation"
Bart Preneel, Paul C. van Oorschoty "On the Security of Two MAC Algorithms"



Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "Message authentication algorithm" в других словарях:

  • MESSAGE AUTHENTICATION ALGORITHM — (MAA) алгоритм идентификации сообщенияалгоритм, используемый для проверки подлинности сообщения …   Словарь электронного бизнеса

  • Message Authentication Code — Ein Message Authentication Code (MAC) dient dazu, Gewissheit über den Ursprung von Daten oder Nachrichten zu erhalten und ihre Integrität zu überprüfen.[1] MAC Algorithmen erfordern zwei Eingabeparameter, erstens die zu schützenden Daten und… …   Deutsch Wikipedia

  • Message authentication code — MAC (имитовставка, англ. message authentication code  код аутентичности сообщения)  средство обеспечения имитозащиты в протоколах аутентификации сообщений с доверяющими друг другу участниками  специальный набор символов, который… …   Википедия

  • Message authentication code — In cryptography, a message authentication code (often MAC) is a short piece of information used to authenticate a message. A MAC algorithm, sometimes called a keyed (cryptographic) hash function, accepts as input a secret key and an arbitrary… …   Wikipedia

  • Data Authentication Algorithm — The Data Authentication Algorithm (DAA) is a former U.S. government standard for producing cryptographic message authentication codes. According to the standard, a code produced by the DAA is called a Data Authentication Code (DAC). The algorithm …   Wikipedia

  • Authentication Header — IPsec im TCP/IP‑Protokollstapel: Anwendung HTTP IMAP SMTP DNS … Transport TCP UDP …   Deutsch Wikipedia

  • Authentication key —   An ISO term. A cryptographic key used for authentication. When this key and the elements to be authenticated (authentication elements) are applied to the authentication algorithm, the result will be the message authentication code (MAC) or the… …   International financial encyclopaedia

  • Symmetric-key algorithm — Symmetric key algorithms are a class of algorithms for cryptography that use trivially related, often identical, cryptographic keys for both decryption and encryption.The encryption key is trivially related to the decryption key, in that they may …   Wikipedia

  • Digest access authentication — HTTP Persistence · Compression · HTTPS Request methods OPTIONS · GET · HEAD · POST · PUT · DELETE · TRACE · CONNECT Header fields Cookie · ETag · Location · Referer DNT · …   Wikipedia

  • Chip Authentication Program — A GemAlto EZIO CAP Device Whitelabeled as Barclays PINSentry The Chip Authentication Program (CAP) is a MasterCard initiative and technical specification for using EMV banking smartcards for authenticating users and transactions in online and… …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»