Безопасность шифров, основанных на однонаправленных хэш-функциях
Хотя эти конструкции и могут быть безопасными, они зависят от используемой однонаправленной хэш-функции. Хорошая однонаправленная хэш-функция не обязательно дает безопасный алгоритм шифрования. Существуют различные криптографические требования. Например, линейный криптоанализ бесполезен против однонаправленных хэш-функциях, но действенен против алгоритмов шифрования. Однонаправленная хэш-функция, такая как SHA, может обладать определенными линейными характеристиками, которые, не влияя на ее безопасность как однонаправленной хэш-функции, могут сделать небезопасным ее использование в таком алгоритме шифрования, как MDC. Мне неизвестно ни о каких результатах криптоанализа использования ко н-кретной однонаправленной хэш-функции в качестве блочного шифра. Прежде чем использовать их дождитесь проведения подобного анализа.
Выходно значение |
Блок сообщения
у Выходное значение
Ключ
Хэш-функция
Открытый_ текст
Г
-е-
> Шифротекст
(а) Хэш-функция (b) Хэш-функция как блочный шифр в режимеCFB
Рис. 14-5. Шифр краткого содержания сообщения (MDC).
14.12 Выбор блочного алгоритма
Это очень трудное решение. DES почти наверняка небезопасен при использовании против правительств в е-ликих держав, если только вы не шифруете одним ключом очень малые порции данных. Возможно этот алг о-ритм пока неплох против кого-нибудь другого, но вскоре и это изменится. Машины для вскрытия ключа DES грубой силой скоро станут по карману всем организациям.
Предложенные Бихамом зависимые от ключа S-блоки DES будут безопасны в течение по крайней мере н е-скольких лет, может быть за исключением использования против самых хорошо обеспеченных противников. Если необходимая безопасность должна быть обеспечена на десятилетия, или вы опасаетесь криптоаналитич е-ских усилий правительств великих держав, воспользуйтесь тройным DES с тремя независимыми ключами.
о- |
е- |
Небеполезны и другие алгоритмы. Мне нравится Blowfish, потому что он быстр, и потому что я его прид у-мал. Неплохо выглядит 3-WAY, возможно все в порядке и с ГОСТом. Проблема посоветовать что-нибудь с стоит в том, что NSA почти наверняка обладает набором эффективных криптоаналитических приемов, которые до сих пор засекречены, и я не знаю, какие алгоритмы могут быть вскрыты. В Табл. 14.3 для сравнения прив дены временные соотношения для некоторых алгоритмов.
Мой любимый алгоритм - IDEA. Его 128-битовый ключ в сочетании с устойчивостью к общеизвестным средствам криптоанализа - вот источники моего теплого и нежного чувства к этому алгоритму. Этот алгоритм анализировался различными группами, и никаких серьезных замечаний не было опубликовано. В отсутствие необычайных криптоаналитических прорывов я сегодня ставлю на IDEA.
Табл. 14-3. Скорости шифрования для некоторых блочных шифров Hai486SX/33 МГц
Алгоритм
Blowfish (12 этапов)
Скорость шифрования (Кбайт/с)
Алгоритм
MDC (с MD4)
Скорость шифрования (Кбайт/с)
Blowfish (16 этапов) | MDC (c MD5) | ||
Blowfish (20 этапов) | MDC (c SHA) | ||
DES | NewDES | ||
FEAL-8 | REDOC II | ||
FEAL-16 | REDOC III | ||
FEAL-32 | RC5-32/8 | ||
ГОСТ | RC5-32/12 | ||
IDEA | RC5-32/16 | ||
Khufu (16 этапов) | RC5-32/20 | ||
Khufu (24 этапов) | SAFER (6 этапов) | ||
Khufu (32 этапов) | SAFER (8 этапов) | ||
Luby-Rackoff (cMD4) | SAFER (10 этапов) | ||
Luby-Rackoff (cMD5) | SAFER (12 этапов) | ||
Luby-Rackoff (cSHA) | 3-Way | ||
Lucifer | Тройной DES |