Компьютеры - Message authentication algorithm08 мая 2011
Message Authentication Algorithm - алгоритм проверки целостности сообщения была разработана D.W. Davies и D.O. Clayden и опубликована в 1983 г. Алгоритм обеспечивает целостность сообщения, но не обеспечивает конфиденциальность. Стойкость алгоритма основывается на секретности ключа. После опубликования алгоритм привлек внимание Комитета клиринговых банков Лондона и Технический комитет 68 Международной организации по стандартизации, которая приняла его в качестве одного из утвержденных алгоритмов аутентификации сообщений. Алгоритм является частью ISO 8731-2. На PC и рабочих станциях он работает только на 40% медленнее, чем MD5.
Работа алгоритма
Входные данные
1. Сообщение S - битовая строка длины 32L, где L принимает значения от 0 до 10
2. Секретный ключ Z длины 64 бита. Ключ состоит из двух 32 разрядных чисел J и K.
Выходные данные
1. Message authentication code длиной 32 бита
Расширение ключа
Первой частью работы алгоритма является расширение 64-х битного ключа до 192 бит. Эти значения находятся следующим образом:
1. X<- xor
2. Y<-*² mod
3. V<- xor
4. W<-*² mod
5. S<- xor
6. T<-*² mod
На следующем шаге работы алгоритма происходит замена "слабых" битов путем логического сложения их с P.
Константы
Константа А,B,C,D определены следующим образом:
A <- 0x02040801
B <- 0x00804021
C <- 0xbfef7fdf
D <- 0x7dfefbff
Главный цикл
Цикл проходит по всем элементам Xi и его результатом являются значения H1 и H2. На первом шаге цикла переменные H11 и H21 инициализируются значениями X и Y соответственно.
Шаг1.
Циклический сдиг V на 1 бит влево.
Ki= V xor W.
Шаг2.
T1= H1i xor Xi;
T2= H2i xor Xi;
M1= or B ) and D
M1= or A ) and C
Шаг3.
H1 = mod
H2 = mod
В результате получаем значения H1 и H2 равные H1l и H2l соответственно.
The Coda
MAC код формируется следующим образом: H=H1 xor H2.
Просмотров: 1060
|