Shanraq.org Shanraq.org
Кого и от чего мы защищаем
Общество

Информатика: создаём своего цифрового помощника Урок 55 из 72

Кого и от чего мы защищаем

Представьте школьный дневник на столе.

Где мы на карте

Урок 55 из 72. Блок «Цифровая безопасность» (55–62). Мы продолжаем локального помощника с тремя вымышленными задачами. Каждая мера имеет конкретную границу: учебная версия не становится готовым публичным сервисом.

Кого и от чего мы защищаем

Ситуация и вопрос

Представьте школьный дневник на столе. Кто-то может прочитать его, исправить отметку или унести целиком. У нашего вымышленного помощника похожие риски: файл SQLite, локальная страница и резервная копия требуют разных мер. Сначала назовём, что защищаем, а уже затем выберем средство.

Где взять файлы проекта

Откройте папку контрольной версии, скачайте репозиторий через Code → Download ZIP и найдите course/informatics-assistant/step-06. Откройте терминал в этой папке. Команда python3 --version покажет Python; затем запустите указанную проверку. Все имена задач вымышлены, никаких реальных данных вводить не нужно.

Новые слова без пропусков

Актив — ценная вещь или информация: здесь файл задач и возможность продолжить работу. Угроза — возможное нежелательное событие; уязвимость — слабое место, через которое оно реализуется. Конфиденциальность ограничивает чтение посторонними; целостность позволяет заметить изменение; доступность означает, что владелец сможет открыть данные вовремя. Это три разных обещания, а не одна кнопка «защитить».

Опорный сигнал

Прочитайте три клетки схемы слева направо, затем закройте третью. Назовите вход и действие в каждой клетке; предскажите, чем закончится путь и какой наблюдаемый факт подтвердит ответ. Сравните рисунок с файлом проекта или контрольным примером. Если число на схеме не получается из данных, исправьте схему, а не данные под красивую картинку.

Разбираем шаг за шагом

Составьте таблицу из трёх строк. Посторонний читает незашифрованную копию: страдает конфиденциальность. Кто-то меняет 20 минут на 200: страдает целостность. Диск ломается: страдает доступность. Для первого случая не публикуем данные и оставляем сервер на 127.0.0.1; для второго проверяем данные и резервную копию; для третьего испытываем восстановление. Локальный адрес не спасает от человека с доступом к самому компьютеру.

Предскажите и проверьте

Запишите ожидаемый вывод до запуска кода. Выполните его в указанной папке step-06 или step-07, сравните результат символ за символом и объясните каждую строку. Затем измените один безопасный вымышленный вход и повторите цикл «предсказать — запустить — изменить — объяснить — проверить». Наблюдение на маленьком наборе не превращайте в обещание для реальных людей.

from pathlib import Path
from data_store import connect_readonly
print("local", Path("tasks.json").is_file())
print("read-only", "mode=ro" in Path("data_store.py").read_text())

Ожидаемый вывод

local True
read-only True

Поймайте ошибку

Хеш файла показывает изменение, но не скрывает содержимое. Копия помогает восстановить данные, но сама нуждается в защите. Три вымышленные задачи не требуют реальных личных данных учащихся.

Изменение проекта

В проекте 1.3 сохраняются исходные три задачи, четыре занятия и правила напоминаний. Новые действия вынесены в security_assistant.py: проверка, создание отдельной копии и восстановление только в новый файл. Запишите, от какой угрозы помогает это изменение и от какой не помогает; учебные данные остаются вымышленными.

Задание и доказательство

Нарисуйте таблицу «актив — событие — свойство — проверка» для базы, веб-страницы и копии. Назовите хотя бы по одному случаю, который выбранная мера не предотвращает.

Перенос в новую ситуацию

Телефон потерян, но пароль на нём установлен. Что известно о конфиденциальности, а что ещё нужно проверить для доступности семейных фотографий?

Возврат через 1, 7 и 30 дней

Через 1 день нарисуйте схему по памяти и найдите в ней одну границу применения. Через 7 дней объясните её товарищу, не читая урок, и решите 7 из 10 вопросов блока; ошибочные ответы разберите на конкретных входах. Через 30 дней откройте свежую копию проекта, воспроизведите проверку и перенесите принцип в новый пример. Сохраните свой протокол с входом, ожидаемым и фактическим результатом.

Первоисточник для проверки

Официальный документ

Следующий урок

Пароль, хеш и второй фактор

Если вы нашли ошибку или опечатку в тексте статьи, то сообщите нам об этом

Проверить доказательство проекта

Запишите наблюдение, объяснение, исправление ошибки и изменение своего проекта. Модель укажет первую перепутанную или недоказанную связь, но не даст готовый ответ.

Чтобы проверить, нужно войти. Войти

Комментарии (0)

Пока нет комментариев. Будьте первым.