- объяснять цели (конфиденциальность, целостность, доступность) и способы защиты информации
- шифровать и расшифровывать шифром Цезаря на циклическом алфавите (английском и азербайджанском)
- решать задания DİM: разные сдвиги для букв и цифр, обратная запись и неизвестный ключ k
- различать симметричное и асимметричное шифрование, электронную подпись и виды киберпреступлений
По словам историка Светония, римский полководец Юлий Цезарь в тайных письмах заменял каждую букву буквой, стоящей в алфавите на 3 позиции дальше: вместо A писал D, вместо B — E. Враг, перехвативший письмо, видел бессмысленный набор букв, а тот, кто знал правило, легко его читал. Этот простой способ живёт и во вступительном экзамене DİM: в трёх из четырёх экзаменов 2025–2026 годов было задание на шифр Цезаря. А современные методы, защищающие банковские карты, мессенджеры и электронную подпись, выросли из той же идеи — шифрования с ключом.
Защита информации: цели и способы
Защищённость информации от несанкционированного получения, изменения и уничтожения при сохранении доступа к ней, когда она нужна.
У защищаемой информации три главных свойства. Любая атака нарушает хотя бы одно из них:
| Свойство | Смысл | Пример нарушения |
|---|---|---|
| Конфиденциальность | информацию читают только те, у кого есть право | чтение чужой переписки |
| Целостность | информация не изменяется и не портится без разрешения | изменение оценок в электронном журнале |
| Доступность | имеющий право пользователь получает информацию, когда она нужна | перегрузка сайта запросами до отказа |
Способы защиты делятся на три группы. Правовые — это законы: несанкционированный доступ и кража данных — преступления. Организационные — правила работы: у кого есть доступ в какое помещение и к каким документам, как хранятся пароли. Технические — физические (замки, охрана), аппаратные (карты-ключи, считыватели отпечатков пальцев) и программные средства: пароли и права доступа, антивирус, межсетевой экран (firewall), резервные копии и шифрование. Остальная часть урока посвящена последнему — криптографии.
Наука о способах преобразования информации так, чтобы прочитать её мог только тот, кто знает ключ (греч. kryptos — тайный, grapho — пишу).
| Термин | Смысл |
|---|---|
| Открытый текст | исходное незашифрованное сообщение, которое может прочитать любой |
| Шифртекст (шифровка) | текст после шифрования, который нельзя прочитать без ключа |
| Ключ | секретный параметр правила; в шифре Цезаря — величина сдвига k |
| Шифрование | превращение открытого текста в шифртекст с помощью ключа |
| Расшифрование | возвращение шифртекста в открытый текст с помощью ключа |
| Криптоанализ | методы взлома шифра без знания ключа |
Шифр Цезаря: шифр сдвига
В шифре Цезаря каждая буква открытого текста сдвигается в алфавите на k позиций вправо; число k — ключ (на языке DİM — коэффициент сдвига). Алфавит циклический: после последней буквы снова идёт первая, поэтому в английском алфавите при k = 3 получается X → A, Y → B, Z → C. Для расшифрования буквы сдвигают на k позиций влево. В задании всегда указано, какой алфавит используется:
ABCDEFGHIJKLMNOPQRSTUVWXYZ n = 26
abcçdeəfgğhxıijkqlmnoöprsştuüvyz n = 32
0123456789 n = 10Если пронумеровать буквы с нуля (A = 0, B = 1, …, Z = 25), правило записывается формулой:
- xномер буквы открытого текста
- yномер буквы шифртекста
- kключ — величина сдвига
- nчисло символов в алфавите (26, 32 или 10)
- mod nостаток от деления на n: алфавит «замыкается в круг»
Шифрование: на k позиций вправо.
Расшифрование: на k позиций влево. Если получилось отрицательное число, прибавьте n: например, (1 − 3) mod 26 = −2 + 26 = 24.
1) Зашифруйте BAKU при k = 3.
2) Зашифруйте ZOO при k = 4.
3) Расшифруйте FRGH при k = 3.
Показать решениеСкрыть решение
EDNX.2) Z(25): (25 + 4) mod 26 = 3 → D; O(14) → S(18). Ответ:
DSS — после Z алфавит начался снова с A.3) F(5) → C(2), R(17) → O(14), G(6) → D(3), H(7) → E(4). Ответ:
CODE.С азербайджанским алфавитом (32 буквы):
1) зашифруйте bakı при k = 3;
2) зашифруйте üzüm при k = 5.
Показать решениеСкрыть решение
1) Считаем внимательно: a0 b1 c2 ç3 d4. b(1) → d(4), a(0) → ç(3), k(15) → m(18), ı(12) → k(15). Ответ:
dçmk.2) ü(28): (28 + 5) mod 32 = 1 → b; z(31): (31 + 5) mod 32 = 4 → d; ü → b; m(18) → r(23). Ответ:
bdbr.Если считать по английскому алфавиту, получится совсем другой (неверный) результат: буквы ç, ə, ğ, ı, ö, ş, ü тоже нужно учитывать.
Задания DİM: разные сдвиги и неизвестный ключ
В настоящих экзаменационных заданиях правило обычно усложняют: буквы сдвигаются в одну сторону, цифры — в другую; у заглавных и строчных букв свои ключи; иногда шифр записывают задом наперёд и шифруют ещё раз, а ключ нужно найти. Все такие задания решаются одним алгоритмом:
- 1Определите группу символа
Для каждого символа спросите: заглавная буква, строчная или цифра? У каждой группы свой алфавит (26 или 10) и свой ключ.
- 2Поменяйте направление
Для расшифрования сдвигайте каждую группу в обратную сторону: «вправо на 8» → «влево на 8».
- 3Учтите цикл
Возможен переход с конца алфавита в начало (или обратно): mod 26 или mod 10.
- 4Проверьте варианты
Вычислите каждый символ отдельно и быстро отсейте варианты по одному-двум символам.
Сообщение из букв английского алфавита и цифр зашифровано так: буквы сдвигаются на 7 позиций вправо, цифры — на 3 позиции влево. После шифрования сообщение имеет вид Q2V8H. Найдите исходное сообщение.
A) J5O1A B) X9C5O C) J9O5A D) K5P1B E) J5N1A
Показать решениеСкрыть решение
Q(16) → 16 − 7 = 9 → J
2 → 2 + 3 = 5
V(21) → 14 → O
8 → (8 + 3) mod 10 = 1
H(7) → 0 → A
Ответ: A)
J5O1A.Вариант B получается, если зашифровать шифр ещё раз, вариант C — если сдвинуть цифры не в ту сторону.
Сообщение зашифровано так: заглавные буквы сдвигаются на 4 позиции вправо, строчные — на 2 влево, цифры — на 6 вправо (английский алфавит). Шифр: Dy7Wc0. Каково исходное сообщение?
Показать решениеСкрыть решение
D(3) → 3 − 4 = −1 → 25 → Z
y(24) → (24 + 2) mod 26 = 0 → a
7 → 1
W(22) → 18 → S
c(2) → 4 → e
0 → (0 − 6) mod 10 = 4
Ответ:
Za1Se4. Проверка: Z + 4 = D, a − 2 = y, 1 + 6 = 7 … ✓Если ключ неизвестен, его можно найти по одной паре соответствующих букв. А два шифрования Цезаря подряд равносильны одному:
- x, yномера соответствующих букв открытого текста и шифртекста
- k₁, k₂ключи двух шифрований подряд
Чтобы найти ключ, достаточно одной буквы; два сдвига складываются. Сдвиг на k влево — это сдвиг на n − k вправо.
Мурад зашифровал слово planet шифром Цезаря (k = 3), записал результат задом наперёд и отправил Лейле. Лейла ещё раз зашифровала его шифром Цезаря (k = ?) и отправила Эльвину. Эльвин получил bmvitx. Найдите k. (Алфавит: abcdefghijklmnopqrstuvwxyz)
Показать решениеСкрыть решение
planet → k = 3 → sodqhw. Задом наперёд: whqdos.Теперь
whqdos → bmvitx. Достаточно одной буквы: w(22) → b(1): k = (1 − 22) mod 26 = −21 + 26 = 5.Проверка: h(7) + 5 = 12 → m ✓.
Способ 2 (быстрый). При обратной записи последняя буква слова,
t, встаёт первой и сдвигается дважды: t(19) → b(1), общий сдвиг (1 − 19) mod 26 = 8 = 3 + k ⇒ k = 5.Ответ: 5.
Шифр Цезаря очень слабый: в английском алфавите всего 25 полезных ключей, и компьютер перебирает их мгновенно. Программа ниже шифрует, расшифровывает и находит ключ «грубой силой» — перебором по одному:
def caesar(text, k, alphabet='abcdefghijklmnopqrstuvwxyz'):
n = len(alphabet)
result = ''
for ch in text:
if ch in alphabet:
result += alphabet[(alphabet.index(ch) + k) % n]
else:
result += ch
return result
secret = caesar('planet', 3)
print(secret)
print(caesar(secret, -3))
az = 'abcçdeəfgğhxıijkqlmnoöprsştuüvyz'
print(len(az), caesar('üzüm', 5, az))
# brute force: try the keys one by one
for k in range(1, 4):
print(k, caesar('dqfkru', -k))▸ Ожидаемый результат
sodqhw planet 32 bdbr 1 cpejqt 2 bodips 3 anchor
% — остаток от деления (mod); отрицательное k расшифровывает. В Python -2 % 26 сразу даёт 24.Шифр wkh fdvsldq vhd получен шифром Цезаря с ключом k = 3. С помощью функции caesar расшифруйте его и выведите результат.
def caesar(text, k):
alphabet = 'abcdefghijklmnopqrstuvwxyz'
result = ''
for ch in text:
if ch in alphabet:
result += alphabet[(alphabet.index(ch) + k) % 26]
else:
result += ch
return result
# decrypt 'wkh fdvsldq vhd' and print it▸ Ожидаемый результат
the caspian sea
Другие шифры, симметричное и асимметричное шифрование
Шифр Цезаря — простейший шифр замены: каждая буква заменяется другой буквой. В общем шифре замены ключ — целая таблица (A → Q, B → W, …), поэтому ключей очень много, и всё же шифр взламывается: в английском тексте чаще всего встречается буква E, и самая частая буква шифра, скорее всего, заменяет E (частотный анализ). В шифрах перестановки буквы не меняются, перемешиваются лишь их места — «обратная запись» из заданий DİM тоже такое преобразование.
1) Зашифруйте BAKU шифром Атбаш (A ↔ Z, B ↔ Y, C ↔ X, …).
2) В слове PYTHONCODE поменяйте местами каждые две соседние буквы.
3) Запишите COMPUTERGAME по строкам в таблицу из 4 столбцов и прочитайте по столбцам.
Показать решениеСкрыть решение
YZPF (шифр замены; если применить его дважды, слово вернётся).2) PY TH ON CO DE → YP HT NO OC ED. Ответ:
YPHTNOOCED (перестановка; расшифрование — снова поменять пары).3) Таблица:
COMP / UTER / GAME. Столбцы: CUG, OTA, MEM, PRE. Ответ: CUGOTAMEMPRE; ключ — число столбцов (4).Во всех рассмотренных шифрах для шифрования и расшифрования используется один и тот же ключ — это симметричное шифрование. Его трудность — тайно передать ключ другой стороне. При асимметричном шифровании у каждого пользователя два ключа: открытый, который дают всем, и закрытый (личный), который не дают никому. Сообщение, зашифрованное открытым ключом Лейлы, открывается только закрытым ключом Лейлы.
| Симметричное | Асимметричное | |
|---|---|---|
| Ключи | один секретный ключ у обеих сторон | открытый ключ + закрытый ключ |
| Скорость | быстрое | намного медленнее |
| Примеры | шифр Цезаря, AES | RSA |
| Главная трудность | тайно передать ключ | убедиться, чей это на самом деле открытый ключ |
Особый код, который добавляется к документу закрытым ключом отправителя и проверяется его открытым ключом. Он подтверждает, кто подписал документ и что после подписи документ не изменялся (его целостность). В Азербайджане для государственных услуг широко используется мобильная электронная подпись «Asan İmza».
Киберпреступность
Киберпреступность — преступления, совершаемые с помощью компьютеров, сетей и интернета или против них. За эти деяния закон предусматривает наказание (в Азербайджане — Уголовный кодекс). Основные виды:
| Вид | Что это | Что нарушает |
|---|---|---|
| Несанкционированный доступ (взлом) | проникновение в чужой компьютер, аккаунт, базу данных | конфиденциальность, целостность |
| Распространение вредоносных программ | создание и рассылка вирусов, троянов и т. п. | все три |
| Фишинг и онлайн-мошенничество | выманивание паролей и данных карт через поддельный сайт или письмо | конфиденциальность |
| Кража личных данных | открытие счетов и покупки от чужого имени | конфиденциальность |
| DDoS-атака | перегрузка сайта запросами одновременно с тысяч компьютеров до отказа | доступность |
| Программы-вымогатели | шифрование файлов и требование денег за их расшифровку | доступность |
| Пиратство | незаконное распространение лицензионных программ, фильмов, книг | авторское право |
Главное
- Три свойства защищаемой информации: конфиденциальность, целостность, доступность; способы защиты — правовые, организационные, технические.
- Открытый текст превращается в шифртекст с помощью ключа (шифрование) и возвращается ключом (расшифрование); взлом без ключа — криптоанализ.
- Шифр Цезаря: y = (x + k) mod n, расшифрование x = (y − k) mod n; алфавит циклический (26 английских букв, 32 азербайджанские, 10 цифр).
- Ключ находится по одной паре букв; сдвиги подряд складываются, обратная запись буквы не меняет.
- В симметричном шифровании один ключ, в асимметричном — открытый и закрытый; электронная подпись ставится закрытым ключом, проверяется открытым.
Проверь себя
Вопросов: 12. Каждый правильный ответ приносит XP.