
Информатика: создаём своего цифрового помощника Урок 59 из 72
Шифрование, ключ и границы защиты
Ученик кладёт записку в запечатанный конверт.
Где мы на карте
Урок 59 из 72. Блок «Цифровая безопасность» (55–62). Мы продолжаем локального помощника с тремя вымышленными задачами. Каждая мера имеет конкретную границу: учебная версия не становится готовым публичным сервисом.
Ситуация и вопрос
Ученик кладёт записку в запечатанный конверт. Видно, что письмо существует, но текст закрыт. Однако конверт не доказывает, кто его отправил, и не заменяет хранение ключа.
Новые слова без пропусков
Шифрование преобразует читаемый текст в недоступный без ключа вид. Ключ — секрет, необходимый для преобразования или проверки. TLS защищает передачу между браузером и сервером при правильной проверке имени и сертификата. Шифрование на диске защищает другой участок пути — сохранённый файл. Хеш для контроля целостности не шифрует и не скрывает данные.
Опорный сигнал
Прочитайте три клетки схемы слева направо, затем закройте третью. Назовите вход и действие в каждой клетке; предскажите, чем закончится путь и какой наблюдаемый факт подтвердит ответ. Сравните рисунок с файлом проекта или контрольным примером. Если число на схеме не получается из данных, исправьте схему, а не данные под красивую картинку.
Разбираем шаг за шагом
Нарисуйте путь: браузер → сеть → сервер → диск → копия. Подпишите TLS на участке сети, а защиту диска — у файла. В нашем step-06 локальная страница работает по HTTP только на 127.0.0.1; она не является примером защищённого публичного сервиса. Созданная backup.db не шифруется, поэтому держите её на доверенном устройстве и не загружайте в общий облачный каталог.
Предскажите и проверьте
Запишите ожидаемый вывод до запуска кода. Выполните его в указанной папке step-06 или step-07, сравните результат символ за символом и объясните каждую строку. Затем измените один безопасный вымышленный вход и повторите цикл «предсказать — запустить — изменить — объяснить — проверить». Наблюдение на маленьком наборе не превращайте в обещание для реальных людей.
import hashlib
a = hashlib.sha256(b"20 minutes").hexdigest()
b = hashlib.sha256(b"200 minutes").hexdigest()
print(a == b)
Ожидаемый вывод
False
Поймайте ошибку
HTTPS не скрывает информацию от конечного сервера. Один только замочек браузера не подтверждает честность владельца сайта. Хеш рядом с файлом не защищает от человека, который может заменить и файл, и хеш; для подлинности нужен иной доверенный механизм.
Изменение проекта
В проекте 1.3 сохраняются исходные три задачи, четыре занятия и правила напоминаний. Новые действия вынесены в security_assistant.py: проверка, создание отдельной копии и восстановление только в новый файл. Запишите, от какой угрозы помогает это изменение и от какой не помогает; учебные данные остаются вымышленными.
Задание и доказательство
Для каждого участка пути назовите, кто может читать данные. Объясните, что нужно изменить перед публикацией реального многопользовательского сервиса.
Перенос в новую ситуацию
Школа пересылает файл оценок через HTTPS, а затем оставляет его на общем компьютере. Какая граница защищена, а какая нет?
Возврат через 1, 7 и 30 дней
Через 1 день нарисуйте схему по памяти и найдите в ней одну границу применения. Через 7 дней объясните её товарищу, не читая урок, и решите 7 из 10 вопросов блока; ошибочные ответы разберите на конкретных входах. Через 30 дней откройте свежую копию проекта, воспроизведите проверку и перенесите принцип в новый пример. Сохраните свой протокол с входом, ожидаемым и фактическим результатом.
Первоисточник для проверки
Следующий урок
Если вы нашли ошибку или опечатку в тексте статьи, то сообщите нам об этом
Комментарии (0)
Войдите, чтобы оставить комментарий →
Пока нет комментариев. Будьте первым.