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

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

.

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


????? ???????? ? ?????? ?????????? ?????????? ??????. ???????? ???????? ??????????? ? ???? ??? ???????? ?????? ??

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

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

.

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

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

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

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

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

Підпис документів у форматі XML

Якщо документ представлений у форматі XML, то є кілька підходів до формування його підписів: формування ЕЦП XML-документів XMLdsig для Windows (MSXML5, MSXML6) з використанням Microsoft Office InfoPath 2003 - нової складової системи Microsoft Office; підпис XML-документа як звичайного файлу. Іноді для підпису в XML-документі в тезі документа створюють окремий атрибут, в який заноситься ЕЦП від символьного рядка змінної довжини, що містить значення атрибутів тега документа. Такий досить цікавий підхід до підпису XML-документа також зустрічається, і він є цілком легітимним.

Підпис файлів у форматі PDF

Для формування і перевірки ЕЦП і забезпечення юридичної значимості електронних документів, які формуються в форматі PDF, компанія "крипто-ПРО" розробила спеціальний продукт, званий «КріптоПро PDF». Він є модулем створення та перевірки ЕЦП і призначений для формування та перевірки ЕЦП в програмax Adobe Reader, Adobe Acrobat версії 7 і вище. «КріптоПро PDF» розроблений з використанням програмного інтерфейсу Adobe Systems Inc. і завірений електронним цифровим підписом компанії Adobe Systems.

Це дозволяє використовувати сертифіковані засоби криптографічного захисту інформації "КріптоПро CSP "в продуктах Adobe Acrobat, Adobe Reader та Adobe LiveCycle ES. Важливе зауваження: "крипто-Про CSP" для перевірки ЕЦП не вимагає активації ліцензії, тобто працює безкоштовно. Досить просто встановити цей продукт і перевіряти підпис з використанням Adobe Reader.

Підпис багатофайлових документів

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


Цифрові сертифікати

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

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

· порядковий номер сертифіката;

· ідентифікатор алгоритму електронного підпису;

· ім'я центра, що засвідчує;

· термін придатності;

· ім'я власника сертифіката (ім'я користувача, якому належить сертифікат);

· відкриті ключі власника сертифіката (ключів може бути декілька);

· ідентифікатори алгоритмів, асоційованих з відкритими ключами власника сертифіката;

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

Цифрові сертифікати володіють наступними властивостями:

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

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

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

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

· ключі генерує довірену особу. У такому випадку доводиться вирішувати завдання безпечної доставки секретного ключа власнику та надання довірених даних для створення сертифіката;

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

К-во Просмотров: 423
Бесплатно скачать Доклад: Електронний цифровий підпис