Електронний цифровий підпис

Доклад - Компьютеры, программирование

Другие доклады по предмету Компьютеры, программирование

°ка на основі вибраних повідомлень. Криптоаналітик може одержати підписи електронних документів, які він обирає сам.

Можливі результати атак:

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

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

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

 

Протоколи

 

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

Протоколи управління ключами можна розділити на два класи:

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

 

Стандартні протоколи узгодження ключів

 

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

Протокол 1. Сеансовий протокол узгодження ключів

 

Секретними є ключі і , відкриті і .

 

Загальним секретом є , що виробляється користувачами А і В, де h-кофактор. Конкретне секретне значення виробляється як

 

 

Таким чином, протокол реалізує вироблення сеансових пар ключів і виробляє про-мен відкритими сеансовий ключ, на підставі яких виробляється загальне секрет-ве значення.

 

Протокол 2. Протокол на головних ключах

У протоколі використовуються тільки головні пари ключів

 

і

 

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

 

.

 

Протокол 3. Повний протокол узгодження ключів

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

, і двох пар сеансових ключів , .

 

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

 

.

 

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

 

Підпис в HTML-формі

 

Така задача виникає при встановленні засобів ЕЦП в системах коли користувач працює в системі через Web-браузер (MS IE). У таких системах надходять наступним чином: створюється приховане hidden-поле у формі. Коли користувач натискає кнопку типу "підписати і відправити", відповідний скрипт обробника (наприклад, на VBScript) формує строкову змінну, в яку методом конкатенації записують важливу інформацію з ідентифікації документа і вміст текстових полів, які ввів користувач. Далі сформована стрічка підписується. Найчастіше використовуються методи обєктів CAPICOM.dll, не відділений підпис. Підписана строкою змінна і є електронний документ. Підписаний документ (підписаний рядок) записується в hidden-полі і методом POST передається на сервер. Серверний додаток перевіряє підпис у змінної, отриманої з hidden-поля, і в залежності від результатів перевірки ЕЦП і змістовної частини електронного документа здійснює його подальшу обробку. Важливим моментом є збереження підписаного документа на сервер. Для цього, як правило, створюють таблицю в базі даних системи з двома полями: поле ключа і строкове поле з підписаним електронним документом.

 

Підпис в базі даних

&n