Інфраструктура відкритих ключів

Сертифікати відкритих ключів. Криптосистеми з відкритими ключами (у т.ч. що реалізують ЕЦП) привабливі для користувачів у силу можливості забезпечення досить високого рівня безпеки за умови обміну тільки несекретною інформацією.

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

Для захисту від цієї погрози, відкриті ключі можуть розміщатися в підписаних (завірених) сертифікатах, використовуваних для перевірки дійсності ключів. Сертифікат за суттю деяке інформаційне поле, що містить необхідні дані для ідентифікації користувача системи ЕЦП.

Перед використанням відкритого ключа перевіряється його сертифікат (у т.ч. шляхом перевірки його підпису). Сертифікат звичайно містить ідентифікатор користувача, відкритий ключ і позначку часу його формування і терміну придатності.

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

При цьому ключі для зашифрування (відкритий) й розшифрування (секретний) різні, хоча й створюються разом. Один ключ стає відомим зацікавленим учасникам системи зв'язку, а інший зберігається в таємниці. Хоча можна шифрувати й розшифровувати обома ключами, дані, зашифровані одним ключем, можуть бути розшифровані тільки іншим ключем.

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

Потім цей сеансовий ключ шифрується за допомогою відкритого асиметричного ключа адресата й асиметричного алгоритму шифрування. Після чого зашифрований сеансовий ключ разом із зашифрованим повідомленням передається адресатові. Адресант, використовуючи той же самий асиметричний алгоритм шифрування й свій секретний ключ, розшифровує сеансовий ключ, а з його допомогою розшифровується власне повідомлення.

В комбінованих криптосистемах важливо, щоб ключі симетричних і асиметричних алгоритмів були порівнянні відносно рівня безпеки, який вони забезпечують. Якщо використовується короткий сеансовий ключ (наприклад, 40-бітовий DES), то практично не має значення, наскільки великі асиметричні ключі. Атаці будуть піддані не вони, а сеансові ключі DES.

Потрібно мати на увазі, що в комбінованій системі якщо атакуючій стороні стане відомий секретний асиметричний ключ, то буде скомпрометовано не тільки поточне, але й усі наступні повідомлення, відправлені адресатові.

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

Сутність Інфраструктури відкритих ключів полягає в наступному. Безпечно створюються й поширюються відкриті й секретні ключі асиметричних алгоритмів. Секретний ключ передається його власникові. Відкритий ключ зберігається в базі даних у стандарті X.500 і адміністрирується центром сертифікації ключів (ЦСК, Certification Authority).

Вважається, що користувачі довіряють адміністрації системи в плані забезпечення безпеки створення, розподілу й адміністрування ключами. Більше того, якщо центр генерації ключів і особа (орган) їх, що адмініструють, не те саме, те кінцевий користувач повинен вірити, що творець ключів дійсно знищив їхню копію.

Для кожного повідомлення обчислюється його хеш-функція. Отримане значення з допомогу алгоритму ЕЦП і секретного ключа адресанта перетворюється в ЕЦП тексту, а потім отриманий рядок символів додається до переданого тексту (тільки відправник може створити ЕЦП).

Генерується секретний ключ симетричного криптоалгоритма, який буде використовуватися для шифрування тільки цього повідомлення або сеансу взаємодії (сеансовий ключ). Після чого вихідний текст шифрується разом з доданої до нього електронним підписом за допомогою симетричного криптоалгоритма й разового (сеансового) ключа - утворюється шифротекст.

Тепер потрібно розв'язати проблему з передачею сеансового ключа одержувачеві повідомлення.

Відправник повинен одержати для асиметричного криптоалгоритму відкритий ключ адресата від центру сертифікації ключів ЦСК. Перехоплення незашифрованих запитів на одержання цього відкритого ключа є розповсюдженою формою атаки.

Може існувати ціла система сертифікатів, що підтверджують дійсність відкритого ключа ЦСК. Стандарт X509 описує ряд методів для одержання користувачами від відкритих ключів ЦCК, однак практично жоден з них не може з 100% гарантією захистити від підміни відкритого ключа, що є певним обмеженням для застосування систем з відкритим розподілом.

Отже, адресат запитує в ЦСК відкритий ключ одержувача повідомлення. Цей процес уразливий до атаки, у ході якої атакуючий втручається у взаємодію між відправником і одержувачем і може модифікувати трафік, переданий між ними. Тому відкритий ключ одержувача "підписується" ЦСК. Це означає, що ЦCК використовував свій секретний ключ для шифрування відкритого ключа адресата. Оскільки тільки ЦCК знає свій секретний ключ, тобто певна гарантія того, що відкритий ключ адресата отриманий саме від ЦCК.

Після одержання відкритий ключ адресата розшифровується за допомогою асиметричного відкритого ключа ЦСК і асиметричного криптоалгоритму. При цьому, природно, припускається, що ЦCК не був скомпрометований. Якщо ж він виявляється скомпрометованим, то це виводить із ладу всю мережу його користувачів.

Далі сеансовий ключ шифрується з використанням асиметричного криптоалгоритму й відкритого ключа одержувача (отриманого від ЦCК і розшифрованого).

Зашифрований сеансовий ключ поєднується із шифротекстом, який включає додану раніше ЕЦП.

Увесь отриманий пакет даних (зашифрований сеансовий ключ і шифротекст, у який крім вихідного тексту входить його ЕЦП) передається одержувачеві. Тому що зашифрований сеансовий ключ передається по незахищеній мережі, він є очевидним об'єктом різних атак.

Адресат виділяє з отриманого пакета зашифрований сеансовий ключ, який розшифровує, використовуючи свій секретний асиметричний ключ і той же самий асиметричний криптоалгоритм шифрування.

Потім, адресат, застосовуючи той же самий симетричний криптоалгоритм і розшифрований сеансовий ключ, відновлює із шифротекста вихідний текст разом з ЕЦП. Електронний підпис видаляється від вихідного тексту.

Адресат запитує в ЦСК відкритий ключ ЕЦП адресанта. Після одержання цього ключа, адресат розшифровує його за допомогою відкритого ключа ЦСК і відповідного асиметричного криптоалгоритма.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: