Результаты исследований учащихся в проекте Шифрование данных: различия между версиями
(→Результаты проведённого исследования) |
(→Авторы и участники проекта) |
||
(не показано 29 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
==Авторы и участники проекта== | ==Авторы и участники проекта== | ||
− | Абросимов Роман | + | |
+ | [[Участник:Абросимов Роман|Абросимов Роман ]] | ||
+ | |||
+ | [[Участник:Заплатин Андрей|Заплатин Андрей]] | ||
+ | |||
+ | участники проекта, группа "Шифровальщики" | ||
==Тема исследования группы== | ==Тема исследования группы== | ||
− | + | Шифр Гронсфельда | |
== Проблемный вопрос (вопрос для исследования)== | == Проблемный вопрос (вопрос для исследования)== | ||
Какой способ кодирования информации оптимальнее? | Какой способ кодирования информации оптимальнее? | ||
− | == | + | ==Цели исследования== |
+ | 1. Познакомиться с шифрами замены и перестановки, выполнить их сравнение. | ||
− | + | 2. Для одного из рассмотренных шифров выполнить постановку задачи, разработать алгоритм и программу. | |
− | + | ||
+ | 3. Выполнить шифрование с помощью программы, проанализировать результаты. | ||
==Результаты проведённого исследования== | ==Результаты проведённого исследования== | ||
− | + | Все виды шифров относятся к шифрам замены и перестановки: | |
− | + | ||
− | + | Шифры замены: | |
− | + | ||
+ | 1)Шифр Цезаря; | ||
+ | |||
+ | 2)Шифр Гронсфельда; | ||
+ | |||
+ | 3)Шифр Виженера. | ||
+ | |||
+ | Шифры перестановки: | ||
+ | |||
+ | 1)«Тарабарская грамота»; | ||
+ | |||
+ | 2)Матричная шифровка; | ||
+ | |||
+ | 3)Шифровка по спирали. | ||
Ниже представлен код программы основанный на алгоритме Гронсфельда: | Ниже представлен код программы основанный на алгоритме Гронсфельда: | ||
− | unit Unit1; | + | unit Unit1; |
− | interface | + | interface |
− | uses | + | uses |
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, | Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, | ||
Dialogs, StdCtrls; | Dialogs, StdCtrls; | ||
− | type | + | type |
TForm1 = class(TForm) | TForm1 = class(TForm) | ||
− | + | Label1: TLabel; | |
− | + | Label2: TLabel; | |
− | + | Label3: TLabel; | |
− | + | Edit1: TEdit; | |
− | + | Edit2: TEdit; | |
− | + | Edit3: TEdit; | |
− | + | Button1: TButton; | |
− | + | procedure Button1Click(Sender: TObject); | |
private | private | ||
− | + | { Private declarations } | |
public | public | ||
− | + | { Public declarations } | |
end; | end; | ||
− | var | + | var |
Form1: TForm1; | Form1: TForm1; | ||
− | implementation | + | implementation |
− | {$R *.dfm} | + | {$R *.dfm} |
− | procedure TForm1.Button1Click(Sender: TObject); | + | procedure TForm1.Button1Click(Sender: TObject); |
− | + | var key,S,alphabet:string; i,j,n:integer; | |
− | begin | + | 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; |
− | end. | + | end. |
+ | |||
+ | Основой шифра Гронсфельда является шифр Цезаря, реализующий кодирование фразы путем «сдвига» всех букв фразы на величину сдвига не являющуюся постоянной, а задаваемой ключом. | ||
+ | |||
+ | Ниже представлен интерфейс программы: | ||
+ | |||
+ | <gallery> | ||
+ | Изображение:Форма_проги_шифрование_АРЗАКА.JPG | ||
+ | </gallery> | ||
==Вывод== | ==Вывод== | ||
+ | Были рассмотрены различные шифры замены и перестановки.В качестве примера для программирования был выбран шифр Гронсфельда. | ||
==Полезные ресурсы== | ==Полезные ресурсы== | ||
+ | [http://www.cdo.by.ru/docum/progbas/progbas5.html Шифр Цезаря] | ||
+ | |||
+ | [http://volvo71.narod.ru/faq_folder/code_text.htm Разные виды шифров] | ||
+ | |||
+ | [http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%B8%D0%B0%D0%BB%D1%84%D0%B0%D0%B2%D0%B8%D1%82%D0%BD%D1%8B%D0%B9_%D1%88%D0%B8%D1%84%D1%80 Полиалфавитные шрифты] | ||
+ | |||
+ | [http://www.enlight.ru/ib/tech/crypto/index.htm Винокуров А. Криптография, ее истоки и место в современном обществе] | ||
+ | |||
+ | [http://www.ssl.stu.neva.ru/psw/crypto/intro.html Tatu Ylonen. Введение в криптографию (перевод)] | ||
== Другие документы == | == Другие документы == | ||
+ | [[Основной курс программы Intel Обучение для будущего сентябрь-декабрь 2009]] | ||
[[Категория:Проекты]] | [[Категория:Проекты]] |
Текущая версия на 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