stify"> Суть даного методу полягає у вимірюванні часу, який витрачає пристрій на шифрування того чи іншого тексту. Існує деякий математичне обгрунтування, що доводить, що даним способом можна отримати деяку інформацію про ключі. [13]
Загальна схема атаки описана в [17]. Атаку можна трактувати як проблему розпізнавання сигналів. "Сигнал" складається з варіацій виміру часу для відомих біт, "шум" - з похибок вимірювання часу і варіацій виміру часу для невідомих біт. Властивості "сигналу" і "шуму" визначають кількість замірів часу, необхідних для атаки. Нехай отримано j повідомлень y0, y1,., Yj-1 і їм відповідні вимірювання часу T0, T1,., Tj-1. Ймовірність, що припущення xb для перших b біт правильно, пропорційна,
В
де t (yi, xb) - час, необхідний для перших b ітерацій циклу вичсіленія yix mod n з використанням біт xb, - очікувана Фунція розподілу ймовірності Tt (y, xb) за всіма значеннями y і правильному xb. Т.к. F визначена як розподіл вероятностіTi-t (yi, xb), якщо xb правильно, то це - найкраща функція для передбачення Ti-t (yi, xb). Зверніть увагу, що вимірювання часу і проміжні значення s можуть використовуватися для поліпшення оцінки F.
При правильному припущенні для xb-1 є два можливих значення для xb. Ймовірність того, що xb - є правильним, а xb '- неправильним, може бути знайдена як
В
2.6 гратковий криптоанализ
На відміну від попередніх методів розкриття, гратковий криптоаналіз є не статистичним, а алгебраїчним. Замість оцінки ймовірностей, в даному випадку будуватися деяка цільова функція, і шукається її максимум. При цьому алгоритм шифрування представляється як композиція продовжених або гратковий певних булевих функцій. Їх відмінність від звичайних булевих функцій в тому, що вони можуть приймати всі раціональні значення від 0 до 1 (вважаючи, що 0 - брехня, 1 - істина). [14, 15]
Цільова функція описується таким чином [14]. П Припустимо, що порушник знає криптоалгоритм і деяку кількість розрядів відкритих і відповідних зашифрованих текстів. Нехай розряди відкритого тексту описуються рівняннями
xi = Fi (y1, ..., yn, z1, ..., zN). (1)
де yi
розряди шифрограми, zj
розряди ключа. Булеві функції
Fi не мають аналітичної запису (вона дуже складна), але значення їх можуть бути обчислені для довільного набору аргументів. Якщо відкриті і зашифровані тексти відомі в достатній кількості, що дорівнює O (N), то система рівнянь (1) має єдине рішення, яке і є ключем. При цьому досить знати тільки окремі розряди деяких блоків відкритого тексту. Запишемо для цього випадку систему рівнянь (1) у вигляді
fi (z1, ..., zN) = ai (2)
Оскільки система (2) має єдине рішення, воно може бути записано ...