Методическая разработка "Основы криптографии и программирование"
ОСНОВЫ КРИПТОГРАФИИ И ПРОГРАММИРОВАНИЕ
Методическая разработка по предмету Информатика и ИКТ
Новикова Елена Юрьевна, учитель информатики
МОУ «Физико-технический лицей № 1» г. Саратов (ФТЛ № 1)
Аннотация
Темы информационная безопасность и программирование входят в программу профильной информатики. Моя методическая разработка посвящена одному аспекту информационной безопасности – криптографии и рассчитана на 8 часов. Изучая эту тему, учащийся получает знания по основам криптографии и закрепляет умения программировать. Предполагается, что учащиеся знакомы с программированием массивов, строк и символов в Паскале. Лекционные части уроков темы сопровождаются презентациями. В разработке представлены программные коды рассматриваемых задач. При изучении темы учащиеся выполняют две практические работы и одну контрольную практическую работу. Материал разработки имеет дополнительные задания.
Пояснительная записка
Целью моей работы как учителя информатики является формирование современного научного мировоззрения, развитие интеллектуальных способностей и познавательных интересов школьников, освоение информационных технологий, необходимых школьникам в обучении и в их повседневной и будущей жизни. Актуальность предлагаемой методики заключается в использовании информационных технологий для решения прикладных задач по информационной безопасности. Место курса в программе профильной информатики мною определено в 11-м классе, в разделе повторения методов программирования и подготовки к сдаче ЕГЭ по информатике. Задачами курса является получение знаний по основам криптографии, умений моделировать криптоалгоритмы с помощью компьютера, закрепление навыков программирования символьных и строковых типов, массивов. ТО и ПО: ПК, интерактивная доска, проектор, среда программирования BP, Microsoft Office. Предлагаемый курс дает возможность компьютерного моделирования задач криптографии и создания собственных программных продуктов для решения задач криптографии.
Электронный ресурс (8 ч)
Лекционные части уроков темы сопровождаются тремя презентациями.
В разработке представлены программные коды всех рассматриваемых задач, разработаны тесты для проверки.
При изучении темы учащиеся выполняют две практические работы в среде ВР и одну контрольную практическую работу в среде ВР.
Материал разработки имеет дополнительные задания и теоретический материал.
Содержание темы
Урок 1. Основы криптографии. 1ч. Возможности защиты информации. Понятия криптографические алгоритмы, шифр, ключ. Виды криптоалгоритмов. Символьные и строковые типы в Паскале.
Урок 2. Шифры замены. 1ч. Шифры Цезаря, Виженера, Полибианский квадрат.
Урок 3-4. Практическая работа по теме «Программирование криптоалгоритмов замены». 2ч.
Уроки 5. Шифры перестановки. 1ч. Одиночные и двойные перестановки. Магические квадраты.
Урок 6. Практическая работа по теме «Программирование криптоалгоритма одиночной перестановки». 1ч.
Уроки 7-8. Контрольная работа по теме «Программирование криптоалгоритмов». 2ч.
Первый урок. Основы криптографии
Форма урока: урок- лекция, беседа.
Цели урока: познакомить учащихся с проблемами информационной безопасности, способами обеспечения безопасности, понятием криптографии, вспомнить описание, функции и процедуры обработки строк и символов в Паскале.
Тезисы лекции. Лекция сопровождается презентацией «Основы криптографии».
Три основные возможности сохранения информации:
Создать недоступный для других канал связи между абонентами.
В общедоступном канале связи скрыть сам факт передачи информации.
В общедоступном канале связи передавать преобразованную (зашифрованную) информацию, которую может восстановить только получатель. Разработкой методов преобразования информации с целью ее защиты занимается наука криптография.
О бщий алгоритм шифрования.
Существует два основных типа криптографических алгоритмов: симметричные и асимметричные. В криптографии используются следующие основные алгоритмы шифрования:
алгоритм замены (подстановки);
алгоритм перестановки;
аналитическое преобразование.
Примером простого алгоритма замены является шифр Цезаря, в котором каждый символ открытого текста заменяется символом, находящимся тремя символами правее в алфавите.
Примером алгоритма перестановки является простой вертикальный перестановочный шифр, где открытый текст пишется по горизонтали фиксированной ширины, а шифртекст считывается по вертикали.
В настоящее время криптографические алгоритмы реализуются с помощью компьютера. Необходимы знания по работе с массивами, символами и строками в Паскале. На уроке следует обсудить задачи на удаление пробелов из строки, на добавление символов к строке, на взаимосвязь символов и их кодов в компьютерном алфавите.
Второй урок. Шифры замены
Форма урока: урок-лекция.
Цели урока: расширить знания учащихся об используемых шифрах замены, научить шифровать и дешифровать информацию.
Тезисы лекции. Лекция сопровождается презентацией. «Шрифты замены».
Представителем шифра замены является шифр Виженера. Этот шифр предполагает выбор ключа, который рассматривают как блоковую последовательность букв, а сообщение разбивают на блоки длиной, соответствующей длине ключа. Затем выполняют операцию сложения по модулю номеров каждой буквы исходного текста с номером соответствующей буквы ключа в блоке и по полученному номеру записывают букву в зашифрованный текст.
Криптоалгоритм полибианский квадрат предполагает заполнение некоего квадрата буквами алфавита в случайном порядке. Для шифрования на квадрате находят букву текста и записывают в шифртекст букву, расположенную ниже ее в том же столбце. Если буква оказывалась в нижней строке таблицы, то берут верхнюю букву из того же столбца.
Третий-четвертый уроки. Практическая работа по теме
«Программирование криптоалгоритмов замены»
Цели урока: научить шифровать и дешифровать информацию программным путем с помощью шифров замены.
Предлагается написать и отладить программы для шифрования и дешифрования по следующим алгоритмам: шифр Виженера с ключом «file»; шифр Полибианский квадрат с ключом размером 5*5, заполненным прописными буквами латинского алфавита.
При выполнении практической работы необходимо обговорить следующие моменты: все тексты состоят из малых английских букв; текст читается как строка и поэтому не может содержать более 255 символов. Можно не ограничивать объем текста, если учащиеся знакомы c типом файлы. При работе в среде программирования удобнее использовать файловый ввод-вывод.
Листинг кода шифра Цезаря с ключом k
program cezar;
var n,i,r,k:integer; s:string;
begin
writeln('vvedite stroku'); readln(s);
writeln('vvedite kluch'); readln(k);
writeln('vvedite regim: 1-shifrovanie, 2-rasshifrovanie'); readln(r);
if r=1 then begin i:=1;
while i<=length(s) do {убираем пробелы из открытого текста}
if s[i]=‘ ' then delete(s,i,1) else i:=i+1;
for i:=1 to length(s) do begin
n:=ord(s[i])+k; if n>ord('z') then n:=ord('a')+n-ord('z')-1;
s[i]:=chr(n); end;
end else
for i:=1 to length(s) do begin
n:=ord(s[i])-k; if n<ord('a') then n:=ord('z')-(ord('a')-n-1);
s[i]:=chr(n); end;
writeln(s);
end.
Пятый урок. Шифры перестановки
Цели урока: познакомить учащихся с шифрами перестановки, научиться шифровать и дешифровать информацию.
Тезисы лекции. Лекция сопровождается презентацией. «Шрифты перестановки».
К перестановочному шифрованию относится метод одиночной перестановки. Установливают номера следования букв ключа в алфавите и с помощью этих чисел нумеруют столбцы, а открытый текст записывают как последовательность строк под ключом. Криптограмма образуется путем чтения по столбцам, начиная со столбца, номер которого наименьший в алфавите и т.д.
В алгоритме двойных перестановок сначала в таблицу записывается текст сообщения, а потом поочередно переставляются столбцы, затем строки.
К перестановочным алгоритмам относится алгоритм магические квадраты. Для шифрования необходимо вписать исходный текст по приведенной в квадрате нумерации и затем переписать содержимое таблицы по строкам. В результате получается шифртекст, сформированный благодаря перестановке букв исходного сообщения.
Шестой урок. Практическая работа по теме
«Программирование криптоалгоритма одиночной перестановки»
Цели урока: научить шифровать и дешифровать информацию программным путем с помощью одиночной перестановки.
Предлагается написать и отладить программу для шифрования и дешифрования по алгоритму одиночной перестановки с ключом «file».
Седьмой-восьмой уроки. Контрольная работа
Цели урока: проверка умений шифровать и дешифровать текстовую информацию программным путем.
Учащимся предлагается карточка с заданиями. Задания разработаны в трех вариантах.
Вариант 1
1. Написать алгоритм шифрования и дешифрования текста с помощью шифра перестановки с заданной таблицей подстановки:
-
1
2
3
4
5
6
…
3n-2
3n-1
3n
3
2
1
6
5
4
…
3n
3n-1
3n-2
(Если количество символов в тексте не кратно трем, недостающие символы дополняются пробелами).
2. Написать алгоритм шифрования и дешифрования текста при помощи шифра Цезаря с переменным сдвигом, равным частному от деления нацело номера буквы в тексте на 5.
r |
e |
t |
u |
o |
s |
r |
p |
n |
p |
e |
m |
a |
l |
c |
o |
Дополнительные задания
Перевертыш. Написать программу для считывания отрывка из текста, переведя его на язык Перевертыша и печати переведенного варианта по правилу: буквы, стоящие до первой гласной, передвигаются в конец слова и к вновь образованному слову добавляется окончание «циус». Пример: кот в сапогах - откциус вциус апогахциус
Дешифровка. Дана последовательность целых чисел. Затем все элементы были изменены следующим образом: каждый элемент получил новое значение, равное количеству чисел в исходной последовательности, стоящих правее этого элемента и превышающих его значение. Восстановить эту последовательность.
Выводы
Предлагаемая методическая разработка полезна, так как дает новый теоретический материал и закрепляет навыки программирования и моделирования. Она интересна для учащихся потому, что задачи программирования имеют прикладной характер, и современна, так как учит разрабатывать собственные программные продукты для решения прикладных задач обеспечения безопасности информации. Курс является достаточным, он включает в себя лекции, презентации, программные коды решаемых задач, тесты для проверки, карточки-задания, и может модифицироваться в зависимости от уровня подготовки учащихся по программированию.
Литература
Окулов С. Основы программирования. – 3-е изд. - М.: БИНОМ. Лаборатория знаний, 2006. –440 с.
Угринович Н.Д. Исследование информационных моделей. Элективный курс: Учебное пособие / -2-е изд. испр. и доп. – М. БИНОМ. Лаборатория знаний, 2006. – 200 с.
Танова Э.В. Введение в криптографию. Элективный курс: Учебное пособие – М. БИНОМ. Лаборатория знаний, 2007. – 80 с.
Информатика. Методическая газета для учителей информатики, Издательский дом «Первое сентября» – №16, 2010. – 2-14 с.
На странице приведен фрагмент.
Автор: Новикова Елена Юрьевна
→ neu22 20.02.2011 7 5037 819 |
Спасибо за Вашу оценку. Если хотите, чтобы Ваше имя
стало известно автору, войдите на сайт как пользователь
и нажмите Спасибо еще раз. Ваше имя появится на этой стрнице.