Реферат: Шифрование по методу UUE

РоссийскийГОСударственный социальный университет

факультет: Автоматизации иинформационных
технологий

Кафедра: математики

специальность: Автоматизированныесистемы
обработки информации и управления

КУРСОВАЯ РАБОТА

подисциплине: «Методы и средства защиты информации»

на тему:«Шифрование по методу UUE»

Выполнили студенты 4 курса,
дневного отделения                   

                                                        _____________

                                                                        подпись

Руководитель                                КасьянВладимир Николаевич

                                                        _____________

                                                                        подпись

Курсовой проект (работа) защищена с оценкой

_________________

«____» ____________________ 2004 г.

________________

                                                               подпись

АНАПА

2004
Содержание

 TOC o «1-2» h z u Содержание… PAGEREF _Toc91315422 h 2

ВВЕДЕНИЕ… PAGEREF _Toc91315423 h 3

ОПИСАНИЕМЕТОДА ХАФФМАНА… PAGEREF _Toc91315424 h 5

МетодХаффмана… PAGEREF _Toc91315425 h 5

Статистическийи адаптивный (динамический) алгоритм сжатия.PAGEREF _Toc91315426 h 10

анализалгоритма сжатия по методу Хаффмана… PAGEREF _Toc91315427 h 11

Описаниеработы программы.PAGEREF _Toc91315428 h 11

Практическоеприменение программы.PAGEREF _Toc91315429 h 11

Различиястатической и динамической моделей.PAGEREF _Toc91315430 h 12

Заключение… PAGEREF _Toc91315431 h 15

Используемаялитература:PAGEREF _Toc91315432 h 16

Приложение1. Листингпрограммы.PAGEREF _Toc91315433 h 17


ВВЕДЕНИЕ

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

Объектом исследованияв данной курсовой взят метод шифрования данных по алгоритму UUE. Данный метод используется вбольшинстве распространенных в настоящее время операционных систем на основеядра UNIX (Solaris, FreeBSD, RedHat и др).

Целью проектаставится рассмотрениеи изучение алгоритма шифрования данных по методу UUE, анализ его эффективности.

Далее в курсовой будут рассмотрена модель шифрования данных по алгоритмуUUE.

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

Шифровальные алгоритмы, как например, шифровальный алгоритм IDEA,который использован в PGP, применяют единственную сложную функцию к открытомутексту для того, чтобы производить шифрование текста. С тех пор как алгоритм становитсяизвестным это означает, что даже если поток данных в алгоритме неизвестный,операции приложенные к этому потоку данных известны. Любой такой шифровальныйалгоритм теоретически может быть взломан. Например, мы можем быть уверены, чтоесть много людей с дорогостоящим оборудованием, пытающихся, взломать шифр IDEAпрямо сейчас, фактически это возможно уже произошло. Если обычно используемыйшифровальный алгоритм уже перехвачен некоторым агентством, мы можем бытьуверены, в том что это агентство продаст его другим организациям, что можетповлечь за собой крах и  большие потеридля многих организаций.

 ОПИСАНИЕМЕТОДА   ШИФРОВАНИЯ UUE

Метод шифрования UUE

Описание алгоритма

<span Book Antiqua",«serif»;mso-bidi-font-family: «Arial CYR»;color:black">Алгоритм UUE основан на идее Фила Карна.

<span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black;mso-ansi-language:EN-US">

<span Book Antiqua",«serif»;mso-bidi-font-family: «Arial CYR»;color:black">Берётся открытый текст 2N байтов  и разделяется на две половины T1 и T2, каждыйиз N байтов. Также ключ шифрования делиться на две половины K1 и K2. Теперь находитсяфункцию хэша пути S и это используется, чтобы смешивать K1 и T1 для того, чтобыполучить блок из N байтов, затем производится второй этап шифрования открытоготекста

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black; mso-ansi-language:EN-US">T<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black">2 при помощи алгоритма шифрования XOR; в результате получаем блокC2 состоящий из <span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">N<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black"> байтов — это вторая половина зашифрованного текста:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">S(K1, T1 ) xor T2 -> C2

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Аналогичнымспособом шифруем другую половину текста, чтобы получить C1 — это перваяполовина зашифрованного текста:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">S(K2, C2 ) xor T1 -> C1

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Полныйзашифрованный текст — сочетание блоков C1 и C2.

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Длятого, чтобы дешифровать зашифрованный текст, необходимо повторить операцию вобратном порядке:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">S(K2, C2 ) xor C1 -> T1

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">S(K1, T1 ) xor C2 -> T2

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Преимуществоданной идеи в том, что безопасность основана в качестве скремблера S. Если Выможете создать хороший скремблер, тогда Вы можете создать хороший шифровальныйалгоритм.

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Сердцемалгоритма

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black; mso-ansi-language:EN-US">UUE<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black"> является параметрический скремблер (GSSCRAMBLE). Скремблер состоитиз 7 простых скремблеров (SCRAMBLE0… SCRAMBLE6). Также используются 32 функциихэша (HASH0… HASH31).

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Алгоритм

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black;mso-ansi-language: EN-US">UUE<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black"> основан навышеописанном методе, но он отличается от него.

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">-Первое отличие – производится деление ключа на четыре равных части: K1s, K1t,K2s, K2t. Компонент K1t используется как первая половина ключа шифрования,  компонент K1s используется, чтобы выбирать избольшого числа скремблеров — один, чтобы использовать его в дальнейшем длякодировки первой половины открытого текста T1:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S ( K1t, T1 ) xor T2 -> C2 K1s

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Аналогичномспособом использованы K2t и K2s, чтобы кодировать вторую часть зашифрованноготекста, чтобы получить первую половину зашифрованного текста:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S ( K2t, C2 ) xor T1 -> C1 K2s

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Длятого, чтобы дешифровать зашифрованный текст (C1,C2)необходимо повторить эти жеоперации в обратном порядке:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S ( K2t, C2 ) xor C1 -> T1 K2s

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S ( K1t, T1 ) xor C2 -> T2 K1s

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">КакВы можете видеть, K1t и K2t использованы, чтобы модифицировать данные, которыенужно смешиваться, и подключи K1s и K2s использованы, чтобы выбирать скремблер,который  определяет как данные будутсмешаны. Поскольку

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">UUE<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black"> использует ключ в 256 байтов, который делится на четыре равныечасти, каждая длиной в 64 байт (512 битов).

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Второеотличие предназначено для устранения слабости в алгоритме Фила Карна. Это можнопроиллюстрировать  следующим образом: предположим,что мы знаем открытый текст (A,B) и мы знаем, что это производит зашифрованныйтекст (X,Y), и мы также знаем, что открытый текст (A,C) — в котором мы знаемпервую половину сообщения, но не знаем вторую половину — производитзашифрованный текст (W,Z). Затем мы можем вычислить неизвестный открытый текст Cследующим образом:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S( K1, A ) xor B -> Y;   

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black">следовательно<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US"> S( K1, A ) = B xor Y

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S( K1, A ) xor C -> W;   

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black">следовательно<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US"> C = S( K1, A) xor W

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Объединениеэти два результата дает мне величину C в форме:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">C= ( B xor Y ) xor W

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">UUE

<span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black"> <span Book Antiqua",«serif»;mso-bidi-font-family: «Arial CYR»;color:black">свободен от этой слабости

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Чтобызакодировать сообщение:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S( K1, T1 xor T2 ) xor T2 -> C2 S( <st1:place w:st=«on»>K2</st1:place>, C2 ) xor ( T1 xor T2 ) -> C1

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Чтобыдекодировать сообщение

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">S(K2, C2 ) xor C1 -> (T1 xor T2 ) S( K1, T1 xor T2 ) xor C2 -> T2 ( T1 xorT2 ) xor T2 -> T1

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Третьеотличие – предназначено для защиты против словарной атаки, когда нападающийпытается определять ключ шифрования тестируя величины в словаре потенциальныхключей. Словарная атака основана на том, что люди не любят делать большие исложные ключи. Независимо от того, насколько хорош алгоритм шифрования, еслинападающий подбирает несколько миллион вариаций и таким образом может обнаружитьключ шифрования пользователя тогда безопасность целой организации может попастьв опасность. В алгоритме

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">UUE<span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black"> <span Book Antiqua",«serif»;mso-bidi-font-family: «Arial CYR»;color:black">имеется защита от такого рода взлома.

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Алгоритмиспользует отмычку для генерации ключа шифрования. Используется следующая процедура:перед кодированием или декодированием текста, сначала

<span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black;mso-ansi-language:EN-US">UUE<span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black"> <span Book Antiqua",«serif»;mso-bidi-font-family: «Arial CYR»;color:black">использует XOR отмычку с реальной произвольнойпоследовательностью символов, которая — включается в код <span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black;mso-ansi-language:EN-US">UUE<span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black">, для того, чтобы стирать любые«статистические характеристики»; затем это объединяет результат с ключомпользователя; и наконец, это смешивает результат, чтобы получить  «реальный» ключ, который впоследствиииспользуется, для кодирования или декодирования блока данных.

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»; mso-fareast-font-family:«Times New Roman»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language: AR-SA">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Вотподробное описание двух циклов

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">UUE<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black">:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Чтобыкодировать:

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">process( master-key, user-password ) ->K1t, K1s, K2t, K2s, Ksep, Kuni

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">separate( T ) -> T1, T2

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">Ksep

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S  (K1t, T1 xor T2 ) xor T2     -> C2

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">K1s

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">S  (K2t, C2 ) xor ( T1 xor T2 ) -> C1

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">K2s

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">unite   ( C1, C2 )              -> C

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">Kuni

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»; color:black;mso-ansi-language:EN-US">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">Чтобы

<span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black;mso-ansi-language:EN-US"> <span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black">декодировать<span Book Antiqua",«serif»; mso-bidi-font-family:«Arial CYR»;color:black;mso-ansi-language:EN-US">:

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">process( master-key, user-password ) -> K1t, K1s, K2t, K2s, Ksep,Kuni

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">separate( C ) -> C1, C2

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">Kuni

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">S  ( K2t, C2 ) xor C1           -> ( T1 xor T2 )

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">K2s

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">S  ( K1t, T1 xor T2 ) xor C2    -> T2

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">K1s

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">( T1 xor T2 ) xor T2           -> T1

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">unite    ( T1, T2 )             -> T

<span Book Antiqua",«serif»;mso-ansi-language: EN-US">Ksep

<span Book Antiqua",«serif»;mso-ansi-language:EN-US">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

<span Book Antiqua",«serif»;mso-bidi-font-family:«Arial CYR»;color:black">

анализ алгоритма сжатия по методу Хаффмана

Описание работы программы.

<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;text-transform:uppercase;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">

Заключение

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

<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;text-transform:uppercase;mso-ansi-language:RU;mso-fareast-language: RU;mso-bidi-language:AR-SA">

Используемаялитература:

1. program.rin.ru/razdel/html/949.html /UUE-кодирование

2. Метод Хаффмана: Методические указания к лабораторной работе/ О.Е. Александров, Попков В.И. Екатеринбург: УГТУ, 2000.

3. Чарльз Сейтер, Сжатие данных, Мир ПК,N2 1991

4. Шеннон К. Работы по теории информации и кибернетике. — М.: ИЛ,1963.

5. Huffman, D.A. Amethod for the construction of minimum-redundancy codes. Proc. Inst. Electr. Radio<st1:place w:st=«on»><st1:country-region w:st=«on»>Eng.</st1:country-region></st1:place> 40, 9 (Sept. 1952),

<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;mso-ansi-language:EN-US;mso-fareast-language:RU;mso-bidi-language: AR-SA">

Приложение1.
Листингпрограммы.

еще рефераты
Еще работы по компьютерам. программированию