запропонований криптології Алексом Бірюковим (Alex Biryukov) і Ейяль Кушілевіцем (Eyal Kushilevitz), в якому необхідно 244 обраних відкритих текстів для успішної атаки. Проте, всі описані вище атаки не дуже практичні - для їх виконання потрібно величезне число обраних відкритих текстів. Бірюков та Кушілевіц вважають, що для забезпечення повної невскриваемості алгоритму диференціальний криптоаналіз досить виконання 18-20 раундів замість 12.
На підставі того факту, що на низці платформ операція циклічного зсуву на змінне число біт виконується за різне число тактів процесора, винахідник методу розтину алгоритмів шифрування за часом виконання Пол Кохер (Paul C. Kocher) висловив припущення про можливість атаки за часом виконання на алгоритм RC5 на таких платформах. Два варіанти подібної атаки були сформульовані криптоаналітиків Говардом Хейзом (Howard M. Heys) і Хеленою Хандшух (Helena Handschuh), які показали, що секретний ключ можна обчислити, виконавши близько 220 операцій шифрування з високоточними вимірами часу виконання і потім від 228 до 240 тестових операцій шифрування. Однак, Каліскі і Ін запропонували вельми просте «протиотруту»- Примусово виконувати всі зрушення за однакове число тактів (тобто взяти найбільш повільний з можливих зрушень - це, безсумнівно, дещо знизить середню швидкість шифрування). Аналогічну методику протидії атакам за часом виконання радить і сам Кохер.
Таким чином, найбільш реальний метод злому алгоритму RC5 (не рахуючи варіантів з невеликим числом раундів і з коротким ключем) - повний перебір можливих варіантів ключа шифрування. Це означає, що у алгоритму RC5 практично відсутні недоліки з точки зору стійкості. Побічно цей висновок підтверджується тим, що досить багато досліджень стійкості алгоритму було спрямоване проти варіантів з усіченим числом раундів: такі варіанти звичайно досліджуються в разі відсутності серйозних вразливостей у повноцінних варіантів алгоритму.
Було чимало й інших досліджень даного алгоритму, причому переважна їх більшість застосовувалося до 64-бітової версії алгоритму (для w=32). Це не означає, що RC5 з 128-бітним блоком шифрованих даних менш вивчений - результати досліджень показують, що 128-бітний варіант RC5 з достатнім числом раундів розкрити істотно складніше 64-бітного. Наприклад, Бірюков та Кушілевіц запропонували атаку на алгоритм RC5-64/16/16 на основі 263 обраних відкритих текстів, що достатньо нереально для практичного застосування.
2.3 Режими шифрування
Для будь-якого симетричного блочного алгоритму шифрування визначено чотири режими виконання.
· ECB - Electronic Codebook - кожен блок з 64 бітів незашифрованого тексту шифрується незалежно від інших блоків, із застосуванням одного й того ж ключа шифрування. Типові програми - безпечна передача одиночних значень (наприклад, криптографічного ключа).
Рис 2.14 Схема режиму шифрування ECB
· CBC - Cipher Block Chaining - вхід криптографічного алгоритму є результатом застосування операції XOR до наступного блоку незашифрованого тексту і попереднього блоку зашифрованого тексту. Типові додатки - загальна блок-орієнтована передача, аутентифікація.
Рис 2.15 Схема режиму шифрування CBC
· CFB - Cipher Feedback - при кожному виклику алгоритму обробляється J бітів вхідног...