Алгоритм шифрования Хаффмана

Автор работы: Пользователь скрыл имя, 21 Мая 2013 в 16:30, курсовая работа

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

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

Содержание

ВВЕДЕНИЕ 3
Часть 1. СИСТЕМНЫЙ АНАЛИЗ 4
1.1. Характеристика исходных данных о предметной области. 4
1.2. Обоснование цели разработки программы 4
1.3. Обоснование автоматизируемых подразделений, комплекса авт. задач, выбора КТС, ПО и ИО. 5
Часть 2. ТЕХНИЧЕСКИЙ ПРОЕКТ 7
2.1. Разработка основных положений по разрабатываемой программе 7
2.3. Разработка функциональной структуры и перечня задач 7
2.4. Разработка принципов организации информационного обеспечения 7
внутримашинной информационной базы 7
2.5. Разработка постановки решения задачи 8
2.7. Разработка классификаторов и кодов 8
2.8. Разработка структуры входных и выходных сообщений 9
2.9. Разработка технологий решения задачи 9
2.10 Уточнение состава периферийной техники 9
Периферийная техника не требуется. 9
2.11 Уточнение состава аппаратной платформы 9
2.14. Разработка плана мероприятий по подготовке и внедрению системы 10
2.15. Окончательное оформление проекта 10
Часть 3. РАБОЧИЙ ПРОЕКТ 11
3.1. Описание программы 11
3.1.1.Общие сведения 11
3.1.2.Функциональное назначение 11
3.3. Руководство пользователя 12
3.4.Оформление рабочего проекта 13
Заключение 16
Список литературы 17

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

Курсовая.doc

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

3.3.7. Для разархивирования файлов используйте кнопку «Разархивировать». После нажатия кнопки появится диалоговое окно для выбора.

3.3.8. Использование функций меню аналогично использованию кнопок, вкладки меню имеют соответствующие названия.

 

3.4.Оформление  рабочего проекта

Рабочий проект оформляется  в соответствии с требованиями ГОСТ 19.ХХХ-78 и предоставляется заказчику  в сроки, оговоренные в задании.

 

3.5. Внешний вид программы

Внешний вид оконных  форм программы шифрования показаны на рисунках 1-3.

 

Рис1. Вид программы при запуске

 

Рис2. Вид программы после открытия файла для шифрования/архивации.

 

Далее в таблице 3 описаны столбцы:

Таблица 3.

Название столбца

Описание

Код

Код символа  в таблице ASCII

Символ

Изображение символа

Частота

Количество  повторений символа

Длина

Длина кода Хаффмана для символа

Код Хаффмана

Бинарное дерево символа


 

 

Рис3. Вид меню программы

Заключение

 

Данная программа создана для шифрования и архивирования файлов по криптографическому алгоритму Хаффмана.

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

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

         

Список литературы

 

1. Vitter,J.S. Two papers on dynamic Huffman codes. Tech.Rep.CS-85-13.Brown University Computer Science, R.I. Revised Dec.1986

2.Учебник  «Delphi 5» С.Бобровский, издательский дом “Питер” 2002г.

3. Учебное пособие «Система программирования Delphi» Валерий Фаронов, издательство «БХВ-Петербург» 2003г.

4. Методическое пособие  по составлению и оформлению  курсового проекта под авторством  Рычкова В.А.

5. Knuth,D.E. Dynamic Huffman coding. J.Algorithms 6, 2 (Feb. 1985), 163-180

6. Welch,T.A. A technique for high-performance data compression. IEEE Comput. 17, 6 (June 1984), 8-19.

7. Sleator,D.D., and Tarjan,R.E. Self-adjusting binary trees. In Proceedings of the ACM SIGACT Symposium on Theory of Computing (Boston, Mass., Apr.25-27).ACM, New York, 1983, pp.235-245.

8. Учебный курс «Основы современной криптографии», Баричев С.Г., Гончаров В.В.,  Серов Р.Е.2006.

9. «Криптография без  секретов», Левин М. 2005.

10. «Основы защиты информации», Куприянов А.И., Сахаров А.В., Шевцов В.А.,  2007.

 

 

 

 

 

 

 

 

Согласовано

студент группы 331

_________ Н. Ю. Суглобов

“__”__________ 2010г.

 

 

 

       ПРИЛОЖЕНИЕ 1

    Утверждаю

старший преподаватель

_________ Очаков А.К. “__”__________2010г.


 

 

 

 

 

ТЕХНИЧЕСКОЕ ЗАДАНИЕ

на разработку программы

"Шифрование по  алгоритму Хаффмана"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Содержание

 

1. Введение

1.1. Наименование программы

1.2. Назначение и область  применения

2. Требования к программе 

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

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

2.2.1. Требования к обеспечению  надежного функционирования программы

2.2.2. Время восстановления после отказа

2.2.3. Отказы из-за некорректных  действий пользователей системы

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

3.1. Климатические условия  эксплуатации

3.2. Требования к квалификации  и численности персонала

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

3.4. Требования к информационной  и программной совместимости

3.4.1. Требования к исходным  кодам и языкам программирования

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

3.4.3. Требования к защите  информации и программ

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

4.1. Предварительный состав  программной документации

5. Технико-экономические  показатели

5.1. Экономические преимущества  разработки

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

6.1. Стадии разработки

6.2. Этапы разработки

6.3. Содержание работ  по этапам

7. Порядок контроля  и приемки

7.1. Виды испытаний

7.2. Общие требования  к приемке работы

8. Список литературы

 

1. Введение

Криптографический алгоритм шифрования Хаффмана должен быть выполнен в виде приложения, написанного в среде визуального программирования Delphi 7.

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

 

1.1. Наименование  программы

 

Наименование программы: "Криптографичекий алгоритм Хаффмана"

 

1.2. Назначение  и область применения

 

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

1.2.1. Банковская сфера 
1.2.2. Для защиты информации пользователей электронной почты 
1.2.3. Для защиты информации передаваемой по локальной сети 
1.2.4. В системах использующих электронно-цифровую подпись 
1.2.5. Для защиты конфиденциальных данных

Программа представляет собой приложение работающее в среде  операционной системы (OS) Windows, имеет  интуитивно понятный интерфейс. Данная программа позволяет пользователю шифровать и дешифровать файлы различных форматов. В основе шифрования данных лежит криптографический алгоритм Хаффмана. Кроме того использование данного алгоритма значительно сжимает исходную информацию.

 

2. Требования  к программе 

 

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

 

Программа должна обеспечивать возможность выполнения перечисленных  ниже функций: 
2.1.1. Шифрование информации. 
2.1.2. Дешифрование информации. 
2.1.3. Работа со всеми форматами файлов.

 

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

 

2.2.1. Требования к обеспечению надежного функционирования программы

 

Надежное (устойчивое) функционирование программы должно быть обеспечено выполнением  Заказчиком совокупности организационно-технических  мероприятий, перечень которых приведен ниже:  
а) организацией бесперебойного питания технических средств;  
б) использованием лицензионного программного обеспечения;  
в) регулярным выполнением рекомендаций Министерства труда и социального развития РФ, изложенных в Постановлении от 23 июля 1998 г. Об утверждении межотраслевых типовых норм времени на работы по сервисному обслуживанию ПЭВМ и оргтехники и сопровождению программных средств»;  
г) регулярным выполнением требований ГОСТ 51188-98. Защита информации. Испытания программных средств на наличие компьютерных вирусов

 

 

2.2.2. Время восстановления  после отказа

 

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

 

2.2.3. Отказы  из-за некорректных действий пользователей  системы

 

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

 

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

 

3.1. Климатические  условия эксплуатации

 

Климатические условия  эксплуатации, при которых должны обеспечиваться заданные характеристики, должны удовлетворять требованиям, предъявляемым к техническим  средствам в части условий  их эксплуатации

 

 

 

3.2. Требования к квалификации и численности персонала

 

Минимальное количество персонала, требуемого для работы программы, должно составлять не менее 2 штатных  единиц — системный администратор  и конечный пользователь программы  — оператор. Системный администратор должен иметь высшее профильное образование и сертификаты компании-производителя операционной системы. В перечень задач, выполняемых системным администратором, должны входить:  
а) задача поддержания работоспособности технических средств;  
б) задачи установки (инсталляции) и поддержания работоспособности системных программных средств — операционной системы;  
в) задача установки (инсталляции) программы.

 

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

 

3.3.1. В состав технических  средств должен входить IВМ-совместимый персональный компьютер (ПЭВМ):

3.3.1.1. процессор Pentium-1.0 GHz, не менее;  
3.3.1.2. оперативную память объемом, 128 Мб, не менее;  
3.3.1.3. HDD, 20 Гигабайт, не менее;  
3.3.1.4. операционную систему Windows XP и выше.

 

3.4. Требования к информационной и программной совместимости

 

3.4.1. Требования  к исходным кодам и языкам  программирования

 

Программа должна быть написана на языке программирования Borland Delphi 7.

Дополнительные требования не предъявляются.

 

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

 

Системные программные  средства, используемые программой, должны быть представлены лицензионной локализованной версией операционной системы Windows XP или выше.

 

3.4.3. Требования  к защите информации и программ

 

Требования к защите информации и программ не предъявляются.

 

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

 

 

4.1. Предварительный  состав программной документации

 

Состав программной  документации должен включать в себя:  
4.1.1. техническое задание; 
4.1.2. программу и методики испытаний; 
4.1.3. руководство пользователя;

 

 

 

 

 

5. Технико-экономические  показатели

 

5.1. Экономические  преимущества разработки

 

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

 

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

 

6.1. Стадии разработки

 

Разработка должна быть проведена в три стадии:  
1. разработка технического задания;  
2. рабочее проектирование;  
3. внедрение.

 

6.2. Этапы разработки

 

На стадии разработки технического задания должен быть выполнен этап разработки, согласования и утверждения настоящего технического задания.  
На стадии рабочего проектирования должны быть выполнены перечисленные ниже этапы работ:

1. разработка программы;  
2. разработка программной документации;  
3. испытания программы.

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

 

6.3. Содержание  работ по этапам

 

На этапе разработки технического задания должны быть выполнены  перечисленные ниже работы:  
1. постановка задачи;  
2. определение и уточнение требований к техническим средствам;  
3. определение требований к программе; 
4. определение стадий, этапов и сроков разработки программы и документации на неё;  
5. согласование и утверждение технического задания.  
На этапе разработки программы должна быть выполнена работа по программированию (кодированию) и отладке программы.  
На этапе разработки программной документации должна быть выполнена разработка программных документов в соответствии с требованиями к составу документации.  
На этапе испытаний программы должны быть выполнены перечисленные ниже виды работ:  
1. разработка, согласование и утверждение и методики испытаний;  
2. проведение приемо-сдаточных испытаний;  
3. корректировка программы и программной документации по результатам испытаний.  
На этапе подготовки и передачи программы должна быть выполнена работа по подготовке и передаче программы и программной документации в эксплуатацию на объектах Заказчика.

 

 

 

 

 

7. Порядок контроля  и приемки

 

7.1. Виды испытаний

 

Приемо-сдаточные испытания  должны проводиться на объекте Заказчика  в оговоренные сроки.  
Приемо-сдаточные испытания программы должны проводиться согласно разработанной Исполнителем и согласованной Заказчиком Программы и методик испытаний.  
Ход проведения приемо-сдаточных испытаний Заказчик и Исполнитель документируют в Протоколе проведения испытаний

 

7.2. Общие требования  к приемке работы

 

На основании Протокола  проведения испытаний Исполнитель  совместно с Заказчиком подписывает  Акт приемки-сдачи программы в эксплуатацию

 

 

 

 

8. ИСТОЧНИКИ РАЗРАБОТКИ. ЛИТЕРАТУРА

 

1. В.В. Липаев "Документирование  и управление конфигурацией программных  средств. Методы и стандарты.  Серия "Информатизация России  на пороге XXI века". -М.:СИНТТЕГ. 1998. -220с.

2. Г.Н. Калянов. "CASE структурный и системный анализ (автоматизация и применение)". -М. "ЛОРИ". 1996. -246с.

Информация о работе Алгоритм шифрования Хаффмана