Разработка модулей администрирования и шифрования данных для информационной системы предприятия
Необходимость автоматизации и защиты информации в Управлении Федеральной налоговой службы России. Реализация криптографической защиты алгоритмом ГОСТ 28147-89 "Сеть Фейстеля" и разработка программного обеспечения функционала в среде Borland Delphi 7.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 28.06.2011 |
Размер файла | 4,4 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
6.1 Описание проекта
Информационная система учета заявок предприятия автоматизирует процесс постановки на учет налогоплательщиков в налоговом органе. Система является эффективным средством автоматизации процесса обработки заявок, что позволяет снизить нагрузку сотрудников предприятия и автоматизировать их труд, а также позволяет вести контроль за выполнением процесса от момента подачи заявления, до получения заявителем документов. Разработка модулей администрирования и шифрования данных для информационной системы учета заявок предприятия, обеспечивает целостность и конфиденциальность данных, доступ к которым ограничен, предоставление надежного и защищенного доступа к конфиденциальной информации для пользователей информационных ресурсов организации на территории любого предприятия, входящего в его состав, в соответствии с предоставленными пользователю полномочиями.
Программный продукт применяется в помещениях, оснащенных персональными электронно-вычислительными машинами (ПЭВМ), подключенными к локальной сети. Базы данных хранятся на сервере, к которому подключаются все клиенты-пользователи. Для нормального функционирования системы на каждой ПЭВМ должны быть установлены MS OFFICE и BDE.
Информационная система при работе обслуживается администратором, который дает разрешение на доступ к тем или иным папкам и файлам. Защита данных от несанкционированного доступа и прямого доступа к базе данных осуществляется с помощью модулей шифрования и администрирования данных.
Для разработки программного обеспечения, реализующего необходимый функционал, выбрана среда разработки Borland Delphi 7.
Приложение разработано под платформу Win 32 (Microsoft Windows 98/Ме, Microsoft Windows 2000, Microsoft Windows XP)
Для нормального функционирования системы рекомендуется следующая аппаратная платформа для рабочей станции:
– процессор с тактовой частотой 2.13 ГГц и выше;
– память 512 Мб и выше;
– видеосистема, поддерживающая разрешения не ниже 1024x768;
– жесткий диск 10 Гб;
– при работе в сети наличие сетевого адаптера, желательно на 100 Мбит.
6.2 Расчет трудоемкости разработки программного продукта
При выполнении расчета времени разработки программного продукта следует учитывать следующие работы на следующих стадиях:
– техническое задание;
– эскизный проект;
– технический проект;
– рабочий проект;
– внедрение программы.
В проекте каждая из стадий имеет следующие трудоёмкости:
– техническое задание 10 дней;
– эскизный проект 20 дней;
– технический проект 30 дней;
– рабочий проект 40 дней;
– внедрение проекта 15.
При расчете фактических затрат времени на программирование необходимо учесть влияние таких факторов, как:
- количество разновидностей форм входной информации;
- количество форм выходной информации;
- степень новизны комплекса задач;
– сложность алгоритма;
– виды используемой информации;
– сложность контроля входной и выходной информации;
– объем входной информации;
– использование типовых проектных решений.
Предусматриваются четыре степени новизны разрабатываемых задач:
А - разработка комплекса задач, предусматривающая применение принципиально новых методов разработки, проведение научно-исследовательских работ;
Б - разработка типовых проектных решений, оригинальных задач и систем, не имеющих аналогов;
В - разработка проекта с использованием типовых проектных решений, при условии их изменения; разработка проектов, имеющих аналогичные решения;
Г - привязка типовых проектных решений.
По степени новизны комплекса задач разработка информационной системы учета заявок предприятия относится к группе Б - "разработка типовых проектных решений, оригинальных задач и систем, не имеющих аналогов", так как в настоящий момент такого вида программ на рынке не существует.
Рассмотрим сложность и трудоемкость алгоритма. Сложность и трудоемкость алгоритма представляется тремя группами:
– алгоритмы оптимизации и моделирования систем и объектов;
– алгоритмы учета и отчетности, статистики и поиска;
– алгоритмы, реализующие стандартные методы решения, а также не предусматривающие применения сложных численных и логических методов.
Сложность программы при разработке была определена как: алгоритмы учета и отчетности, статистики и поиска.
Трудоемкость разработки проекта зависит также от:
- вида используемой информации: ПИ - переменной информации (8 формы); НСИ - нормативно-справочной информации (12 форм); БД - баз данных (25 формы);
– разработки и режима работы: РВ - режим работы в реальном времени; ТОУ - телекоммуникационная обработка данных и управление удаленными объектами;
– от объема входной информации.
Система относится к системе ТОУ.
Сложность организации контроля входной и выходной информации представлена следующим группами:
11 - входные данные и документы разнообразного формата и структуры. Контроль осуществляется перекрестно, т.е. учитывается связь между показателями различных документов;
12 - входные данные и документы однообразной формы и содержания, осуществляется формальный контроль;
21 - печать документов сложной структуры разнообразной формы и содержания;
22 - вывод массивов данных на магнитные носители [36].
Система предполагает следующий уровень сложности:
– входная информация - 11;
– выходная информация - 21.
При расчете трудоемкости необходимы поправочные коэффициенты. Поправочные коэффициенты работ на стадиях "Технический проект" (, ,) и "Рабочий проект" (, ,) приведены в таблицах 6.1 и 6.2.
Таблица 6.1 - Поправочные коэффициенты для определения трудоемкости работ стадии "технический проект" (, , )
Вид используемой информации |
Степень новизны |
||||
А |
Б |
В |
Г |
||
ПИ |
1,70 |
1,20 |
1,00 |
0,50 |
|
НСИ |
1,45 |
1,08 |
0,72 |
0,43 |
|
БД |
4,37 |
3,12 |
2,08 |
1,25 |
Таблица 6.2 - Поправочные коэффициенты для определения трудоемкости работ стадии "Рабочий проект" (, , )
Вид используемой информации |
Группа сложности алгоритма |
Степень новизны |
||||
А |
Б |
В |
Г |
|||
ПИ |
1 |
2,27 |
1,62 |
1,20 |
0,65 |
|
2 |
2,02 |
1,44 |
1,10 |
0,58 |
||
3 |
1,68 |
1,20 |
1,00 |
0,48 |
||
НСИ |
1 |
1,36 |
0,97 |
0,65 |
0,40 |
|
2 |
1,21 |
0,86 |
0,58 |
0,34 |
||
3 |
1,01 |
0,72 |
0,48 |
0,29 |
||
БД |
1 |
1,44 |
0,81 |
0,54 |
0,32 |
|
2 |
1,05 |
0,72 |
0,48 |
0,29 |
||
3 |
0,85 |
0,60 |
0,40 |
0,24 |
При использовании информации различных видов поправочный коэффициент на стадиях "Технический проект" и "Рабочий проект" рассчитывается по формуле:
, (6.1)
где - поправочный коэффициент;
, , - поправочные коэффициенты согласно таблице 6.1 и таблице 6.2.
- количество наборов данных переменной информации (ПИ), нормативно-справочной информации (НСИ), информации при использовании банка данных (БД) соответственно.
Технический проект:
Рабочий проект:
Поправочные коэффициенты, учитывающие сложность контроля входной и выходной информации на стадиях "Рабочий проект" и "Внедрение" приведены в таблице 6.3.
Таблица 6.3 - Поправочные коэффициенты, учитывающие сложность контроля входной и выходной информации на стадиях "рабочий проект" и "внедрение"
Сложность контроля входной информации |
Сложность контроля выходной информации |
||
21 |
22 |
||
11 |
1,16 |
1,07 |
|
12 |
1,08 |
1,00 |
Поправочные коэффициенты, учитывающие вид информации на стадиях "Рабочий проект", "Внедрение" и "Технический проект" приведены в таблице 6.4. Поскольку, в разрабатываемой программе используется система управления базами данных (СУБД), к норме времени работы ЭВМ следует применять коэффициент 1,1.
Таблица 6.4 - Поправочные коэффициенты, учитывающие вид информации на стадиях "рабочий проект", "внедрение" и "технический проект"
Стадия разработки проекта |
Вид обработки |
Степень новизны |
||||
А |
Б |
В |
Г |
|||
Технический проект |
РВ |
1,67 |
1,45 |
1,26 |
1,10 |
|
ТОУ |
1,75 |
1,52 |
1,36 |
1,15 |
||
Рабочий проект |
РВ |
1,75 |
1,52 |
1,36 |
1,15 |
|
ТОУ |
1,92 |
1,67 |
1,44 |
1,25 |
||
Внедрение |
РВ |
1,60 |
1,39 |
1,21 |
1,05 |
|
ТОУ |
1,67 |
1,45 |
1,26 |
1,10 |
Расчет общей трудоемкости определяется как произведение всех применяемых коэффициентов по следующей формуле:
, (6.2)
Где - общий поправочный коэффициент; - поправочные коэффициенты, учитывающие влияние факторов на изменение затрат времени при выполнении конкретной стадии проектирования.
Стадии разработки:
– техническое задание 10 дней;
– эскизный проект 10 дней;
– технический проект 10 дней;
– рабочий проект 20 дней;
– внедрение 10 дней.
Посчитаем коэффициенты на каждом из этапов разработки:
- Эскизный проект.
- Технический проект.
- Рабочий проект.
- Внедрение.
Трудоемкость по этапам с учетом коэффициентов:
– техническое задание 10 дней;
– эскизный проект () 5 дней;
– технический проект () 44 дня;
– рабочий проект (38) 38 дней;
– внедрение () 15 дней.
Расчет общей трудоемкости разработки проекта производится:
, (6.3)
где - трудоемкость работ по стадиям проектирования (от 1 до ).
дней.
Численность исполнителей, необходимая для выполнения работ по стадиям проектирования и по комплексам задач в целом [36]:
, (6.4)
Где - численность специалистов; - общая трудоемкость разработки проекта; - плановый фонд рабочего времени одного специалиста.
.
Для выполнения задания проекта в срок необходимо привлечение к работе одного специалиста. На всех стадиях проекта требовался постоянный контроль его экономической эффективности. Для расчета экономического обоснования проекта потребовалось привлечение экономиста.
6.3 Расчет коэффициента повышения оперативности принятия решения
Для оценки эффективности используется ряд показателей. Одним из них является коэффициент повышения оперативности принятия решений.
Коэффициент повышения оперативности принятия решений рассчитывается по следующей формуле:
, (6.5)
где - время принятия решения при "ручной" технологии работы;
- время принятия решения при "машинной" технологии работы.
Время выполнения работ при "ручной" и "машинной" обработке данных приведены в таблице 6.5.
Таблица 6.5 - Коэффициенты ручной и машинной обработки
Наименование работы |
Время (в часах, минутах, человеко-днях и т.д.) |
||
Ручная обработка |
Машинная обработка |
||
Сбор информации |
3 |
0,05 |
|
Обработка информации |
5 |
0,07 |
|
Анализ информации |
9 |
0,10 |
|
Составление отчетов |
2,5 |
0,04 |
|
Итого |
19,5 |
0,26 |
Используя итоговые значения времени выполнения работ при "ручной" и "машинной" технологии работ рассчитаем коэффициент принятия решений:
Коэффициент принятия решений увеличивается в 75 раз, при применении программного продукта.
6.4 Оценка эффективности по комплексному коэффициенту эффективности управления до и после автоматизации
Коэффициент эффективности управления рассчитывается по следующим формулам:
1) при увеличении реального значения показателя при улучшении качества управления:
(6.6)
2) при уменьшении реального значения показателя при улучшении качества управления:
(6.7)
где - реальное значение -го показателя;
- плановое значение -го показателя [36].
Данные заносятся в таблицу 6.6, а затем производится расчет по формулам (6.6) и (6.7).
Таблица 6.6 - Расчет коэффициента эффективности
Показатели |
Единицы измерения |
№ формулы |
Значение показателя |
Значение коэффициента эффективности |
||||
План |
До автоматизации |
После автоматизации |
До автоматизации |
После автоматизации |
||||
Сбор информации |
ч |
(6.6) |
32 |
32 |
13 |
1 |
0,41 |
|
Оформление |
ч |
(6.6) |
16 |
16 |
1,5 |
1 |
0,09 |
|
Систематизация |
ч |
(6.6) |
8 |
8 |
1 |
1 |
0,125 |
|
Составление отчетов |
ч |
(6.6) |
16 |
20 |
0,5 |
1 |
0,025 |
|
Доля ошибок |
% |
(6.7) |
10 |
11 |
0,05 |
1 |
220 |
|
Контроль достоверности |
ч |
(6.6) |
10 |
9 |
1 |
1 |
0,11 |
Для расчета комплексного коэффициента воспользуемся формулой:
(6.8)
Подставив значения, получим:
Комплексный коэффициент эффективности составляет .
Эффективность автоматизации проекта составляет от реального (запланированного) качества и скорости выполнения работ. То есть качество, и сроки выполнения работ при применении разработанного программного продукта улучшились на ().
6.5 Анализ затрат на разработку программного продукта сотрудниками предприятия
В смету затрат на разработку модулей администрирования и шифрования данных для информационной системы учета заявок предприятия включаются:
1) материальные затраты:
– лазерные диски CD-R: 20 рублей;
– бумага формат А4: 150 рублей;
– литература 600 рублей;
– картридж 1500 рублей;
2) основная и дополнительная заработная плата разработчика:
– основная зарплата: 40768 рублей;
– дополнительная зарплата: 4076,8 рублей;
– отчисления на социальные нужды: 34% от общейзаработной платы;
3) стоимость машинного времени на подготовку и отладку программ: рубля.
4) стоимость инструментальных средств:
– операционная система Windows XP: 7000 рублей;
– Microsoft Office: 2500 рублей;
– средства разработки: 1000 рублей.
5) накладные расходы: 20% от основной заработной платы разработчика.
К материальным затратам относится стоимость лазерных дисков CD-R, бумаги, картриджа, литературы. Общая стоимость материальных затрат 2270 рублей ().
Основная заработная плата разработчика рассчитывается по следующей формуле:
, (6.9)
где - среднедневная заработная плата персонала, денежные единицы, рубли; - общая трудоёмкость проекта, дни. Заработная плата в день составит:
, (6.10)
Где - заработная плата разработчика в месяц;
- количество рабочих дней в месяц (22 дня);
рубля.
Тогда основная заработная плата равна:
рублей.
Дополнительная зарплата рассчитывается, как 10% от основной:
рублей.
Общая заработная плата равна рубля.
Отчисления на социальные нужды составляют 34% от общей заработной платы и равняются 15247,232 рублей (). Из них:
– Пенсионный фонд - 28%. Отчисления составляют 11659,648 рублей ().
– Социальное страхование - 2,9%. Отчисления составляют 1300,4992 рублей ().
– ФФОМС - 2,1%. Отчисления составляют 941,7408 рубль ().
– ТФОМС - 3%. Отчисления составляют 1345,344 рублей ().
Стоимость машинного времени зависит от себестоимости машино-часа работы ЭВМ и времени работы ЭВМ и включает амортизацию ЭВМ и оборудования и затраты на электроэнергию:
, (6.11)
Где - амортизационные отчисления, денежные единицы;
- стоимость ЭВМ и оборудования: стоимость компьютера 15000 рублей, стоимость принтера 5000 рублей. Итого: рублей.
- норма амортизации, принята равной ;
- время использования оборудования (дни) - равное:
(6.12)
где - затраты времени на разработку технического проекта, рабочего проекта и внедрения соответственно, дни.
дня.
рубля.
Затраты на электроэнергию рассчитываются по формуле:
(6.13)
где - стоимость 1 кВт/ч электроэнергии, денежные единицы (6,983 рублей);
- мощность ЭВМ, кВт (0,7);
- суточное время работы ЭВМ, ч (8 ч);
рублей.
Стоимость инструментальных средств составляет 10500 рублей. Накладные расходы определяются, как 20% от основной заработной платы. Составляют 8153,6 рубль в месяц. Сведем все данные по затратам в таблицу.
Таблица 6.7 - Затраты на разработку программного продукта
Элементы затрат |
Затраты, рубли |
|
Материальные затраты |
2270 |
|
Основная и дополнительная зарплата |
44844,8 |
|
Отчисления на социальные нужды |
15247,232 |
|
Затраты на оплату машинного времени |
2420,066 |
|
Накладные расходы (20%) |
8153,6 |
|
Всего |
72935,698 |
6.6 Анализ затрат на разработку программного продукта сотрудниками сторонних организаций
Стоимость работ зависит от предъявляемых функциональных требований, используемых технологий, объёма работ, сроков разработки, передачи прав на программный продукт.
Ставки специалистов компании "IT Сфера":
- программист - от 550 до 750 руб. в час (для расчета возьмем 650 рублей в час);
- бизнес-аналитик - 825 руб. в час;
- менеджер проектов - 825 руб. в час;
- тестировщик - 400 руб. в час.
Стоимость составления технического задания (ТЗ) составляет 15 - 20% от стоимости разработки программы. Минимальная стоимость составления ТЗ - 15 000 руб. Работу по составлению технического задания ведёт менеджер проекта совместно с программистами.
На разработку технического задания, эскизного проекта, технического проекта, рабочего проекта и внедрения модулей администрирования и шифрования данных информационной системы учета заявок предприятия понадобится квалифицированная помощь программиста, менеджера проектов и тестировщика. Так как работу по разработке будет вести 3 специалиста, соответственно общее время разработки можно уменьшить в три раза.
Тогда трудоемкость по этапам составит:
– техническое задание - 3 дня;
– эскизный проект - 2 дня;
– технический проект - 15 дней;
– рабочий проект - 13 дней;
– внедрение - 5 дней
получим, что предприятию нужно оплатить следующие работы:
- программиста - 248 часов (день или 248 часов);
- менеджера проектов - 40 часов (дней или 40 часов);
- тестировщика - 40 часов (5 дней или 40 часов).
С учетом этих данных получим основную заработную плату сотрудников сторонней организации:
рублей.
Кроме этого стоимость технического задания составляет:
рублей.
Соответственно стоимость разработки модуля администрирования и шифрования данных информационной системы учета заявок предприятия составляет:
рублей.
6.7 Анализ затрат на внедрение подобного программного продукта
IntraService - это универсальная Service Desk система с веб-интерфейсом, позволяющая упростить и автоматизировать учет и обработку заявок, разработанная компанией IntraVision. Оценка стоимости внедрения программного продукта IntraService представлена в таблице 6.8.
Таблица 6.8 - Оценка стоимости программного продукта IntraService
Freelance |
Small Business |
Professional |
Enterpris |
||
Стоимость (единоразово) |
0 |
0 |
60000 руб. |
95000 руб. |
|
Абонентская плата |
900 руб./мес. |
3000 руб./мес. |
0 |
0 |
|
Хостинг на сервере компании |
- |
- |
500 руб./ месяц |
500 руб./ месяц |
|
Количество исполнителей |
1 |
30 |
Неограничено |
Неограничено |
|
Место на диске |
3GB |
5GB |
- |
- |
|
Количество клиентов |
Неограничено |
Неограничено |
Неограничено |
Неограничено |
|
Учет заявок |
+ |
+ |
+ |
+ |
|
Учет трудозатрат |
+ |
+ |
+ |
+ |
|
База знаний |
+ |
+ |
+ |
+ |
|
Создание заявок по письму |
+ |
+ |
+ |
||
Настраиваемые почтовые уведомления |
+ |
+ |
+ |
+ |
|
Настраиваемые типы заявок |
- |
- |
+ |
||
Интеграция с ActiveDirectory, 1C и др. |
- |
- |
+ |
+ |
|
Консультации по настройке2 часа5 часов10 часов20 часов |
2 часа |
5 часов |
10 часов |
20 часов |
|
Выезд специалиста для установки системы |
- |
- |
- |
+ |
|
Исходные коды |
- |
- |
- |
+ |
|
Возможность доработки |
- |
- |
- |
+ |
|
Обновление системы и техподдержка |
Бесплатно |
Бесплатно |
5000 руб./год.Первый год бесплатно |
5000 руб./год.Первый год бесплатно |
Необходимым требованиям удовлетворяет максимальная версия программного продукта IntraService - Enterpris. Значит, стоимость внедрения программного продукта равна 95000 рублей.
6.8 Экономическое обоснование
Для расчета экономической эффективности определим приведенные затраты по каждому из вариантов внедрения информационной системы учета заявок предприятия. Для этого необходимо вычислить сумму капитальных и текущих затрат. К капитальным затратам относятся затраты на покупку ЭВМ и прочих аппаратных средств (). К текущим затратам относятся затраты на оплату: программного обеспечения (), инструментальных средств () и на обучение персонала ().
(6.14)
Так как затраты на покупку одного принтера и одной ЭВМ носят капитальный характер, то для расчета применяется следующая формула:
(6.15)
где - затраты капитального характера;
- коэффициент приведения, равный 0,15 [36].
Подставив значения в формулу (6.15), получим:
рублей/год.
Необходимо обучить одного операторов ЭВМ для ввода текущей информации рублей.
Для разработки модулей администрирования и шифрования данных информационной системы учета заявок предприятия сотрудниками предприятия понадобится:
рублей.
Для разработки модулей администрирования и шифрования данных информационной системы учета заявок предприятия сотрудниками сторонней организации понадобится:
рублей.
Для внедрения готового программного продукта, разработанного компанией IntraVision понадобится:
рублей.
Приведем в таблицах 6.9, 6.10 и 6.11 анализ расчета затрат на разработку и внедрение модулей администрирования и шифрования данных информационной системы учета заявок предприятия.
Таблица 6.9 - Расчет затрат на разработку модулей администрирования и шифрования данных информационной системы учета заявок предприятия сотрудниками предприятия
Составные компоненты |
Затраты, рубли |
Структура затрат в % |
|
Материальные затраты |
2270 |
3 |
|
Основная и дополнительная зарплата |
44844,8 |
48 |
|
Отчисления на социальные нужды |
15247,232 |
16 |
|
Затраты на оплату машинного времени |
2420,066 |
3 |
|
Накладные расходы |
8153,6 |
9 |
|
Итого себестоимость программного продукта составила |
72935,698 |
79 |
|
Затраты на инструментальные средства |
10500 |
11 |
|
Затраты на аппаратные средства |
3000 |
3 |
|
Затраты на обучение одного оператора ЭВМ |
6435 |
7 |
|
Суммарные затраты на разработку модулей администрирования и шифрования данных информационной системы учета заявок предприятия |
92870,698 |
100 |
Таблица 6.10 - Расчет затрат на разработку модулей администрирования и шифрования данных информационной системы учета заявок предприятия сотрудниками сторонней организации
Составные компоненты |
Затраты, рубли |
Структура затрат в % |
|
Итого себестоимость программного продукта составила |
213210 |
91 |
|
Затраты на инструментальные средства |
10500 |
5 |
|
Затраты на аппаратные средства |
3000 |
1 |
|
Затраты на обучение одного оператора ЭВМ |
6435 |
3 |
|
Суммарные затраты на разработку модулей администрирования и шифрования данных информационной системы учета заявок предприятия |
233145 |
100 |
Таблица 6.11 - Расчет затрат на разработку информационной системы учета заявок предприятия, разработанной компанией IntraVision
Составные компоненты |
Затраты, рубли |
Структура затрат в % |
|
Итого себестоимость программного продукта составила |
95000 |
82 |
|
Затраты на инструментальные средства |
10500 |
9 |
|
Затраты на аппаратные средства |
3000 |
3 |
|
Затраты на обучение одного оператора ЭВМ |
6435 |
6 |
|
Суммарные затраты на разработку модулей администрирования и шифрования данных информационной системы учета заявок предприятия |
114935 |
100 |
Таким образом, для разработки и внедрения модулей администрирования и шифрования данных информационной системы учета заявок предприятия сотрудниками сторонней организации необходимо 233145 рублей, для внедрения готовой информационной системы учета заявок предприятия, разработанной компанией IntraVision - 114935 рублей, а для разработки модулей администрирования и шифрования данных информационной системы учета заявок предприятия сотрудниками предприятия необходимо 92870.698 рублей, что в 2,5 раза и в 1,2 раза меньше альтернативных решений соответственно.
Это показывает экономическую целесообразность внедрения модулей администрирования и шифрования данных информационной системы учета заявок предприятия.
6.9 Выводы
Анализ технико-экономической эффективности проекта позволяет утверждать, что:
1. Внедрение модулей администрирования и шифрования данных для информационной системы учета заявок предприятия позволяет повысить качество работы специалистов, предотвратить возможную кражу сведений составляющих налоговую тайну, что показывает коэффициент повышения оперативности принятия решений ().
2. Эффективность автоматизации проекта составляет 0,27% от реального (запланированного) качества и скорости выполнения работ. То есть качество, и сроки выполнения работ при применении разработанного программного продукта улучшились на .
3. Разработка и внедрение информационной системы учета заявок предприятия потребовали работу одного специалиста в течение 112 дней.
4. Полученная заработная плата составляет 44844 рубля 8 копеек.
5. Затраты на разработку и внедрение программного продукта составили 92870 рублей 70 копеек.
6. Затраты на разработку и внедрение модулей администрирования и шифрования данных для информационной системы учета заявок предприятия сотрудниками предприятия в 2,5 раза меньше затрат, необходимых на привлечение сотрудников сторонней организации, и в 1,2 раза меньше затрат, необходимых на внедрение информационной системы учета заявок предприятия, разработанной компанией IntraVision.
Это показывает экономическую целесообразность внедрения модулей администрирования и шифрования данных информационной системы учета заявок предприятия.
ЗАКЛЮЧЕНИЕ
Сведения, составляющие налоговую тайну, представляют огромный интерес для различного рода злоумышленников, действующих на территории России и за рубежом, и могут повлечь большие экономические потери для налогоплательщиков. Для усовершенствования процедуры учета налогоплательщиков в налоговых органах, была разработана защищенная информационная система учета заявок предприятия.
Система является эффективным средством автоматизации процесса обработки заявок, что позволяет снизить нагрузку сотрудников предприятия и автоматизировать их труд, а также вести контроль за выполнением процесса от момента подачи заявления, до получения заявителем документов. Программа дополняет существующую систему безопасности и помогает администратору бороться с различными видами атак, направленными на преодоления внутренней защиты.
Для обеспечения строгой аутентификации пользователей, контроля доступа в соответствии с избирательным управлением и аудита критических действий пользователей был разработан и внедрен в информационную систему модуль администрирования данных.
Для шифрования трафика между клиентской рабочей станцией и сервером БД, криптографического преобразования тех данных, которые необходимо защитить, и хранения аутентификационной информации и ключей шифрования на персонализированном съемном USB-носителе был разработан и внедрен в информационную систему модуль шифрования данных. Модуль шифрования данных реализован на основе отечественного криптостандарт ГОСТ 28147-89.
Реализация модулей шифрования и администрирования данных позволяет существенно снизить риски от угроз безопасности информационной системе учета заявок предприятия.
При работе с программой выполняется ряд шагов, прозрачных для пользователя. В информационной системе учета заявок самыми высокими правами и полномочиями обладает администратор, который может создавать пользователей, присваивать им идентификаторы, редактировать их права и полномочия, удалять пользователей; формировать и раздавать соответствующий ключевой материал, хранящийся на USB-носителе; периодически проводить смену ключа для шифрования и дешифрования таблиц базы данных. Полномочия пользователей при работе с информационной системой учета заявок предприятия предоставляются в соответствии с персональным уровнем доступа.
В ходе анализа безопасности и экологичности проекта была определена схема эвакуации сотрудников предприятия и произведен расчет времени эвакуации при возникновении пожара. Фактическое время эвакуации превышает критическую продолжительность пожара по концентрации кислорода, поэтому были предусмотрены дополнительные мероприятия по снабжению эвакуируемых средствами индивидуальной защиты органов дыхания.
Анализ технико-экономической эффективности проекта показал целесообразность внедрения модулей администрирования и шифрования данных информационной системы учета заявок предприятия.
Таким образом, разработанные модули администрирования и шифрования данных информационной системы учета заявок для УФНС по СК удовлетворяют всем требованиям, определенным на этапе проектирования системы.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Российская Федерация. Законы. Налоговый кодекс Российской Федерации [Текст] : федер. закон : [принят Гос. Думой 16 июля 1998 г. : одобр. Советом Федерации 17 июля 1998 г.]. - М. : Эксмо, 2011. - 1088 с. - 2100 экз. - ISBN 978-5-699-48620-5.
2. Российская Федерация. Законы. Об информации, информационных технологиях и о защите информации [Текст] : федер. закон : [принят Гос. Думой 8 июля 2006 г. : одобр. Советом Федерации 14 июля 2006 г.]. - М. : Омега-Л, 2007. - 24 с. - 500 экз. - ISBN 5-370-00202-9, 978-5-370-00202-1.
3. Российская Федерация. Законы. О персональных данных [Текст] : федер. закон : [принят Гос. Думой 8 июля 2006 г. : одобр. Советом Федерации 14 июля 2006 г.]. - М. : Юстицинформ, 2007. - 160 с. - 1000 экз. - ISBN 5-7205-0806-6.
4. Постановление Правительства Российской Федерации от 17.05.2002 № 319 "Об уполномоченном федеральном органе исполнительной власти, осуществляющем государственную регистрацию юридических лиц, крестьянских (фермерский) хозяйств, физических лиц в качестве индивидуальных предпринимателей" [Текст].
5. Руководящий документ Гостехкомиссии при Президенте России "Концепция защиты средств вычислительной техники и автоматизированных систем от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации" [Текст].
6. Положение об Управлении Федеральной налоговой службы по Ставропольскому краю от 21.11.2005 г. [Текст].
7. Положение об отделе информатизации и ввода данных предприятия от 31 декабря 2008 г. [Текст].
8. Приказ ФНС России от 29.08.2006 № САЭ-3-27/559@ "Об утверждении Концепции информационной безопасности Федеральной налоговой службы" [Текст].
9. Приказ ФНС России от 10.06.2008 №ВЕ-4-6/24дсп@ "Об утверждении Концепции построения системы управления информационной безопасностью Федеральной налоговой службы" [Текст].
10. Приказ МНС России от 3.03.2003 № БГ-3-28/96 "Об утверждении Порядка доступа к конфиденциальной информации налоговых органов" [Текст].
11. Приказ ФНС России от 24.11.2006 № САЭ-3-13/804@ "О порядке подключения пользователей к услуге удаленного доступа к федеральным информационным ресурсам, сопровождаемым Межрегиональной инспекцией ФНС России по централизованной обработке данных" [Текст].
12. Методические рекомендации по обеспечению с помощью криптосредств безопасности персональных данных при их обработке в информационных системах персональных данных с использованием средств автоматизации. Утверждены руководством 8 Центра ФСБ России 21 февраля 2008 года № 149/54-144 [Текст].
13. Нормативно-методический документ Гостехкомиссии при Президенте России "Специальные требования и рекомендации по технической защите конфиденциальной информации (СТР-К)" [Текст].
14. ГОСТ 12.1.004-1999 ССБТ. Пожарная безопасность. Общие требования [Текст] - Взамен ГОСТ 12.1.004-91 ; Введ. 1999-01-01. - М. : Изд-во стандартов, 1999. - 19 с.
15. ГОСТ 12.1.005-2001 ССБТ. Общие санитарно-гигиенические требования к воздуху санитарной зоны [Текст] - Взамен ГОСТ 12.1.005-88 ; Введ. 2001-01-01. - М. : Изд-во стандартов, 2001. - 16 с.
16. ГОСТ 12.1.010-1999 ССБТ. Взрывобезопасность. Общие требования [Текст] - Взамен ГОСТ 12.1.010-76 ; Введ. 1999-01-01. - М. : Изд-во стандартов, 1999. - 17 с.
17. ГОСТ 12.1.044-2001 ССБТ. Пожаровзрывоопасность веществ и материалов. Номенклатура показателей и методы их определения [Текст] - Взамен ГОСТ 12.1.044-89 ; Введ. 2001-01-01. - М. : Изд-во стандартов, 2001. - 17 с.
18. НПБ 105-95. Определение категорий помещений и зданий по взрывопожарной и пожарной опасности [Текст].
19. СанПиН 2.2.2/2.4.1340-03. Гигиенические требования к видеодисплейным терминалам, персональным электронно-вычислительным машинам и организации работы [Текст].
20. ТОИ Р 01-00-01-96. Типовая инструкция по охране труда для операторов и пользователей персональных электронно-вычислительных машин (ПЭВМ) и работников, занятых эксплуатацией ПЭВМ и видеодисплейных терминалов (ВДТ) [Текст].
21. Андон, Ф. А. Язык запросов SQL [Текст] : учебный курс / Ф. А. Андон, В. М. Резниченко. - СПб. : Питер, 2006. - 416 с.: ил. - 3000 экз. - ISBN 996-552-192-6.
22. Баймакова, И. А. Обеспечение защиты персональных данных [Текст] : методическое пособие / И. А. Баймакова, А. В.Новиков, А. И. Рогачев. - М. : 1С-Паблишинг, 2010. - 214 с.: ил. - 1000 экз. - ISBN 978-5-9677-1417-7.
23. Бернет, С. Криптография [Текст] : официальное руководство RSA Security / С. Бернет, С. Пэйн. - М. : БИНОМ, 2002. - 384 с.: ил. - 3000 экз. - ISBN 5-9518-0003-Х.
24. Биячуев, Т. А. Безопасность корпоративных сетей [Текст] : учебное пособие / Т. А. Биячуев. - СПб. : СПб ГУ ИТМО, 2004. - 161 с.: ил. - 100 экз. - ISBN 5-469-00394-9
25. Шнайер, Брюс. Прикладная криптография [Текст] : протоколы, алгоритмы, исходные тексты на языке Си / Брюс Шнайер. - М. : Триумф, 2002. - 816 с.: ил. - 3000 экз. - ISBN 5-89392-055-40-471-11709-9.
26. Венбо, Мао. Современная криптография [Текст] : Теория и практика / Мао Венбо. - М. : Вильямс, 2005. - 786 с.: ил. - 2000 экз. - ISBN 5-8459-0847-7, 0-13-066943-1.
27. Гатчин, Ю. А. Основы криптографических алгоритмов [Текст] : учебное пособие / Ю. А. Гатчин, А. Г. Коробейников. - СПб. : ГИТМО(ТУ), 2002. - 29 с.: ил. - 200 экз. - ISBN 5-96178-150-2.
28. Громов, В. Н. Delphi 6/7 [Текст] : базы данных и приложения / В. Н. Громов, С. П. Кандзюба. - М. : ДиаСофтЮП, 2002. - 576 с. - 3000 экз. - ISBN 5-93772-061-Х.
29. Игнатьев, В. А. Информационная безопасность современного коммерческого предприятия [Текст] / В. А. Игнатьев. - Старый Оскол : ТНТ, 2005. - 448 с.: ил. - 200 экз. - ISBN 5-94178-070-2.
30. Коробейников, А. Г. Математические основы криптографии [Текст] : учебное пособие / А. Г. Коробейников. - СПб. : СПбГИТМО(ТУ), 2002. - 41 с. - 150 экз. - ISBN 5-938978-266-2.
31. Мельников, В. П. Информационная безопасность и защита информации [Текст] / В. П. Мельников, С. А. Клейменов. - М. : Издательский центр "Академия", 2008. - 336 с.: ил. - 300 экз. - ISBN 5-26718-030-2.
32. Понамарев, В. С. Базы данных в Delphi 7 [Текст] / В. С. Понамарев. - СПб. : Питер, 2003. - 224 с.: ил. - 2000 экз. - ISBN 5-3618-030-2.
33. Романец, Ю. В. Защита информации в компьютерных системах и сетях [Текст] / Ю. В. Романец, П. А.Тимофеев, В. Ф. Шаньгин. - М. : "Радио и связь", 2006. - 328 с.: ил. - 400 экз. - ISBN 5-1873-030-2.
34. Рябко, Б. Я. Основы современной криптографии для специалистов в информационных технологиях [Текст] / Б. Я. Рябко, А. Н. Фионов. - М. : Горячая линия - Телеком, 2005. - 229 с.: ил. - 1000 экз. - ISBN 5-1691-030-2.
35. Садердинов, А. А. Информационная безопасность предприятия [Текст] / А. А. Садердинов. - М. : "Дашков и К", 2005. - 336 с.: ил. - 2000 экз. - ISBN 5-3626-430-2.
36. Скрипкин, К. Г. Экономическая эффективность информационных систем [Текст] / К. Г. Скрипкин. - М. : ДМК Пресс, 2006. - 256 с.: ил. - 3000 экз. - ISBN 5-94074-180-0.
37. Хомоненко, А. Д. Базы данных [Текст] : учебник для вузов / А. Д. Хомоненко, В. М. Цыганков, М. Г. Мальцев.- СПб. : КОРОНА, 2004. - 736 с. - 3000 экз. - ISBN 5-5216-491-2.
38. Чипига, А. Ф. Информационная безопасность автоматизированных систем [Текст] : учеб. пособие для студентов вузов, обучающихся по специальностям в обл. информ. безопасности / А. Ф. Чипига. - М. : Гелиос АРМ, 2010. - 336 с.: ил. - 500 экз. - ISBN 978-5-85438-183-3.
39. Шаньгин, В. Ф. Информационная безопасность компьютерных систем и сетей [Текст] : учеб. пособие / В. Ф. Шаньгин. - М. : "ФОРУМ": ИНФРА-М, 2008. - 416 с.: ил. - 300 экз. - ISBN 5-9371-786-2.
40. Ярочкин, В. И. Информационная безопасность [Текст] : учебник для студентов вузов / В. И. Ярочкин. - М. : Академический Проект, 2008. - 544 с.: ил. - 800 экз. - ISBN 5-8473-837-9.
ПРИЛОЖЕНИЕ А
Спецификация таблиц информационной системы учета заявок предприятия
автоматизация криптографический алгоритм программный
База данных информационной системы учета заявок предприятия со встроенными модулями защиты состоит из следующих таблиц:
- Users.DB - таблица, в которой хранятся данные о пользователях информационной системы учета заявок предприятия. Используется для аутентификации и формирования прав и полномочий пользователей.
- Base.DB - основная таблица, в которой хранится вся информация, касающаяся процесса учета заявок.
- Departments.DB - таблица, используемая для справочника "Структурные подразделения предприятия".
- Workers.DB - таблица, используемая для справочника "Сотрудники предприятия".
- Posts.DB - таблица, используемая для справочника "Должности на предприятии".
Спецификация таблиц базы данных информационной системы учета заявок предприятия представлена в таблицах А.1 - А.5.
Таблица А.1 - Спецификация таблицы "Users.DB"
№ |
Наименование |
Тип |
Длина |
ISNULL |
UNIQUE |
Ключ |
Примечание |
|
1 |
ID_User |
Number |
10 |
- |
+ |
PK |
Порядковый номер пользователя |
|
2 |
Name |
Number |
10 |
- |
- |
Порядковый номер сотрудника |
||
3 |
Login |
Alpha |
50 |
- |
- |
Идентификатор |
||
4 |
Parol |
Alpha |
10 |
- |
- |
Пароль |
||
5 |
Access |
Alpha |
10 |
- |
- |
Уровень доступа |
Таблица А.2 - Спецификация таблицы "Base.DB"
№ |
Наименование |
Тип |
Длина |
ISNULL |
UNIQUE |
Ключ |
Примечание |
|
1 |
ID_Demand |
Number |
10 |
- |
+ |
PK |
Порядковый номер заявки |
|
2 |
Form |
Alpha |
20 |
- |
- |
Форма заявки |
||
3 |
Applicant |
Alpha |
50 |
- |
- |
Заявитель |
||
4 |
Predostav_Data |
Date |
10 |
- |
- |
Дата подачи заявки |
||
5 |
Predostav_Number |
Number |
10 |
- |
- |
Номер заявки |
||
6 |
Predostav_Worker |
Number |
10 |
- |
- |
Порядковый номер сотрудника, принявшего заявку |
||
7 |
Postavil_Data |
Date |
10 |
- |
- |
Дата поставки заявки на учет |
||
8 |
Postavil_Worker |
Number |
10 |
- |
- |
Порядковый номер сотрудника, поставившего заявку на учет |
||
9 |
INN |
Alpha |
15 |
- |
+ |
ИНН |
||
10 |
Vidacha_Data |
Date |
10 |
- |
- |
Дата выдачи документов |
||
11 |
Vidacha_Worker |
Number |
10 |
- |
- |
Порядковый номер сотрудника, выдавшего документы |
||
12 |
Requisite |
Alpha |
15 |
- |
+ |
Реквизиты |
||
13 |
Poluchil |
Alpha |
50 |
- |
- |
Получатель |
||
14 |
Status |
Alpha |
20 |
- |
- |
Статус заявки |
Таблица А.3 - Спецификация таблицы "Departments.DB"
№ п/п |
Наименование |
Тип |
Длина |
ISNULL |
UNIQUE |
Ключ |
Примечание |
|
1 |
ID_Department |
Number |
10 |
- |
+ |
PK |
Порядковый номер отдела |
|
2 |
Department |
Alpha |
70 |
- |
- |
Название отдела |
||
3 |
Chief |
Alpha |
35 |
- |
- |
Начальник отдела |
||
4 |
Telephone |
Alpha |
9 |
- |
- |
Номер телефон |
Таблица А.4 - Спецификация таблицы "Workers.DB"
№ п/п |
Наименование |
Тип |
Длина |
ISNULL |
UNIQUE |
Ключ |
Примечание |
|
1 |
ID_Worker |
Number |
10 |
- |
+ |
PK |
Порядковый номер сотрудника |
|
2 |
Worker |
Alpha |
50 |
- |
- |
ФИО сотрудника |
||
3 |
Department |
Number |
10 |
- |
- |
Порядковый номер отдела |
||
4 |
Post |
Number |
10 |
- |
- |
Порядковый номер должности |
Таблица А.5 - Спецификация таблицы "Posts.DB"
Наименование |
Тип |
Длина |
ISNULL |
UNIQUE |
Ключ |
Примечание |
|
ID_Post |
Number |
10 |
- |
+ |
PK |
Порядковый номер должности |
|
Post |
Alpha |
30 |
- |
- |
Название должности |
ПРИЛОЖЕНИЕ Б
Листинг исходных модулей
GOSTEncryption
unit GOSTEncryption;
interface
type
Item=type longint;
DWORD=type longint;
TEncKey=array[0..31] of byte;
TExtEncKey=array[0..127] of byte;
TExtTable=array[0..1023] of byte;
T128Table=array[0..127] of byte;
TImito=record I1,I2:Item;end;
TPEncKey=^TEncKey;
TPExtEncKey=^TExtEncKey;
TPExtTable=^TExtTable;
TP128Table=^T128Table;
TPImito=^TImito;
TGOSTEncryption=class
private
ExtKey:TExtEncKey;
KeyMask:DWORD;
procedure Gost386;
procedure simple(src,dst:pointer;noblocks:DWORD);
procedure ExpandKey (src:TPEncKey;dst:TPExtEncKey;
KeyLength:DWORD;
KeyRepeat:DWORD;
RepeatMask:DWORD);
public
ExtChTab:TExtTable;
Key:TEncKey;
I1,I2:Item;
constructor Create;
destructor destroy;override;
procedure EncryptSimple(src,dst:pointer;noblocks:DWORD);
procedure DecryptSimple(src,dst:pointer;noblocks:DWORD);
procedure GenerateImito(src:pointer;noblocks:DWORD);overload;
procedure GenerateImito(src:pointer;noblocks:DWORD;s1,s2:Item);overload;
procedure GenerateGamma(dst:pointer;noblocks:DWORD);overload;
procedure GenerateGamma(dst:pointer;noblocks:DWORD;var s1,s2:Item);overload;
procedure ApplyGamma(src:pointer;gamma:pointer;len:DWORD);
procedure SetPassword(pwd:string);
procedure Set128Table(p:TP128Table);
procedure SetTable(p:TPExtTable);
procedure SetKey(p:TPEncKey);
end;
implementation
constructor TGOSTEncryption.Create;
var
i:integer;
begin
inherited Create;
KeyMask:=8;
for i:=0 to 1023 do
ExtChTab[i]:=i mod 255;
end;
destructor TGOSTEncryption.destroy;
begin
inherited Destroy;
end;
procedure TGOSTEncryption.Gost386;
asm
@iloop: push EAX
add EAX,[ESI]
add ESI,4
xlat
ror EAX,8
add ebx,256
xlat
ror EAX,8
add ebx,256
xlat
ror EAX,8
add ebx,256
xlat
sub ebx,3*256
rol EAX,3
xor EAX,EDX
pop EDX
loop @iloop
end;
var vesi,vedi,veax,vebx,vecx,vedx:DWORD;
procedure PushAll;
asm
mov vesi,esi
mov vedi,edi
mov veax,eax
mov vebx,ebx
mov vecx,ecx
mov vedx,edx
end;
procedure PopAll;
asm
mov esi,vesi
mov edi,vedi
mov eax,veax
mov ebx,vebx
mov ecx,vecx
mov edx,vedx
end;
procedure TGOSTEncryption.GenerateGamma(dst:pointer;noblocks:DWORD);
var s1,s2:Item;
begin
s1:=0;s2:=0;
GenerateGamma(dst,noblocks,s1,s2);
end;
procedure TGOSTEncryption.GenerateGamma(dst:pointer;noblocks:DWORD;var s1,s2:Item);
const
C1=$01010101;
C2=$01010104;
var
k:TPExtEncKey;
c:TPExtTable;
l:DWORD;
cur:pointer;
begin
k:=@ExtKey;
c:=@ExtChTab;
l:=noblocks;
cur:=dst;
ExpandKey(@Key,k,8,4,KeyMask);
asm
call PushAll
cmp l,0
je @ex
mov EBX,c
mov edi,s2
@circle: mov esi,s1
mov EAX,[esi]
mov EDX,[edi]
add EAX,C1
adc EDX,C2
adc EDX,0
mov [esi],EAX
mov [edi],EDX
mov ESI,k
mov ECX,32
call Gost386
mov esi,cur
mov [ESI],EDX
mov [ESI+4],EAX
add cur,8
dec l
jnz @circle
@ex: call PopAll
end;
end;
procedure TGOSTEncryption.ApplyGamma(src:pointer;gamma:pointer;len:DWORD);
asm
call PushAll
mov esi,src
mov edi,gamma
mov ecx,len
cmp ecx,0
je @ex
@l1: mov al,[edi]
xor [esi],al
inc esi
inc edi
loop @l1
@ex: call PopAll
end;
procedure TGOSTEncryption.GenerateImito(src:pointer;noblocks:DWORD);
begin
GenerateImito(src,noblocks,0,0);
end;
procedure TGOSTEncryption.GenerateImito(src:pointer;noblocks:DWORD;s1,s2:Item);
const ExtMask:DWORD=$2;
var
l:DWORD;
pt:TPExtTable;
pk:TPExtEncKey;
pI1,pI2:^DWORD;
begin
ExpandKey(@Key,@ExtKey,8,2,ExtMask);
l:=noblocks;
pt:=@ExtChTab;pk:=@ExtKey;
pI1:=@I1;pI2:=@I2;
asm
call PushAll
mov EAX,s1
mov EDX,s2
mov EBX,pt
mov EDI,src
cmp l,0
je @ex
@circle: xor EAX,[EDI]
xor EDX,[EDI+4]
mov ECX,16
mov ESI,pk
call Gost386
add EDI,8
dec l
jnz @circle
@ex: mov esi,pI1
mov [esi],eax
mov esi,pI2
mov [esi],edx
call PopAll
end;
end;
procedure TGOSTEncryption.ExpandKey (src:TPEncKey;dst:TPExtEncKey;KeyLength:DWORD;
KeyRepeat:DWORD;RepeatMask:DWORD);
asm
call PushAll
mov ESI,src
mov EDI,dst
mov EBX,KeyLength
shl EBX,2
add ebx,esi
sub ebx,4
xor EAX,EAX
cld
@iloop: cmp EAX,KeyRepeat
jge @ex
mov ECX,KeyLength
bt RepeatMask,AX
jc @Rev
mov ESI,src
rep movsd
jmp @Incr
@Rev: mov ESI,EBX
@rl: movsd
sub ESI,8
loop @rl
@Incr: inc AX
jmp @iloop
@ex: call PopAll
end;
procedure TGOSTEncryption.simple(src,dst:pointer;noblocks:DWORD);
var l:DWORD;
pt:TPExtTable;
pk:TPExtEncKey;
begin
l:=noblocks;
pt:=@ExtChTab;
pk:=@ExtKey;
asm
call PushAll
mov ebx,pt
mov esi,src
mov edi,dst
@circle: mov EAX,[esi]
mov EDX,[esi+4]
mov ecx,32
push esi
mov esi,pk
call Gost386
pop esi
mov [edi+4],EAX
mov [edi],EDX
add edi,8
add esi,8
dec l
jnz @circle
call PopAll
end;
end;
procedure TGOSTEncryption.EncryptSimple(src,dst:pointer;noblocks:DWORD);
begin
ExpandKey (@Key,@ExtKey,8,4,KeyMask);
simple(src,dst,noblocks);
end;
procedure TGOSTEncryption.DecryptSimple(src,dst:pointer;noblocks:DWORD);
var InversedMask:DWORD;
NotKeyMask:DWORD;
i:integer;
begin
InversedMask:=0;
NotKeyMask:=not KeyMask;
for i:=4 downto 1 do
begin
InversedMask:=InversedMask shl 1;
InversedMask:=InversedMask or NotKeyMask and 1;
NotKeyMask:=NotKeyMask shr 1;
end;
ExpandKey(@Key,@ExtKey,8,4,InversedMask);
simple(src,dst,noblocks);
end;
procedure TGOSTEncryption.SetPassword(pwd:string);
var pt:array [0..1023] of byte;
ns1,ns2,ns3,ns4:array of byte;
i:integer;
c,c1:integer;
l:integer;
l1,l2:integer;
b:byte;
begin
if length(pwd)<1 then exit;
SetLength(ns1,256);
SetLength(ns2,256);
SetLength(ns3,256);
SetLength(ns4,256);
for i:=0 to 255 do
begin
ns1[i]:=i;
ns2[i]:=i;
ns3[i]:=i;
ns4[i]:=i;
end;
for i:=0 to 1023 do
pt[i]:=i mod 256;
l1:=0;l2:=0;
c:=1;c1:=0;
b:=0;
while (l1<3)or(l2<3) do
begin
if c>Length(pwd) then begin c:=1;inc(l1);end;
if c1>1023 then begin c1:=0;inc(l2);end;
pt[c1]:=pt[c1] xor b xor ord(pwd[c]);
b:=b+ord(pwd[c])+c+l1+l2;
inc(c);inc(c1);
end;
for i:=0 to 255 do
ns1[i]:=ns1[i] xor b;
b:=pt[b];
for i:=0 to 255 do
ns2[i]:=ns2[i] xor b;
b:=pt[b];
for i:=0 to 255 do
ns3[i]:=ns3[i] xor b;
b:=pt[b];
for i:=0 to 255 do
ns4[i]:=ns4[i] xor b;
for i:=0 to 1023 do ExtChTab[i]:=0;
c:=0;
while length(ns1)>0 do
begin
l1:=Length(ns1);
l:=(pt[c]*1007+ExtChTab[pt[c])mod l1;
ExtChTab[256-l1]:=ns1[l];
ns1[l]:=ns1[l1-1];
SetLength(ns1,l1-1);
inc(c);
l:=(pt[c]*1007+ExtChTab[pt[c]+256])mod l1;
ExtChTab[512-l1]:=ns2[l];
ns2[l]:=ns2[l1-1];
SetLength(ns2,l1-1);
inc(c);
l:=(pt[c]*1007+ExtChTab[pt[c]+512])mod l1;
ExtChTab[768-l1]:=ns3[l];
ns3[l]:=ns3[l1-1];
SetLength(ns3,l1-1);
inc(c);
l:=(pt[c]*1007+ExtChTab[pt[c]+768])mod l1;
ExtChTab[1024-l1]:=ns4[l];
ns4[l]:=ns4[l1-1];
SetLength(ns4,l1-1);
inc(c);
end;
for i:=0 to 31 do
Key[i]:=0;
for i:=0 to 1023 do
pt[i]:=pt[i] xor ExtChTab[i];
c1:=0;c:=0;
l1:=0;
while l1<32 do
begin
if c1>31 then
begin
c1:=0;
for i:=0 to 255 do
ExtChTab[((i xor b)+(l1+0)*256)mod 1024]:=ExtChTab[(ExtChTab[((i xor b)+(l1+0)*256)mod 1024]+(l1+1)*256)mod 1024];
b:=ExtChTab[b];
for i:=0 to 255 do
ExtChTab[((i xor b)+(l1+1)*256)mod 1024]:=ExtChTab[(ExtChTab[((i xor b)+(l1+1)*256)mod 1024]+(l1+2)*256)mod 1024];
b:=ExtChTab[b+256];
for i:=0 to 255 do
ExtChTab[((i xor b)+(l1+2)*256)mod 1024]:=ExtChTab[(ExtChTab[((i xor b)+(l1+2)*256)mod 1024]+(l1+3)*256)mod 1024];
b:=ExtChTab[b+512];
for i:=0 to 255 do
ExtChTab[((i xor b)+(l1+3)*256)mod 1024]:=ExtChTab[(ExtChTab[((i xor b)+(l1+3)*256)mod 1024]+(l1+4)*256)mod 1024];
b:=ExtChTab[b+768];
inc(l1);
end;
b:=ExtChTab[b] xor ExtChTab[pt[c]+256];
Key[c1]:=ExtChTab[(Key[c1] xor b)+512];
b:=ExtChTab[(Key[c1] xor b)+768];
inc(c);inc(c1);
end;
end;
procedure TGOSTEncryption.Set128Table(p:TP128Table);
var pt:TPExtTable;
begin
pt:=@ExtChTab;
asm
call PushAll
mov ESI,p
mov EDI,pt
cld
mov ecx,4
@blocks:mov EBX,ESI
add EBX,10h
push eCX
mov eCX,16
@lines: push ESI
mov AH,[EBX]
push eCX
mov CL,4
shl AH,CL
mov ECX,16
@bytes: lodsb
or AL,AH
stosb
loop @bytes
pop eCX
pop ESI
inc EBX
loop @lines
pop eCX
add ESI,20h
loop @blocks
call PopAll
end;
end;
procedure TGOSTEncryption.SetTable(p:TPExtTable);
var pt:TPExtTable;
begin
pt:=@ExtChTab;
asm
call PushAll
mov esi,p
mov edi,pt
mov ecx,1024
rep movsb
call PopAll
end;
end;
procedure TGOSTEncryption.SetKey(p:TPEncKey);
var pk:TPEncKey;
begin
pk:=@Key;
asm
call PushAll
mov esi,p
mov edi,pk
mov ecx,32
rep movsb
call PopAll
end;
end;
end.
Размещено на Allbest.ru
Подобные документы
Алгоритм ГОСТ 28147-89 симметричного шифрования на основе сети Фейстеля, основные режимы его работы. Атаки на системы защиты информации. Метод грубой силы. Атаки класса "встреча посередине". Характеристики ГОСТ 28147-89 и американского шифра Rijndael.
курсовая работа [510,7 K], добавлен 17.01.2012Основные методы криптографической защиты информации. Система шифрования Цезаря числовым ключом. Алгоритмы двойных перестановок и магические квадраты. Схема шифрования Эль Гамаля. Метод одиночной перестановки по ключу. Криптосистема шифрования данных RSA.
лабораторная работа [24,3 K], добавлен 20.02.2014Характеристика потенциальных угроз информации в информационной системе фирмы. Принцип функционирования программного обеспечения, разработка модулей и проект таблиц баз данных. Требования безопасности при работе на ПЭВМ, оценка эффективности проекта.
дипломная работа [3,6 M], добавлен 28.06.2011Разработка программного обеспечения для реализации криптографической защиты информации. Обоснование выбора аппаратно-программных средств. Проектирование модели информационных потоков данных, алгоритмического обеспечения, структурной схемы программы.
дипломная работа [2,0 M], добавлен 10.11.2014Анализ существующих систем по расчету компенсаций по капитальному ремонту. Разработка автоматизированной информационной системы в среде разработки Delphi. Требования к организации загрузки данных. Реализация программных модулей и тестирование системы.
дипломная работа [3,3 M], добавлен 19.01.2017Компьютерная сеть предприятия, ее схема и конфигурация, возможные угрозы сети и степень ее защищенности. Анализ методов и средств обеспечения безопасности сети. Организация защиты информации криптографическими методами, разработка программного модуля.
курсовая работа [780,7 K], добавлен 06.06.2011Понятие информационной безопасности и классификация ее угроз. Анализ работы симметричных систем криптографической защиты данных и основы нелинейного шифрования потока. Функционирование линейных конгруэнтных генераторов псевдослучайных последовательностей.
дипломная работа [968,8 K], добавлен 01.07.2011Разработка блока криптографической системы способной осуществлять операции поточного зашифрования информации, с использованием полиномиальных систем классов вычетов. Основные принципы обеспечения информационной безопасности. Системы поточного шифрования.
дипломная работа [1,2 M], добавлен 30.06.2011Анализ информации как объекта защиты и изучение требований к защищенности информации. Исследование инженерно-технических мер защиты и разработка системы управления объектом защиты информации. Реализация защиты объекта средствами программы Packet Tracer.
дипломная работа [1,2 M], добавлен 28.04.2012Характеристика комплекса задач и обоснование необходимости совершенствования системы обеспечения информационной безопасности и защиты информации на предприятии. Разработка проекта применения СУБД, информационной безопасности и защиты персональных данных.
дипломная работа [2,6 M], добавлен 17.11.2012