Soi 2012 5 21

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Системи обробки інформації, 2012, випуск 5 (103) ISSN 1 681-7710

Інфокомунікаційні системи

УДК 004.056.55

О.В. Бочаров
Харківський національний університет радіоелектроніки, Харків

ДОСЛІДЖЕННЯ АЛГОРИТМУ ШИФРУВАННЯ NTRU

Об’єктом дослідження є алгоритм шифрування із відкритим ключем NTRU (Nth-degree TRUncated


polynomial ring). Наводиться коротка історія розвитку алгоритму, опис його реалізації з точки зору вико-
нуваних математичних операцій. Велика увага приділяється значимості алгоритму у сучасному
комп’ютерному світі. Розглянуті найбільш відомі методи криптографічних атак. Сформульовані переваги
алгоритму, що роблять його фаворитом серед асиметричних алгоритмів.

Ключові слова: шифрування, алгоритм NTRU, публічний ключ, факторизація, продуктивність.

чення перебором). Подвоєння ж довжини ключа


Вступ
значно збільшує ступінь захисту повідомлення.
Постановка проблеми та аналіз останніх до- Проте постійне збільшення довжини ключа
сліджень. Проблема захисту інформації шляхом призводить до збільшення часу, необхідного для
перетворень, що виключають її прочитання сторон- шифрування і дешифрування повідомлень. А даний
ньою особою, хвилювала людство з давніх часів. критерій також є безсумнівно важливим. Наприклад,
Криптографія історично зародилася з потреби пере- щоб досягти досить високої криптостійкости, алго-
дачі секретної інформації. В даний час у зв'язку з ритму RSA знадобиться виповняти перемножування
бурхливим розвитком міжнародної глобальної ме- між числами з бітністю, рівною 1024. Це величезні
режі Internet і масовим застосуванням комп'ютерних числа і подібні операції є надзвичайно витратними
інформаційних технологій, криптографія вирішує за часом та необхідними для виконання ресурсами.
важливі завдання по збереженню конфіденційності Ця проблема особливо актуальна у наш час розвитку
даних, захисту від зловмисницьких повідомлень, мобільних технологій, коли мобільні пристрої хоч і
контролю цілісності інформації. мають потужну апаратну складову, але все ж обме-
Поряд із розвитком криптографічних систем жені у потужностях.
удосконалювалися і методи, що дозволяють віднов- Однією з останніх розробок в області алгоритмів
лювати початкове повідомлення, виходячи з шифро- шифрування даних є алгоритм NTRU. На відміну від
тексту та іншої відомої інформації, тобто методи RSA він не отримав широкого розповсюдження, тому
злому. що з самого початку потрібно було підвищити стій-
Стійким вважається той алгоритм, який для кість і продуктивність цього шифру. Зараз всі недолі-
свого розкриття вимагає від противника практично ки виправлені і на практиці NTRU вже вважається
недосяжних обчислювальних ресурсів, або недося- набагато швидшим, ніж RSA. Алгоритм заснований
жного обсягу перехоплених зашифрованих повідом- на операціях множення поліномів, на відміну від
лень, або часу розкриття, який перевищує час життя. множення величезних чисел. Менша обчислювальна
Але оскільки методики злому шифрів безпере- складність у купі з більшою стійкістю при однаковій
рвно удосконалюються, потрібно бути готовим до довжині ключа робить алгоритм NTRU кандидатом
адекватної відповіді зловмисникам. Збільшення до- на застосовування в майбутньому в будь-яких сфе-
вжини ключа є одним з найбільш радикальних ме- рах, що вимагають шифрування даних – від звичай-
тодів протистояння спробам злому. Чим довше них користувацьких до банківських та урядових.
ключ, чим більша кількість комбінацій випадкових Метою статті є опис алгоритму NTRU, його
значень в ньому, тим більше часу знадобиться злов- переваг у порівнянні до інших алгоритмів асимет-
мисникові на перебір варіантів. Співвідношення між ричного шифрування.
довжиною ключа і кількістю можливих комбінацій
Виклад основного матеріалу
носить експоненціальний характер (подовження
ключа на один біт подвоює кількість можливих Криптосистема NTRU, що заснована на решіт-
комбінацій значень ключа і таким чином, в серед- частій криптосистемі, була створена як альтернатива
ньому подвоює час на відшукання потрібного зна- RSA та криптосистемам на еліптичних кривих

82 © О.В. Бочаров
Інфокомунікаційні системи
(ECC). Стійкість алгоритму забезпечується складні- знає і сторона B і сторона A, закритий знає тільки
стю пошуку найкоротшого вектора решітки, котра є сторона B і використовує його для генерації відкри-
більш стійкою до атак, що здійснюються на кванто- того ключа. Для цього сторона B вибирає два «ма-
вих комп’ютерах. На відміну від своїх конкурентів леньких» полінома f та g із R. «Малість» поліномів
RSA, ECC, Elgamal, алгоритм використовує операції мається на увазі в тому сенсі, що він маленький від-
ZX носно довільного поліному по модулю q – у довіль-
над кільцем усічених многочленів степені,
XN 1  ному поліномі коефіцієнти повинні бути приблизно
рівномірно розподілені по модулю q, а в малому
що не перевищує N – 1 поліномі вони набагато менші q. Малість поліномів
a  X   a  a 0  a1X  a 2 X2  визначається за допомогою чисел df і dg:
– поліном f має df коефіцієнтів, що дорівню-
...  A N2 X N2  a N1X N1. ють 1, і df–1 коефіцієнтів, що дорівнюють -1, інші
Алгоритм NTRU є відносно новою криптосис- дорівнюють 0. У цьому випадку кажуть, що f  f ;
темою. Перша версія була розроблена приблизно у – поліном g має dg коефіцієнтів, що дорівню-
1996 році трьома математиками – Хоффшейном, ють 1, і стільки же, що дорівнюють -1, інші дорів-
Пифером та Сильверманом. У 1996 році ці матема- нюють 0. У цьому випадку кажуть, що g  g .
тики разом із Девидом Лиманом заснували корпора-
Причина, по якій поліноми вибираються саме
цію «NTRU Cryptosystems» та отримали патент на
таким чином полягає в тому, що f, можливо, буде
криптосистеми. На перших порах криптосистема
мати зворотній, а g – однозначно ні (g(1) = 0, а ну-
інколи давала збій при розшифруванні повідомлен-
льовий елемент не має зворотнього).
ня назад у оригінальне навіть коли повідомлення
Сторона B повинна зберігати ці поліноми у се-
було зашифроване правильно. Але протягом остан-
ніх десяти років люди працювали над вдосконален- креті. Далі сторона B рахує зворотні поліноми Fp і
ням криптосистеми. Після першої презентації сис- Fq , тобто такі, що f *f p  1(mod p) і
теми деякі зміни були зроблені для покращення
f *fq  1(mod q) .
продуктивності системи та її безпеки. Більшість по-
кращень продуктивності були зосереджені на прис- Якщо f не має зворотнього поліному, то сторо-
коренні процесу, аніж на вирішенні проблеми із не- на B обирає інший поліном f.
правильною дешифровкою. У літературі до 2005 Секретний ключ – це пара (f , f p ) , а відкритий
року можна знайти приклади, де описуються невдачі ключ h обчислюється за формулою
при розшифруванні повідомлень за допомогою h  (pfq *g) mod q .
NTRU. Що стосується безпеки, починаючи с першої
версії NTRU, нові параметри були введені, що за- Тепер, коли у сторони A є відкритий ключ, во-
безпечують безпеку для усіх відомих на сьогодніш- на може відправити зашифроване повідомлення
ній день атак і непогане збільшення обчислювальної стороні B. Для цього потрібно представити повідом-
потужності. лення у вигляді поліному m з коефіцієнтами по мо-
Завдяки швидкості роботи та низькому спожи-  p p
дулю p, вибраними з діапазону   ,  . Тобто m є
ванню пам’яті NTRU може використовуватися у  2 2
мобільних пристроях чи смарт-картах. Криптологи «малим» поліномом по модулю q. Далі стороні A
із Бельгійського університету встановили, що при необхідно обрати інший «малий» поліном r, що ви-
тестуванні із максимальними налаштуваннями без- значається за допомогою числа dr. Поліном r має dr
пеки NTRU на 4 порядки швидше RSA та на 3 по- коефіцієнтів, що дорівнюють 1, і стільки ж, рівних
рядки швидше ECC. У квітні 2011 року американсь- -1, інші дорівнюють 0. У цьому випадку кажуть, що
кий комітет «Accredited Standarts Committee X9» r  r .
затвердив використання алгоритму NTRU у фінан-
Використовуючи ці поліноми, зашифроване
сових додатках. Виконавчий директор компанії
повідомлення отримуємо по формулі
«Security Innovation» Ед Адамс говорить, що в май-
e  (r *h  m) mod q . При цьому кожен, хто знає чи
бутньому правильно спроектований квантовий
комп’ютер буде мати змогу зламати і RSA і системи може обчислити поліном r , матиме змогу прочита-
на еліптичних кривих. Доки ще невідомо, чи мож- ти повідомлення m.
ливо зібрати такий комп’ютер на практиці, але фі- Тепер, отримавши зашифроване повідомлення
нансові установи можуть перелякатися і вже зараз e, сторона B може його розшифрувати, використо-
почати міграцію на новий стандарт. вуючи свій секретний ключ. Спочатку треба отри-
Розглянемо принципи роботи алгоритму. Для мати проміжний поліном a  (f *e) mod q . Якщо
передачі повідомленні від сторони A стороні B не- розписати шифротекст, то отримаємо наступний
обхідні відкритий та закритий ключі. Відкритий ланцюг

83
Системи обробки інформації, 2012, випуск 5 (103) ISSN 1 681-7710
a  (f *e) mod q  (f *(r * h  m)) mod q  стійкість окремого повідомлення –
 (f *(r * pfq *g  m)) mod q, 1 N!
r  .
і в результаті a  (pr *g  f *m) mod q . d! (N  2d)!
Після того, як сторона B обчислила поліном a Атака потребує більше пам’яті для зберігання
по модулю q, потрібно вибрати його коефіцієнти із проміжних результатів.
 q q Таким чином, якщо ми хочемо забезпечити
діапазону   ,  і далі обчислити поліном b, що
 2 2 стійкість системи 2n , треба вибрати ключ розміром
отримуємо із поліному a приведенням по модулю p: 22n .
b  a mod p  (f *m) mod p , так як (pr *g) mod p  0 .
Висновки
Тепер, використовуючи другу частину секрет-
ного ключа і отриманий поліном b, сторона B може Таким чином, алгоритм NTRU є дуже обіцяю-
розшифрувати повідомлення: c  (f p *b) mod p . чим алгоритмом асиметричного шифрування. Він
має достатню стійкість від злому за допомогою ква-
Нескладно побачити, що нтового комп’ютеру та більш велику швидкість опе-
c  fp *f *m  m(mod p) . Таким чином, отриманий рацій, аніж у інших алгоритмах асиметричного ши-
поліном c дійсно є вихідним повідомленням m. фрування. Ці переваги роблять алгоритм актуальним
Говорячи про методи атак на алгоритм NTRU, для використання як у мобільних пристроях, так і у
треба відмітити наступні найбільш розповсюджені: фінансовій сфері.
– атака повним перебором. Можливо декілька
Список літератури
варіантів перебору: або перебирати усі f  f і пере-
1. Петров А. Компьютерная безопасность. Крип-
віряти на малість коефіцієнти отриманих результатів
тографические методы защиты [Текст] / А. Петров. –
f *h(mod q)  g(mod q) , які повинні бути малими, або М.: ДМК, 2000. – 448 с.
перебирати усі g  g , також перевіряючи на малість 2. NTRU Cryptography [Електронний ресурс] /
Security Innovation. – Режим доступу до ресурсу: www/
коефіцієнти результату f (mod q)  f *h *h 1 (mod q)  URL: http://www.securityinnovation.com/products/encryption-
libraries/ntru-cryptography.html - 15.01.2012 р. – Загол. з
 f *fq *g *h 1 (mod q)  g *h 1(mod q) . На практиці екрану.
3. NTRUEncrypt криптосистема будущего? [Елек-
простір g менше простору f , тому стійкість тронний ресурс] / Хабрахабр. – Режим доступу до ресур-
су: www/ URL: http://habrahabr.ru/blogs/crypto/127878/ -
визначається простором g . А стійкість окремого 14.01.2012 р. – Загол. з екрану.
повідомлення визначається простором r .
– зустріч посередині. Цей метод був запропо-
нований Андрю Одлижко. Він зменшує кількість
варіантів до квадратного кореню.
Стійкість закритого ключа дорівнює
Надійшла до редколегії 8.05.2012
1 N!
g  , Рецензент: канд. техн. наук, проф. О.Г. Качко, Харків-
dg ! (N  2d g )
ський національний університет радіоелектроніки, Харків.

ИССЛЕДОВАНИЕ АЛГОРИТМА ШИФРОВАНИЯ NTRU


А.В. Бочаров
Объектом исследования является алгоритм шифрования с открытым ключом NTRU (Nth-degree TRUncated
polynomial ring). Приводится короткая история развития алгоритма, описание его реализации с точки зрения исполь-
зуемых математических операций. Большое внимание уделяется значимости алгоритма в современном компьютерном
мире. Рассмотрены наиболее известные методы криптографических атак. Сформированы преимущества алгоритма,
которые делают его фаворитом среди ассиметричных алгоритмов.
Ключевые слова: шифрование, алгоритм NTRU, публичный ключ, факторизация, производительность.

RESEARCH OF NTRU ENCRYPTION ALGORITHM


A.V. Bocharov
The object of research is encryption algorithm with the public key called NTRU (Nth-degree TRUncated polynomial ring).
Contains the briefly history of algorithm, description of implementation from the point of used mathematical operations. Big
attention is dedicated to significance of the algorithm in the modern computer world. Possible methods of cryptographic attacks
were reviewed. Benefits of the algorithm that make it better than the others were described.
Keywords: encryption, NTRU algorithm, public key, factorization, performance.

84

You might also like