ВВЕДЕНИЕ
ГЛАВА 1. ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ И МОДЕЛИ ЗАЩИТЫ ИНФОРМАЦИИ. КРИПТОГРАФИЧЕСКИЕ МЕТОДЫ
1.1. КЛАССИФИКАЦИЯ КРИПТОАЛГОРИТМОВ
1.2. СИММЕТРИЧНЫЕ КРИПТОАЛГОРИТМЫ
1.3. ФУНКЦИИ КРИПТОСИСТЕМ
1.4. ОБЩИЕ СВЕДЕНИЯ ОБ АСИММЕТРИЧНЫХ КРИПТОАЛГОРИТМАХ
ГЛАВА 2 – ПРИМЕРЫ КРИПТОГРАФИЧЕСКИХ МЕТОДОВ ЗАЩИТЫ ИНФОРМАЦИИ
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
Цель работы: целью данной работы является разработка методов и средств криптографической защиты информации.
Актуальность. При современном уровне развития науки и техники сделать такой канал связи между удаленными абонентами для неоднократной передачи больших объемов информации практически нереально.
Разработкой средств и методов скрытия факта передачи сообщения занимается стеганография.
Первые следы стеганографических методов теряются в глубокой древности. Например, известен такой способ скрытия письменного сообщения: голову раба брили, на коже головы писали сообщение и после отрастания волос раба отправляли к адресату.
Из детективных произведений хорошо известны различные способы тайнописи между строк обычного, незащищаемого текста: от молока до сложных химических реактивов с последующей обработкой.
Также из детективов известен метод «микроточки»: сообщение записывается с помощью современной техники на очень маленький носитель (микроточку), который пересылается с обычным письмом, например, под маркой или где-нибудь в другом, заранее обусловленном месте.
В настоящее время в связи с широким распространением компьютеров известно много тонких методов «запрятывания» защищаемой информации внутри больших объемов информации, хранящейся в компьютере.
ГЛАВА 1. ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ И МОДЕЛИ ЗАЩИТЫ ИНФОРМАЦИИ. КРИПТОГРАФИЧЕСКИЕ МЕТОДЫ
1.1. Классификация криптоалгоритмов
Сама криптография не является высшей ступенью классификации смежных с ней дисциплин. Наоборот, криптография совместно с криптоанализом (целью которого является противостояние методам криптографии) составляют комплексную науку – криптологию.
Необходимо отметить, что в русскоязычных текстах по данному предмету встречаются различные употребления основных терминов, таких как "криптография", "тайнопись" и некоторых других. Более того, и по классификации криптоалгоритмов можно встретить различные мнения. В связи с этим автор не претендует на то, что его вариант использования подобных терминов является единственно верным.
В отношении криптоалгоритмов существует несколько схем классификации, каждая из которых основана на группе характерных признаков. Таким образом, один и тот же алгоритм "проходит" сразу по нескольким схемам, оказываясь в каждой из них в какой-либо из подгрупп.
Основной схемой классификации всех криптоалгоритмов является следующая:
Тайнопись.
Отправитель и получатель производят над сообщением преобразования, известные только им двоим. Сторонним лицам неизвестен сам алгоритм шифрования. Некоторые специалисты считают, что тайнопись не является криптографией вообще, и автор находит это совершенно справедливым.
Криптография с ключом.
Алгоритм воздействия на передаваемые данные известен всем сторонним лицам, но он зависит от некоторого параметра – "ключа", которым обладают только отправитель и получатель.
Симметричные криптоалгоритмы.
Для зашифровки и расшифровки сообщения используется один и тот же блок информации (ключ).
Асимметричные криптоалгоритмы.
Алгоритм таков, что для зашифровки сообщения используется один ("открытый") ключ, известный всем желающим, а для расшифровки – другой ("закрытый"), существующий только у получателя.
Весь дальнейший материал будет посвящен криптографии с ключом, так как большинство специалистов именно по отношению к этим криптоалгоритмам используют термин криптография, что вполне оправдано. Так, например, любой криптоалгоритм с ключом можно превратить в тайнопись, просто "зашив" в исходном коде программы некоторый фиксированный ключ. Обратное же преобразование практически невозможно.
В зависимости от характера воздействий, производимых над данными, алгоритмы подразделяются на:
Перестановочные
Блоки информации (байты, биты, более крупные единицы) не изменяются сами по себе, но изменяется их порядок следования, что делает информацию недоступной стороннему наблюдателю.
Подстановочные
Сами блоки информации изменяются по законам криптоалгоритма. Подавляющее большинство современных алгоритмов принадлежит этой группе.
Заметьте: любые криптографические преобразования не увеличивают объем информации, а лишь изменяют ее представление. Поэтому, если программа шифрования значительно (более, чем на длину заголовка) увеличивает объем выходного файла, то в ее основе лежит неоптимальный, а возможно и вообще некорректный криптоалгоритм. Уменьшение объема закодированного файла возможно только при наличии встроенного алгоритма архивации в криптосистеме и при условии сжимаемости информации (так, например, архивы, музыкальные файлы формата MP3, видеоизображения формата JPEG сжиматься более чем на 2-4% не будут).
В зависимости от размера блока информации криптоалгоритмы делятся на:
Потоковые шифры.
Единицей кодирования является один бит. Результат кодирования не зависит от прошедшего ранее входного потока. Схема применяется в системах передачи потоков информации, то есть в тех случаях, когда передача информации начинается и заканчивается в произвольные моменты времени и может случайно прерываться. Наиболее распространенными предствателями поточных шифров являются скремблеры.
Блочные шифры
Единицей кодирования является блок из нескольких байтов (в настоящее время 4-32). Результат кодирования зависит от всех исходных байтов этого блока. Схема применяется при пакетной передаче информации и кодировании файлов.
Симметричные криптоалгоритмы
Скремблеры
Скремблерами называются программные или аппаратные реализации алгоритма, позволяющего шифровать побитно непрерывные потоки информации. Сам скремблер представляет из себя набор бит, изменяющихся на каждом шаге по определенному алгоритму. После выполнения каждого очередного шага на его выходе появляется шифрующий бит – либо 0, либо 1, который накладывается на текущий бит информационного потока операцией XOR.
Блочные шифры
Блочные шифры шифруют целые блоки информации (от 4 до 32 байт) как единое целое – это значительно увеличивает стойкость преобразований к атаке полным перебором и позволяет использовать различные математические и алгоритмические преобразования.
Скремблеры
В последнее время сфера применения скремблирующих алгоритмов значительно сократилась. Это объясняется в первую очередь снижением объемов побитной последовательной передачи информации, для защиты которой были разработаны данные алгоритмы. Практически повсеместно в современных системах применяются сети с коммутацией пакетов, для поддержания конфиденциальности которой используются блочные шифры. А их криптостойкость превосходит, и порой довольно значительно, криптостойкость скремблеров.
Суть скремблирования заключается в побитном изменении проходящего через систему потока данных. Практически единственной операцией, используемой в скремблерах является XOR – "побитное исключающее ИЛИ". Параллельно прохождению информационного потока в скремблере по определенному правилу генерируется поток бит – кодирующий поток. Как прямое, так и обратное шифрование осуществляется наложением по XOR кодирующей последовательности на исходную.
Генерация кодирующей последовательности бит производится циклически из небольшого начального объема информации – ключа по следующему алгоритму. Из текущего набора бит выбираются значения определенных разрядов и складываются по XOR между собой. Все разряды сдвигаются на 1 бит, а только что полученное значение ("0" или "1") помещается в освободившийся самый младший разряд. Значение, находившееся в самом старшем разряде до сдвига, добавляется в кодирующую последовательность, становясь очередным ее битом.
Из теории передачи данных криптография заимствовала для записи подобных схем двоичную систему записи. По ней изображенный на рисунке скремблер записывается комбинацией "100112" – единицы соответствуют разрядам, с которых снимаются биты для формирования обратной связи.
Рассмотрим пример кодирования информационной последовательности 0101112 скремблером 1012 с начальным ключом 1102.
1. Алферов, А. П. Основы криптографии : учеб. пособие / А. П.Алферов, А. Ю. Зубов, А. С. Кузьмин, А. В. Черемушкин. – М :Гелиос АРВ, 2019. – 480 с., ил.
2. Анин, Б. Ю. Защита компьютерной информации. / Б. Ю. Анин. – СПб. : БХВ-Петербург, 2020. – 384 с.
3. Бабаш, А. В. Криптография-М / А. В. Бабаш, Г. П. Шанкин. – СОЛОН-Р, 2020. – 512 с.
4. Введение в криптографию / под общ. ред. В. В. Ященко. – 3-е изд., доп. – М. : Изд-во МЦНМО : ЧеРо, 2020. – 288 c.
5. Домарев, В. В. Защита информации и безопасность компьютерных систем / В. В. Домарев. – Киев : Диасофт, 2019. – 480 с.
6. Золотарев, В. В. Программно-аппаратные средства обеспечения информационной безопасности / В. В. Золотарев ; Сиб. гос.аэрокосмич. ун-т. – Красноярск, 2017. – 112 с.
7. Кукарцев, А. М. Операционный анализ криптоалгоритмов / А. М. Кукарцев, С. А. Старовойтов, В. С. Шестаков // Актуал.проблемы безопасности информ. технологий: сб. науч. тр. / под общ. ред. О. Н. Жданова, В. В. Золотарева ; Сиб. гос.аэрокосмич. ун-т. – Красноярск, 2017. – с. 56–62.
8. Лукашин, И. В. Криптография? Железно! / И. В. Лукашин // Мир ПК – 2013. – № 3. – С. 100–109.
9. Межутков, А. А. Практическое руководство по методам и средствам криптографической защиты информации [Электронный ресурс] / А. А. Межутков. – Электрон. дан. (1 CD). – СПб. : Digital security, 2013.
10. Панасенко, С. П. Принципы использования ключей шифрования / С. П. Панасенко // BYTE/Россия. – 2013. – № 9. – С. 65–68.