Криптология. Реализация алгоритмов шифрования в Delphi
Курсовая работа, 23 Ноября 2011, автор: пользователь скрыл имя
Описание работы
Понятие "Безопасность" охватывает широкий круг интересов как отдельных лиц, так и целых государств. В наше мобильное время видное место отводится проблеме информированной безопасности, обеспечению защиты конфиденциальной информации от ознакомления с ней конкурирующих групп
О важности сохранения информации в тайне знали уже в древние времена, когда с появлением письменности появилась и опасность прочтения ее нежелательными лицами.
Содержание
1 Введение 3
1.1 Исторические основы криптологии 3
1.2 Криптология в современном мире 4
2 Криптология 5
2.1 Основные понятия криптологии 5
2.2 Требования к криптосистемам 8
2.3 Симметрические криптосистемы 9
2.3.1 Метод Цезаря 10
2.3.2 Системы шифрования Гронсфельда 12
3 Практическое применение криптологии 13
3.1 Цифровая подпись 13
3.1.1 Общие положения 13
4 Постановка задачи 14
5 Реализация задачи 14
5.1 Краткая характеристика среды Embarcadero® Delphi® XE 14
5.2 Алгоритм решения задачи 14
5.2.1 Модуль шифровки/дешифровки 15
5.3 Дополнения 16
5.4 Блок-Схема 17
6 Заключение 18
7 Список литературы: 19
Работа содержит 1 файл
курсовая.docx
— 93.61 Кб (Скачать)Чтобы зашифровать первую букву сообщения В, используя первую цифру ключа 2, нужно отсчитать вторую по порядку букву от В в алфавите
| В | Г | Д |
| 1 | 2 |
получается первая буква шифртекста Д.
Следует отметить, что шифр Гронсфельда вскрывается относительно легко, если учесть, что в числовом ключе каждая цифра имеет только десять значений, а значит, имеется лишь десять вариантов прочтения каждой буквы шифртекста. С другой стороны, шифр Гронсфельда допускает дальнейшие модификации, улучшающие его стойкость, в частности двойное шифрование разными числовыми ключами. Шифр Гронсфельда представляет собой по существу частный случай системы шифрования Вижинера.
- Практическое применение криптологии
- Цифровая подпись
- Общие положения
При ведении деловой переписки, при заключении контрактов подпись ответственного лица является непременным атрибутом документа, преследующим несколько целей:
- Гарантирование истинности письма путем сличения подписи с имеющимся образцом;
- Гарантирование авторства документа ( с юридической точки зрения)
Выполнение данных требований основывается на следующих свойствах подписи:
- подпись аутентична, то есть с ее помощью получателю документа можно доказать, что она принадлежит подписывающему;
- подпись неподделываема; то есть служит доказательством, что только тот человек, чей автограф стоит на документе, мог подписать данный документ, и никто иной.
- Подпись непереносима, то есть является частью документа и поэтому перенести ее на другой документ невозможно.
- Документ с подписью является неизменяемым.
- Подпись неоспорима.
- Любое лицо, владеющее образцом подписи может удостоверится, что документ подписан владельцем подписи.
- Развитие современных средств безбумажного документооборота, средств электронных платежей немыслимо без развития средств доказательства подлинности и целостности документа. Таким средством является электронно-цифровая подпись (ЭЦП), которая сохранила основные свойства обычной подписи.
Существует несколько методов построения ЭЦП, а именно:
- шифрование электронного документа (ЭД) на основе симметричных алгоритмов. Данная схема предусматривает наличие в системе третьего лица – арбитра, пользующегося доверием обеих сторон. Авторизацией документа в данной схеме является сам факт шифрования ЭД секретным ключом и передача его арбитру.
- Использование ассиметричных алгоритмов шифрования. Фактом подписания документа является шифрование его на секретном ключе отправителя.
- Развитием предыдущей идеи стала наиболее распространенная схема ЭЦП – шифрование окончательного результата обработки ЭД хеш-функцией при помощи ассиметричного алгоритма.
Кроме перечисленных, существуют и другие методы построения схем ЭЦП
- групповая подпись,
- Постановка задачи
Разработать
программу шифрующую и
- Реализация задачи
- Краткая характеристика среды Embarcadero® Delphi® XE
Среда программирования Embarcadero® Delphi® XE позволяет реализовать поставленную задачу со всеми необходимыми требованиями. Delphi является объектно-ориентированной средой, что упрощает создание единообразного интерфейса .
- Алгоритм решения задачи
В программе предоставлено два способа шифрования – Шифр Цезаря и Шифр Гронсфельда. Программа может как и шифровать, так и дешифровать.
Используется
метод симметрического
Модули программы
Программа имеет несколько стандартных основных форм/модулей: main форма, для выбора метода кодирования ; две формы кодирования : Цезарь и Гронсфельд; две формы Помощи , в которых рассказывается о методах кодирования.
Опишем лишь модули отвечающие непосредственно за шифрование.
- Модуль шифровки/дешифровки
Цезарь
For i:=0 to 65 do
begin //Формирование нового массива
b[i]:= Buk[(i+1) mod 66];
end;
k := StrToInt(MaskEdit1.Text);
s := IshMemo.Lines.Text;
for i := 1 to length(s) do
for j := 0 to 65 do
if s[i] = b[j] then s2 := s2+b[(j+(k)) mod 66];
ObrMemo.Lines.Text := s2;
Для расшифровки меняем
if s[i] = b[j] then s2 := s2+b[(j+(k)) mod 66];
на
if s[i]
= b[j] then s2 := s2+b[(j-(k)) mod 66];
Гронсфельд
str :=IshMemo.Lines.Text;
k:=MaskEdit1.Text;
for i := 1 to length(str) do
begin
T := (Ord(str[ i ])+ (Ord(K[(pred(i) mod length(K)) + 1]) - Ord('0')));
if T >= 256 then dec(T, 256);
str[ i ] := Chr(T);
ObrMemo.Lines.Text :=str;
Для расшифроки
str:=IshMemo.Lines.Text;
k:=MaskEdit1.Text;
for i := 1 to length(str) do
begin
T := (Ord(str[i])-(Ord(K[(pred(i) mod length(K)) + 1]) - Ord('0')) );
if T < 0 then Inc(T, 256);
str[ i ] := Chr(T);
ObrMemo.Lines.Text :=str;
end;
- Дополнения
Для улучшения
стиля оформления программы была
подключена библиотека AlphaControls. Так же
для развития в работе с средой программирования
Delphi были изучены Ресурсы. В программе
представлен пример использования ресурсов
– фоновое проигрывание мелодии, без файла
mp3.
- Блок-Схема
НАЧАЛО
Вводим текст и ключ
Выводим
зашифрованное/дешифрованное
CheckBox=
false
CheckBox=
true
КОНЕЦ
Дешифруем
Шифруем
Да
Да
Нет
Нет
- Заключение
Итак, итогом работы является криптосистема, работающая на двух методах Цезаря и Гронсфельда. Обоснованный выбор той или иной системы защиты должен опираться на какие-то критерии эффективности. К сожалению, до сих пор не разработаны подходящие методики оценки эффективности криптографических систем.
Наиболее простой критерий такой эффективности - вероятность раскрытия ключа или мощность множества ключей (М). По сути это то же самое, что и кpиптостойкость. Для ее численной оценки можно использовать также и сложность раскрытия шифра путем перебора всех ключей. Однако, этот критерий не учитывает других важных требований к криптосистемам:
- невозможность раскрытия или осмысленной модификации информации на основе анализа ее структуры,
- совершенство используемых протоколов защиты,
- минимальный объем используемой ключевой информации,
- минимальная сложность реализации (в количестве машинных операций), ее стоимость,
- высокая оперативность.
В
любом случае выбранный комплекс
кpиптогpафических методов
- Список литературы:
1. Петров А.А
Компьютерная безопасность. Криптографические методы защиты. ДМК
Москва,
2000 г.
2. "Методы и средства защиты информации" (курс лекций)
Авторские права: Беляев А.В.
(http://www.citforum.ru/
3. Криптография
(http://www.citforum.ru/