Криптологія, Системи електронного цифрового підпису (ЕЦП) - Розробка електронного цифрового підпису
Криптологія - наука, що займається методами шифрування і дешифрування. Криптологія складається з двох частин - криптографії та криптоаналізу. Криптографія займається розробкою методів шифрування даних, в той час як криптоаналіз займається оцінкою сильних і слабких сторін методів шифрування, а також розробкою методів, що дозволяють зламувати криптосистеми.
Спочатку криптографія вивчала методи шифрування інформації - оборотного перетворення відкритого (вихідного) тексту на основі секретного алгоритму або ключа в шифрований текст (шифротекст). Традиційна криптографія утворює розділ симетричних криптосистем, в яких шифрування і дешифрування проводиться з використанням одного і того ж секретного ключа. Крім цього розділу сучасна криптографія включає в себе асиметричні криптосистеми, системи електронного цифрового підпису (ЕЦП), хеш-функції, управління ключами, отримання прихованої інформації, квантову криптографію.
Системи електронного цифрового підпису (ЕЦП)
Електронний цифровий підпис (ЕЦП) - вид електронного підпису, отриманого за результатом криптографічного перетворення набору електронних даних, який додається до цього набору або логічно з ним зв'язується і дає змогу підтвердити його цілісність та ідентифікувати особу, його підписує.
Цифровий підпис дозволяє вирішити наступні три завдання:
Ѕ здійснити аутентифікацію джерела даних,
Ѕ встановити цілісність повідомлення або електронного документа,
Ѕ забезпечити неможливість відмови від факту підпису конкретного повідомлення.
Схема електронного підпису зазвичай включає в себе:
Ѕ алгоритм генерації ключових пар користувача;
Ѕ функцію обчислення підпису;
Ѕ функцію перевірки підпису.
Надійність схеми цифрового підпису визначається складністю наступних трьох завдань:
Ѕ Підробки підпису, тобто знаходження значення підписи під заданим документом особою, що є власником секретного ключа;
Ѕ Створення підписаного повідомлення, тобто знаходження хоча б одного повідомлення з правильним значенням підпису;
Ѕ Підміни повідомлення, тобто підбору двох різних повідомлень з однаковими значеннями підпису.
Функція обчислення підпису на основі документа і секретного ключа користувача обчислює власне підпис. Залежно від алгоритму функція обчислення підпису може бути детермінованою або ймовірнісної. Детерміновані функції завжди обчислюють однакову підпис за однаковими вхідними даними. Імовірнісні функції вносять у підпис елемент випадковості, що підсилює криптостойкость алгоритмів ЕЦП. Однак, для імовірнісних схем необхідний надійний джерело випадковості (або апаратний генератор шуму, або криптографічно надійний генератор псевдовипадкових чисел), що ускладнює реалізацію.
Функція перевірки підпису перевіряє, чи відповідає дана підпис даного документу та відкритому ключу користувача. Відкритий ключ користувача доступний всім, так що будь-хто може перевірити підпис під даним документом.
Оскільки документи, які підписували - змінної (і досить великий) довжини, в схемах ЕЦП найчастіше підпис ставиться не на сам документ, а на його результат обчислення хеш. Для обчислення хешу використовуються криптографічні хеш-функції, що гарантує виявлення змін документа при перевірці підпису. Хеш-функції не є частиною алгоритму ЕЦП, тому в схемі може бути використана будь надійна хеш-функція.
Алгоритми ЕЦП діляться на два великі класи: звичайні цифрові підписи і цифрові підписи з відновленням документа. Звичайні цифрові підписи необхідно пристиковувати до підписувати документи. До цього класу належать, наприклад, алгоритми, засновані на еліптичних кривих (ECDSA, ГОСТ Р 34.10-2001, ДСТУ 4145-2002). Цифрові підписи з відновленням документа містять в собі підписується документ: у процесі перевірки підпису автоматично обчислюється і тіло документа. До цього класу належить один з найпопулярніших алгоритмів - RSA.
Електронний цифровий підпис функціонує на основі криптоалгоритмів з асиметричними (відкритими) ключами та інфраструктури відкритих ключів. Проблема традиційних алгоритмів шифрування з симетричними ключами полягає в тому, що шифрування і дешифрування відбувається за допомогою одного і того ж ключа. У зв'язку з цим виникає питання про обмін ключами. Для того щоб зробити захищений обмін інформацією, користувачам необхідно обмінятися ключами, при чому використовувати для цього обміну альтернативні засоби передачі інформації, оскільки при обміні нешифрований інформацією по електронній пошті висока ймовірність дискредитації ключа. Ідеальним, з точки зору безпеки, варіантом представляється особистий обмін ключовими носіями, проте він є найбільш ресурсоємним.
У криптосистемах на основі асиметричних ключів для шифрування і дешифрування використовується пара ключів - секретний і публічний ключі, унікальні для кожного користувача, і цифровий сертифікат. Цифровий сертифікат являє собою розширення відкритого ключа, що включає не тільки сам ключ, але й додаткову інформацію, що описує приналежність ключа, час використання, доступні криптосистеми, назва засвідчувального центру і т. д.
Для реалізації подібної взаємодії використовуються спеціальні структури, які засвідчують центри. Їх основна функція - поширення публічних і секретних ключів користувачів, а також верифікація сертифікатів. Засвідчують центри можуть об'єднуватися в ланцюжки. Вищий (кореневої) засвідчує центр може видати сертифікат і права на видачу ключів нижчестоящому центру. Той, у свою чергу, може видати права ще іншому нижчестоящому центру і так далі, причому, сертифікат, виданий одним з центрів, може бути верифікований кожним із серверів в ланцюжку. Таким чином існує можливість встановити центр розповсюдження секретних ключів в безпосередній близькості від користувача, що вирішує проблему дискредитації ключа при передачі по мережах зв'язку.
У випадку з ЕЦП процес обміну повідомленням виглядає наступним чином (якщо це алгоритм, то значить в ньому є певна послідовність дій. Отже форматування краще робити у вигляді нумерації кроків):
Ѕ відправник отримує у засвідчувального центру секретний ключ;
Ѕ використовуючи цей ключ, формує електронний цифровий підпис і відправляє лист;
Ѕ одержувач за допомогою публічного (загальнодоступного) ключа і цифрового сертифіката, отриманого у засвідчувального центру, встановлює авторство документа і відсутність спотворень.
Похожие статьи
-
Стандарт ЕЦП DSS/DSА - Розробка електронного цифрового підпису
У 1991 р NIST (National Institute of Standards and Technology) запропонував для обговорення проект стандарту ЕЦП DSS (Digital Signature Standard),...
-
ВСТУП - Розробка електронного цифрового підпису
Метою аутентифікації електронних документів є їх захист від можливих видів зловмисних дій, які можуть завдати істотної шкоди банківським і комерційним...
-
Цифровий підпис на основі алгоритму Ель Гамаля (EGSA) Хешування відбувається за схемою, зображеної на рис. 2.1 Рисунок 2.1 - Схема функції хешування...
-
ВИСНОВКИ - Розробка електронного цифрового підпису
Схема цифрового підпису Ель Гамаля має ряд переваг у порівнянні зі схемою цифрового підпису RSА: Ѕ при заданому рівні стійкості алгоритму цифрового...
-
Хеш-функція - Розробка електронного цифрового підпису
Функція хешування - це відображення h з безлічі всіх послідовностей символів з алфавіту А в, де m - деяке фіксоване натуральне число. Таким чином, кожна...
-
ПЕРЕЛІК ВИКОРИСТАНИХ ДЖЕРЕЛ - Розробка електронного цифрового підпису
1. Баричев С. Г Основи сучасної криптографії // Гончаров В. В., Сєров Р. Е. - Москва, Гаряча лінія - Телеком, 2001 2. Бєляєв А. В. Методи і засоби...
-
Програмний код для алгоритму ЕЦП ЕЦП DSS/DSА - Розробка електронного цифрового підпису
#include "stdafx. h" Extern "C" { #include "miracl. h" } #include <ctime> #include <cstring> #include <iostream> Class DSA { Public: Big p, q,...
-
Програмний код для алгоритму ЕЦП по Ель Гамалю #include "stdafx. h" #include "ElGamal. h" #include <ctime> #include <iostream> Inline void...
-
База даних (БД) -- це організована структура, призначена для зберігання інформації: даних і методів, за допомогою яких відбувається взаємодія з іншими...
-
Відомі два підходи до організації інформаційних масивів: файлова організація та організація у вигляді бази даних. Файлова організація передбачає...
-
Модуль PHP PHP (англ. PHP:Hypertext Preprocessor -- PHP:гіпертекстовий препроцесор), попередньо: Personal Home Page Tools -- скриптова мова...
-
Google Android System Android - операційна система для смартфонів, планшетів і нетбуків. Компанія Google придбала розробника програмного забезпечення...
-
Вступ - Розробка гри в С# "Корови та бики"
Ціль курсової роботи є програмна реалізація логічної гри "Корови і бики". Програмування - процес і мистецтво створення комп'ютерних программ за допомогою...
-
Основні характеристики Найбільш істотні відмінності між додатками для мобільних пристроїв і додатками для настільних комп'ютерів обумовлені, ймовірно,...
-
SSL сертификат представляет собой простой текстовый файл, который может быть редактирован и создан кем угодно. Чтобы убедиться в том, что сертификат...
-
Далі наводиться загальний вигляд (рис. 5.3) логіко-функціональної схеми роботи системи. Рис. 5.3 Логіко-функціональна схема роботи системи тестування Як...
-
Aрхітектурнa та телекомунікаційна стадія проектування СКС Структурована кабельна система (Structured Cabling System, SCS) - це набір комутаційних...
-
Зробивши аналіз літературних джерел було отримано такі результати, що широкому впровадженню Інтернету речей перешкоджають складні технічні та...
-
Как показали результаты моделирования, корпус Kyocera KD-PB1D79 полностью отвечает требованиям ТЗ. Устройство работает в заданном диапазоне температур -...
-
Электронная цифровая подпись (ЭЦП) - одна из криптографических систем зашиты контроля и подлинности информации. Значение ЭЦП усилилось при передаче...
-
Для запуску розробленого програмного продукту необхідна наявність на персо-нальному комп'ютері встановленого Mysql Server (локального), або доступ через...
-
Висновок - Розробка програмного забезпечення для відтворення файлів мультимедіа для Windows Phone
Оскільки практично всі сьогодні носять з собою смартфони і різні мобільні пристрої, мобільні програми дозволяють мати необхідну інформацію під рукою. Ці...
-
Функціональне призначення та технологічні особливості розробки Метою дипломної роботи є розробка гнучкої системи підтримки підвищення кваліфікації...
-
Функціональна і логічна структура - Розробка програми для проходження різноманітних тестів
При запуску, програма чекає наступних дій користувача. Оскільки наша тестова програма майже досконала то вона має на меті розробку будь - якого тесту при...
-
Существуют две группы определений ОС: "совокупность программ, управляющих оборудованием" и "совокупность программ, управляющих другими программами". Обе...
-
UML діаграма діяльності варіантів використання Задача сайту для медичної лабораторії містить у собі рішення покращення діяльності лабораторії. За...
-
Геоінформаційний система проектування моделювання Порядок реєстрації земельних ділянок З набранням чинності Законом України "Про Державний земельний...
-
Програмний алгоритм аутентифікація користувач При запуску програми першим вікном буде вікно авторизації (Див. Рис. 1.1.). В цьому вікні є можливість...
-
Блок - схема алгоритму, Опис алгоритму - Розробка гри в С# "Корови та бики"
Рисунок 2.1 - Блок - схема алгоритму роботи програми Рисунок 2.1 (продовження) Опис алгоритму 3.1. Робота програми розпочинається з виділення пам'яті під...
-
Как отмечалось, основной тенденцией интегральной микроэлектроники является повышение степени интеграции микросхем. Наряду с этим возрастает и...
-
В пленочных интегральных микросхемах элементы реализуются в виде пленок различной конфигурации из разных материалов. В зависимости от толщины...
-
Згідно технічного завдання потрібно спроектувати локальну комп'ютерну мережу, яка складається з п'яти поверхів, на кожному з яких знаходиться по п'ять...
-
Опис роботи програми - Розробка гри в С# "Корови та бики"
Для того, щоб запустити програму необхідно двічі клікнути мишею на файл Cowbulls. exe. Користувач побачить стартове вікно програми, яке зображене на Рис...
-
Перевіряємо працездатність мережі., Висновок - Розробка мережі в Cisco Packet Tracer
Щоб впевнитись, що є з'єднання між комп'ютерами виконуємо перевірку, за допомогою команди ping з PC2 на PC16 (рисунок 5.9). Рисунок 5.8. Вікно перевірки...
-
Висновок, Список використаної літератури - Розробка бази даних магазину з продажу побутової техніки
У даній роботі описана розроблена в ході проектування база даних "Магазин з продажу побутової техніки". База даних призначена для використання невеликих...
-
Методика розрахунку мережі, Розрахунок PDV - Розробка мережі в Cisco Packet Tracer
Розрахунок PDV Допустимі розміри мережі Ethernet визначаються рядом факторів: - обмеження на довжину кабельного сегменту, що пов'язане з затуханням та...
-
Вибір і технологічні характеристики комутаторів - Розробка мережі в Cisco Packet Tracer
Комутатор - пристрій, призначений для з'єднання декількох вузлів комп'ютерної мережі в межах одного або декількох сегментів мережі. Для створення...
-
Даний розділ один з найбільш об'ємних, в зв'язку з різноманіттям функцій створення, коригування, трансформування координат і друку багатьох звітних форм....
-
Розглянемо порядок заповнення інформації про внутрішньогосподарські пристрої земельних ділянок. Для всіх ділянок несільськогосподарського призначення...
-
В цьому розділі я описую яку послідовність необхідно витримати при створенні інтерфейсу головного вікна програми для того, щоб створити форму та...
Криптологія, Системи електронного цифрового підпису (ЕЦП) - Розробка електронного цифрового підпису