Создание Web-сервиса осуществляющего цифровую подпись

Автор работы: Пользователь скрыл имя, 03 Мая 2014 в 18:37, курсовая работа

Краткое описание

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

Содержание

Цели и задачи курсовой работы 5
Подготовка и порядок выполнения работы 6
1. Теоретические сведения 7
1. 1. Построение Web – сервиса с функцией электронной подписи 7
2. CryptoAPI 9
3. Windows Communication Foundation 10
4. Описание программы 12
5. Сравнение программы с другими программными продуктами 13
Заключение 14
Список первоисточников 15
Приложения 16
Руководство пользователя 16
Руководство администратора 16
Руководство разработчика 17
Снимок с экрана работающей программы 18
Техническое задание 19
Исходный код программы 22

Прикрепленные файлы: 1 файл

Пояснительная записка Трошагин.docx

— 121.32 Кб (Скачать документ)

 

Удобность:

Функция

kyrsovaia

eSign-PRO

Наличие графического интерфейса

+

+

Разделение функций пользователя и администратора

+

+


Цена:

kyrsovaia

Free

eSign-PRO

Paid


 

 

 

 

 

 

 

 

 

 

 

 

Заключение

 

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

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

 

 

 

 

Список первоисточников

  1. Интернет ресурс: http://www.esign-pro.ru
  2. Интернет ресурс:  http://ru.wikipedia.org/wiki/Электронная_подпись
  3. Федеральный закон Российской Федерации от 6 апреля 2011 г. N 63-ФЗ
  4. Интернет ресурс: http://ru.wikipedia.org/wiki/Криптосервисы_.NET_Framework
  5. Интернет ресурс: http://www.gosuslugi.ru/pgu/eds/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложения

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

 

Программа обладает следующими возможностями:

- авторизация по логину и паролю (8-12 символов цифры + буквы)

-создание пользователя из администраторской  части.

- подписи и проверка подписи документа.

- обмен пользовательскими сообщениями.

-блокирование пользователя при 5 некорректных вводах пароля.

 

Начало работы

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

-Иметь соединение с интернетом.

-Иметь любой  современных браузер.

-Иметь активную  учетную запись пользователя.

При первом входе в входе в сервис, произойдет перенаправление на страницу обязательной смены пароля (пароль должен удовлетворять действующей парольной политики).

 

Работа сервиса

 

После входа в систему мы получим возможность сменить текущий пароль. А так же написать сообщение любому пользователю в сети, прикрепив к нему файл, который будет подписан. Следует добавить что сервис так же предоставляем просмотр входящих сообщение и проверку подписи файла-вложения.

 

Руководство администратора

 

Для нормальной работы ПО необходимо:

  • 100 Mbсвободного места на сервере;
  • .NET FRAMEWORK 4.0;
  • Установленное средство визуализации DEV EXPRESS.
  • Установленный сервер MS SQL 2008 R2
  • Сервис работает под операционной системой Windows не ниже Windows XP SP3.

 

Руководство разработчика

 

Основные функции программы:

[OperationContract()]

Domain.UserExternal GetCurrentUserExternal(); - получает контекст текущего пользователя

 

[OperationContract()]

void ChangePassword(string oldPassword, string newPassword) - меняет пользовательски пароль

 

 [OperationContract()]

Domain.Message GetMessage(int id); - получает сообщение

 

[OperationContract()]

Domain.Message CreateMessage(string subject, string text, int? toUserId, bool isImportant,byte[] openKey); - создает сообщение

 

[OperationContract()]

int GetUnreadMessageCount(bool? isOutgoing,bool? isImportant); - получает список непрочитанных сообщение

[OperationContract()]

void CreateAttachment(int messageId, string fileName, byte[] fileBody); - создает файл-приложение

 

[OperationContract()]

List<Domain.MessageAttachmentInfo> GetAttachmentsByMessageId(int messageId); - получает приложение

[OperationContract()]

void CreateExtUser(string login, string password);- создает пользователя

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Снимок с экрана работающей программы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Техническое задание на разработку сервиса реализующего подписание и проверку документа с цифровой подписью.

.

 

1. Введение.

Разработать следующие программные средства:

  1. Сервер реализующий цифровую подпись
  2. Web клиент пользователя.

Предполагается использовать программу в различных организациях для обмена электронными документами.

2. Основания для разработки.

Основанием для разработки является выбранная тема«Создание Web-сервиса осуществляющего цифровую подпись», утвержденная заведующим кафедры.

3. Назначение разработки.

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

 
4. Требования к программе или  программному изделию.

 
4.1 Требования к функциональным  характеристикам.

Разрабатываемая модель должна обладать следующими функциями:

- авторизация по логину и паролю (8-12 символов цифры + буквы)

-создание пользователя из администраторской  части.

- подписи и проверка подписи документа.

- обмен пользовательскими сообщениями.

-блокирование пользователя при 5 некорректных вводах пароля.

 

4.2 Требования к надежности.

Не предъявляются.

 

4.3 Требования к безопасности ПО.

Комплекс программных средств должен обеспечить подпись и проверку подписи документов.

Программа должна обеспечить надежность при возможных внешних попытках нарушить её штатную работу.

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

 

4.4 Условия эксплуатации.

Стандартные условия эксплуатации программных продуктов.

 

4.5 Требования к составу и  параметрам технических средств.

Для нормальной работы ПО необходимо:

  • 100 Mbсвободного места на сервере;
  • .NET FRAMEWORK 4.0;
  • Установленное средство визуализации DEV EXPRESS.
  • Установленный сервер MS SQL 2008 R2
  • Сервис работает под операционной системой Windows не ниже Windows XP SP3.

4.6 Требования к маркировке и  упаковке.

Не предъявляются.

 
4.7 Требования к транспортированию  и хранению.

Не предъявляются.

 

4.8 Специальные требования.

Не предъявляются.

 

5. Требования к программной документации.

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

  • пояснительная записка к проекту;
  • описание структуры программного продукта, подпрограмм, компонентов;
  • руководство пользователя;
  • руководство разработчика.

Виды, комплектность и содержание документов в части, определенной настоящим ТЗ, должны учитывать требования ГОСТ 34.201-89 и РД 50-34.698.

 

6. Стадии и этапы разработки.

 

Содержание работы

Срок

Исполнитель этапа разработки

1

Исследование концепций современных стандартов

1-я неделя

Трошагин О.А.

2

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

2-я неделя

Трошагин О.А.

3

Выработка технического задания

3-я неделя

Трошагин О.А.

4

Выработка своего решения

4-я неделя

Трошагин О.А.

5

Создание эскизного проекта

5-я неделя

Трошагин О.А..

6

Рабочий проект

6-7 недели

Трошагин О.А.

7

Разработка документации

8-я неделя

Трошагин О.А.

8

Испытание программы и сдача заказчику

9-я неделя

Трошагин О.А.


 

7. Инструменты разработки

Разработка программного продукта должна осуществляться на Microsoft Visual Studio не ниже 2010. Разработка базы данных должна осуществляться под MS SQL SERVER не ниже 2008 R2

 

8. Прочие условия

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

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

Настоящее ТЗ может быть уточнено или изменено в процессе работы. Уточнения и изменения ТЗ производятся по согласованию сторон. Оформление изменений осуществляется выпуском дополнений, которые являются неотъемлемой частью настоящего ТЗ.

Согласование и утверждение изменений производится в том же порядке и теми же должностными лицами, что и согласование и утверждение ТЗ.

Замечания по отчетным материалам должны быть представлены Исполнителю с техническим обоснованием в письменной форме.

Виды, состав, объем и методы испытаний ПО определяются программой и методикой испытаний.

Испытания проводятся на площадках развертывания ПО.

Сроки приемки работ определяются календарными планами и сроками проведения соответствующих этапов в соответствии с техническими требованиями на создание ПО.

Прием и сдача проводимых работ осуществляются совместной комиссией на основе утвержденной программы и методики испытаний.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Исходный код программы

CreateUser.aspx

 

<%@ Page Title="" Language="C#" MasterPageFile="~/Client.Master" AutoEventWireup="true"

    CodeBehind="CreateUser.aspx.cs" Inherits="ClientWeb.CreateUser" %>

 

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">

</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="PageName" runat="server">

 <p>

         Создание  пользователя</p>

</asp:Content>

<asp:Content ID="Content3" ContentPlaceHolderID="ContextMenu" runat="server">

</asp:Content>

<asp:Content ID="Content4" ContentPlaceHolderID="InfoPanel" runat="server">

 <asp:Label ID="lInfoPanel" runat="server" CssClass="ErrorText"

         EnableViewState="False"></asp:Label>

</asp:Content>

<asp:Content ID="Content5" ContentPlaceHolderID="MainContentPlaceHolder" runat="server">

    <script type="text/javascript">

        function LostFocusValid(s, e, group) {

            e.processOnServer = ASPxClientEdit.ValidateGroup(group);

        }

    </script>

 <dxp:ASPxPanel ID="pMain" runat="server" CssClass="InputParamPanel" RenderMode="Table">

        <PanelCollection>

            <dxp:PanelContent ID="PanelContent1" runat="server">

                <table cellpadding="5">

                    <tr>

                        <td>

                            <dxe:ASPxLabel ID="lOldPassword" runat="server" AssociatedControlID="tbOldPassword"

                                CssClass="Label" Text="Логин пользователя">

                            </dxe:ASPxLabel>

                        </td>

                        <td>

                        <dxe:ASPxTextBox ID="tbOldPassword" runat="server" Width="170px"

                            ClientInstanceName="tbOldPassword" EnableClientSideAPI="True" Password="False"

                                MaxLength="12" ToolTip="Введите логин пользователя">

                                        <ValidationSettings CausesValidation="True" EnableCustomValidation="True" ErrorDisplayMode="Text"

Информация о работе Создание Web-сервиса осуществляющего цифровую подпись