Електронно-цифровий підпис за методом Шнорр
Введення
Мета моєї курсової роботи познайомитися і зрозуміти принцип реалізації електронно-цифрового підпису (надалі іменується ЕЦП), навчитися самостійно, реалізовувати ЕЦП на мові програмування С + +.
Розглянемо таке поняття як аутентифікація. Аутентифікація (англ. Authentication) - процедура перевірки автентичності, наприклад: перевірка автентичності користувача шляхом порівняння введеного ним пароля з паролем в базі даних користувачів; підтвердження автентичності електронного листа шляхом перевірки цифрового підпису листи по ключу шифрування відправника; перевірка контрольної сумою файлу на відповідність сумі, заявленої автором цього файлу.
Отже, що ж все-таки таке ЕЦП. ЕЦП це інформація в електронній формі, яка приєднана до іншої інформації в електронній формі (підписується інформації) або іншим чином пов'язана з такою інформацією і яка використовується для визначення особи, яка підписує інформацію. p align="justify"> За своїм суті електронний підпис являє собою реквізит електронного документа, що дозволяє встановити відсутність спотворення інформації в електронному документі з моменту формування ЕЦП та перевірити приналежність підпису власникові сертифіката ключа ЕЦП. Значення реквізиту виходить в результаті криптографічного перетворення інформації з використанням закритого ключа ЕЦП. p align="justify"> ЕЦП буває двох видів симетричні і асиметричні, розглянемо коротко кожен з цих видів:
) Симетричні цифрові підписи будуються за схемою, коли для шифрування і розшифрування застосовується один і той же криптографічний ключ.
Відповідно:
) Асиметричні цифрові підписи будуються на тому, що для шифрування і розшифрування використовуються різні ключі.
Розглянемо В«+В» і В«-В« таких ЕЦП:
Симетричні ЕЦП:
Симетричні схеми ЕЦП відносяться до криптосистемами з єдиним ключем. Котрий використовується і для підписання і для перевірки. Практично застарілий алгоритм. p align="justify"> В даний час симетричні шифри - це:
) Блокові шифри. Обробляють інформацію блоками певної довжини (зазвичай 64, 128 біт), застосовуючи до блоку ключ в установленому порядку, як правило, кількома циклами перемішування і підстановки, званими раундами. Результатом повторення раундів є лавинний ефект - наростаюча втрата відповідності бітів між блоками відкритих і зашифрованих даних. p align="justify">) Потокові шифри, в яких шифрування проводиться над кожним бітом або байтом вихідного (відкритого) тексту з використанням гамування. Потоковий шифр може бути легко створений на основі блочного, запущеного в спеціальному режимі. p align="just...