- PVSM.RU - https://www.pvsm.ru -
Все привыкли к тому, что безопасность информации — это антивирусы, шифрование, фаерволы и двухфакторная аутентификация. Но задолго до всего этого — в мире без электричества, интернета и даже телеграфа — существовали вполне реальные угрозы утечки данных и методы защиты информации. В статье — реальные кейсы XIV века, средневековые протоколы безопасности, курьезные уязвимости и немного кода (куда без него?).
Если вы думаете, что XIV век — это про рыцарей, чуму и башни без Wi-Fi, то вы, в целом, правы. Но даже тогда существовали конфиденциальные сообщения, шпионаж, защита данных и атаки, которые очень напоминают фишинг, перехват сообщений и даже внедрение в цепочку поставок (правда, поставляли не софт, а людей и письма). Эта статья — попытка взглянуть на ИБ до ИБ, когда информацию защищали не фаерволы, а воск, пергамент и личные головы гонцов.

В XIV веке шифрование применялось не только монахами или алхимиками. Дипломатическая переписка между государствами и папскими посольствами нередко шифровалась при помощи гомофонических шифров, в которых одна и та же буква могла заменяться на разные символы. Это усложняло частотный анализ, особенно если учесть, что многие люди были неграмотны и сами не понимали, что именно шифруют.
Пример гомофонического шифра на Python (воссоздание логики):
import random
alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
substitutions = {
letter: [f"{letter}{i}" for i in range(random.randint(2, 5))] for letter in alphabet
}
def encrypt(text):
result = []
for char in text.upper():
if char in substitutions:
result.append(random.choice(substitutions[char]))
else:
result.append(char)
return ' '.join(result)
print(encrypt("HELLO KING"))
Прототип, конечно, условный — но дух эпохи вполне передаёт. Код не для продакшна, а для понимания, как даже примитивные шифры могли создавать большую энтропию.
В мире без цифровых ключей использовали печати. Каждому важному человеку — епископу, герцогу, королю — соответствовала своя восковая печать, которой скреплялись письма. Взломать такую защиту можно было... верно: социальной инженерией или подделкой формы печати. Иногда — даже откровенным подкупом восочника (тот, кто отвечал за подогрев и выливку).
Были даже истории утечек, когда письмо вскрывали, аккуратно подделывали содержание, а потом снова запечатывали. Не поверите, но это — чистейшая атака "man in the middle".
В роли почтовых клиентов выступали люди. Их называли гонцами, и у каждого была чёткая роль: не потеряться, не умереть и не заговориться в трактире. Почтовые маршруты не имели избыточности — утеря одного гонца могла привести к полной утрате данных. Поэтому особо важные сообщения дублировали. Уже тогда — прообраз RAID-1, если угодно.
Также практиковались двойные конверты: внешнее письмо было нейтральным, а внутри находилось запечатанное — конфиденциальное. Что-то вроде транспортного шифрования.
В 1357 году в Праге был случай, который можно назвать утечкой данных уровня госизмены. Один из гонцов Карла IV был перехвачен и подвергнут допросу с пристрастием. Проблема: он знал шифр. Это привело к компрометации всей системы переписки с Венгрией. После этого была введена простая, но эффективная мера — разделение ключей. Один человек знал шифр, другой — сообщение. Они путешествовали отдельно. При потере одного — утечка была невозможна.
В современной терминологии — разделение прав доступа.
Средневековье знало и "документы с трояном". Иногда монастыри подделывали грамоты, добавляя в них удобные фразы вроде «...и владение этой землёй переходит в вечное пользование ордена». Подпись — настоящая, пергамент — старый, но текст был вписан позже.
Фактически, это supply-chain атака, когда зло внедряется уже на этапе производства артефакта. Такая практика была массовой — отдельные кафедры современной палеографии до сих пор пытаются распознать подобные фальсификации.
Любопытно, но существовали аналоги багбаунти. Венецианская республика поощряла тех, кто находил и сообщал о подделках гербов и печатей. За точную информацию можно было получить статус, деньги и (что важно) жизнь. Правда, неудачный репорт часто заканчивался смертной казнью за клевету.
Стеганография не нова. В XIV веке использовались методы нанесения скрытых меток лимонным соком, разведённым молоком или даже соком лука. Видимость появлялась только при нагревании — фактически, это была своя система невидимых чернил.
В современном пересказе:
def reveal_steganography(paper):
if paper.heated:
return paper.hidden_message
return None
class Paper:
def __init__(self, msg):
self.hidden_message = msg
self.heated = False
my_paper = Paper("Казна пуста — не шли никого!")
my_paper.heated = True
print(reveal_steganography(my_paper))
Даже без сканеров отпечатков пальцев люди пытались верифицировать авторство. Почерк — один из первых биометрических факторов. Некоторые особо важные послания писались уникальным стилем, намеренно с ошибками или странными знаками. Это было похоже на seed-фразу: если стиль не совпадает — перед вами фальшивка.
XIV век знал больше об информационной безопасности, чем кажется. Да, не было алгоритмов, электричества, even баз данных, но были ключи, контроль доступа, системы идентификации, атаки на доверие и фишинг в виде ложных писем. И, пожалуй, главный вывод — подходы меняются, но уязвимости всегда живут между строк.
Как сказал бы средневековый CISO: не доверяй гонцу, если он слишком болтлив.
Автор: rymin_niko
Источник [1]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/informatsionnaya-bezopasnost/417621
Ссылки в тексте:
[1] Источник: https://habr.com/ru/articles/903644/?utm_source=habrahabr&utm_medium=rss&utm_campaign=903644
Нажмите здесь для печати.