Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КМЗИ 7 лекции.doc
Скачиваний:
2
Добавлен:
17.04.2019
Размер:
2.74 Mб
Скачать

2.4.4 Применение хф

1) ЦП

ХФ должна анализироваться на безопасность в паре с преобразованиями ЦП.

Должно быть, чтобы коллизию ХФ сложно было найти. Вопрос тспользования сильной или слабой ХФ подлежит обсуждению.

В контексте ЦП сильная ХФ нужна там, где возможен отказ от подписывания сообщения.

2) Парольная защита

А,РА→ В(А,РА) – на сервере хранятся пароль и имя. . А,РА→ В(А,hА) – схема хэширования паролей.

, hA=h(PA), .

Сильная ХФ не обязательна.

Противник может извлечь пароль из канала связи.

Схема одноразовых (однократных) паролей.

Р0; Pi+1=h(Pi);

P1,….PN

У пользователя На сервере

A(PN-1) B(A,PN), т.е. конечный

после чего сервер сохраняет пароль, который получил ,

A(PN-2)

Наблюдение пароля в канале связи ничего не дает, но если противник владеет каналом связи, то ему все возможно сделать.

В этом случае ХФ должна удовлетворять свойствам слабой ХФ.

3) Обеспечение целостности информации

(m,h(m))

Информация сохраняется и передается со значением ХФ от той же информации.

А на приеме

(m’,h’), - это выполняется, если информация не искажается.

Если информация исказилась: (возможно лишь при коллизии ХФ)

- возможно, если кто-то специально сделал.

Если и исказилась информация ХФ

- невозможно в принципе, т.к. противоречит свойствам ХФ, которая является односторонней.

Этот механизм не исключает ошибки, но верно для непреднамеренных ошибок. Если кто-то умышленно искажает информацию, то он же искажает контрольную сумму, т.к. она вычисляется в зависимости от информации.

2.5 Хф с ключом

2.5.1 Определение

ХФ с ключом k называется hk: V*→Vn (где V* - множество битовых строк n произвольной длины, Vn - множество битовых строк |n|), не зависящая от параметра k со следующими свойствами:

  1. легко вычислить hk(x) при известном k;

  2. трудно вычислить hk(x), не зная k.

Используется для обеспечения целостности и аутентификации.

2.5.2 Конструкция хф с ключом

Используют типовые кострукторные блоки:

а) схемы шифрования (блочные);

б) ХФ без ключа

1) Использование шифра + ХФ без ключа

hk(m)=Ek(h(m))

Достоинства: не требует новой техники

Недостатки: медленно

2) Только шифрование. Это описано в стандарте ISO/IEC 9797-1, требования:

- дополнение до кратности какой-то длины;

- стартовые преобразования I;

- финальные преобразования g;

- E блока M, n длина блока

hk(m)

- m=m||…||mt – дополнить до кратности и разбить на m-битные блоки |mi|=n;

- hi=I(mi);

- ;

- hk(m)=g(ht), Lh бит

3) На основе ХФ без ключа

- ХФ с ключом от сообщения

hk(m)=h(m||k) – может «шевелить» первые биты, приклеим ключ к сообщению и сожмем;

hk(m)=h(k||m) - может «шевелить» последние биты, приклеим ключ к сообщению и сожмем.

В стандарте ISO/IEC 9797-2 – HMAC описано типовое применение.

Приписывание нулей до длины входного блока ХФ

k0=h||0…0 дополняется до длины В, В – длина блока h;

ipad, opad padding – фиксирование строки длины В.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]