Композиции шифров
Категория реферата: Рефераты по информатике, программированию
Теги реферата: курсовые рефераты, курсовые работы бесплатно
Добавил(а) на сайт: Исидора.
Предыдущая страница реферата | 3 4 5 6 7 8 9 10 11 12 13 | Следующая страница реферата
Разделить xL на четыре 8-битовых фрагмента: а, b, с и d
F(xL) = ((S1,a + S2,bmod232)( S3,c) + S4,dmod232
Расшифрование выполняется точно так же, как и зашифрование, но
Р1,Р2,...,Р18 используются в обратном порядке.
В реализациях Blowfish, в которых требуется очень высокая скорость, цикл должен быть развернут, а все ключи храниться в кэше.
Подключи рассчитываются с помощью самого алгоритма Blowfish. Вот какова точная последовательность действий.
1. Сначала Р-массив, а затем четыре S-блока по порядку инициализируются фиксированной строкой. Эта строка состоит из шестнадцатеричных цифр ?.
2. Выполняется операция XOR над Р1 с первыми 32 битами ключа, XOR над Р2 со вторыми 32 битами ключа, и т.д. для всех битов ключа (вплоть до
Р18). Операция XOR выполняется циклически над битами ключа до тех пор, пока весь Р-массив не будет инициализирован.
3. Используя подключи, полученные на этапах 1 и 2, алгоритм Blowfish шифрует строку из одних нулей.
4. Р1 и Р2 заменяются результатом этапа 3.
5. Результат этапа 3 шифруется с помощью алгоритма Blowfish и модифицированных подключей.
6. Р3 и Р4 заменяются результатом этапа 5.
7. Далее по ходу процесса все элементы Р-массива, а затем все четыре S- блока по порядку заменяются выходом постоянно меняющегося алгоритма
Blowfish.
Всего для генерации всех необходимых подключей требуется 521 итерация.
Приложения могут сохранять подключи - нет необходимости выполнять процесс
их получения многократно.
3.7.2. Стойкость алгоритма Blowfish
Серж Воденэ (Serge Vaudenay) исследовал алгоритм Blowfish с известными
S-блоками и r раундами. Как оказалось, дифференциальный криптоанализ может
восстановить Р-массив с помощью 28r+1 подобранных открытых текстов. Для
некоторых слабых ключей, которые генерируют плохие S-блоки (вероятность
выбора такого ключа составляет 1/214), эта же атака восстанавливает Р-
массив с помощью всего 24г+1 подобранных открытых текстов. При неизвестных
S-блоках эта атака может обнаружить использование слабого ключа, но не
может восстановить сам ключ (и также S-блоки и Р-массив). Эта атака
эффективна только против вариантов с уменьшенным числом раундов и
совершенно безнадежна против 16-раундового алгоритма Blowfish. Разумеется, важно и открытие слабых ключей, хотя они, вероятно, использоваться не
будут. Слабым называют ключ, для которого два элемента данного S-блока
идентичны. До выполнения расширения ключа невозможно установить факт
слабости ключа.
Не известны факты успешного криптоанализа алгоритма Blowfish. В целях
безопасности не следует реализовывать Blowfish с уменьшенным числом
раундов. Компания Kent Marsh Ltd. встроила алгоритм Blowfish в свой продукт
FolderBolt, предназначенный для обеспечения защиты Microsoft Windows и
Macintosh. Кроме того, алгоритм входит в Nautilus и PGPfone.
3.8. Алгоритм RC5
RC5 представляет собой блочный шифр с множеством параметров: размером блока, размером ключа и числом раундов. Он изобретен Роном Ривестом и проанализирован в RSA Laboratories.
В алгоритме RC5 предусмотрены три операции: XOR, сложение и циклические сдвиги. На большинстве процессоров операции циклического сдвига выполняются за постоянное время, переменные циклические сдвиги представляют собой нелинейную функцию. Эти циклические сдвиги, зависящие как от ключа, так и от данных - интересная операция.
В RC5 используется блок переменной длины, но в приводимом примере будет рассмотрен 64-битовый блок данных. Шифрование использует 2r+2 зависящих от ключа 32-битовых слов - S0, S1, S2,... S2r+1 - где r - число раундов. Для зашифрования сначала нужно разделить блок открытого текста на два 32-битовых слова: А и В. (При упаковке байтов в слова в алгоритме RC5 соблюдается соглашение о прямом порядке (little-endian) байтов: первый байт занимает младшие биты регистра А и т.д.) Затем:
A=A + S0
B = B + S0
Для i от 1 до r:
Рекомендуем скачать другие рефераты по теме: контрольная работа класс, рассказы чехова.
Предыдущая страница реферата | 3 4 5 6 7 8 9 10 11 12 13 | Следующая страница реферата