Шифрование методом Виженера

Автор работы: Пользователь скрыл имя, 08 Июня 2013 в 23:01, контрольная работа

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

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

Содержание

Введение 2
Исторические основы криптологии 2
Криптология в современном мире 3
Криптология 3
Основные понятия криптологии 3
Требования к криптосистемам 5
Симметрические криптосистемы 6
Системы шифрования Виженера 7
Постановка задачи 10
Реализация задачи 10
Листинг программы с комментариями: 10
Пример 12
Заключение 13
Список литературы: 14

Вложенные файлы: 1 файл

семестровая работа.docx

— 437.29 Кб (Скачать файл)

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

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

 

Все многообразие существующих криптографических методов можно  свести к следующим классам преобразований:

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

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

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

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

Системы шифрования Виженера

 

Шифр Виженера (фр. Chiffre de Vigenиre) — метод полиалфавитного шифрования буквенного текста с использованием ключевого слова.

Шифр Виженера достаточно прост для использования в полевых условиях, особенно если применяются шифровальные диски. Например, «конфедераты» использовали медный шифровальный диск для шифра Виженера в ходе Гражданской войны.

Рис.1 Репродукция шифровального диска Конфедерации

 

Метод Вижинера является следствием подстановки Цезаря. В системе Виженера задается некая конечная последовательность ключа

  k = (k0 ,k1 ,...,kn),

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

При длине пользовательского  ключа R:

1) исходный текст x делится на R фрагментов 

xi = (xi , xi+r , ..., xi+r(n-1)), 0 ≤ i < r;

2) i-й фрагмент исходного текста xi шифруется при помощи подстановки Цезаря в зависимости от пользовательского ключа :

(xi , xi+r , ..., xi+r(n-1)) → (yi , yi+r , ..., yi+r(n-1)),

Очень распространена плохая с точки зрения секретности практика использовать слово или фразу в качестве ключа для того, чтобы k=(k0 ,k1 ,...,kк-1) было легко запомнить. В информационных системах для обеспечения безопасности информации это недопустимо. Для получения ключей должны использоваться программные или аппаратные средства случайной генерации ключей.

Если буквы A-Z соответствуют  числам 0-25, то шифрование Виженера можно записать в виде формулы:

Расшифровка:

Рис.2 таблица Виженера

Пример. Преобразование текста с помощью подстановки Вижинера

Исходный  текст :

   mother

Ключ: key

Разобьем исходный текст  на блоки по 3 символа:

Mot her

и наложим на них ключ (используя таблицу Вижинера):

 

m+k= w ; o+e=s и т.д.

Получаем зашифрованный текст:

wsrrip

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

Постановка задачи

Разработать программу шифрующую  текст методом Виженера.

Реализация задачи

Для реализации поставленной задачи мной был выбран язык программирования Pascal ABC. Программа представляет собой шифровщик.

Листинг программы с комментариями:

program Viz;

uses crt;

var

a,b,c,d:string;

i,j,k,t,q:integer;

begin

t:=1;

writeln('Введите слово для шифрования');

readln(a);

writeln(Введите ключ');

readln(d);

q:=length(d);

c:='';

b:='abcdefghijklmnopqrstuvwxyz';

for i:=1 to length(a) do

for j:=1 to length(b) do

begin

if a[i]=b[j] then

begin

if t>length(d) then

t:=1;

for k:=1 to length(b) do

begin

if d[t]=b[k] then

q:=j+k-1;

if q>26 then

q:=q-26;

end;

c:=c+b[q];

t:=t+1;

end;

end;

writeln(c);

readkey;

end.

 

Исходный текст: mother;

Ключ: key;

Результат кодирования: wsrrip

Заключение

Итак, итогом работы является симметрическая криптосистема, работающая на методе шифрования Виженера.

 Обоснованный выбор  той или иной системы защиты должен опираться на какие-то критерии эффективности:

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

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

 

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

 

1. Петров А.А «Компьютерная безопасность. Криптографические методы защиты» ДМК Москва, 2000 г.

 

2.  "Методы и средства  защиты информации" (курс лекций) Авторские права: Беляев А.В.

(http://www.citforum.ru/internet/infsecure/index.shtml)

 

3. Криптография  (http://www.citforum.ru/internet/securities/crypto.shtml)

 

4.  Бобровский С. Delphi 7. Учебный курс. Из-во Питер, 2004г.

 

5. Шифр Виженера (http://ru.wikipedia.org/wiki/Шифр_Виженера)

 

6. Соловьева Ю.А. «Элементы криптографии. Часть I Симметричные криптосистемы» Уч.пособие,

Новокузнецк, 2003г.

 

 

 

 

 

 

 

 


Информация о работе Шифрование методом Виженера