Инфоурок Внеурочная деятельность Другие методич. материалыИсследовательская работа по математике "Математики, шпионы и шифры" 10 класс

Исследовательская работа по математике "Математики, шпионы и шифры" 10 класс

Скачать материал

Муниципальное автономное образовательное учреждение

Гимназия №4.

 

 

 

 

 

 

Исследовательская работа

«Математики, шпионы и шифры»

 

 

Секция: математическая

 

 

Выполнил:

ученик 10 «Б» класса

Новиков Максим

Руководитель:

учитель математики

Прокопенко Т.И.

 

 

 

 

 

Хабаровск

2020 г

 

 

Оглавление

 

Введение………………………………………………………….…….3

    I.              Теоретическая часть………………………………………………….4

1.     .История развития шифров и криптографии………………….5

2.     Типы шифров…………………………………………..…………

3.     Современные шифры……..………………………….…………14

      II.     Практическая часть……………………………………………….. 17

   Вывод………………………………………………………………..20

  Приложения Используемая литература……………………………………………..……….…21

Используемая литература     Приложения.……………………………….…………………………23

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Введение

Шифр – какая-либо система преобразования текста с секретом для обеспечения секретности передаваемой информации. Криптография – одна из старейших наук, изучающая шифры. Проблема защиты информации путём её преобразования, исключающего её прочтение посторонним лицам, волновала человеческий ум с давних времён. Как только люди научились писать, у них сразу же появилось желание сделать написанное понятным не всем, а только узкому кругу людей. Даже в самых древних памятниках письменности учёные находят признаки намеренного искажения текстов.

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

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

В документах древних цивилизаций - Индии, Египта, Месопотамии есть сведения о системах и способах составления шифрованных писем. Наибольшее развитие в это время криптография получила в полисах Древней Греции, а позже в Риме. Так, наиболее распространенным и получившим широкую известность в античном мире шифром замены является ШИФР ЦЕЗАРЯ, об этом я расскажу позже…

Цель работы.

1. Изучить возникновение и историю развития криптографии и шифров.

2. Исследовать типы шифров, их описание и ключи (разгадка).

3.Изучить самые современные шрифты.

4.Провести практический опыт шифрования.

5.Сделать выводы.

Гипотеза: Между словами математик, шпион и хакер можно поставить знак « = ». Создать свой шифр не составит трудности, если ты разбираешься в математических вычислениях.

1.     Теоретическая часть

1.История развития шифров и криптографии.

История криптографии насчитывает около 4 тысяч лет. Имеются свидетельства, что криптография как техника защиты текста возникла вместе с письменностью, и способы тайного письма были известны уже древним цивилизациям Индии, Египта и Месопотамии.

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

Первый период (приблизительно с 3-го тысячелетия до н. э.) характеризуется господством моноалфавитных шифров (основной принцип – замена алфавита исходного текста другим алфавитом с помощью замены букв другими буквами или символами).

Второй период (хронологические рамки – с IX века на Ближнем Востоке и с XV века в Европе до начала XX века) ознаменовался введением в обиход полиалфавитных шифров.

Третий период (с начала и до середины XX века) характеризуется внедрением электромеханических устройств в работу шифровальщиков. При этом продолжалось использование полиалфавитных шифров.

Четвертый период с середины XX века до 70-х годов XX века – период перехода к математической криптографии. В работе Шеннона появляются строгие математические определения количества информации, передачи данных, энтропии, функций шифрования. Обязательным этапом создания шифра считается изучение его уязвимости к различным атакам. Однако до 1975 года криптография оставалась "классической", или же, более корректно, криптографией с секретным ключом.

Современный период развития криптографии (с конца 1970-х годов по настоящее время) отличается зарождением и развитием нового направления – криптография с открытым ключом. Её появление знаменуется не только новыми техническими возможностями, но и сравнительно широким распространением криптографии для использования частными лицами. Современная криптография образует отдельное научное направление на стыке математики и информатики – работы в этой области публикуются в научных журналах, организуются регулярные конференции. Практическое применение криптографии стало неотъемлемой частью жизни современного общества – её используют в таких отраслях как электронная коммерция, электронный документооборот, телекоммуникации и других.

1.     Типы шифров

Шифры могут использовать один ключ для шифрования и дешифрования или два различных ключа. По этому признаку различают:

2.1. Симметричные шифры – способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ.

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

Классическим примером таких алгоритмов являются:

Простая перестановка.

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

Одиночная перестановка по ключу.

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

Двойная перестановка.

Для дополнительной скрытности можно повторно шифровать сообщение, которое уже было зашифровано. Этот способ известен под названием двойная перестановка. Для этого размер второй таблицы подбирают так, чтобы длины ее строк и столбцов были другие, чем в первой таблице. Лучше всего, если они будут взаимно простыми. Кроме того, в первой таблице можно переставлять столбцы, а во второй строки.

Перестановка «Магический квадрат».

Магическими квадратами называются квадратные таблицы со вписанными в их клетки последовательными натуральными числами от 1, которые дают в сумме по каждому столбцу, каждой строке и каждой диагонали одно и то же число. Подобные квадраты широко применялись для вписывания шифруемого текста по приведенной в них нумерации. Если потом выписать содержимое таблицы по строкам, то получалась шифровка перестановкой букв. На первый взгляд кажется, будто магических квадратов очень мало. Тем не менее, их число очень быстро возрастает с увеличением размера квадрата. Так, существует лишь один магический квадрат размером 3 х 3, если не принимать во внимание его повороты. Магических квадратов 4 х 4 насчитывается уже 880, а число магических квадратов размером 5 х 5 около 250000. Поэтому магические квадраты больших размеров могли быть хорошей основой для надежной системы шифрования того времени, потому что ручной перебор всех вариантов ключа для этого шифра был немыслим.

В квадрат размером 4 на 4 вписывались числа от 1 до 16. Его магия состояла в том, что сумма чисел по строкам, столбцам и полным диагоналям равнялась одному и тому же числу — 34. Впервые эти квадраты появились в Китае, где им и была приписана некоторая «магическая сила».

Шифрование по магическому квадрату производилось следующим образом. Например, требуется зашифровать фразу:

16

3

2

13

5

10

11

8

9

6

7

12

4

15

14

1

 «ПриезжаюCегодня.». Буквы этой фразы вписываются последовательно в квадрат согласно записанным в них числам: позиция буквы в предложении соответствует порядковому числу.

В пустые клетки ставится точка. После этого шифрованный текст записывается в строку (считывание производится слева направо, построчно):
.ирдзегюСжаоеянП
При расшифровывании текст вписывается в квадрат, и открытый текст читается в последовательности чисел «магического квадрата». Программа должна генерировать «магические квадраты» и по ключу выбирать необходимый. Размер квадрата больше чем 3х3.

16.

3 и

2 р

13 д

5 з

10 е

11 г

8 ю

9 С

6 ж

7 а

12 о

4 е

15 я

14 н

1 П

Достоинства:

· скорость;

· простота реализации;

· меньшая требуемая длина ключа для сопоставимой стойкости;

· изученность.

Недостатки:

Сложность обмена ключами. Для применения необходимо решить проблему надёжной передачи ключей каждому абоненту, так как нужен секретный канал для передачи каждого ключа обеим сторонам.

2.2. Асимметричное шифрование – система шифрования, при которой открытый ключ передаётся по открытому (то есть незащищённому, доступному для наблюдения) каналу, и используется для проверки ЭЦП и для шифрования сообщения.  Для шифрования и расшифровывания сообщения используется секретный ключ. Криптографические системы с открытым ключом в настоящее время широко применяются в различных сетевых протоколах.

Хотя ключевая пара математически связана, вычисление закрытого ключа из открытого в практическом плане невыполнимо. Каждый, у кого есть ваш открытый ключ, сможет зашифровать данные, но не сможет их расшифровать. Только человек, обладающим соответствующим закрытым ключом может расшифровать информацию. Поэтому криптография с открытым ключом использует односторонние функции с лазейкой. Лазейка – это некий секрет, который помогает расшифровать. К примеру, если разобрать часы на множество составных частей, то очень сложно собрать вновь работающие часы. Но если есть инструкция по сборке (лазейка), то можно легко решить эту проблему.

Например,

Рассматривается схема с возможностью восстановить исходное сообщение с помощью «лазейки», то есть труднодоступной информации. Для шифрования текста можно взять большой абонентский справочник, состоящий из нескольких толстых томов (по нему очень легко найти номер любого жителя города, но почти невозможно по известному номеру найти абонента). Для каждой буквы из шифруемого сообщения выбирается имя, начинающееся на ту же букву. Таким образом, букве ставится в соответствие номер телефона абонента. Отправляемое сообщение, например «КОРОБКА», будет зашифровано следующим образом:

Сообщение

Выбранное имя

Криптотекст

К

Королёв

5643452

О

Орехов

3572651

Р

Рузаева

4673956

О

Осипов

3517289

Б

Батурин

7755628

К

Кирсанова

1235267

А

Арсеньева

8492746

 

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

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

Особенности системы:

· Преимущество асимметричных шифров перед симметричными шифрами состоит в отсутствии необходимости предварительной передачи секретного ключа по надёжному каналу;

· В симметричной криптографии ключ держится в секрете для обеих сторон, а в асимметричной криптосистеме только один секретный;

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

Недостатки:

· Преимущество алгоритма симметричного шифрования над несимметричным заключается в том, что в первый относительно легко внести изменения;

· Хотя сообщения надежно шифруются, но «засвечиваются» получатель и отправитель самим фактом пересылки шифрованного сообщения;

· Несимметричные алгоритмы используют более длинные ключи, чем симметричные.

Шифры могут быть сконструированы так, чтобы либо шифровать сразу весь текст, либо шифровать его по мере поступления. Таким образом, существуют:

Блочный шифр шифрует сразу целый блок текста, выдавая шифротекст после получения всей информации;

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

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

2.3. Блочный шифр

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

Преобразование должно использовать следующие принципы:

· Рассеивание – то есть изменение любого знака открытого текста или ключа влияет на большое число знаков шифротекста, что скрывает статистические свойства открытого текста;

· Перемешивание – использование преобразований, затрудняющих получение статистических зависимостей между шифротектстом и открытым текстом.

Режимы работы блочного шифра.

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

2.4. Поточный шифр

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

Классификация поточных шифров:

Допустим, например, что в режиме гаммирования для поточных шифров при передаче по каналу связи произошло искажение одного знака шифротекста. Очевидно, что в этом случае все знаки, принятые без искажения, будут расшифрованы правильно. Произойдёт потеря лишь одного знака текста. А теперь представим, что один из знаков шифротекста при передаче по каналу связи был потерян. Это приведёт к неправильному расшифрованию всего текста, следующего за потерянным знаком.

Практически во всех каналах передачи данных для поточных систем шифрования присутствуют помехи. Поэтому для предотвращения потери информации решают проблему синхронизации шифрования и расшифрования текста. По способу решения этой проблемы шифросистемы подразделяются на синхронные и системы с самосинхронизацией.

Синхронные поточные шифры

Синхронные поточные шифры (СПШ) – шифры, в которых поток ключей генерируется независимо от открытого текста и шифротекста.

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

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

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

Плюсы СПШ:

· отсутствие эффекта распространения ошибок (только искажённый бит будет расшифрован неверно);

· предохраняют от любых вставок и удалений шифротекста, так как они приведут к потере синхронизации и будут обнаружены.

Минусы СПШ:

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

Самосинхронизирующиеся поточные шифры

Самосинхронизирующиеся поточные шифры или асинхронные поточные шифры (АПШ) – шифры, в которых поток ключей создаётся функцией ключа и фиксированного числа знаков шифротекста.

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

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

Плюсы АПШ:

· Размешивание статистики открытого текста, т. к. каждый знак открытого текста влияет на следующий шифротекст. Статистические свойства открытого текста распространяются на весь шифротекст. Следовательно, АПШ может быть более устойчивым к атакам на основе избыточности открытого текста, чем СПШ.

Минусы АПШ:

· распространение ошибки;

· чувствительны к вскрытию повторной передачей.

2.5.Шифр Цезаря

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

Шифр назван в честь римского императора Гая Юлия Цезаря, использовавшего его для секретной переписки. Естественным развитием шифра Цезаря стал шифр Виженера. С точки зрения современного криптоанализа, шифр Цезаря не имеет приемлемой стойкости.

2.     Современные шифры.

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

Большинство карт имеет 16 цифр от 0 до 9. Числа сгруппированы по четыре цифры, чтобы их легче было прочитать. Для наших целей мы будем обозначать их следующим образом:

  ABCD EFGH IJKL MNOP

Каждая группа цифр кодирует определенную информацию: первая группа (ABCD) идентифицирует банк (или любой другой субъект, оказывающий услуги).

Каждый банк имеет свой номер, который может меняться в зависимости от континента, а также от бренда карты и условий. Пятая цифра (Е) соответствует типу карты и указывает, какое финансовое учреждение управляет счетом.

Математики, шпионы и хакеры. Кодирование и криптография - _93.jpg

Как мы видим, это не жесткое правило.

Следующие десять цифр (FGH IJKL MNO) являются уникальным идентификатором для каждой карты. Эти числа связаны с номером счета клиента, с уровнем карты — Classic, Gold, Platinum и т. д., а также с кредитным лимитом, сроком действия и процентными ставками по типу баланса.

Наконец, контрольная цифра (Р) связана с предыдущими цифрами в соответствии с алгоритмом Луна.

В России первые шесть цифр номера карты (ABCDEF) являются банковским идентификационным номером (БИН). Первая из этих шести цифр указывает на платежную систему. Например, у карт Visa первая цифра — 4, у MasterCard — 5.

Седьмая и восьмая цифры номера карты (GH) уточняют, в рамках какой программы банка была выпущена карта. Следующие семь цифр (IJKL MNO) идентифицируют непосредственно карту. Последняя цифра (Р) — контрольная.

Алгоритм Луна назван так в честь Ганса Питера Луна, немецкого инженера, разработавшего его. Для 16-значной карты этот алгоритм работает следующим образом.

1. Каждую цифру в нечетной позиции, начиная с первого числа слева, мы умножаем на два. Если результат больше 9, мы складываем обе цифры этого двузначного числа (или, что то же самое, вычитаем из него 9). Например, если мы получили 18, сложение цифр дает 1 + 8 = 9, а вычитание — 18 — 9 = 9.

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

3. Если окончательная сумма кратна 10 (то есть ее значение равно нулю по модулю 10), номер карты является действительным. Заметим, что именно последняя контрольная цифра делает общую сумму кратной 10.

* * *

DINER’S CLUB

Одной из первых кредитных карт, получивших широкое признание, была карта Diner's Club. Автором идеи был американец Фрэнк Макнамара. В 1950 г. ему удалось убедить различные рестораны принимать оплату безналично с помощью персональных гарантированных кредитных карт, которые Макнамара распространил среди своих лучших клиентов. Наиболее часто в первые десятилетия кредитными картами расплачивались за обеды американские коммивояжеры, будучи в дороге.

* * *

Например, пусть карта имеет следующий номер:

1234 5678 9012 3452

По алгоритму Луна имеем:

1∙2 = 2

3∙2 = 6

5∙2 = 10 => 1 + 0 = 1

7∙2=14 => 1 + 4 = 5 (или 14-9 = 5)

9∙2 = 18 => 1 + 8 = 9

1∙2 = 2

3∙2 = 6

5∙2 = 10 => 1 + 0 = 1

Далее найдем сумму результатов и цифр на четных позициях:

2 + 6 + 1 + 5 + 9 + 2 + 6 + 1 = 32

2 + 4 + 6 + 8 + 0 + 2 + 4 + 2 = 28

32 + 28 = 60

Результат равен 60, это число кратно 10. Поэтому номер карты является действительным.

Алгоритм Луна можно применить другим способом: номер карты ABCD EFGH IJKL MNOP является правильным, если удвоенная сумма цифр на нечетных позициях и сумма цифр на четных позициях плюс количество цифр на нечетных позициях, которые больше, чем 4, кратно 10. Это правило записывается так:

2 (A + C + E + G + 1 + К + М + О) + (B + D + F + H + J + L + N + P) + (количество цифр на нечетных позициях, которые больше, чем 4) = 0 (mod 10).

Применим это правило к предыдущему примеру:

1234 5678 9012 3452

2 (1 + 3 + 5 + 7 + 9 + 1 + 3 + 5) + (2 + 4 + 6 + 8 + 0 + 2 + 4 + 2) +(4) = 100 

0 (mod 10).

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

ПРИМЕР РАСЧЕТА КОНТРОЛЬНОЙ ЦИФРЫ КРЕДИТНОЙ КАРТЫ В EXCEL

Номер кредитной карты состоит из 15 цифр плюс контрольная цифра. Цифры сгруппированы в четыре группы по четыре цифры. Контрольная цифра (КЦ) рассчитывается следующим образом.

Математики, шпионы и хакеры. Кодирование и криптография - _94.jpg

Можно ли восстановить цифру, отсутствующую в номере карты? Да, если мы имеем дело с действительной кредитной картой. Найдем, например, цифру X в номере 4539 4512 03X8 7356.

Начнем с умножения на 2 цифр на нечетных позициях (4–3—4—1–0—X—7–5), сразу преобразуя результат к одной цифре.

4∙2 = 8

3∙2 = 6

4∙2 = 8

1∙2 = 2

0∙2 = 0

X∙2 = 2Х

7∙2 = 14, 14 — 9 = 5

5∙2 = 10, 10 — 9 = 1.

Складывая цифры, стоящие на четных позициях, и новые цифры на нечетных, получим:

30 + 41+ 2Х = 71 + 2Х.

Мы знаем, что число (71 + 2Х) должно быть кратно 10.

Если значение X меньше или равно 4, то для таких X (71 + 2Х) никогда не будет кратно 10.

Если же значение X больше 4, то кратно 10 должно быть выражение (71 + 2Х + 1), так как X стоит на нечетной позиции. Видим, что выражение (72 + 2Х) кратно 10 только при X = 9.

Следовательно, мы нашли потерянную цифру 9, и полный номер кредитной карты: 45394512039

 

Практическая часть

1. СоСоздание программмы которая каким-либо образом будет кодировать текст.

1.Перед тем как пробовать создавать свой шифр (систему преобразования) нужно выбрать программу на базе которой будет сделан это шифр. Конечно, мой выбор пал на программу Pascal ABC (паскаль абс), т.к. данная программа изучается на базовом школьном уровне.

2.После выбора программы надо понять в чем она будет проявляться.

И мой выбор пал на создание программы, которая будет преобразовывать размер нашего текса (из маленького в большой и наоборот).

3.После этого я занялся созданием программы и вот что у меня вышло:

В строке №3 записываем процедуру. Процедуры в Паскаль могут иметь формальные параметры, а могут не иметь их. В нашем примере процедура с названием «upstring» (название мы придумываем сами) имеет формальные параметры. Формальные параметры для процедуры указываются в круглых скобках сразу же за именем процедуры. В нашем примере формальный параметр «s1: string» называется параметр-значение, а «s2: string» - параметр-переменная. Параметр-значение используется для определения входных данных. Например, в нашей программе мы будем вводить с клавиатуры какое-то слово. Это слово и будет входными данными. Параметр-переменная используется для определения выходных данных. В нашей программе после введения какого-то слова должно получится то же самое слово, только в другом регистре. Это слово является выходными данными. Параметры отделяются друг от друга точкой с запятой. Перед параметром - переменной, который определяет выходные данные, ставится слово «var». Таким образом, получается, что «s1» является переменной для хранения исходного слова (которое мы будем вводить с клавиатуры), а «s2» будет являться переменной для хранения преобразованного слова.

В строке №4 объявляется переменная «i», которая будет являться счетчиком для цикла. В нашей программе мы будем использовать цикл, поэтому обязательно необходимо указывать переменную, которая будет являться счетчиком для этого цикла.

В строке №5 объявляется переменная для хранения преобразованной буквы.

Строка №6. Здесь начинается тело процедуры, т.е. далее будут расположены все операторы процедуры.

Строка №7. Первый оператор в процедуре – это присвоение переменной s2 значение пустой строки. Переменная s2, используется для хранения выходной строки, т.е. той строки, которая получится после преобразования. Пока в этой переменной ничего не должно быть, поэтому мы присваиваем ей пустое значение.

Стока №8. Здесь записываем цикл. Для каждого элемента, начиная с первого, и заканчивая последним, должны выполняться действия, которые следуют за словом «do». Функция length определяет количество символов во входной строке s1. Например, если мы введем слово «pascal», то length(s1) будет равно 6. Таким образом, получается, что в цикле будет участвовать 6 элементов. 1-ому элементу – соответствует значение  «p», 2-ому элементу – «a», 3-му – «s», 4-ому – «c», 5-ому – «a», 6-ому – «l». Для всех этих элементов должны выполняться операции, которые следуют  за словом «do». Так как этих операций несколько они заключаются в операторные скобки begin…end. (строка №9 и №13).

Строка №10. Здесь записывается первая операция, которая производится с каждым элементом. Переменной «с» присваивается значение элемента s1[i]. Первый элемент «i» равен 1, а значение первого элемента s1[i] равно «p» (если мы вводим с клавиатуры слово «pascal»).

В строке №11 переменной «с», которая содержит значение первого элемента «p» присваивается новое значение. Теперь разберемся, что это за значение.
Если мы посмотрим 
Кодовую таблицу ASCII, то увидим, что прописные буквы латинского алфавита имеют числовой код, который отстает от числового кода соответствующих строчных букв на 32. Например, код буквы «A» равен 65, код буквы «a» равен 97. Разница равна – 32. То же самое получается со всеми другими буквами латинского алфавита.
Теперь разберем формулу chr(ord(‘A’)– ord(‘a’) + ord (c)) .
1-ая операция - ord(‘A’) = 65
2-ая операция - ord(‘a’) = 97
3-я операция - ord(с) = 112 (если первое значение переменной – буква «p»)
Теперь 65-97+112 = 80. Смотрим 
Кодовую таблицу ASCII и видим, что коду числовому 80 соответствует латинская буква «P»
3-я операция – chr = P.
Таким образом, получается, что строка №10 присваивает переменной «с» туже самую букву, только в другом регистре. Можно было сделать проще: просто отнять от числового кода буквы число 32: chr(ord (c) - 32).
Строка №11. Записываем в переменную «s2» значение,  которое получается при сложении первоначального s2 (оно имеет пустое значение) и переменной «с», которая теперь имеет значение «P».
Все операции, которые записаны в строках №10-№12 будут производиться над всеми 6-ю элементами, благодаря циклу в строке №8.

В строке №14 заканчивается тело процедуры.

В строке №15 записываются переменные, которые относятся уже к основной программе. Переменная «isxstroka» будет использоваться для хранения исходного слова.
Переменная «preobrstroka» будет использоваться для хранения преобразованного слова.

Строка №19. Вводим с клавиатуры исходное слово, например,  «pascal».

В строке №20 записываем имя нашей процедуры и в скобках указываем фактические параметры. Фактический параметр «isxstroka» соответствует формальному параметру «s1», а фактический параметр «preobrstroka» соответствует формальному параметру «s2».

Строка №21. После того как процедура будет выполнена на экран выведется сообщение.

4.Результат меня удовлетворил и закончил практические действия (рис.7,8).

 

 

 

Вывод

3.      

Подводя итоги хочется сразу обратиться к гипотезе и выяснить:

1.Потвердилась ли она.

2.Есть ли факты подтверждающие 1 пункт.

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

Моя гипотеза: «Гипотеза: Между словами математик, шпион и хакер можно поставить знак « = ». Создать свой шифр не составит трудности, если ты разбираешься в математических вычислениях».

  Моя гипотеза подтвердилась лишь на половину, т.к. и правда математик и шпион тождественные понятия, и алгоритм Луна тому подтверждение, ведь Алгоритм Лу́на (англ. Luhn algorithm) — алгоритм вычисления контрольной цифры номера пластиковой карты в соответствии со стандартом ISO/IEC 7812. Не является криптографическим средством, а предназначен в первую очередь для выявления ошибок, вызванных непреднамеренным искажением данных (например, при ручном вводе номера карты, при приёме данных о номере социального страхования по телефону). Позволяет лишь с некоторой степенью достоверности судить об отсутствии ошибок в блоке цифр, но не даёт возможности нахождения и исправления обнаруженной неточности. К сожалению, вторая часть моей гипотезы не оправдалась, при попытке закодировать свой текст я понял, что работы одной программы совсем не достаточно и именно поэтому над созданием современных криптоключей трудится множество программистов и математиков.

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.Приложение

 

Рисунок1                                                                  Рисунок2   1                                                                                          

Tux ecb.jpgTux.jpg

 

 

 

 

 

 

 

 

  Оригинальное изображении                        Криптограмма в режиме ЕСВ

криптосФестский диск                                                                 

                                                                         

                                                                                         

                                                                             

                                                                                       

 

 

 

Рисунок 3                                                                               Рисунок4

http://nenorm.com/images/st/399560.jpgКриптограммы Бейла

 

 

 

 

                                                                                                                

 

                                                                                  

Рисунок 5                                                                         Рисунок 6

procedurih v paskalj..... 

 Рисунок  7                                         

procedurih v paskalj....

Рисунок

Вывод

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

 Я считаю, что шифры – это одна из самых интересных и актуальных тем. Шифры использовались, используются и будут использоваться, т.к. они необходимы во многих областях и помогают людям решить те или иные логические задачи. Шифрование постоянно открывается обществу, т.к. были созданы системы, которые прогрессивнее предыдущих и позволяют разрешать серьезные задачи.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список используемой литературы

1. http://ru.wikipedia.org

2. http://citforum.ru/security/cryptography/yaschenko/78.html

3. http://www.wikiznanie.ru/ru-wz/index.php/Шифр

4. Гатчин Ю.А., Коробейников А.Г. «Основы криптографических алгоритмов». Учебное пособие. Санкт-Петербургский государственный университет информационных технологий, механики и оптики 2002 год.

5. Зубов А.Ю. «Совершенные шифры». Гелиос АРВ 2003 год.

6. Гомес Жуан «Математики, шпионы и хакеры. Кодирование и криптография».  Де Агостини 2014 г.

 

 

 

 

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Исследовательская работа по математике "Математики, шпионы и шифры" 10 класс"

Методические разработки к Вашему уроку:

Получите новую специальность за 2 месяца

Мастер зеленого хозяйства

Получите профессию

Менеджер по туризму

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 664 059 материалов в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 24.04.2020 1311
    • DOCX 582.5 кбайт
    • 30 скачиваний
    • Оцените материал:
  • Настоящий материал опубликован пользователем Прокопенко Татьяна Ивановна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Прокопенко Татьяна Ивановна
    Прокопенко Татьяна Ивановна
    • На сайте: 9 лет и 3 месяца
    • Подписчики: 1
    • Всего просмотров: 71157
    • Всего материалов: 36

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Экскурсовод

Экскурсовод (гид)

500/1000 ч.

Подать заявку О курсе

Курс повышения квалификации

Профессиональные компетенции современного педагога дополнительного образования при реализации программ нового поколения

36 ч. — 144 ч.

от 1700 руб. от 850 руб.
Подать заявку О курсе
  • Сейчас обучается 36 человек из 24 регионов
  • Этот курс уже прошли 318 человек

Курс повышения квалификации

Актуальные вопросы преподавания специального фортепиано в ДМШ и ДШИ

72 ч.

2200 руб. 1100 руб.
Подать заявку О курсе
  • Сейчас обучается 38 человек из 20 регионов
  • Этот курс уже прошли 163 человека

Курс повышения квалификации

Актуальные вопросы учебно-тренировочного процесса в учреждениях физкультурно-спортивной направленности (тяжелая атлетика)

72 ч.

2200 руб. 1100 руб.
Подать заявку О курсе
  • Этот курс уже прошли 29 человек

Мини-курс

Методология проектного менеджмента и стратегического планирования в инвестициях

3 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Подготовка менеджеров по продажам: аспекты телефонных переговоров

10 ч.

1180 руб. 590 руб.
Подать заявку О курсе

Мини-курс

Волонтерство: история, типы и роль в образовании

3 ч.

780 руб. 390 руб.
Подать заявку О курсе