Алгоритм шифрования RSA. Стеганография
Цели и задачи
- Цель: к концу урока учащиеся объяснят принцип работы RSA, выполнят шифрование и расшифрование короткого сообщения по заданным малым параметрам и опишут способы скрытой передачи информации средствами стеганографии.
- Сформировать представление об асимметричном шифровании, открытом и секретном ключах RSA.
- Научить применять формулы $y=x^e\ mod\ n$ и $x=y^d\ mod\ n$ в учебном примере.
- Развивать умение анализировать алгоритм по шагам, проверять вычисления и объяснять, почему открытый ключ не позволяет практически восстановить секретный показатель.
- Познакомить с определением стеганографии и способом скрытия сообщения в младших битах изображения.
- Воспитывать ответственное отношение к защите информации и понимание границ учебной модели шифрования.
Планируемые результаты
Личностные
- Осознают значение защиты информации в цифровой среде и связь темы с будущей профессиональной деятельностью.
- Проявляют познавательный интерес к исследованию современных алгоритмов шифрования.
- Понимают необходимость ответственного использования средств сокрытия и защиты данных.
- Формируют готовность проверять результат вычислений и признавать обнаруженную ошибку.
Метапредметные
- Планируют последовательность действий по заданному алгоритму и контролируют промежуточные результаты.
- Извлекают информацию из учебного текста, таблицы двоичных кодов и схемы алгоритма.
- Сравнивают шифрование и стеганографию по цели, способу преобразования и обнаруживаемости сообщения.
- Аргументированно представляют решение в паре и корректно обсуждают различия в вычислениях.
- Используют остаток от деления и двоичное представление при решении учебной задачи.
Предметные
- Знать назначение алгоритма RSA и различия между открытым и секретным ключами.
- Уметь строить учебные ключи RSA по двум простым числам $p$ и $q$.
- Уметь выполнять шифрование и расшифрование числового сообщения с использованием модульного возведения в степень.
- Знать определение стеганографии и принцип изменения младших битов цифрового изображения.
- Уметь объяснить, почему небольшое изменение младших битов обычно незаметно для наблюдателя.
Универсальные учебные действия (УУД)
Личностные УУД
- Определяют личный смысл изучения криптографических методов для безопасной работы с данными.
- Оценивают этические последствия сокрытия информации и различают защиту данных и злоупотребление технологией.
- Проявляют самостоятельность при выборе способа проверки вычислений.
- Формируют ответственную позицию пользователя цифровых технологий.
Регулятивные УУД
- Принимают учебную задачу и формулируют план получения открытого и секретного ключей.
- Пошагово выполняют вычисления, сверяясь с условием и промежуточными результатами.
- Находят ошибку в вычислении степени по модулю и исправляют её.
- Оценивают достижение цели по листу самопроверки и формулируют затруднение.
Познавательные УУД
- Выделяют существенные признаки асимметричного шифра в учебном тексте.
- Строят логическую цепочку: простые числа — функция Эйлера — ключи — шифрование — расшифрование.
- Моделируют работу RSA на малых числах и переносят алгоритм на новую пару параметров.
- Анализируют двоичные записи пикселей и устанавливают, какие биты изменяются при стеганографическом скрытии.
- Сравнивают криптографию и стеганографию по назначению и механизму.
Коммуникативные УУД
- Распределяют роли вычислителя и проверяющего при работе в паре.
- Формулируют вопросы к алгоритму и объясняют партнёру назначение каждого шага.
- Аргументируют выбор ответа, используя формулы и промежуточные вычисления.
- Согласовывают общий вывод о различии шифрования и сокрытия факта передачи сообщения.
Подготовка учителя к уроку
- Подготовить презентацию с определениями RSA и стеганографии, схемой открытого и секретного ключей и двоичными кодами пикселей.
- Записать на доске или вывести на экран формулы $n=p\cdot q$, $\varphi=(p-1)(q-1)$, $y=x^e\ mod\ n$, $x=y^d\ mod\ n$.
- Распечатать карточки с учебным примером RSA $p=3$, $q=7$, $n=21$, $\varphi=12$, $e=5$, $d=5$ — по одной на пару.
- Распечатать карточки трёх уровней: вычисление ключей, шифрование сообщения и анализ стеганографической последовательности — по одной на каждого ученика.
- Подготовить лист самопроверки с графами «ключи», «шифрование», «расшифрование», «младшие биты».
- Вывести на экран последовательность восьми байтов изображения: 10101101, 10010100, 00101010, 10100100, 10101010, 10101010, 10101011, 10101111.
- Подготовить маркеры или интерактивную доску для выделения последних битов каждого байта.
- Организовать таймер на 2–3 минуты для парной работы и самостоятельной проверки.
Ход урока
Этап 1. Организационный момент и мотивация (3 мин)
Цель этапа: включить учащихся в исследовательскую деятельность и поставить практическую проблему защиты сообщения.
Время | Действие учителя | Действие учеников |
|---|---|---|
1 мин | Учитель приветствует класс: "Здравствуйте, ребята. Сегодня мы будем не просто запоминать определения, а попробуем выступить в роли разработчиков системы защиты данных. Проверьте, что на столе есть тетрадь, ручка и калькулятор или возможность выполнять вычисления вручную." | Проверяют готовность, записывают дату и оставляют место для схемы алгоритма. |
2 мин | Учитель показывает на экране два вопроса: "Как передать сообщение так, чтобы посторонний не понял его содержание? Как сделать так, чтобы посторонний вообще не заметил факт передачи? Подумайте несколько секунд, затем обсудите ответ с соседом по приёму «Подумай — обсуди в паре — поделись»." | Индивидуально формулируют идеи, обсуждают их в парах и предлагают ответы: "Зашифровать сообщение" и "Спрятать сообщение внутри другого файла". |
Завершение этапа: учитель подводит итог: "Мы назвали две разные задачи: скрыть содержание и скрыть сам факт передачи. Сегодня проверим, как решаются обе задачи с помощью RSA и стеганографии."
Этап 2. Актуализация знаний (5 мин)
Цель этапа: восстановить математические и информационные понятия, необходимые для открытия нового знания.
Время | Действие учителя | Действие учеников |
|---|---|---|
2 мин | Учитель записывает на доске: $17\ mod\ 5$, $25\ mod\ 7$, $2^5\ mod\ 7$. "Вспомните, что означает операция взятия остатка. Решите первые два выражения и объясните, как будете вычислять третье." | Записывают ответы: $17\ mod\ 5=2$, $25\ mod\ 7=4$; объясняют: "$2^5=32$, а $32\ mod\ 7=4$". |
3 мин | Учитель задаёт вопросы: "Что такое кодирование? Чем кодирование отличается от шифрования? Почему двоичная запись удобна для хранения изображения?" Учитель фиксирует ключевые слова в кластере «Информация». | Отвечают: "Кодирование меняет форму представления, а шифрование скрывает содержание"; "пиксели и их цвет можно представить числами и битами". |
Завершение этапа: учитель подводит итог: "Мы вспомнили остаток от деления, степени, кодирование и двоичное представление. Теперь найдём место, где обычного знания о симметричном ключе оказывается недостаточно."
Этап 3. Постановка проблемы и целеполагание (4 мин)
Цель этапа: выявить проблему передачи ключа и сформулировать учебную цель.
Время | Действие учителя | Действие учеников |
|---|---|---|
2 мин | Учитель предлагает ситуацию: "Представьте, что пользователь хочет отправить защищённое сообщение, но не может заранее передать получателю секретный ключ. Если ключ попадёт к постороннему, тот сможет прочитать сообщение. Как решить проблему? Запишите гипотезу и обсудите её в парах." | Записывают гипотезы: "использовать два ключа"; "один ключ можно опубликовать, а второй оставить в секрете". |
2 мин | Учитель показывает на доске незаполненную схему: «открытый ключ → ? → секретный ключ». "Какой алгоритм позволит построить такую систему? Сформулируйте цель урока глаголом действия." | Формулируют цель: "понять работу RSA, выполнить шифрование и расшифрование, сравнить RSA со стеганографией". |
Посмотрите план целиком
Зарегистрируйтесь — и откройте план урока по этой теме полностью: цели, ход урока и рефлексия по ФГОС.
Завершение этапа: учитель подводит итог: "Проблема сформулирована: ключ должен быть доступен для шифрования, но расшифрование должно оставаться защищённым. Перейдём к алгоритму, который решает эту задачу через свойства больших простых чисел."
Этап 4. Открытие нового знания: алгоритм RSA (10 мин)
Цель этапа: вывести последовательность построения ключей RSA и проверить её на учебных числах.
Время | Действие учителя | Действие учеников |
|---|---|---|
4 мин | Учитель показывает схему и говорит: "Алгоритм RSA назван по первым буквам фамилий авторов. Выберем два больших простых числа $p$ и $q$, найдём $n=p\cdot q$ и $\varphi=(p-1)(q-1)$. Затем выбираем число $e$, взаимно простое с $\varphi$, и число $d$, для которого $e\cdot d=k\varphi+1$. Открытый ключ — пара $(e,n)$, секретный — $(d,n)$." | Записывают последовательность пяти шагов, выделяют открытый и секретный ключи, отвечают: "Открытый ключ можно публиковать, секретный нужно хранить". |
3 мин | Учитель разбирает пример: "Берём $p=3$, $q=7$. Получаем $n=3\cdot7=21$, $\varphi=(3-1)(7-1)=12$. Выбираем $e=5$. Найдём $d$: $5d=12k+1$. При $k=2$ получаем $5d=25$, поэтому $d=5$. Значит, открытый ключ $(5,21)$, секретный $(5,21)$ в этом маленьком учебном примере." | Повторяют вычисления в тетрадях и проверяют условие $5\cdot5=25=2\cdot12+1$. |
3 мин | Учитель записывает: "Сообщение представим числом $x$. Шифрование выполняется по формуле $y=x^e\ mod\ n$, расшифрование — по формуле $x=y^d\ mod\ n$. Для сообщения $x=1,2,3$ найдём: $1^5\ mod\ 21=1$, $2^5\ mod\ 21=11$, $3^5\ mod\ 21=12$." Учитель просит проверить один результат. | Проверяют вычисление $2^5=32$, $32\ mod\ 21=11$, формулируют вывод: "После шифрования получаются числа 1, 11 и 12". |
Запись в тетрадях
1. $n=p\cdot q$. 2. $\varphi=(p-1)(q-1)$. 3. $e\cdot d=k\varphi+1$. 4. Открытый ключ $(e,n)$, секретный ключ $(d,n)$. 5. Шифрование: $y=x^e\ mod\ n$. 6. Расшифрование: $x=y^d\ mod\ n$.
Завершение этапа: учитель подводит итог: "Мы построили ключи и зашифровали числа. Теперь проверим алгоритм обратным действием и выясним, как RSA отличается от простого обмена одним секретом."
Этап 5. Первичное закрепление: расшифрование и сравнение (7 мин)
Цель этапа: закрепить применение формулы расшифрования и осмыслить назначение двух ключей.
Время | Действие учителя | Действие учеников |
|---|---|---|
4 мин | Учитель раздаёт карточки с числами $1,11,12$: "Выполните расшифрование по формуле $x=y^d\ mod\ n$ при $d=5$ и $n=21$. Работайте в парах: один ученик выполняет вычисления, второй проверяет остатки." | Вычисляют: $1^5\ mod\ 21=1$; $11^5\ mod\ 21=2$; $12^5\ mod\ 21=3$. Сверяют результаты и исправляют ошибки. |
3 мин | Учитель задаёт толстые вопросы: "Почему сообщение можно зашифровать открытым ключом? Почему для расшифрования нужен секретный показатель? Что произойдёт, если простые числа будут слишком маленькими?" | Отвечают: "Открытый ключ нужен отправителю"; "секретный показатель позволяет выполнить обратное преобразование"; "малые числа легче перебрать, поэтому учебный пример не обеспечивает реальной защиты". |
Эталон решения
Для $y=11$: $11^2=121$, $121\ mod\ 21=16$; $11^4\ mod\ 21=16^2=256\ mod\ 21=4$; $11^5\ mod\ 21=4\cdot11=44\ mod\ 21=2$. Следовательно, исходное сообщение $x=2$. Аналогично $12^5\ mod\ 21=3$.
Завершение этапа: учитель подводит итог: "Мы убедились, что открытый и секретный ключи работают как согласованная пара. Но RSA изменяет представление сообщения, а не прячет сам факт его существования. Для второй задачи обратимся к стеганографии."
Этап 6. Открытие принципа стеганографии и самостоятельная работа (10 мин)
Цель этапа: исследовать способ сокрытия сообщения в младших битах цифрового изображения и самостоятельно применить два изученных принципа.
Время | Действие учителя | Действие учеников |
|---|---|---|
4 мин | Учитель показывает определение: "Стеганография — это наука о скрытой передаче информации путём скрытия самого факта передачи информации. В цифровых изображениях сообщение можно записать в младших битах значений пикселей. Посмотрите на восемь байтов: 10101101, 10010100, 00101010, 10100100, 10101010, 10101010, 10101011, 10101111. Выделите последний бит каждого байта." | Переписывают последовательность и выделяют последние биты: 1, 0, 0, 0, 0, 0, 1, 1. Объединяют их в последовательность 10000011. |
3 мин | Учитель объясняет: "Чтобы закодировать код буквы «И» — 11010000, нужно изменить младшие биты восьми байтов так, чтобы они стали 1, 1, 0, 1, 0, 0, 0, 0. Внешний вид изображения при таких малых изменениях обычно почти не меняется." Учитель демонстрирует до и после в виде двух строк байтов. | Сравнивают последние биты до и после, отмечают изменённые позиции и формулируют вывод: "Изменяются только младшие биты, поэтому изменение может быть незаметно". |
3 мин | Учитель раздаёт карточки трёх уровней: "Минимум: выпишите открытый и секретный ключи для примера. Базовый уровень: зашифруйте $x=2$. Повышенный уровень: объясните, почему стеганография не заменяет шифрование. Выберите уровень, но сначала выполните обязательную часть." | Решают выбранное задание индивидуально, затем сверяют результат с соседом по приёму «Две звезды и пожелание». |
Завершение этапа: учитель подводит итог: "Мы увидели, что RSA скрывает содержание сообщения с помощью вычислительного преобразования, а стеганография скрывает факт его передачи внутри другого объекта. Осталось проверить, насколько самостоятельно каждый из вас может воспроизвести алгоритмы."
Этап 7. Рефлексия, проверка и домашнее задание (6 мин)
Цель этапа: провести индивидуальную самопроверку, выявить затруднения и зафиксировать дальнейшую работу.
Время | Действие учителя | Действие учеников |
|---|---|---|
3 мин | Учитель раздаёт или выводит «Билет на выход»: "Запишите без подсказки: 1) что входит в открытый ключ; 2) формулу шифрования; 3) чем стеганография отличается от шифрования. Если уверены — поставьте зелёную отметку, если нужна помощь — жёлтую." | Индивидуально отвечают: "Открытый ключ — $(e,n)$"; "$y=x^e\ mod\ n$"; "стеганография скрывает факт передачи, а шифрование скрывает содержание". Отмечают уровень уверенности. |
3 мин | Учитель подводит итог: "Проверьте тетрадь по четырём критериям: ключи построены, формулы записаны, вычисления проверены, различие методов объяснено. Домашнее задание выбирается по уровню. Перед выходом назовите один вопрос, который остался." | Сверяют работу с критериями, записывают домашнее задание и формулируют вопросы: "Как выбираются большие простые числа?" или "Как скрывать данные в звуковом файле?" |
Завершение этапа: учитель подводит итог: "Сегодня вы построили учебную модель RSA, выполнили обратное преобразование и исследовали младшие биты изображения. Помните: маленькие числа подходят для понимания алгоритма, но не для реальной защиты данных. На следующем уроке мы продолжим анализ практической надёжности криптографических методов."
Критерии оценивания практической работы
- "5" — верно построены параметры RSA, правильно выполнены шифрование и расшифрование, объяснены открытый и секретный ключи, корректно выделены младшие биты и сформулировано различие между RSA и стеганографией.
- "4" — выполнены все основные вычисления, но допущена одна неточность в промежуточном остатке или неполно объяснён принцип изменения младших битов.
- "3" — определены открытый и секретный ключи и выполнена хотя бы одна операция по формуле, но имеются две или более ошибки в вычислениях или объяснении стеганографии.
- Ниже отметки «3» — отсутствует понимание последовательности построения ключей либо не различаются шифрование и сокрытие сообщения.
Рефлексия
Вопрос для ученика | Цель вопроса |
|---|---|
Что входит в открытый и секретный ключи RSA? | Проверка осознания структуры ключей и различия их назначения. |
Какая формула используется для шифрования, а какая — для расшифрования? | Выявление понимания направления преобразования и обратной операции. |
Почему изменение младших битов может быть незаметно на изображении? | Проверка понимания принципа стеганографического сокрытия. |
Какой шаг оказался самым сложным и почему? | Выявление точек затруднения для коррекции на следующем уроке. |
Завершающее слово учителя
"Сегодня мы увидели две стратегии защиты информации: RSA преобразует содержание сообщения, а стеганография скрывает сам факт его передачи. Типичная ошибка — смешивать открытый ключ с секретным и забывать, какая формула относится к шифрованию. Учебные числа помогают понять логику алгоритма, но не обеспечивают реальную криптографическую стойкость. На следующем уроке мы разберём требования к практическим ключам и обсудим, как оценивают надёжность алгоритмов."
Домашнее задание
Уровень | Что задать | Зачем |
|---|---|---|
Базовый (обязательный) | Составить краткую схему RSA из пяти шагов; для учебных параметров $p=3$, $q=7$, $e=5$, $d=5$ выписать открытый и секретный ключи и выполнить шифрование чисел $1$, $2$, $3$. | Закрепляет последовательность построения ключей и применение формулы $y=x^e\ mod\ n$; при проверке смотреть на вычисление $n$, $\varphi$ и остатки. |
Средний (повышающий) | Выполнить расшифрование полученных шифртекстов $1$, $11$, $12$ по формуле $x=y^d\ mod\ n$ и письменно объяснить, почему открытый ключ можно публиковать, а секретный нельзя. | Закрепляет обратное преобразование и смысл асимметричного шифрования; при проверке смотреть на пошаговые вычисления и аргументацию. |
Продвинутый (дополнительный) | Проанализировать восемь байтов изображения из урока: выписать их младшие биты, заменить их последовательностью кода буквы «И» — 11010000 и указать, какие позиции изменились. Сравнить результат с RSA по цели и способу защиты. | Развивает исследовательское мышление и понимание стеганографии; при проверке смотреть на точность выделения битов и содержательное сравнение методов. |
Контрольные вопросы перед выходом: «Как вычисляется $n$? Как связаны $e$, $d$ и $\varphi$? Какая формула используется для расшифрования? Что именно скрывает стеганография — содержание сообщения или факт его передачи?»