Автор: Пользователь скрыл имя, 07 Декабря 2010 в 00:25, курсовая работа
В данной работе будет рассмотрено наиболее удобное средство защиты электронных документов от искажений, позволяющее при этом однозначно идентифицировать отправителя сообщения, является электронная цифровая подпись (ЭЦП).
Введение 4
Глава 1. Аналитическая часть. 6
1.1 Понятие ЭЦП. Основные алгоритмы реализации ЭЦП. 6
1.2 Аналоги информационной системы ЭЦП 21
1.3 Постановка задачи 28
Глава 2. Проектная часть 29
2.1 Моделирование бизнес - процессов 29
2.2 Информационное моделирование 32
2.3 Программные модули 40
Глава3. Технология работы с информационной системой «ЭЦП» 47
3.1 Технология работы с информационной системой «ЭЦП» 47
3.1 Перспективы развития информационной системы 49
Глава 4. Обоснование экономической эффективности 50
Заключение 53
Список использованной литературы 54
Приложение 55
Рисунок 2.2.2 – База данных
Как видно из схемы в базе данных применяются следующие таблицы:
Структура таблицы «Документ»
Таблица 2.2.1
id документа | Имя документа | Тип документа |
В таблице «Документ» представлены реквизиты документов, на которые необходимо поставить ЭЦП.
Структура таблицы «Клиент»
Таблица 2.2.2
id работника | ФИО | Должность | Частный пароль |
В
таблице «Клиент» представлены данные
о работниках и частный пароль.
Пароль необходим для последующей
реализации установления авторства и
разграничения доступа по сотрудникам.
Структура таблицы «Подпись»
Таблица 2.2.3
Подпись | Номер документа | Номер работника | Общий пароль |
В таблице «Подпись» соотносятся документ и подпись поставленная должностным лицом. Общий пароль необходим для реализации общего доступа к документу всем персоналом, это не обходимо для последующей организации электронного документооборота, при этом лицо не владеющее частным паролем не имеет права изменять документ просматриваемый, как общий. Таким образом, не нарушается принцип разграничения доступа по сотрудникам.
Согласно построенной базе данных и информации о работниках фирмы можно раздать частные пароли. Допустим, в какой-либо организации
В электронной подписи нуждаются следующие работники: директор, главный бухгалтер и кассир.
1. ФИО Иванов И. И., должность директор, частный пароль (рис 2.3.1):
hXgtLPIhfo3Bf0HKFh9xjO4q6
Рисунок
2.3.1 – Электронная подпись «
2. ФИО- , Петрова Е. С., должность – главный бухгалтер, частный пароль (рис 2.3.2):
LUJ7YOPzE7DC+
Рисунок
2.3.2 – Электронная подпись «
2. ФИО- , Харитонова В. А., должность – кассир, частный пароль (рис 3.3.3):
BOJLrHc8sDx2rbg08UWzIfOii
Рисунок 2.3.3 – Электронная подпись «Кассир»
Согласно веденным данным в поле «Введите текст для подписи» формируется уникальный код, который соответствует имени и должности работника, этот параметр можно менять по своему желанию, однако должна существовать единая форма подписи. Генерировать подпись можно несколько раз, при этом подпись в дешифрованном виде не изменится в зависимости от ключа. Это обеспечивает дополнительную защиту, в том случае если третьим лицам каким-то образом получится узнать код соответствующий подписи.
Генерация ЭЦП включает ряд этапов
Private Sub Button1_Click_1(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
If Me.TxtPlainText.Text = "" Then
MsgBox("Please enter a string to sign", MsgBoxStyle.Information)
Exit Sub
End If
' Конвертация строковых данных в массив байт
toEncrypt
= enc.GetBytes(TxtPlainText.
'
Шифрование данных с
encrypted
= mySender.EncryptData(
'
конвертирование вывода в
TextBox2.Text
= Convert.ToBase64String(
Me.Button2.Enabled = True
Формирование закрытого ключа
Private Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'
Хэширование шифрованных
' using the sender's private key. (Signature Block)
signature
= mySender.HashAndSign(
'
конвертирование вывода в
TextBox3.Text
= Convert.ToBase64String(
Me.Button3.Enabled = True
Проверка ЭЦП
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
'
Проверка подписи реализуется
через аутентификацию с
' публичного (открытого) ключа отправителя (дешифровка блока подписи)
If
myReceiver.VerifyHash(
encrypted, signature) Then
MsgBox("Signature Valid", MsgBoxStyle.Information)
Button4.Enabled = True
Else
MsgBox("Invalid Signature", MsgBoxStyle.Exclamation)
Button4.Enabled = False
End If
End Sub
Помимо приведенной выше программы по созданию и проверке ЭЦП, информационная система подразумевает наличие базы данных.
Система управления базой данных имеет следующий вид (рис 2.3.4):
Рисунок 2.3.4 – Система управления базой данных
С помощью этого приложения у программиста есть возможность добавления нового клиента ЭЦП, реализация соединения базы данных и языка программирования (Microsoft Visual Basic 2008 Express Edition) реализуется следующим образом:
С помощью меню Data указывается путь к ранее созданной базе данных. Далее необходимо добавить компоненты: DataSet, DataGrindView, BindingNavigator, последний создает строку меню, добавлением стандарных элементов меню, получаем возможность работы с базой данных, для сохранения результатов вводим следующий код:
Private
Sub SaveToolStripButton_Click(
Validate()
КлиентBindingSource.
КлиентTableAdapter.
End Sub
Переход между СУБД и рабочей формой осуществляется следующим образом:
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Form3.Show()
End Sub
Разработанная информационная система состоит из следующих элементов:
- база данных;
-
система управления базой
- программы по созданию ЭЦП.
Для уверенной работы пользователя с информационным продуктом необходимо составить инструкцию по применению.
На рисунке представлена главная форма (рис 3.1.1.), именно с этой формой будет работать пользователь. На форме шесть кнопок и четыре текстовых поля.
Рисунок 3.1.1 – Главная форма
В текстовую форму «Введите текст для подписи» пользователь вводит информацию, которая будет аналогом его личной подписи, это может быть как текст так и число.
При нажатии на кнопку «Открытый ключ (Получатель)» пользователь увидит код соответствующий его подписи, другими словами это его общий пароль, который дает доступ для чтения и только чтения докмента.
При нажатии на кнопку «Закрытый ключ (отправитель)» пользователь увидит код соответствующий его подписи, другими словами это его частный пароль, который дает право обладателю ЭЦП изменять документ.
При нажатии на кнопку «Проверить подпись с помощью открытого ключа» происходит проверка подписи, если подпись «правильна», то пользователь увидит сообщение (рис 3.1.2):
Рисунок 3.1.2 – Проверка подписи
В противном случае на экране появится сообщение(рис 3.1.3):
Рисунок 3.1.3 – Проверка подписи
При нажатии на кнопку пользователь поучит дешифрованный вариант подписи, то есть то что он вводил в поле«Введите текст для подписи».
При нажатии на кнопку «open data base» (открыть базу данных) открывается окно (рис 3.1.4):
Рисунок 3.1.4 – СУБД
В данном форме администратор вводит информации о сотрудниках и их ЭЦП, что необходимо для реализации разграничения доступа.
К перспективам развития можно отнести:
- реализацию архитектуры «Файл-сервер»
- значительно сократить время, затрачиваемое на оформление сделки и обмен документацией;
-
гарантировать достоверность
-
минимизировать риск
- увеличение производительности;
- уменьшение реакции ответа;
- разграничение
доступа по сотрудникам.
Для
расчета экономической
- вычислить расходы на заработную плату сотрудников автосалона до автоматизации
Расходы на заработную плату сотрудников организации до автоматизации
Таблица 3.2.1
№ п/п | должность | Заработная плата (тыс. руб) | количество штатных единиц | итого за год (тыс. руб) |
1 | директор | 50 | 1 | 600 |
2 | главный бухгалтер | 30 | 1 | 360 |
3 | финансовый
директор |
40 | 1 | 480 |
4 | сектерать | 15 | 3 | 540 |