ПЕРЕЧЕНЬ СОКРАЩЕНИЙ, УСЛОВНЫХ ОБОЗНАЧЕНИЙ, СИМВОЛОВ, ЕДЕНИЦ И ТЕРМИНОВ
Информационная безопасность —этопрактика предотвращения несанкционированного доступа, использования, раскрытия, искажения, изменения, исследования, записи или уничтожения информации
Криптография —наука о математических методах обеспечения конфиденциальности (невозможности прочтения информации посторонним) и аутентичности (целостности и подлинности авторства, а также невозможности отказа от авторства) информации.
Симметричноешифрование — способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ.
Асимметричноешифрование — это криптографическая система шифрования, при которой публичный ключ используется для шифрования информации или проверки электронной подписи, а приватный ключ используется для дешифровки полученной информации.
Моноалфавитный шифр — это шифр замещения, в котором для данного ключа алфавит шифра для каждого простого алфавита фиксируется на протяжении всего процесса шифрования.
Полиалфавитный шифр (многоалфавитный шифр) — это совокупность шифров простой замены, которые используются для шифрования очередного символа открытого текста согласно некоторому правилу.
Транспозиционный шифр – это криптографический алгоритм, в котором порядок алфавитов в открытом тексте перестраивается для формирования зашифрованного текста. В этот процесс фактические алфавиты простого текста не включаются.
Хеширование – преобразование, производимое хеш-функцией, называется хешированием. Исходные данные называются входным массивом, «ключом» или «сообщением». Результат преобразования называется «хешем», «хеш-кодом», «хеш-суммой», «сводкой сообщения».
Цифровая подпись – это реквизит электронного документа, полученный в результате криптографического преобразования информации с использованием закрытого ключа подписи и позволяющий проверить отсутствие искажения информации в электронном документе с момента формирования подписи (целостность), принадлежность подписи владельцу сертификата ключа подписи (авторство), а в случае успешной проверки подтвердить факт подписания электронного документа (неотказуемость).
ВВЕДЕНИЕ
Человек всегда испытывал потребность в сокрытии какой-либо информации, отсюда появилась целая наука – криптография. Если раньше она использовалась исключительно в государственных интересах, то с приходом интернета ее методы стали доступны частным лицам, в том числе хакерам.
Актуальность. По данным Генеральной прокуратуры России число киберпреступлений выросло в 11 раз за последние 5 лет, до 510,4 тыс. случаев.Министерство внутренних дел создает в своей структуре киберполицию. К сожалению, в нашей стране немногие знают, что такое «кибербезопасность». Чаще всего используется термин «компьютерная безопасность» или «информационная безопасность», но и он у нас не так популярен, как за рубежом. Между тем, Россияне всё чаще попадают в различные неприятные ситуации, не зная элементарных основ информационной безопасности.
Проведя опрос, (результаты показаны на диаграммах) среди своих одноклассников и знакомых, я убедился, что основная часть не знает о мерах безопасности личных данных. Также я полагаю, что нужно вести просветительскую работу в этом направлении.
Таким образом, в России существует проблема, заключающаяся в том, что население страны не владеет знаниями в сфере информационной безопасности.
Информационная безопасность — одна из актуальных тем на данный момент. Важно понимать, что информацию в интернете нужно хранить осторожно и заботиться об ее защите, знать, как действовать в случае кражи, изменений и прочего, иметь представление о шифровании.
Следовательно, цель исследовательской работы — провести сравнительный анализ методов шифрования данных на основе разработки алгоритмов шифрования на языке программирования высокого уровня и популяризировать знания среди подростков и взрослых.
Задачи для достижения поставленной цели:
изучить теоретический материал по информационной безопасности, в том числе о истории развития и современному состоянию Российского законодательства в этой сфере;
проанализировать алгоритмы шифрования данных и запрограммировать на языках программирования Pascal и Python.
разработать информационный буклет о кибербезопасности и распространить его среди знакомых.
Гипотеза - «Существующие криптографические методы шифрования данных повышают информационную безопасность личных данных людей»
Объект исследования – методы шифрования.
Предмет исследования – обеспечение информационной безопасности данных.
Методы исследования, использовавшиеся в данной работе:
описательный
аналитический
практический
ГЛАВА 1. Теоретические аспекты информационной безопасности
Знакомство с информационной безопасностью
Понятие информационной безопасности может иметь разный смысл. Для начала давайте разберемся, что же такое информация.
Информация – это сведения об окружающем мире и протекающих в нем процессах, воспринимаемые человеком или специальным устройством для нужд человека.
Имеется в виду состояние защищенности интересов в информационной сфере и совокупность интересов личности, общества и государства.
В Федеральном законе №149-ФЗ от 27.07.2006 «Об информации, информатизации и защиты информации» информационная безопасность определяется аналогичным образом – как состояние защищенности информационной среды общества, обеспечивающее ее формирование, использование и развитие в интересах граждан, организаций, государства.
Под информационной безопасностью мы будем понимать защищенность информации, которая поддерживается от случайных или преднамеренных воздействий естественного или искусственного характера [1]. А также «все аспекты, связанные с определением, достижением и поддержанием конфиденциальности, целостности, доступности, неотказуемости, подотчетности, аутентичности и достоверности информации и средств ее обработки» [2].
Защита информации – это комплекс мероприятий, направленных на обеспечение информационной безопасности.
Таким образом, правильный с методологической точки зрения подход к проблемам информационной безопасности начинается с выявления субъектов информационных отношений и интересов этих субъектов, связанных с использованием информационных систем.
Информационная безопасность – многомерная область деятельности, в которой успех может принести только системный и комплексный подход.
Интересы субъектов, связанные с использованием информационных систем, можно разделить на следующие категории:
обеспечение доступности;
обеспечение конфиденциальности информационных ресурсов.
Информационные системы создаются для получения определенных информационных услуг. Если по тем или иным причинам предоставить эти услуги пользователям становится невозможно, следовательно, наносит ущерб всем субъектам информационных отношений. Поэтому, не противопоставляя доступность остальным аспектам, мы выделяем ее как важнейший элемент информационной безопасности.
На протяжении всей истории развития цивилизации достоверная и полная информация всегда являлась востребованным и дорогостоящим товаром.
Для современного общества характерен возрастающий объем информации, которую человек должен воспринимать и перерабатывать в процессе своей деятельности.
Как защитить информацию и дать возможность использовать ее по назначению и вовремя?
Решение этого вопроса было и до сих пор остается одной из самых актуальных задач современного мира.
Исходя из этого, основными целями обеспечения информационной безопасности общества являются:
защита национальных интересов;
обеспечение человека и общества достоверной и полной информацией;
правовая защита человека и общества.
Каждая информационная революция ставила человека на новую ступень развития. Еще совсем недавно человек обходился без мобильного телефона, а сейчас наша индивидуальность становится, по-нашему же мнению, слишком уязвимой. Информационные потоки в современном мире приводят к тому, что каждый человек является частью большого мира, все процессы в котором тесно связаны.
Мы получаем данные с экранов телевизоров, из Интернета, с дисков и флеш-носителей сегодня невозможно себе представить, что человек, отказываясь от технических новинок, добивается в жизни серьезных результатов.
Сейчас не найти уважающей себя организации, которая бы не имела своего сайта. Ведь размещение в Интернете информации о своей деятельности – это не просто реклама, это еще и хороший стимул для продажи, а значит и получение новых доходов.
В этой связи стоит отметить, что мы находимся на пороге новой информационной революции, когда глобальное пространство превращается всего лишь в точку, где находится главный субъект процесса – человек и, в частности, его персональные данные. Таким образом, роль информационной безопасности в современном мире очень значима.
1.2. Угроза информационной безопасности и принципы обеспечения информационной безопасности
Одним из важнейших аспектов проблемы обеспечения безопасностью информации является классификация возможных угроз безопасности.
К ним можно отнести:
стихийные бедствия и аварии (наводнение, ураган, землетрясение, пожар и т.п.);
сбои и отказы оборудования;
ошибки проектирования и разработки компонентов (аппаратных средств, технологии обработки информации, программ, структур данных и т.п.);
ошибки эксплуатации (пользователей, операторов и другого персонала);
преднамеренные действия нарушителей и злоумышленников (обиженных лиц из числа персонала, преступников, шпионов, диверсантов и т.д.)
Также имеется множество потенциальных угроз, которые по природе их возникновения разделяется на два класса: естественные (объективные) и искусственные (субъективные).
Информационная безопасность, как и защита информации, задача комплексная, направленная на обеспечение безопасности, которая внедряет системы безопасности. Проблема защиты информации является комплексной и охватывает ряд важных задач.
Проблемы информационной безопасности ежедневно усугубляются процессами проникновения во все сферы общества технических средств обработки и передачи данных и вычислительных систем.
На сегодняшний день я изучил три базовых принципа, которые должна обеспечивать информационная безопасность:
Конфиденциальность – данные не могут быть получены или прочитаны неавторизованными пользователями.
Целостность информации – уверенность в том, что информация 100% останется нетронутой и не будет изменена злоумышленником.
Доступность информации – получение доступа к данным, когда это необходимо.
При разработке компьютерных систем, выход из строя или ошибки, в работе которых могут привести к тяжелым последствиям. Известно много мер, направленных на обеспечение компьютерной безопасности, основными среди них являются технические, организационные и правовые.
Обеспечение безопасности информации — дорогое дело, так как нужно уметь квалифицированно определить границы разумной безопасности и обеспечить соответствующее поддержание системы в работоспособном состоянии [4].
Также хотелось бы отметить, что специалисты, занимающиеся информационной безопасностью, должны прогнозировать потенциальные угрозы и обеспечивать актуальную защиту информации. Я считаю, что защита информации заключается в качественном шифровании.
На основе знакомства с различными источниками информации следует выделить различные формы цифровой криптографии и то, как они могут помочь достичь целей, перечисленных выше. Сводная таблица с характеристикой основных способов шифрования приведена ниже.
Таблица 1
Основные способы цифровой криптографии
№ |
Способы шифрования |
Описание |
1 |
Симметричное |
Способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ. |
2 |
Асимметричное |
Способ шифрования, при которой публичный ключ используется для шифрования информации или проверки электронной подписи, а приватный ключ используется для дешифровки полученной информации. |
3 |
Хеширование |
Математический алгоритм, преобразовывающий произвольный массив данных в состоящую из букв и цифр строку фиксированной длины. |
4 |
Цифровая подпись |
реквизит электронного документа, полученный в результате криптографического преобразования информации с использованием закрытого ключа подписи и позволяющий проверить отсутствие искажения информации в электронном документе с момента формирования подписи (целостность), принадлежность подписи владельцу сертификата ключа подписи (авторство), а в случае успешной проверки подтвердить факт подписания электронного документа (неотказуемость) |
Таким образом, для соблюдения основных принципов информационной безопасности нужно знать несколько методов шифрования, которые будут дополнять друг друга.
1.3 История развития шифрования
Имеются свидетельства, что информацию пытались зашифровать уже с самого появления письменности. Известным применением криптографии считается применение иероглифов в Древнем Египте. Однако, применение криптографии, скорее всего, было обоснованно не стремлением затруднить чтение текста, а превзойти других писцов в остроумии и изобретательности. В священных иудейских книгах применялся метод шифрования под названием Атбаш, который состоял в замене букв.
Рис. 1. Пример египетских иероглифов
Скитала, известная как «шифр древней Спарты», также является одним из древнейших известных криптографических устройств. Она использовалась в войне Спарты против Афин. Скитала представляла собой длинный стержень, на который наматывалась лента из пергамента. На ленту наносился текст вдоль оси скиталы так, что после разматывания текст становился нечитаемым. Для его восстановления требовалась скитала такого же диаметра. Считается, что Аристотель придумал способ взлома этого шифра – он наматывал ленту на конусообразный стержень до тех пор, пока текст не становился читаемым.
Как некий прообраз современной двоичной системы можно считать квадрат Полибия, изобретенный в Древней Греции. В нём буквы алфавита записывались в квадрат 5 на 5, после чего передавались номер строки и столбца, соответствующие символу исходного текста.
Рис. 2. Квадрат Полибия с латинскими буквами и кириллицей
В Средние века шифрованием информации стали пользоваться дипломаты, купцы и даже простые граждане, что обусловило ускорение развития и в том числе появления науки криптографии. Криптография же (с греческого — «тайнопись») определяется как наука, обеспечивающая секретность сообщения.
Самым известным криптографом XVI века можно назвать Блеза де Виженера. В его шифре использовалось многократное применение метода сдвига (шифр сдвига - один из самых простых и наиболее широко известных методов шифрования) с различными значениями сдвига. Для зашифровывания может использоваться таблица алфавитов, называемая tabula recta или квадрат Виженера. Более подробно об этом будет рассказано в главе 2.
Интересным фактом является существование так называемых «черных кабинетов». Обычно это небольшая комната в почтовом отделении, где проводилась дешифрация (при необходимости) и проверка корреспонденции. Первая организация под наименованием «чёрный кабинет» появилась во Франции в XVII веке.
В наше же время, после резкого скачка в развитии компьютерной техники, возросли не только потребности в шифровании, но и возможности в развитии криптографии. Современные мощные компьютеры и программы шифрования способны обеспечить высочайший уровень сокрытия информации и главным инструментом преодоления этой защиты является использования человеческого фактора.
Это легко проследить на примере почтовых систем. Скорее всего, каждый видел у себя в электронном почтовом ящике так называемые «фишинговые письма» - обращения к пользователю с просьбой перейти на какой-либо сайт, где будет совершена попытка заполучить пароль от ящика, либо к письму может быть приложен файл, содержащий в себе вирус, чаще всего вирус-шпион, предназначенный для того же - заполучить пароль. Для взлома может так же использоваться подбор паролей, ведь зачастую люди пользуются крайне банальными паролями, содержащими какую-либо знаменательную дату, возможно имя и т.д.. Но все вышеперечисленное является лишь использованием человеческого фактора, что ясно показывает степень защиты информации, содержащейся на почтовых серверах.
Использование криптографии в коммерческих целях привело к появлению новой валюты – всем известных BitCoin. Эта валюта никак не контролируется государством, что и привело к ее популярности. Биткоин - виртуальная валюта, которую существует в сети и ее можно обменять на реальные деньги.
В азбуке Морзе каждая буква алфавита, все цифры и наиболее важные знаки препинания имеют свой код, состоящий из череды коротких и длинных сигналов, часто называемых «точками и тире». Так, A — это «•–», B — «–•••», и т.д. В отличие от большинства шифров, азбука Морзе используется не для затруднения чтения сообщений, а наоборот, для облегчения их передачи (с помощью телеграфа). Длинные и короткие сигналы посылаются с помощью включения и выключения электрического тока. Телеграф и азбука Морзе навсегда изменили мир, сделав возможной молниеносную передачу информации между разными странами, а также сильно повлияли на стратегию ведения войны, ведь теперь можно было можно осуществлять почти мгновенную коммуникацию между войсками.
Энигма — это шифровальная машина, использовавшаяся нацистами во времена Второй Мировой.
Принцип её работы таков: есть несколько колёс и клавиатура. На экране оператору показывалась буква, которой шифровалась соответствующая буква на клавиатуре. То, какой будет зашифрованная буква, зависело от начальной конфигурации колес. Соль в том, что существовало более ста триллионов возможных комбинаций колёс, и со временем набора текста колеса сдвигались сами, так что шифр менялся на протяжении всего сообщения.
Все Энигмы были идентичными, так что при одинаковом начальном положении колес на двух разных машинах и текст выходил одинаковый. У немецкого командования были Энигмы и список положений колес на каждый день, так что они могли с лёгкостью расшифровывать сообщения друг друга, но враги без знания положений послания прочесть не могли.
Дело по взлому шифра Энигмы было начато в польской разведке и доведено до конца в британской с помощью ученых и специальных машин (например, Turing Bombe, чья работа заключалась в том, чтобы моделировать одновременно работу сразу нескольких десятков Энигм). Машины, использовавшиеся для взлома, стали прообразом современных компьютеров.
Таким образом, человечество уже давно разрабатывало различные способы сохранной передачи данных. А сегодня с появлением компьютера и сетей этот вопрос стал наиболее актуальным и требует новых разработок и методов защиты информации.
ГЛАВА 2. Технологии, обеспечивающие реализацию основных принципов информационной безопасности
2.1. Практическая реализация простейших шифров
В практической части исследования важно рассмотреть, как можно реализовать принцип конфиденциальности, для защиты информации от посторонних. Я решить запрограммировать алгоритмы шифрования на языке программирования Pascal, Python как самостоятельно, так и на основе готовых алгоритмов.
Каждый в жизни сталкивался с простейшей криптографией. Например, Шифр Цезаря часто используется в развивающих детских играх.
Рассмотрим первый пример простейшего шифрования ROT1. Ключ прост: каждая буква заменяется на следующую за ней в алфавите. Так, A заменяетсяна B, B на C, ит.д. «ROT1» значит «ROTate 1 letter forward through the alphabet» (англ. «сдвиньтеалфавитнаоднубуквувперед»). Сообщение «I know what you did last summer» станет «J lopx xibu zpv eje mbtu tvnnfs».
ROT13 – еще один распространенный тип шифрования сообщений. В нём каждая буква алфавита сдвигается на 13 позиций, как показано на рисунке:
Рис. 4. Схема ROT13
Аналогично можно использовать метод шифрования ROT2, ROT 5, ROT 15 и прочее. Этот шифр весело использовать, потому что его легко понять и применять, но его также легко и расшифровать. Из-за этого его нельзя использовать для серьезных нужд. Пример реализации данного алгоритма приведен на языке Pascal в приложении 1.
В транспозирующих шифрах буквы переставляются по заранее определенному правилу. Например, если каждое слово пишется задом наперед, то из «all the better to see you with» получается «lla eht retteb ot ees joy htiw». Другой пример — менять местами каждые две буквы. Таким образом, предыдущее сообщение станет «la tl eh eb tt re ot es ye uo iw ht». Пример реализации данного алгоритма приведен на языке Pascal в приложении 2.
Подобные шифры использовались в Первую Мировую и Американскую Гражданскую Войну, чтобы посылать важные сообщения. Сложные ключи могут сделать такой шифр довольно сложным на первый взгляд, но многие сообщения, закодированные подобным образом, могут быть расшифрованы простым перебором ключей на компьютере.
Шифр Виженера использует тот же принцип, что и шифр Цезаря, за тем исключением, что каждая буква меняется в соответствии с кодовым словом. В нашем случае первая буква послания будет зашифрована согласно шифровальному алфавиту для первой буквы кодового слова (в нашем случае «С»), вторая буква — согласно алфавиту для второй буквы кодового слова («H»), и так далее.
Рис. 5. Таблица Вижинера
В случае, если послание длиннее кодового слова, то для (k*n+1)-ой буквы (где n — это длина кодового слова) вновь будет использован алфавит для первой буквы кодового слова, и так далее. Очень долгое время шифр Виженера считался невзламываемым. Чтобы его расшифровать, для начала угадывают длину кодового слова и применяют частотный анализ к каждой n-ной букве послания, где n — предполагаемая длина кодового слова. Если длина была угадана верно, то и сам шифр вскроется с большей или меньшей долей вероятности.
Если предполагаемая длина не даёт верных результатов, то пробуют другую длину кодового слова, и так далее до победного конца.
Квадрат Виженера, или таблица Виженера, также известная как tabula recta, может быть использована для шифрования и расшифрования.
В шифре Цезаря каждая буква алфавита сдвигается на несколько строк; например, в шифре Цезаря при сдвиге +3, A стало бы D, B стало бы E и так далее. Шифр Виженера состоит из последовательности нескольких шифров Цезаря с различными значениями сдвига. Для зашифровывания может использоваться таблица алфавитов, называемая tabula recta или квадрат (таблица) Виженера. Применительно к латинскому алфавиту таблица Виженера составляется из строк по 26 символов, причём каждая следующая строка сдвигается на несколько позиций. Таким образом, в таблице получается 26 различных шифров Цезаря. На каждом этапе шифрования используются различные алфавиты, выбираемые в зависимости от символа ключевого слова. Например, предположим, что исходный текст имеет вид:
ATTACKATDAWN
Человек, посылающий сообщение, записывает ключевое слово («LEMON») циклически до тех пор, пока его длина не будет соответствовать длине исходного текста:
LEMONLEMONLE
Первый символ исходного текста A зашифрован последовательностью L, которая является первым символом ключа. Первый символ L шифрованного текста находится на пересечении строки L и столбца A в таблице Виженера. Точно так же для второго символа исходного текста используется второй символ ключа; то есть второй символ шифрованного текста X получается на пересечении строки E и столбца T. Остальная часть исходного текста шифруется подобным способом.
Исходный текст: ATTACKATDAWN
Ключ: LEMONLEMONLE
Зашифрованный текст: LXFOPVEFRNHR
Расшифровывание производится следующим образом: находим в таблице Виженера строку, соответствующую первому символу ключевого слова; в данной строке находим первый символ зашифрованного текста. Столбец, в котором находится данный символ, соответствует первому символу исходного текста. Следующие символы зашифрованного текста расшифровываются подобным образом.
Если буквы A-Z соответствуют числам 0-25, то шифрование Виженера можно записать в виде формулы:
Расшифровка:
2.2. Хеширование информации и цифровая подпись
Хеширование, в отличие от симметричного и асимметричного шифрования, является односторонней функцией. Можно создать хеш из некоторых данных, но нет никакого способа, чтобы обратить процесс. Это делает хеширование не очень удобным способом хранения данных, но подходящим для проверки целостности некоторых данных.
Функция в качестве входных данных принимает какую-то информацию и выводит, казалось бы, случайную строку, которая всегда будет одинаковой длины. Идеальная функция хеширования создает уникальные значения для различных входов. Одинаковый ввод всегда будет производить одинаковый хеш. Поэтому можно использовать хеширование для проверки целостности данных.
В Python не так уж много инструментов стандартной библиотеки, которые работают с шифрованием. Если вам нужно шифровать пароли, то для этого подойдет модуль стандартной библиотеки Python hashlib. Он включает в себя безопасные алгоритмы хеширования FIPS, такие как SHA1, SHA224, SHA256, SHA384, а также SHA512 и MD5. Python также поддерживает функции хеширования adler32 и crc32, но они содержатся в модуле zlib. Одно из самых популярных применений хеширования это хранение хеша пароля, вместо самого пароля.
Другой популярный случай, в котором применяется хеширование – это хеширование файла, с последующей отправкой файла и его хеша по отдельности. Получатель файла может запустить хеш в файле, чтобы убедиться в том, что файл соответствует отправленному хешу.
Существует метод быстрого создания хеша, мы рассмотрим его, когда создадим наш
Хеш sha512:
import hashlib
result = hashlib.sha1(b'hello').hexdigest()
print(result)
input()
# Будетвыведено: aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
В данном примере показано, как создавать хеш.
Рис. 6. Публичный ключ
Алгоритм шифрования, применяющийся сегодня в различных модификациях буквально во всех компьютерных системах. Есть два ключа: открытый и секретный. Открытый ключ — это некое очень большое число, имеющее только два делителя, помимо единицы и самого себя. Эти два делителя являются секретным ключом, и при перемножении дают публичный ключ. Например, публичный ключ — это 1961, а секретный — 37 и 53.
Открытый ключ используется для того, чтобы зашифровать сообщение, а секретный — чтобы расшифровать. Без секретного ключа расшифровать сообщение невозможно. Когда вы отправляете свои личные данные, допустим, банку, или ваша банковская карточка считывается банкоматом, то все данные шифруются открытым ключом, а расшифровать их может только банк с соотвествующим секретным ключом. Суть в том, что математически очень трудно найти делители очень большого числа.
Цифровая подпись представляет собой комбинацию хеширования и асимметричного шифрования. То есть сообщения сначала хешируется, а после шифруется с помощью приватного ключа отправителя.
Получатель использует открытый ключ отправителя для извлечения хеша из подписи, затем сообщение снова хешируется для сравнения с извлеченным хешем. Если вы точно знаете, что открытый ключ принадлежит отправителю и расшифровка открытого ключа прошла успешно, можете быть уверены, что сообщение действительно пришло от отправителя. Совпадение хешей говорит о том, что сообщение не было никак изменено.
Но не стоит забывать, что цифровая подпись не обязательно делает сообщение конфиденциальным. Цифровые подписи будут работать с зашифрованными сообщениями, но шифрование самого сообщения должно выполняться отдельно.
Таким образом, вышеописанные методы в комплексе позволяют повысить информационную безопасность личных данных человека.
2.3. Этапы практической работы
Практическая часть работы заключается в написании программы шифратора и дешифратора, а также проведении анализа результатов анкетирования, и она состоит из 4 этапов:
1. выбор языка программирования, на котором будут реализовываться алгоритмы;
2. выбор языка, текст на котором будет шифроваться и дешифроваться;
3. реализация шифровки/дешифровки текста алгоритмом шифрами Цезаря на языке программирования Pascal и Виженера на языке Python;
4. проведение анкетирования и анализ его результатов.
Итак, первым этапом моей практической части был выбор языка программирования для реализации нашей идеи. Я решил выбрать Python и Паскаль. Ведь цель работы заключается не в изучении нового языка программирования, а в использовании уже изученного языка программирования для реализации задуманной идеи.
Я узнал, что Python - это высокоуровневый язык программирования общего назначения с автоматическим управлением памятью, ориентированный на повышение производительности разработчика. Следующий этап моей практической части заключался в анализе и реализации алгоритмов, знакомящими меня с базовыми принципами информационной безопасности: шифр Цезаря (Приложение 1), шифр транспонирования (Приложение 2) и Виженера (Приложение 3) на алгоритмических языка Pascal и Python. К шифрам Цезаря и Вижинера алгоритм включает в себя шага: и шифрование, и обратный процесс – дешифровка сообщения. Как уже известно, шифр Цезаря - это алгоритм шифра замены, который сдвигает каждую букву исходного текста на определенное количество букв вперед. Этим числом K было выбрано число 3. Кодирование текста идет по таблице ASCII.
ЗАКЛЮЧЕНИЕ
Я узнал очень много нового из прочитанного, теперь мои знания ещё и подкрепились проведенной практической работой. Цель моего исследования была достигнута. Следует отметить, что современные способы защиты информации объединяют несколько методов криптографии для достижения лучшего результата.
Таким образом, в теоретической части работы мной даны понятия основных терминов используемых в криптографии, а также сделан обзор наиболее распространенных методов криптографической защиты информации:
симметричные криптосистемы основаны на том, что отправитель и получатель информации используют один и тот же ключ, который должен храниться в тайне и передаваться способом, исключающим его перехват;
асимметричные криптосистемы для шифрования информации используют один ключ (открытый), а для дешифрования - другой (секретный), причем, они различны и не могут быть получены один из другого;
электронная цифровая подпись используется в случаях, когда нам надо подтвердить принадлежность полученных данных или исключить отрицание авторства адресантом, она проверяет целостность информации, но не придает ей конфиденциальность.
Разобрав весь этот материал и интереснейшие вопросы, я выявил следующее:
Криптография сегодня - это важнейшая часть всех информационных систем: от электронной почты до сотовой связи, от доступа к сети Internet до электронной наличности;
Криптография обеспечивает секретность, прозрачность, точность и конфиденциальность. Она предотвращает попытки мошенничества в электронной коммерции и обеспечивает юридическую силу финансовых транзакций;
Криптография помогает установить вашу личность, но и обеспечивает вам анонимность;
В практической части работы мной выполнено:
реализация алгоритмов шифрования текста шифрами Цезаря, Виженера и транспонирования; знакомство с созданием хеш-функций;
Проведено анкетирование;
Разработан информационный буклет.
За время работы над этой темой я исследовал только самые основные понятия и некоторые примеры методологий криптографии. Проанализировав свои исследования, можно заключить:
Гипотеза «Существующие криптографические методы шифрования данных повышают информационную безопасность личных данных людей» подтвердилась.
2. Стали понятны криптографические методы и различные шифры.
3. Разобраны исторические примеры применения криптографии и
криптоанализа.
4. Практическая значимость работы достигнута – разработанные программы
шифрования и дешифрования информации помогут новичкам в исследовании этой области, а мой информационный буклет позволяет популяризировать столь сложную тему и научит людей, какие меры информационной безопасности нужно соблюдать с их личными данными, поскольку по результатам моего опроса, видно, что многие мои одноклассники, друзья и их родители используют современные технологии и устройства, даже не задумываясь о встроенных функциях криптографии.
Но заканчивая это исследование, я не планирую останавливаться на достигнутом. Меня очень заинтересовала данная тема. Поэтому продолжением ее станет новое исследование, и возможно, именно разработка алгоритмов использования частотного анализа дешифровки.
А этот материал, думаю, будет интересным и практически полезен моим любознательным друзьям и одноклассникам, для которых я разработал информационный буклет.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ И ИСТОЧНИКОВ
Федеральный закон №149-ФЗ от 27.07.2006 «Об информации, информатизации и защиты информации».
«Информация в материальном мире», Информатика. Базовый курс, http://uchebnik.biz/book/62-informatika-bazovyj-kurs/5-11-informaciya-v-materialnom-mire.html
Национальный стандарт Российской Федерации - информационная технология – Методы и средства обеспечения безопасности (часть 1).
10 популярных кодов и шифров (tproger.ru)
Шифрование и криптография в Python (python-scripts.com)
Криптография и главные способы шифрования информации (proglib.io)
ГАРАНТ.РУ: http://www.garant.ru/article/520694/#ixzz6naIHUxaa
ПРИЛОЖЕНИЕ
Приложение 1
Шифр ROT3
Const
alf = 'АБВГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ ';
shfr = 'ГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ АБВ';
var
s1, s2: string;
n, i: integer;
r:byte;
begin
write('введитестроку: ');
readln(s1);
writeln('1-шифровать, 2-расшифровать');
readln(r);
s2 :='';
if r =1then
for i :=1 to length(s1)do
begin
n := pos(s1[i], alf);
s2 := s2 + shfr[n];
end;
if r =2then
for i :=1 to length(s1)do
begin
n := pos(s1[i], shfr);
s2 := s2 + alf[n];
end;
writeln(s2);
if r >2then writeln('Ошибка!');
if r =0then writeln('Ошибка!');
end.
Приложение 2
Транспозиционныйшифр
var
s1: string;ch:char;
n, i: integer;
begin
write('введитестроку: ');
readln(s1);
i:=2;
while i<= length(s1) do
begin
ch :=s1[i-1];
s1[i-1] := s1[i];
s1[i]:=ch;
i:=i+2;
end;
writeln(s1);
end.
Приложение 3
Шифратор и дешифратор Вижинера