Криптографии пост
Криптография - это наука о зашифровывании информации.
Криптография долгое время использовалась только для передачи секретной информации во времена войн. В современном мире она используется для защиты наших данных от рук злоумышленников. В этом посте мы разберем простейшие способы шифрования.
Криптография может быть разделена на два направления: перестановка и замена.
В шифрах перестановки меняется порядок букв текста. Самый простой пример - это сообщение в котором меняются местами 1 и 2 буква, 3 и 4, 5 и 6, и тд.
анрпмиретэсооощбнееиыболазишрфвонатокамипссобомо
Другой способ:
1. Разделить сообщение пополам.
2. Первую часть написать сверху, а вторую снизу.
3. Выписывать буквы в таком порядке: 1 буква верхней части, 1 буква нижней части, 2 буква верхней части, 2 буква нижней части и тд.
Такой способ тоже ненадежен. Намного лучше если буквы будут выписываться по более сложной инструкции, которая известна только отправителю и получателю.
В шифрах замены одни символы заменяются другими. Я уверен, что вы иногда случайно пользовались самым простым шифром замены, хотя сами об этом не догадывались.
Ntgthm ljuflfkbcm j xtv bltn htxm?
Самыми старыми шифрами являются моноалфавитные (одноалфавитные) шифры.
В моноалфавитных шифрах одна буква может заменяться только одной другой. Шифр используемый выше является моноалфавитным, так как каждая буква заменяется той, которая находится на этой же клавише при другой раскладке клавиатуры. Другой известный шифр замены - это шифр Цезаря.
В шифре цезаря каждая буква сдвигается на фиксированное число позиций в алфавите. Например, если фиксированное число (которое называется сдвиг) будет равно 3, то буква "а" будет заменяться на "г", "б" на "д", "я" на "в" и тд. Этот шифр тоже ненадежен, как и все шифры, описанные в этом посте ранее, потому что его можно легко расшифровать, перебрав все 32 варианта (для русского алфавита). Наука о методах расшифровки называется криптоанализ.
ъмшфцшмтъзудхгс тшрчъцзхзурпзъц — чшрицш луж чшцймлмхрж ъмшфцшмтъзудхцкц тшрчъцзхзурпз — етщчшмщщ-лмарьшцйзхрж рхьцшфзюрр уёицс щуцохцщър арьшцйтр й чшрщыъщъйрр хцщръмуж еъцс рхьцшфзюрр.
Все моноалфавитные шифры можно расшифровать частотным анализом текста, который подробно описан в этом посте. Минусом этого способа является его неэффективность при небольшом размере текста.
Более сложные шифры, пришедшие на смену моноалфавитным, называются полиалфавитные (многоалфавитные). В полиалфавитном шифре одна и та же буква может каждый раз заменяться разной буквой.
Самый знаменитый полиалфавитный шифр - это шифр Виженера.
Шифр Виженера будет проще объяснить на примере. Для шифрования необходимо любое слово, которое будет являться ключом. Пусть это будет слово "Ктулху". В качестве сообщения, которое нам необходимо зашифровать возьмем определение с лурка.
Хтоничное божество с тентаклями и гипнокинезом, персонаж повести Говарда Лавкрафта «Зов Ктулху» и популярный мем рунета.
Для шифрования мы берем первую букву сообщения и сдвигаем ее на на число позиций, равное номеру первой буквы ключа в алфавите. Номер первой буквы сообщения равен 23. Номер первой буквы ключа в нашем случае равен 12. Складываем эти числа и ищем букву с таким номером. Если сумма превышает количество букв, то продолжаем отсчет с начала алфавита. Первая буква нашего зашифрованного сообщения будет "Б". Шифруем вторую букву сообщения второй буквой ключа, третью третьей и тд. Когда наш ключ закончится, повторяем его, до окончания сообщения. В итоге получаем такое зашифрованное сообщение:
бёгъялщвщ неырежое ё юшвяцячтбх я чфгвыбэщшьыг, дрдёыдфт ггоыёюь чышфьчф шцццдфбиф «увц чизчиз» х ёгыжалжвжэ бсг еябщяц.
Расшифровать шифр Виженера очень сложно. Но чем длиннее сообщение и чем короче ключ, тем проще это сделать. Способы расшифровки я описывать не буду, так как это бы заняло большую часть поста.
дбш аечазуьтэбщ цшэялыэд. рьбзпиюоылщ щръйшрбч я ипщвфьпвнтгео ющснюэьр в тибгш зщсаяиуих тъхмопх т ъхащл жбюхьокжьъ бщюфщуиэ авззн. юрёщэлбам эц пютар яярапехя, яэбнтбгы о лбюхащр, ипщяычпх онзэьзм й хрнчмщуй вцуноф, эбэтэы хьббв мвснээтзв й эя ыуищоцо гапщгцт ц евжуюх гбяюсягэу. бщуй тпапзаамён, оёбхржк оейпяльшё ннваэй, ипягфрёлэ п фздлылб. зщявб рььлоощ гиюзбщ, ымцгр р ллгтбёбёю псюз-тяю мьчяч зйёэыгсл ипяяаукжпря э юлиёюзщькздь эуакздь сзъщзон, вбоещуй пюелё, гыяцк мзтарцчпх г сдйэядф, ехеуе ипщзфаэ випьщёщ, кнншфбщ ёбяьгы ё, ип ыхгптзецэгапв, гщщжк втж ыхбьльп одаклжб.
Главная уязвимость шифра Виженера заключается в том, что ключ повторяется много раз.
Шифр Виженера можно сделать абсолютно невзламываемым, если в ключе, вместо слова использовать случайный набор символов, который длиннее сообщения и меняется после каждого сообщения.
Сегодня все перечисленные выше способы шифрования почти не применяются на практике.
Если тема будет интересна, то в следующих постах расскажу о более современных методах шифрования.
Наука | Научпоп
8.2K постов80.2K подписчиков
Правила сообщества
Основные условия публикации
- Посты должны иметь отношение к науке, актуальным открытиям или жизни научного сообщества и содержать ссылки на авторитетный источник.
- Посты должны по возможности избегать кликбейта и броских фраз, вводящих в заблуждение.
- Научные статьи должны сопровождаться описанием исследования, доступным на популярном уровне. Слишком профессиональный материал может быть отклонён.
- Видеоматериалы должны иметь описание.
- Названия должны отражать суть исследования.
- Если пост содержит материал, оригинал которого написан или снят на иностранном языке, русская версия должна содержать все основные положения.
- Посты-ответы также должны самостоятельно (без привязки к оригинальному посту) удовлетворять всем вышеперечисленным условиям.
Не принимаются к публикации
- Точные или урезанные копии журнальных и газетных статей. Посты о последних достижениях науки должны содержать ваш разъясняющий комментарий или представлять обзоры нескольких статей.
- Юмористические посты, представляющие также точные и урезанные копии из популярных источников, цитаты сборников. Научный юмор приветствуется, но должен публиковаться большими порциями, а не набивать рейтинг единичными цитатами огромного сборника.
- Посты с вопросами околонаучного, но базового уровня, просьбы о помощи в решении задач и проведении исследований отправляются в общую ленту. По возможности модерация сообщества даст свой ответ.
Наказывается баном
- Оскорбления, выраженные лично пользователю или категории пользователей.
- Попытки использовать сообщество для рекламы.
- Фальсификация фактов.
- Многократные попытки публикации материалов, не удовлетворяющих правилам.
- Троллинг, флейм.
- Нарушение правил сайта в целом.
Окончательное решение по соответствию поста или комментария правилам принимается модерацией сообщества. Просьбы о разбане и жалобы на модерацию принимает администратор сообщества. Жалобы на администратора принимает@SupportComunity и общество Пикабу.