BigEdu.ru
» » » Программирование алгоритма цифровой подписи ГОСТ Р 34.10-94
Вернуться назад

Программирование алгоритма цифровой подписи ГОСТ Р 34.10-94

Введение

В настоящее время широкое распространение получили персональные компьютеры. Они, без преувеличения, вошли во все сферы человеческой деятельности. Это максимально облегчило человеческий труд. Сейчас трудно представить, чтобы делал человек без компьютера. Предприятия, фирмы, офисы, банки - это ещё далеко не все области применения персонального компьютера.

Без использования криптографии сегодня немыслимо решение задач по обеспечению безопасности информации, связанных с конфиденциальностью и целостностью. Если до 1990г. криптография обеспечивала закрытие государственных линий связи, то в наши дни использование криптографических методов получило широкое распространение благодаря развитию компьютерных сетей и электронного обмена данными в различных областях[3].

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

Данная курсовая работа написана на языке С.

С – это универсальный язык программирования с компактным способом записи выражений, современными механизмами управления структурами данных и богатым набором операторов[1].

Целью курсовой работы является разработка программы, которая реализует процедуру подписи сообщения и процедуру проверки подписи.

1. Пользовательский интерфейс программы

Интерфейс – аппаратная или программная система сопряжения объектов с различными характеристиками. Программный интерфейс позволяет согласовывать программы с различными параметрами, а также дают возможность пользователю работать в операционной среде с той или иной степенью комфорта.

Методы и средства взаимодействия с аппаратными и программными средствами называют пользовательским интерфейсом [2]. Любая программа должна обладать пользовательским интерфейсом, иначе, кроме своего разработчика, она будет недоступна в понимании лицу с ней не знакомому.

Интерфейс бывает различных типов. Разработанная программа обладает интерактивным интерфейсом. Основным устройством управления в данном случае является клавиатура.


2. Руководство пользователя

Программа предназначена для выполнения подписи сообщения и проверки подписи.

После запуска программа предлагает выбрать действие:

Последовательный вызов процедур подписи сообщения и проверки подписи.

Подписать сообщение.

Проверить подпись.

Входные данные хранятся в файле initialdata.txt:

р – простое число, удовлетворяющее требованию 2509 <р<2512 ;

q – простое число, удовлетворяющее требованию 2254 < q <2256 ;

a – число, которое рассчитывается по формулеaq ( mod p )=1 и удовлетворяет требованию 1<а<р-1 ;

x – закрытый ключ, удовлетворяющий требованию 1< x < q ;

y – открытый ключ, который рассчитывается по формуле y = ax ( mod p ) ;

m – хэш-функция по алгоритму ГОСТ Р 34.11.

Выбрав действие, программа производит необходимые действия и записывает результаты в файлы: цифровая подпись записывается в signature.txt, а результат проверки подписи – в verification result.txt.

3. Описание алгоритмов

3.2 Алгоритм функции проверки подписи

Функция проверки подписи verify проверяет подпись, использую параметры:

цифровую подпись сообщения М ;

открытый ключ;

хэш-функцию;

простые числа р и q .

Для проверки подписи необходимо вычислить:

v=mq-2 (mod q)

z1 =sv(mod q)

z2 =(q-r’)v(mod q)

u=(az1 yz2 (mod p))(mod q)

Если условие r ’= u выполнено – подпись подлинная. Результат проверки подписи находится в файле verification result.txt .

Алгоритм функции проверки подписи приведен в Приложении Б.


4. Отладка и проверка работоспособности программы

Программа была откомпилирована и отлажена.

Для проверки работоспособности программы был запущен файл sign exe , были выбраны действия, которые необходимо выполнить. Например, необходимо сформировать цифровую подпись и проверить ее подлинность.

Текст входного файла initial data.txt :

Текст выходного файла signature.txt :

Текст выходного файла verification result.txt :

Оценка результатов показала, что программа работает верно.

Листинг программы приведен в Приложении В.


Заключение

Разработанная программа написана на языке Си. Программа осуществляет формирование цифровой подписи по алгоритму ГОСТ Р 34.10-94 и проверку цифровой подписи.

Таким образом, задание на курсовую работу выполнено в полном объеме.


Список использованных источников

1. Керниган Б., Ритчи Д. Язык программирования Си Пер. с англ., 3-е изд., испр. – СПб.: «Невский диалект», 2001. – 352с.

2. Информатика: Базовый курс С.В. Симонович и др. – СПб,: Питер, 2001. –

Внимание, отключите Adblock

Вы посетили наш сайт со включенным блокировщиком рекламы!
Ссылка для скачивания станет доступной сразу после отключения Adblock!

Скачать
Курсовые работы по информатике и программированию Введение В настоящее время широкое распространение получили персональные компьютеры. Они, без преувеличения, вошли во все сферы человеческой
Оценок: 1001 (Средняя 5 из 5)

Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.

© 2016 - 2022 BigEdu.ru