Симметричные алгоритмы шифрования
Чаще всего используется 32-битовая имитоприставка, т. е. половина содержимого регистров. Этого достаточно, поскольку, как любая контрольная сумма, имитоприставка предназначена прежде всего для защиты от случайных искажений информации. Для защиты же от преднамеренной модификации данных применяются другие криптографические методы — в первую очередь электронная цифровая подпись.
При обмене информацией имитоприставка служит своего рода дополнительным средством контроля. Она вычисляется для открытого текста при зашифровывании какой-либо информации и посылается вместе с шифртекстом. После расшифровывания вычисляется новое значение имитоприставки, которое сравнивается с присланной. Если значения не совпадают, значит шифр-текст был искажен при передаче или при расшифровывании использовались неверные ключи. Особенно полезна имитоприставка для проверки правильности расшифровывания ключевой информации при использовании многоключевых схем.
Алгоритм ГОСТ 28147—89 является очень стойким алгоритмом — в настоящее время для его раскрытия не предложено более эффективных методов, чем упомянутый выше метод «грубой силы». Его высокая стойкость достигается в первую очередь за счет большой длины ключа — 256 бит. При использовании секретной синхропосылки эффективная длина ключа увеличивается до 320 бит, а засекречивание таблицы замен прибавляет дополнительные биты. Кроме того, криптостойкость зависит от количества раундов преобразований, которых по ГОСТ 28147—89 должно быть 32 (полный эффект рассеивания входных данных достигается уже после 8 раундов).
Стандарт шифрования AES. В 1997 г. Американский институт стандартизации NIST (National Institute of Standards & Technology) объявил конкурс на новый стандарт симметричного криптоалгоритма, названного AES (AdvancedEncryption Standard). К его разработке были подключены самые крупные центры криптологии всего мира. Победитель этого соревнования фактически становился мировым криптостандартом на ближайшие 10-20 лет.
К криптоалгоритмам — кандидатам на новый стандарт AES — были предъявлены следующие требования:
• алгоритм должен быть симметричным;
• алгоритм должен быть блочным шифром;
• алгоритм должен иметь длину блока 128 бит и поддерживать три длины ключа: 128, 192 и 256 бит.
Дополнительно разработчикам криптоалгоритмов рекомендовалось:
• использовать операции, легко реализуемые как аппаратно (в микрочипах), так и программно (на персональных компьютерах и серверах);
• ориентироваться на 32-разрядные процессоры;
• не усложнять без необходимости структуру шифра, для того чтобы все заинтересованные стороны были в состоянии самостоятельно провести независимый криптоанализ алгоритма и убедиться, что в нем не заложено каких-либо недокументированных возможностей.
Итоги конкурса были подведены в октябре 2000 г. — победителем был объявлен алгоритм Rijndael, разработанный двумя криптографами из Бельгии, Винсентом Риджменом (Vincent Rijmen) и Джоан Даймен (Joan Daemen). Алгоритм Rijndael стал новым стандартом шифрования данных AES.
Алгоритм AES не похож на большинство известных алгоритмов симметричного шифрования, структура которых носит название «сеть Фейстеля» и аналогична российскому ГОСТ 28147—89. В отличие от отечественного стандарта шифрования, алгоритм AES представляет каждый блок обрабатываемых данных в виде двухмерного байтового массива размером 4 х 4, 4 х 6 или 4 х 8 в зависимости от установленной длины блока (допускается использование нескольких фиксированных размеров шифруемого блока информации). Далее на соответствующих этапах производятся преобразования либо над независимыми столбцами, либо над независимыми строками, либо вообще над отдельными байтами.
Алгоритм AES состоит из определенного количества раундов (от 10 до 14 — это зависит от размера блока и длины ключа) и выполняет четыре преобразования:
BS (ByteSub) — табличная замена каждого байта массива (рис. 6.5);

Рис. 6.5. Преобразование BS (ByteSub) использует таблицу замен (подстановок) для обработки каждого байта массива
Эта статья была опубликована Вторник, 11 августа, 2009 at 21:05 в рубрике Криптографические алгоритмы. Вы можете следить за ответами через RSS 2.0 feed.
А где можно найти программу,которая реализовует этот алгоритм?