Результаты исследований учащихся в проекте Шифрование данных: различия между версиями

Материал из Wiki Mininuniver
Перейти к навигацииПерейти к поиску
(Авторы и участники проекта)
(Авторы и участники проекта)
 
(не показано 14 промежуточных версий 2 участников)
Строка 1: Строка 1:
 
==Авторы и участники проекта==
 
==Авторы и участники проекта==
[|Абросимов Роман], [|Заплатин Андрей], [|Коробейников Александр]
+
 
 +
[[Участник:Абросимов Роман|Абросимов Роман ]]
 +
 
 +
[[Участник:Заплатин Андрей|Заплатин Андрей]]
 +
 
 +
участники проекта, группа "Шифровальщики"
  
 
==Тема исследования группы==
 
==Тема исследования группы==
Темой исследования группы является написание программы, демонстрирующей шифрование данных на примере Шифра Гронсфельда.
+
Шифр Гронсфельда
  
 
== Проблемный вопрос (вопрос для исследования)==
 
== Проблемный вопрос (вопрос для исследования)==
Строка 9: Строка 14:
  
 
==Цели исследования==
 
==Цели исследования==
Проанализировать различные варианты кодирования и выбрать из них оптимальный.
+
1. Познакомиться с шифрами замены и перестановки, выполнить их сравнение.
 +
 
 +
2. Для одного из рассмотренных шифров выполнить постановку задачи, разработать алгоритм и программу.
 +
 
 +
3. Выполнить шифрование с помощью программы, проанализировать результаты.
  
 
==Результаты проведённого исследования==
 
==Результаты проведённого исследования==
По результатам проведенного исследования было отобрано несколько способов кодирования информации. Нами были рассмотрены несколько алгоритмов шифрования, такие как:  
+
Все виды шифров относятся к шифрам замены и перестановки:
 +
 
 +
Шифры замены:
  
 
1)Шифр Цезаря;
 
1)Шифр Цезаря;
Строка 18: Строка 29:
 
2)Шифр Гронсфельда;  
 
2)Шифр Гронсфельда;  
  
3)Шифр Виженера;
+
3)Шифр Виженера.
 
 
4)«Тарабарская грамота»;
 
  
5)Матричная шифровка;
+
Шифры перестановки:
  
6)Шифровка по спирали.
+
1)«Тарабарская грамота»;
  
Ниже представлен код программы который выступает примером нашей задачи.
+
2)Матричная шифровка;
  
<gallery>
+
3)Шифровка по спирали.  
Изображение:Форма_проги_шифрование_АРЗАКА.JPG
 
</gallery>
 
  
 
Ниже представлен код программы основанный на алгоритме Гронсфельда:
 
Ниже представлен код программы основанный на алгоритме Гронсфельда:
Строка 71: Строка 78:
 
   end;
 
   end;
 
   end.
 
   end.
 +
 +
Основой шифра Гронсфельда является шифр Цезаря, реализующий кодирование фразы путем «сдвига» всех букв фразы на величину сдвига не являющуюся постоянной, а задаваемой ключом.
 +
 +
Ниже представлен интерфейс программы:
 +
 +
<gallery>
 +
Изображение:Форма_проги_шифрование_АРЗАКА.JPG
 +
</gallery>
  
 
==Вывод==
 
==Вывод==
Были рассмотрены различные шифры  
+
Были рассмотрены различные шифры замены и перестановки.В качестве примера для программирования был выбран шифр Гронсфельда.
Нашей задачей было написание простой и эффективной программы шифрования. Из выше описанных методов шифрования, критериям задач наиболее соответствовал метод Гронсфельда, за его распространенность, эфективность и простоту использования.
 
  
 
==Полезные ресурсы==
 
==Полезные ресурсы==

Текущая версия на 11:13, 23 декабря 2010

Авторы и участники проекта

Абросимов Роман

Заплатин Андрей

участники проекта, группа "Шифровальщики"

Тема исследования группы

Шифр Гронсфельда

Проблемный вопрос (вопрос для исследования)

Какой способ кодирования информации оптимальнее?

Цели исследования

1. Познакомиться с шифрами замены и перестановки, выполнить их сравнение.

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

3. Выполнить шифрование с помощью программы, проанализировать результаты.

Результаты проведённого исследования

Все виды шифров относятся к шифрам замены и перестановки:

Шифры замены:

1)Шифр Цезаря;

2)Шифр Гронсфельда;

3)Шифр Виженера.

Шифры перестановки:

1)«Тарабарская грамота»;

2)Матричная шифровка;

3)Шифровка по спирали.

Ниже представлен код программы основанный на алгоритме Гронсфельда:

 unit Unit1;
 interface
 uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;
 type
 TForm1 = class(TForm)
 Label1: TLabel;
 Label2: TLabel;
 Label3: TLabel;
 Edit1: TEdit;
 Edit2: TEdit;
 Edit3: TEdit;
 Button1: TButton;
 procedure Button1Click(Sender: TObject);
 private
 { Private declarations }
 public
 { Public declarations }
 end;
 var
 Form1: TForm1;
 implementation
 {$R *.dfm}
 procedure TForm1.Button1Click(Sender: TObject);
 var key,S,alphabet:string; i,j,n:integer;
 begin
 key:=Edit1.text;
 S:=Edit2.Text;
 alphabet:='абвежзийклмнопрстуфхцчшщъыьэюя';
 n:=length(S);
 for i:=1 to n do
 for j:=1 to 5 do
 S[i]:=alphabet[alphabet[pos(S[i],alphabet)]+strtoint(key[j])];
 Edit3.text:=S;
 end;
 end.

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

Ниже представлен интерфейс программы:

Вывод

Были рассмотрены различные шифры замены и перестановки.В качестве примера для программирования был выбран шифр Гронсфельда.

Полезные ресурсы

Шифр Цезаря

Разные виды шифров

Полиалфавитные шрифты

Винокуров А. Криптография, ее истоки и место в современном обществе

Tatu Ylonen. Введение в криптографию (перевод)

Другие документы

Основной курс программы Intel Обучение для будущего сентябрь-декабрь 2009