К.т.н., доцент Ільєнко А.В., Блакита Ю.П.

Національний авіаційний університет (НАУ), Україна

ПРАКТИЧНІ ПІДХОДИ ВИКОРИСТАННЯ КРИПТОГРАФІЧНИХ СИСТЕМ НА БАЗІ ЕЛІПТИЧНИХ КРИВИХ

Вступ. Зацікавленість математичними конструкціями у вигляді групи раціональних точок еліптичних кривих виникла в криптографії в 1985 р в двох напрямках: для вирішення завдань факторизації великих цілих чисел і для побудови криптографічних протоколів. Ця зацікавленість особливо актуалізувалася в останні десятиліття. З одного боку, еліптичні криві виявилися джерелом кінцевих абелевих груп, які володіють корисними структурними властивостями, а з іншого - на основі їх застосування вдалося забезпечити ті ж показники стійкості, якими володіють числові і поліноміальні криптосистеми [1].

Метою даної роботи є дослідження практичних підходів використання криптографічних систем на базі еліптичних кривих з умови забезпечення захисту основних властивостей інформації та інформаційної системи, а саме конфіденційності, цілісності та доступності.

Використання криптографічних систем на базі еліптичних кривих. На даному етапі криптографічні системи на базі еліптичних кривих часто застосовуються для обміну ключами, шифрування даних, чи для створення цифрових підписів.

Аналог алгоритму Діффі-Хеллмана обміну ключами. Обмін ключами з використанням еліптичних кривих може бути виконаний таким чином. Спочатку вибирається просте число  і параметри a і b для рівняння еліптичної кривої ( ). Потім вибирається генеруюча точка . Параметри  і G криптосистеми є відомими всім учасникам.

Обмін ключами проводиться за наступною схемою:

-     Учасник А вибирає ціле . Потім обчислює відкритий ключ  

-     Точно так учасник В вибирає закритий ключ  і обчислює відкритий ключ .

-     Учасники обмінюються відкритими ключами, після чого обчислюють загальний секретний ключ K: Учасник А:  , Учасник В:  . Якщо даний ключ передбачається використовувати в якості сеансового ключа для алгоритму симетричного шифрування, то з цієї пари чисел необхідно створити одне значення [2].

Протокол Мессі-Омури дозволяє передати повідомлення по відкритому каналу зв'язку без попередньої передачі ключової інформації. Нехай  - еліптична крива, відома учасникам інформаційного процесу. Абонент А вибирає ключ зашифровування число , взаємно просте з n, при якому , і обчислює зворотне число : . Аналогічно, абонент В вибирає число , і обчислює : .  Абонент А поміщає повідомлення М в деяку точку  високого порядку еліптичної кривої і отримує точку . Цю точку  абонент А посилає абоненту В. Абонент В обчислює , і посилає результат  абоненту А, який знімає свій "замок", обчислюючи  і повертає отриману точку С абоненту В. Абонент В розшифровує повідомлення . В даному випадку не потрібно опублікування ніякої іншої інформації про параметри протоколу, крім самої еліптичної кривої. Недолік - необхідність трикратної передачі по відкритих каналах.

Алгоритм цифрового підпису на основі еліптичних кривих ECDSA

Для створення ключів:

-     Вибирається еліптична крива , точка , випадкове число   та обчислюється   .

-     Закритим ключем є d, відкритим ключем - (E, P, n, Q).

Для створення підпису:

-     Вибирається випадкове число  і обчислюється  і , якщо , то вибирається інше випадкове число k.

-     Обчислюється , , якщо , то вибирається інше випадкове число k.

-     Підписом для повідомлення М є пара чисел (r, s).

Перевірка підпису:

-     Перевірити, що цілі числа r і s належать діапазону чисел [0, n-1]. В іншому випадку результат перевірки негативний, і підпис відкидається.

-     Обчислити , , ,   ,   .

-     Підпис вірна в тому і тільки тому випадку, коли .

Шифрування / дешифрування з використанням еліптичних кривих

Найпростіший підхід до шифрування / дешифрування полягає в тому, щоб зашифрувати повідомлення М, яке може бути представлено у вигляді точки на еліптичній кривій . В якості параметрів розглядається еліптична крива  і точка G на ній. Учасник B вибирає закритий ключ  і обчислює відкритий ключ  . Щоб зашифрувати повідомлення  використовується відкритий ключ одержувача B . Учасник А вибирає випадкове ціле позитивне число k і обчислює .

Щоб дешифрувати повідомлення, учасник В обчислює:  . Учасник А зашифрував повідомлення  додаванням до нього . Ніхто не знає значення k, тому ніхто не знає . Противнику для відновлення повідомлення доведеться обчислити k, знаючи G і . Зробити це буде нелегко [3].

Висновки. В даній роботі проведено аналіз практичних підходів використання криптографічних систем на базі еліптичних кривих, а саме розглянуто обмін ключами, шифрування та алгоритм цифрового підпису. Перевага підходу на основі еліптичних кривих в порівнянні із завданням факторизації числа, що використовується в RSA, або завданням цілочисельного логарифмування, що застосовується в алгоритмі Діффі-Хеллмана, полягає в тому, що в даному випадку забезпечується еквівалентний захист при меншій довжині ключа та зменшується кількість математичних операцій на проведення процедур шифрування/дешифрування інформації.

 

Література

1.                     Долгов В. И. Эллиптические кривые в криптографии / В. И. Долгов  // Системи обробки інформації. — 2008. — № 6. — С. 2-10.

2.                     Криптография с использованием эллиптических кривых [Електронний ресурс]. – Режим доступа: http://www.read.excode.ru/art420p1.html

3.                     Криптографические основы безопасности. Криптография с использованием эллиптических кривых [Електронний ресурс]. – Режим доступа: http://www.intuit.ru/studies/courses/28/28/lecture/20430