Разработка информационного обеспечения электронного документооборота

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



p>Закладка результатов поиска

Здесь также можно посмотреть сам документ, его регистратора, исполнителей, контролеров и прочее.

Стоит обратить внимание еще на две возможности этой программы:

печать поля отображения данных;

очистка временных файлов.

Печать производится путем нажатия пунктов меню Документ -> Настройки печати; Предпросмотр; Печать.

Таблица 5 Диалоги печати

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

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

Диалог системных опций

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

Системные требования

Данный программный продукт использует Just-in-time компилятор для исполнения кода программы. Это и накладывает ограничения на системные требования, так как значительно нагружает процессор дополнительной обработкой кода.

Для работы программы необходима операционная система семейства Windows (программа тестировалась на Windows 2000, Windows XP, Windows Vista) или любая другая, поддерживающая .Net Framework 2.0, а также нужен пакет MS Office 2003 для работы с Word.

Минимальные системные требования: процессор с тактовой частотой 300 MHz, 64 МБ оперативной памяти, а также 2 МБ свободного места на жестком диске для хранения установленной программы. Рекомендуемые системные требования: отдельный сервер для хранения базы данных, сервер приложений, на котором будет храниться серверная часть программы, клиентские компьютеры с тактовой частотой процессора 1000 MHz, 512 МБ оперативной памяти, 500 МБ свободного места на жестком диске для хранения временных документов.

Информационная безопасность

Защита информации в проекте реализована на программном уровне. Здесь ведена система учетных записей пользователей с паролями. Шифрования во время соединения программ клиента и сервера не осуществляется. Но пароль не передается в открытом виде, а хэшируется при помощи алгоритма md5.

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

Функция получения md5-хэша

public string getMD5Hash(string input)

{

//Создание объекта для хэширования.Security.Cryptography.MD5CryptoServiceProvider x = new System.Security.Cryptography.MD5CryptoServiceProvider();

//получение строки в массив байт

byte[] bs = System.Text.Encoding.UTF8.GetBytes(input);

bs = x.ComputeHash(bs); //получение хэша строки

System.Text.StringBuilder s = new System.Text.StringBuilder();

//преобразование массива байт в хэш-строку

foreach (byte b in bs)

{

s.Append(b.ToString("x2").ToLower());

}

string password = s.ToString();

//вывод результата

return password;

}

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

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

Вторым важным аспектом информационной безопасности в этом проекте является механизм электронных цифровых подписей. Цифровые подписи позволяют убедиться в достоверности отправителя. Данный механизм в моей программе организован на основе алгоритма DSA (Digital Signature Algorithm). Это алгоритм с использованием открытого ключа для создания электронной подписи, но не для шифрования. Базируется на секретном создании хэш-значения и его публичной проверке - только один человек может создать хэш-значение сообщения, но любой может проверить его корректность. Основан на вычислительной сложности взятия логарифмов в конечных полях[40].

Так как алгоритм использует открытый ключ, то он относится к группе асимметричных методов шифрования. Итак, действие начинается при заведении пользователя. В этот момент ему присваивается 2 ключа: открытый и секретный.

Оба эти ключа математически взаимосвязаны, а то, какой из них будет секретным, а какой открытым определяется пользователем. При этом нет никакой разницы между тем, кому из них достанется та или иная роль. Отличия появляются на практике, и выражены они полной противоположностью действий, иными словами, текст, зашифрованный открытым ключом, может быть расшифрован только секретным, и наоборот: зашифровав секретным ключом, расшифровать удастся только открытым[37]. Оба они хранятся в базе данных, но доступ к секретному ключу имеет только его владелец (только что заведенный пользователь). Открытый же ключ доступен всем пользователям системы и служит для проверки правильности цифровой подписи.

При поступлении документа на подпись польз