Специалитет
2020/2021
Программирование алгоритмов защиты информации
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс обязательный (Компьютерная безопасность)
Кто читает:
Кафедра компьютерной безопасности
Когда читается:
4-й курс, 1, 2 модуль
Формат изучения:
без онлайн-курса
Специальность:
10.05.01. Компьютерная безопасность
Язык:
русский
Кредиты:
4
Контактные часы:
52
Программа дисциплины
Аннотация
Данная дисциплина относится к вариативной профильной части Профессионального цикла (Major), проводится на 4 курсе обучения и является обязательной. Для освоения учебной дисциплины студенты должны владеть базовыми знаниями и компетенциями школьной программы, основными понятиями алгебры, теории конечных групп, колец и полей, основными понятиями алгоритмической теории чисел, знанием и навыками применения языков программирования С и С++, базовыми знаниями об операционных системах, базовыми знаниями о сетевых технологиях, базовым знанием технического английского языка, навыками поиска информации в сети Интернет, базовыми навыками разработки технической документации. Результаты освоения дисциплины используются в дальнейшем при изучении таких дисциплин, как криптографические методы защиты информации, криптографические протоколы, теоретико-числовые методы в криптографии, методы алгебраической геометрии в криптографии, научный семинар, а также при написании итоговой выпускной квалификационной (дипломной) работы. Дисциплина реализуется в он-лайн формате
Цель освоения дисциплины
- Формирование у студентов навыков, необходимых для обоснования и выбора рационального решения по уровню обеспечения информационной безопасности с учетом заданных требований
- Формирование у студентов навыков, необходимых для сопровождения разработки технического и программного обеспечения систем и средств информационной безопасности
- Формирование у студентов навыков, необходимых для выполнения экспериментально-исследовательских работ при проведении сертификации средств защиты и анализ результатов
- Формирование у студентов навыков, необходимых для приемки и освоения программно-аппаратных средств защиты информации
- Формирование у студентов навыков, необходимых для составления инструкций по эксплуатации программно-аппаратных средств защиты информации
Планируемые результаты обучения
- Знать алгоритмы, реализующие основные операции с большими целыми числами и вычетами по модулю целого числа - операции сложения, вычитания, умножения, деления с остатком, взятия обратного элемента
- Знать алгоритмы, реализующие операции сложения и удвоения в группе точек эллиптической кривой, алгоритмы вычисления кратной точки эллиптической кривой
- Знать алгоритмы умножения матриц
- Знать алгоритмы эффективного нахождения состояний линейных регистров сдвига
- Знать способы реализации криптографических функций хеширования, определяемых национальными и зарубежными стандартами
- Знать алгоритмы вычисления имитовставки
- Знать способы реализации алгоритмов блочного шифрования, определяемых национальными и зарубежными стандартами
- Знать алгоритмы выработки и проверки электронной подписи
- Уметь разбирать исходные коды программ, реализующих известные криптографические алгоритмы
- Уметь создавать программные реализации заданных криптографических алгоритмов
- Уметь проводить верификацию разработанного программного обеспечения и оценку соответствия заданным требованиям по безопасности
- Уметь разрабатывать документацию на программное обеспечение в соответствии с существующими требованиями
- Владеть навыками разработки программного обеспечения в области защиты информации в соответствии с заданными требованиями
- Владеть навыками создания документации и системы тестирования разработанного программного обеспечения
- Владеть навыками доказательства корректности разработанного программного обеспечения
- Владеть навыками разработки программного обеспечения в области защиты информации в соответствии с заданными требованиям
Содержание учебной дисциплины
- Основные языки и средства разработки программного обеспечения в области защиты информации
- Существующие нормативные документы в области средств защиты информации
- Система лицензирования средств защиты информации в Российской Федерации
- Алгоритмы сложения, вычитания, умножения и деления с остатком для больших целых чисел
- Примеры программных реализаций из распространенных библиотек с открытым исходным кодом
- Преобразование Монтгомери для оптимизации вычислений в конечных полях простой характеристики
- Алгоритм Баррета для приведения по модулю простого числа
- Группа точек эллиптической кривой: операции сложения и удвоения точек на эллиптической кривой, операция вычисления кратной точки и ее оптимизация
- Представления эллиптических кривых в формах Вейерштрасса, Монтгомери, Якоби, Гессе и Эдвардса; основные различия и области применения
- Операции в конечных полях малой характеристики; оптимизация вычислений для полей характеристики два; примеры программных реализаций из библиотек с открытым исходным кодом
- Матрицы; операции умножения матриц и умножения матрицы на вектор; алгоритмы вычисления ранга матрицы и обращения матрицы; MDS-матрицы и способы их генерации
- Линейные регистры сдвига; построение регистров максимального периода; алгоритмическая связь линейных регистров сдвига с умножением матрицы на вектор; примеры эффективных программных реализаций
- Перестановки на конечных множествах; построение перестановок с заданными свойствами; эффективная реализация перестановок для конечных полей характеристики два
- Методы разработки и отладки программного обеспечения
- Методы совместной разработки программного обеспечения
- Методы документирования программного обеспечения
- Методы доказательства корректности разработанного программного обеспечения; написание системы тестов
- Практические занятия по реализации поставленных задач
- Практические занятия по отладке и тестированию поставленных задач
- Алгоритмы поточного шифрования информации; примеры поточных шифров - алгоритмы rc4, а5 и grain128
- Алгоритм блочного шифрования гост 28147-89 (магма); ключевая система алгоритма гост 28147-89, слабые ключи алгоритма
- Алгоритм блочного шифрования гост р 34.12-2005 (кузнечик); описание различных принципов реализации алгоритма
- Алгоритм блочного шифрования aes; использование аппаратных инструкций архитектуры intel для реализации алгоритма aes
- Алгоритмические методы защиты ключевой информации, используемой в алгоритмах блочного шифрования
- Режимы использования блочных шифров (простая замена, простая замена с зацеплением, режимы гаммирования)
- Связь блочных шифров с поточными шифрами
- Алгоритмы выработки имитовставки
- Режим выработки имитовставки для блочных шифров согласно гост р 34.13-2015)
- Режим работы блочных шифров с возможностью аутентификации сообщений (одновременной выработкой имитовставки)
- Режим работы блочных шифров с регулярным изменением ключевой информации (режим acpkm)
- Функции хеширования; алгоритм гост р 34.11-94 (с использованием гост 28147-89)
- Функция хеширования гост р 34.11-2012 (стрибог)
- Функция хеширования keccak (стандарт fips 180-3)
- Алгоритмы выработки имитовставки на основе бесключевых функций хеширования; алгоритм hmac
- Алгоритмы выработки и проверки электронной подписи; стандарт гост р 34.10-2012
- Асимметричные алгоритмы шифрования; гибридные схемы шифрования
- Инфраструктура открытых ключей; стандарты asn.1 и x.509; особенности применения инфраструктуры открытых ключей в российской федерации
- Практические занятия по реализации криптографических преобразований
- Сдача окончательной (годовой) программной реализации
Промежуточная аттестация
- Промежуточная аттестация (2 модуль)0.5 * Промежуточная программная реализация + 0.5 * Экзамен
Список литературы
Рекомендуемая основная литература
- Введение в программирование : учеб. пособие, Баженова, И. Ю., 2007
- Вся высшая математика. Т.1: Аналитическая геометрия, векторная алгебра, линейная алгебра, дифференциальное исчисление : учебник, Краснов, М. Л.,
- Искусство программирования. Т.1: Основные алгоритмы, Кнут, Д. Э., 2011
- Казарин О. В., Забабурин А. С. - ПРОГРАММНО-АППАРАТНЫЕ СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ. ЗАЩИТА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ. Учебник и практикум для вузов - М.:Издательство Юрайт - 2019 - 312с. - ISBN: 978-5-9916-9043-0 - Текст электронный // ЭБС ЮРАЙТ - URL: https://urait.ru/book/programmno-apparatnye-sredstva-zaschity-informacii-zaschita-programmnogo-obespecheniya-437163
- Ларин С. В. - АЛГЕБРА И ТЕОРИЯ ЧИСЕЛ. ГРУППЫ, КОЛЬЦА И ПОЛЯ 2-е изд., испр. и доп. Учебное пособие для академического бакалавриата - М.:Издательство Юрайт - 2019 - 160с. - ISBN: 978-5-534-05567-2 - Текст электронный // ЭБС ЮРАЙТ - URL: https://urait.ru/book/algebra-i-teoriya-chisel-gruppy-kolca-i-polya-441295
Рекомендуемая дополнительная литература
- Аленичев Д., Боковой А., Бояршинов А. - ALT Linux изнутри - Издательство "ДМК Пресс" - 2009 - 416с. - ISBN: 5-9706-0029-6 - Текст электронный // ЭБС ЛАНЬ - URL: https://e.lanbook.com/book/1197