Все шифры: Элементарные шифры на понятном языке / Хабр

Элементарные шифры на понятном языке / Хабр

Привет, Хабр!

Все мы довольно часто слышим такие слова и словосочетания, как «шифрование данных», «секретные шифры», «криптозащита», «шифрование», но далеко не все понимают, о чем конкретно идет речь. В этом посте разберемся, что из себя представляет шифрование и рассмотрим элементарные шифры с тем расчетом, чтобы даже далекие от IT люди поняли суть этого явления.

Прежде всего, разберемся в терминологии.

Шифрование – это такое преобразование исходного сообщения, которое не позволит всяким нехорошим людям прочитать данные, если они это сообщение перехватят. Делается это преобразование по специальным математическим и логическим алгоритмам, некоторые из которых мы рассмотрим ниже.

Исходное сообщение – это, собственно, то, что мы хотим зашифровать. Классический пример — текст.

Шифрованное сообщение – это сообщение, прошедшее процесс шифрования.

Шифр — это сам алгоритм, по которому мы преобразовываем сообщение.

Ключ — это компонент, на основе которого можно произвести шифрование или дешифрование.

Алфавит – это перечень всех возможных символов в исходном и зашифрованном сообщении. Включая цифры, знаки препинания, пробелы, отдельно строчные и заглавные буквы и т.д.

Теперь, когда мы говорим на более-менее одном языке, разберем простые шифры.

Самый-самый простой шифр. Его суть – переворот алфавита с ног на голову.

Например, есть у нас алфавит, который полностью соответствует обычной латинице.

a b c d e f g h i j k l m n o p q r s t u v w x y z

Для реализации шифра Атбаша просто инвертируем его. «А» станет «Z», «B» превратится в «Y» и наоборот. На выходе получим такую картину:

И теперь пишем нужное сообшение на исходном алфавите и алфавите шифра

Исходное сообщение: I love habr
Зашифрованное: r olev szyi

Тут добавляется еще один параметр — примитивный ключ в виде числа от 1 до 25 (для латиницы).

На практике, ключ будет от 4 до 10.

Опять же, для наглядности, возьмем латиницу

a b c d e f g h i j k l m n o p q r s t u v w x y z

И теперь сместим вправо или влево каждую букву на ключевое число значений.

Например, ключ у нас будет 4 и смещение вправо.

Исходный алфавит: a b c d e f g h i j k l m n o p q r s t u v w x y z
Зашифрованный: w x y z a b c d e f g h i j k l m n o p q r s t u v

Пробуем написать сообщение:

hello world

Шифруем его и получаем следующий несвязный текст:

dahhk sknhz

  • Шифр Вернама (XOR-шифр)

Простейший шифр на основе бинарной логики, который обладает

абсолютной

криптографической стойкостью. Без знания ключа, расшифровать его невозможно (доказано Клодом Шенноном).

Исходный алфавит — все та же латиница.

Сообщение разбиваем на отдельные символы и каждый символ представляем в бинарном виде.
Классики криптографии предлагают пятизначный код бодо для каждой буквы. Мы же попробуем изменить этот шифр для кодирования в 8 бит/символ на примере ASCII-таблицы. Каждую букву представим в виде бинарного кода.

Теперь вспомним курс электроники и элемент «Исключающее ИЛИ», также известный как XOR.

XOR принимает сигналы (0 или 1 каждый), проводит над ними логическую операцию и выдает один сигнал, исходя из входных значений.

Если все сигналы равны между собой (0-0 или 1-1 или 0-0-0 и т.д.), то на выходе получаем 0.
Если сигналы не равны (0-1 или 1-0 или 1-0-0 и т.д.), то на выходе получаем 1.

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

Например:

сообщение: LONDON
ключ: SYSTEM

Переведем их в бинарный код и выполним XOR:

01001100 01001111 01001110 01000100 01001111 01001110
01010011 01011001 01010011 01010100 01000101 01001101
_______________________________________________________
00011111 00010110 00011101 00010000 00001010 00000011

В данном конкретном примере на месте результирующих символов мы увидим только пустое место, ведь все символы попали в первые 32 служебных символа. Однако, если перевести полученный результат в числа, то получим следующую картину:

31 22 29 16 10 3. 

С виду — совершенно несвязный набор чисел, но мы-то знаем.

  • Шифр кодового слова

Принцип шифрования примерно такой же, как у шифра цезаря. Только в этом случае мы сдвигаем алфавит не на определенное число позиций, а на кодовое слово.

Например, возьмем для разнообразия, кириллический алфавит.

абвгдеёжзийклмнопрстуфхцчшщъыьэюя

Придумаем кодовое слово. Например, «Лукоморье». Выдернем из него все повторяющиеся символы. На выходе получаем слово «Лукомрье».

Теперь вписываем данное слово в начале алфавита, а остальные символы оставляем без изменений.

абвгдеёжзийклмнопрстуфхцчшщъыьэюя
лукомрьеабвгдёжзийнпстфхцчшщъыэюя

И теперь запишем любое сообщение и зашифруем его.

"Златая цепь на дубе том"

Получим в итоге следующий нечитаемый бред:

"Адлпля хриы жл мсур пиё"

  • Шифр Плейфера

Классический шифр Плейфера предполагает в основе матрицу 5х5, заполненную символами латинского алфавита (i и j пишутся в одну клетку), кодовое слово и дальнейшую манипуляцию над ними.

Пусть кодовое слово у нас будет «HELLO».

Сначала поступаем как с предыдущим шифром, т.е. уберем повторы и запишем слово в начале алфавита.

Теперь возьмем любое сообщение. Например, «I LOVE HABR AND GITHUB».

Разобьем его на биграммы, т.е. на пары символов, не учитывая пробелы.

IL OV EH AB RA ND GI TH UB.

Если бы сообщение было из нечетного количества символов, или в биграмме были бы два одинаковых символа (LL, например), то на место недостающего или повторившегося символа ставится символ X.

Шифрование выполняется по нескольким несложным правилам:

1) Если символы биграммы находятся в матрице на одной строке — смещаем их вправо на одну позицию. Если символ был крайним в ряду — он становится первым.

Например, EH становится LE.

2) Если символы биграммы находятся в одном столбце, то они смещаются на одну позицию вниз. Если символ находился в самом низу столбца, то он принимает значение самого верхнего.

Например, если бы у нас была биграмма LX, то она стала бы DL.

3) Если символы не находятся ни на одной строке, ни на одном столбце, то строим прямоугольник, где наши символы — края диагонали. И меняем углы местами.

Например, биграмма RA.

По этим правилам, шифруем все сообщение.

IL OV EH AB RA ND GI TH UB.
KO HY LE HG EU MF BP QO QG

Если убрать пробелы, то получим следующее зашифрованное сообщение:

KOHYLEHGEUMFBPQOQG

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

Спасибо за внимание.

тайнопись и загадки докомпьютерной эпохи / Offсянка

Теоретически можно разгадать любой шифр. Для успешной расшифровки необходимо научиться пользоваться логикой — простейшие примеры логических выводов могут выглядеть так. Если текст засекречен с помощью подстановочного шифра, а первые шесть букв послания стоят перед восклицательным знаком, логично предположить, что это обращение «Привет!». Если в тексте есть слово из двух букв, то почти наверняка это предлог. И так далее. Конечно, это логика простейшего примера. При более сложных вариантах шифрования важна собственная интуиция, чтобы с помощью шестого чувства догадаться, какой же метод был применен. Проблема в том, что алгоритмов шифрования существует бесчисленное множество, к тому же могут применяться комбинации подходов, что значительно усложняет задачу.

Современные компьютерные системы многократно усложнили расшифровку данных. Часто разработчики какого-нибудь известного проекта, чтобы закрыть все дыры в собственном программном обеспечении, предлагают всем желающим попробовать свои силы в дешифровке. Так, например, в 2013 году основатель «ВКонтакте» Павел Дуров предложил всем желающим принять участие в расшифровке его переписки с братом Николаем в новом мессенджере Telegram.

В качестве вознаграждения победителю сулился приличный приз — 200 тысяч долларов. Спустя год никто так и не выполнил эту задачу (по крайней мере так говорится в официальном блоге проекта), а конкурс продолжили, увеличив награду до 300 тысяч за взлом протокола. Любопытной была реакция некоторых членов сообщества, которые сожалели о такой строгой формулировке задания и предлагали взломать сам сервер.

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

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

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

⇡#Скитала: древнегреческая палочка-шифровалочка 

В Древней Спарте использовали вот такую вот палицу, которая называется скитала (если верить сотрудникам музея Сен-Сир, где выставлена такая штука, она сделана приблизительно в пятом веке до нашей эры).

На этот посох наматывалась по спирали полоска пергамента с зашифрованным посланием. Смысл такого “гаджета” был в том, что прочитать эту полоску мог лишь обладатель скиталы аналогичного размера. При правильном размере витка буквы послания совпадали, и получался связный текст. Устройство было очень простым и практичным, хотя особо надежным его назвать никак нельзя.

Согласно легенде, этот “шифр” сумел разгадать еще Аристотель, а в 1841 году в июльском журнале Graham’s Magazine его редактор Эдгар Аллан По опубликовал статью «Несколько слов о тайнописи» (A FEW WORDS ON SECRET WRITING), в которой рассказал про скиталу и поведал об остроумном методе дешифровки скиталы любого диаметра.

По словам родоначальника детективного жанра, для “взлома” скиталы нужно взять, скажем, шестифутовый конус и намотать на него ленту с текстом, а затем перемещать вдоль длины конуса, пока текст не станет читаемым. Страсть Эдгара По к различным головоломкам и шифрам нашла свое отражение не только в его бессмертных произведениях. Будучи редактором журнала, он вел активное общение с читателями, призывая присылать ему ребусы и зашифрованные послания, которые он старался разгадывать совместно с подписчиками издания, совершенствуя тем самым свои навыки в криптологии.

⇡#Линейка Сен-Сира: шифруем на коленках

На следующей фотографии вы можете наблюдать вещь, которая имеет определенное сходство с логарифмической линейкой (простое механическое устройство для математических расчетов).

Эта вещь и есть линейка, только шифровальная. Её название — “Линейка Сен-Сира” — произошло от названия военного училища, которое в свое время организовал Наполеон Бонапарт.

Это высшее учебное заведение выпустило немало известных личностей — маршалов и военачальников. Военному искусству здесь обучался сам Шарль де Голль, а некоторое время в ней учился и Жорж Шарль Дантес, кавалергард, чья пуля на дуэли оборвала жизнь известного поэта Александра Сергеевича Пушкина.

В военной академии Сен-Сир придумали простое и оригинальное устройство, состоящее из двух частей — алфавитной линейки и подвижного бегунка с написанным алфавитом и прорезью. Принцип шифрования этой линейкой был очень простым и основывался на замещении букв алфавита. Но, в отличие от шифра Цезаря, где общий сдвиг букв при письме был одним и тем же (например, вместо А — Б, вместо В — Г и так далее), в линейке Сен-Сира был реализован шифр замещения с переменным сдвигом, так называемый шифр Блеза де Виженера, французского дипломата, жившего в шестнадцатом столетии.

Блез де Виженер

Обычное замещение текста — слишком слабый способ шифрования, который очень просто разгадывается с помощью банальной логики и статистики употребления тех или иных букв в языке. Помните, как лихо расшифровал подобный шифр сыщик Шерлок Холмс в рассказе “Пляшущие человечки” Артура Конан Дойля? Аналогично можно было бы расшифровать шифр Цезаря. Но с шифром Виженера у великого сыщика не вышло бы так просто разгадать загадку, ведь одна и та же буква в кодируемом сообщении могла иметь разные подстановки.

Джованни Батиста Беллазо

Интересно, что человек, давший имя этому шифру, никакого отношения к нему не имел. На самом деле его автором был итальянский математик Джованни Батиста Беллазо. Его труды и изучил Блез де Виженер во время своей двухлетней дипломатической миссии в Риме. Вникнув в простой, но эффективный принцип шифрования, дипломат сумел преподнести эту идею, показав ее комиссии Генриха III во Франции.

Суть нового принципа шифрования заключалась в том, что величина сдвига для замещения букв была переменной и определялась ключевым словом или фразой. Долгое время этот метод считался неуязвимым для разгадывания, и даже авторитеты в области математики признавали его надежность. Так, легендарный автор приключений “Алисы в зазеркалье” и “Алисы в стране чудес”, писатель-математик Льюис Кэрролл в своей статье «Алфавитный шифр» прямо и категорично называет шифр Виженера “невзламываемым”. Эта статья вышла в детском журнале в 1868 году, но даже спустя полвека после статьи Чарльза Латуиджа Доджсона (это настоящее имя автора сказок про Алису) научно-популярный американский журнал Scientific American продолжал утверждать, что шифр Виженера невозможно взломать.

Для расшифровки шифра Виженера использовалась специальная таблица, которая называлась tabula recta.

Линейка Сен-Сира — это своего рода механическая таблица Виженера. Пользоваться линейкой Сен-Сира несложно. Предположим, вы хотите закодировать текст MORTALENEMY ключевым словом POST. Многократно пишем это ключевое слово, чтобы получившееся выражение было по длине таким же, как шифруемый текст. Получается так:

MORTALENEMY

POSTPOSTPOS

На линейке подбираем положение бегунка, чтобы начало алфавита совпадало с буквой P и смотрим, какая буква соответствует первой букве шифруемого текста М. Это — буква B. Аналогичным образом букве O соответствует буква С, R меняется на J и так далее. В результате мы получаем зашифрованное слово: BCJMPZWGTAQ.

Проверить свое понимание принципов работы с шифром Виженера можно с помощью онлайнового сервиса — шифратора, кодировщика и декодировщика данного метода.

Помимо скиталы, на основе таблицы Виженера (tabula recta) было создано множество карманных «склерозников» разных форм, которые упрощали тайнопись. Наряду с линейкой Сен-Сира, большой популярностью пользовались шифровальные круги, идею которых подсказал в своих трудах Леон Баттиста Альберти — итальянский учёный середины XV столетия.

Леон Баттиста Альберти

Во время войны Севера и Юга в США (1861–1865 годов) диск Альберти (иногда можно встретить название “колеса Альберти”) — кружок диаметром девять с половиной сантиметров — лежал в кармане у разведчиков и связистов. Шифровальный диск был сделан из плотной светло-желтой картонки и состоял из двух концентрических кругов, скрепленных посередине. Внутренний диск содержал буквы и окончания, а внешний включал в себя группу сигнальных цифр. Секретное устройство украшали буквы A. J.M. — инициалы главного начальника связи, генерала Альберта Дж. Майера.

Для отчетности каждый такой круг имел порядковый номер, который был закреплен за владельцем. 

⇡#Решетка Кардано и как ее сделать самому

Часто так бывает, что талантливый человек входит в историю как автор какого-то одного открытия, а прочие его заслуги при этом остаются в тени. Наверное, то же самое можно сказать про Джероламо Кардано.

Джероламо Кардано

Даже если вы не разбираетесь в автомобилестроении, то наверняка слышали о каком-то карданном вале. Это такая деталь, которая передает крутящий момент от коробки передач или раздаточной коробки к редуктору переднего или заднего моста. Джероламо придумал этот шарнирный механизм, но, помимо “автомобильного” изобретения, у Кардано было много других блестящих идей, например о пользе переливания крови. Еще одно изобретение Кардано — шифрование по трафарету или решетке.

Решетка Кардано знакома каждому, кто хоть раз смотрел бессмертный советский сериал с Василием Ливановым в роли Шерлока Холмса. В заглавных титрах одной из серий этого фильма показана идея шифрования решеткой Кардано — из массы бессмысленных символов сквозь прорези в нужных местах решетки как будто проступал осмысленный текст.

Решетка Кардано может быть двух видов — простая и симметрично-поворотная. В первом случае для шифрования применяется трафарет с отверстиями, через которые «фильтруется» полезный текст. Другой вариант решетки, более интересный, состоит в том, чтобы использовать симметричный (квадратный) трафарет, который можно применять несколько раз, просто поворачивая его вокруг центра. Поворотная решетка Кардано позволяет записать текст массивом символов так, что результат будет выглядеть совершенно нечитаемым, например:

Решетка Кардано была очень практичной и удобной. Чтобы прочитать секретный текст, не нужно было «решать кроссворд» или тратить время на обучение секретному языку. Этим шифром предпочитали пользоваться многие известные личности, например кардинал Ришелье и русский драматург и дипломат Александр Грибоедов.  

Сделать решетку Кардано очень легко даже за несколько минут. Возьмите тетрадный лист в клетку или разлинуйте квадрат, например со стороной в восемь клеток.

По центру квадрата проведите две перпендикулярные черты, отделив четыре зоны. Затем заполните каждую из зон номерами клеток. Нумерацию клеток следует начинать из угла и вести ее так, чтобы направление нумерации каждый раз было по часовой стрелке.

В каждой части квадрата есть набор цифр. Необходимо в произвольном порядке закрасить цифры от 1 до 16 так, чтобы числа не повторялись в разных частях решетки (например, если в первой зоне закрашена двойка, то в других зонах ее закрашивать уже не нужно).

Закрашенные клетки — это отверстия, которые необходимо вырезать. Квадратная решетка Кардано готова.

Приложите ее к листу и впишите текст. Затем поверните ее на 90 градусов и продолжайте писать текст, затем снова поверните и так до тех пор, пока весь квадрат под решеткой не будет заполнен текстом.

Чтобы вам было легче разобраться с принципом построения решетки, скачайте бесплатное приложение Владимира Беглецова “Шифратор решетки Кардано”. С помощью этой программы можно генерировать решетку разной размерности, а также кодировать и расшифровывать текстовое сообщение.

⇡#Загадки старого математика

Истинный изобретатель шифра Виженера Джованни Батиста Беллазо оставил после себя настоящую зарядку для ума. После публикации трактата о криптографии La Cifra del Sig, Giovan Battista Bellaso (откуда, вероятнее всего, Виженер и узнал об алгоритме шифрования) Джованни издал два дополнительных тома с практическими примерами. В одном из этих дополнений он предлагает читателям разгадать семь загадок — несколько вариантов зашифрованного текста. Полагая при этом, что знаний, изложенных в данном трактате, читателям хватит, чтобы осилить закодированные текстовые фрагменты. Но то ли итальянский математик слишком переоценил качество своего преподавательского таланта, то ли ученики у него были ленивые, но неразгаданные задачи из этого учебника дошли до наших дней.

Погодите, не спешите махать руками. Да, Беллазо был итальянцем. И язык у него был немного не такой, как у современных жителей Рима. Но это ровным счетом ничего не означает. Большую часть его головоломок спустя почти пять столетий разгадал английский любитель тайн Тони Гаффни (Tony Gaffney), который, что примечательно, не знал итальянского языка. Главное — найти правильный подход, а содержание расшифрованного текста роли не играет. Но если уж будет совсем тяжело, можно посмотреть подсказку у Тони на этом сайте.

⇡#Тайнопись Фёдора Кузьмича

Зачем приходит человек в этот мир — не знает никто. Жизнь пролетает в мгновение ока, оставляя потомкам лишь память о делах и поступках. После смерти появляется некоторая недосказанность, возникают вопросы, ответы на которые найти, быть может, никогда никому не удастся. Жизнь сибирского старца Фёдора Кузьмича была именно такой — она оставила после себя много легенд и загадок, в том числе связанных с тайнописью.

Чем же примечателен был этот человек? Фёдор Кузьмич, или Феодор Томский, был скитальцем. Этот старец вел очень аскетичную жизнь: он проводил время в молитве и посте, по возможности избегал мирской суеты, ел сухари, размоченные в воде, ложился спать на доску, покрытую холстом. За свою праведную жизнь этот человек был даже канонизирован Русской православной церковью в лике праведных в составе Собора сибирских святых.

Но есть одна тайна, которую Фёдор Кузьмич унес в могилу, — тайна его происхождения. Еще при жизни этого человека появились слухи о том, что на самом деле седовласый старец — совсем не тот, за кого себя выдает. Народ полагал, что этот человек был тем, о ком Александр Сергеевич Пушкин написал эпитафию: «Всю жизнь свою провел в дороге, простыл и умер в Таганроге». То есть Александром I, императором, самодержцем Всероссийским.

Есть много косвенных исторических фактов, свидетельствующих в пользу мифа о том, что популярный среди простого люда старец действительно мог быть Александром I. Старец иногда ронял фразы о событиях Отечественной войны 1812 года, о жизни Петербурга, удивлял воспоминаниями об Аракчееве и Кутузове. Удивительное внешнее сходство, поразительное совпадение факта появления Фёдора Кузьмича в Сибири через несколько лет после смерти императора, образованность старца, которую тот старательно скрывал, разговоры самодержца перед смертью о желании отречься от престола и многие другие обстоятельства надолго поссорили историков. Одни из них утверждают, что старец Фёдор Кузьмич был самозванцем, другие говорят о тождественности с Александром I, третьи идентифицируют этого человека как Фёдора Александровича Уварова, тайного осведомителя. Окончательную точку в этом вопросе мог бы поставить тот, кто сумел бы расшифровать послание самого старца.

Перед самой смертью Фёдора Кузьмича купец Семен Феофанович Хромов, у которого проживал старец, попробовал спросить прямо: «Есть молва, что ты, батюшка, не кто иной, как Александр Благословенный… Правда ли это?..» Старец перекрестился и ответил: «Чудны дела Твои, Господи… Нет тайны, которая бы не открылась». Умирая, старец простер свою руку, указав на холщовый мешочек, висевший над кроватью, после чего сказал: «В нем моя тайна. «

Среди оставшихся после смерти старца пожитков купец нашел странные вещи: резное распятие из слоновой кости, псалтырь, цепь ордена Андрея Первозванного, документ, похожий на свидетельство о бракосочетании императора Александра I… Но самая главная находка — короткие записки из мешочка, в которых использовалась тайнопись.

Расшифровка этого текста, если верить последним словам старца, могла бы дать ответ на главный вопрос — кем же он был на самом деле. Записки представляли собой пару бумажных лент, исписанных с обеих сторон. Помимо этих записок, была найдена и выдержка из Священного Писания, которая заканчивается странной допиской старца в самом конце: «Ныне отец. Преж(де) царь.» 

Попытки разобраться в легенде о сибирском старце предпринимали многие известные люди, в числе которых был, например, писатель Лев Николаевич Толстой. Но увы — их выводы были субъективными, расшифровать записи Фёдора Кузьмича так никто и не смог. Зато у вас есть шанс сделать это.

⇡#Шифр, который поможет раскрыть убийство

Вполне вероятно, что среди читателей найдутся прагматичные люди, которым будет скучно просто так тратить свои усилия на поиски ключа к шифрованным загадкам. Ну что же, и на этот случай есть интересная задача, которая приведет к поимке настоящего убийцы. В 2011 году Федеральное бюро расследований обратилось к общественности с просьбой о помощи в расшифровке текста. Событие уже само по себе удивительное, но еще более странными являются обстоятельства этого обращения.

30 июня 1999 года на кукурузном поле было обнаружено тело некоего Рикки Маккормика. При жизни этот человек был безработным, неоднократно судимым и проживал на пособие по инвалидности. Тело Маккормика было найдено в 15 милях от последнего места его проживания. Собственного автомобиля у Рикки не было, а с помощью общественного транспорта добраться до этого поля он не мог. Дело приобрело еще более запутанный ход, когда в кармане его брюк полиция обнаружила странные бумажки с зашифрованным текстом. Экспертиза показала, что данные записки были сделаны приблизительно за три дня до убийства. Люди, знавшие Маккормика близко, заявили, что этот шифр был известен ему с детства и Рикки часто использовал его в своих записях.

Признаков насильственной смерти не было, не был понятен и мотив возможного убийства. Однако спустя 12 лет ФБР все-таки переквалифицировало это происшествие в убийство и более внимательно изучила криптограммы. Поначалу специалисты ФБР были уверены в том, что взлом кода Маккормика — вопрос времени. Однако даже усиленная работа специалистов группы криптоанализа ФБР и Американской криптоаналитической организации ни к чему не привела. Даже если в записке не будет указано имя убийцы, она может содержать сведения о последнем месте нахождения Рикки перед смертью.

Криптос: разгадка на три четверти

Перед центральным офисом ЦРУ в Лэнгли, штат Виргиния, расположена удивительная скульптура, состоящая из беспорядочного, на первый взгляд, набора символов.

Вряд ли где-нибудь еще вы найдете что-то похожее. В процессе строительства нового здания образовалось незанятое пространство, которое решили занять какой-нибудь инсталляцией. Работать над ней поручили американскому скульптору Джиму Сэнборну. Скульптура должна была быть необычной и отражать суть места, где она была установлена.

Было решено создать скульптуру-загадку, состоящую из символов, этакое зашифрованное послание. Обязательным условием для такой «тайнописи» было то, что метод для шифрования не должен был быть привязан к компьютерам. Алгоритм, который использован при составлении текста скульптуры, должен быть не сложнее тех, что применялись во времена, когда компьютерной техники не было и в помине. Поэтому теоретически взломать сообщение, оставленное Сэнборном, может любой человек, используя исключительно карандаш и бумагу. Поскольку скульптор, как и большинство людей творческих профессий, был очень далек от знания криптографии, он обратился за помощью к Эдварду Шейдту (Edward M. Scheidt), который как раз ушел с поста главы криптографического центра Лэнгли.

Вполне возможно, что впоследствии Сэнборн сожалел о том, что согласился на такую работу. Еще до того, как скульптура была завершена, энтузиасты пытались прорваться к творению и сфотографировать его. А потом и вовсе разошлись. Заядлые «детективы», мечтающие раскрыть код скульптуры, стали переходить рамки дозволенного. Узнав откуда-то телефон Сэнборна, они атаковали его звонками, требуя выдать код расшифровки, обзывая при этом несчастного скульптора какими угодно словами, вплоть до «агент Сатаны».

Скульптура «Криптос» представляет собой набор символов, разбитый на четыре секции. Буквы расположены в плоскости, которая схожа с развивающимся флагом или свитком, скрученным в виде буквы S. С 1990 года сообществу удалось разгадать содержимое только трех секций этой скульптуры. Четвертая же оказалась намного сложнее. Сам Сэнборн как-то в интервью сказал, что хотел бы умереть прежде, чем ответ будет найден. Почему? Загадка. И поймет ее только тот, что вскроет данный код. Оригинальный взгляд на Cryptos и некоторые подробности можно найти в этом материале.

Вперед, за сокровищами: криптограммы Бейла

Наверное, многие из зрителей, наблюдавших за приключениями Индианы Джонса, задавались вопросом: «А откуда у него все эти знания о кладах и заброшенных городах?» Конечно, доктор Джонс — вымышленный персонаж, все его приключения — это плод фантазии Стивена Спилберга и Джорджа Лукаса. Однако кое-что в его образе соответствует действительности — множество неразгаданных археологических и исторических тайн, над которыми может поломать голову любой человек. Одна из таких загадок — «криптограммы Бейла». Расшифровка нескольких фрагментов текста, возможно, приведет вас к огромному богатству.

Появилась эта загадка очень странно — в виде опубликованной брошюры. По словам человека, который опубликовал криптограммы в этой брошюре, их ему прислал некий Роберт Моррис, владелец гостиницы, в которой останавливался Томас Джефферсон Бейл — охотник на бизонов и любитель острых ощущений. Текст брошюры представлял собой пересказ слов Роберта Морриса — мол, в 1817 году Томас Бейл преследовал с компанией охотников бизонье стадо и совершенно случайно нашел богатейшую золотую жилу, располагавшуюся «где-то в 250—300 милях к северу от Санта-Фе». В то время это была территория Мексики, и случайные золотоискатели стали думать, как переправить найденный клад в США.

Томас Джефферсон Бейл со спутниками перевез находку в Сент-Луис (Миссури), где часть золота обменял на драгоценные камни, чтобы уменьшить вес «багажа». А затем он спрятал весь клад в подземном руднике «неподалеку от Бафорда».

Согласно легенде, рассказанной в брошюре, перед тем как отправиться в очередной поход, Бейл на всякий случай оставил у Морриса коробку с криптограммами. В случае своей смерти Томас просил вскрыть коробку, извлечь бумаги и по ним отыскать тайник, после чего, оставив себе треть найденного, передать остальное родственникам и друзьям погибших. Ключ для разгадки криптограмм Бейл послал какому-то «проверенному» человеку, который должен был передать его в 1832 году Моррису. Но этот человек так и не объявился. Моррис не знал, что делать с криптограммами и в конце концов, в возрасте 84 лет передал их автору брошюры. Используя текст Декларации независимости США как ключ, автор брошюры сумел разгадать вторую криптограмму. Но открыть секрет двух других ему оказалось не по силам. И тогда, по его словам, он решил рассказать о шифре Бейла всем.

Если вам вся эта история показалась смешным вымыслом, знайте — вы не одиноки. Есть много скептиков, утверждающих, что вся эта история — розыгрыш от начала и до конца. Некоторые исследователи даже попробовали назвать имя этого шутника. На наш взгляд, наиболее интересное предположение, которое выдвигалось скептиками — все эти криптограммы составил уже упоминавшийся нами выше Эдгар Аллан По. По крайней мере такая шутка была бы в его духе. За свою не очень долгую жизнь редактор журнала Graham’s Magazine частенько разыгрывал доверчивых читателей. Например, опубликованный им рассказ The Journal of Julius Rodman («Дневник Джулиуса Родмена») с описанием первого путешествия через Скалистые горы Северной Америки совершённого цивилизованными людьми был принят за чистую монету. В 1840 году члены Сената Соединенных Штатов считали произведение Эдгара По абсолютно достоверным, и в реестре Конгресса США данный текст фигурировал в качестве официального отчёта.

Были и другие розыгрыши писателя — например, с помощью рассказа “История с воздушным шаром” в газете Sun он заставил поверить наивного обывателя, что пересечь Атлантический океан можно за три дня на воздушном шаре с горячим воздухом.  

Ну а если все-таки криптограммы Бейла — не шутка и не вымысел Эдгара По? Не известно, что за текст спрятан за шифром, но одно известно точно — это действительно зашифрованный текст, а не беспорядочный набор символов. Карл Хаммер, один из первопроходцев в компьютерном криптоанализе, используя методы математической статистики доказал, что криптограммы Бейла — это не случайный набор данных. В тексте всех трёх документов прослеживаются циклические отношения, характерные именно для зашифрованного текста. Если верить этому доказательству, текст зашифрован именно методом подстановки цифр вместо букв.

Криптограмма, хранящая тайну месторасположения тайника

 

Разгаданная криптограмма о содержимом тайника

А стоит ли овчинка выделки? Сумма богатства, спрятанного Бейлом, согласно различным оценкам экспертов, изучавших этот вопрос, может составлять десятки миллионов долларов. Оригинал рукописи до сих пор хранится в библиотеке конгресса США, ну а клад до сих пор не найден.  

⇡#Пятнадцать человек на сундук мертвеца

Французский пират Оливье Левассёр (Olivier Levasseur) прожил не очень долгую жизнь и завершил ее, как и многие другие пираты, на виселице.

Он был повешен в городе Сен-Поль на острове Реюньон. При жизни за свою жестокость и скорость, с которой одноглазый пират атаковал жертву, он получил прозвище Ла Бюз (на французском La Buse — это канюк, ястреб).

По одной из версий, некоторые из похождений Левассёра нашли отражение в знаменитой книге Стивенсона «Остров сокровищ».

Первое время пират успешно промышлял в Атлантическом океане, но со временем ситуация изменилась. Власти Великобритании и Франции открыли настоящую охоту на пиратов Карибского моря, и Оливье пришлось менять место своей деятельности. Левассёр перебрался в Индийский океан, где продолжал грабить суда.

Но в 1730 году Оливье все же попал в руки правосудия. Согласно легенде, когда пирата вели на эшафот, он вырвался и со словами «Найди мои сокровища, кто сможет понять!» сорвал с шеи ожерелье и бросил его в толпу зевак. На ожерелье были надписи, всего семнадцать строк — зашифрованное указание, где хранится один из самых больших кладов в истории человечества, оцениваемый более чем в 1 миллиард фунтов стерлингов. Судьба того ожерелья осталась загадкой, но загадочные символы люди переписали и размножили.

С тех пор сотни людей потеряли головы, а заодно и все свои сбережения, полагая, что сумели разгадать код жестокого пирата. Но увы! Сокровища до сих пор ждут того, кто верно расшифрует криптограмму Ла Бюза.

⇡#Заключение

Человеческий ум изобретателен, и способов передачи тайной информации придумано немыслимое количество. Поэты, например, шифровали свои послания при помощи акростиха  — когда первые буквы строк составляют слова. Музыканты перекладывали свои мысли на ноты, а математики применяли формулы. Морзе додумался перевести все буквы в «точки» и «тире». Все это очень интересно и слишком необъятно, чтобы рассказать в одной статье.

Изучение алгоритмов шифрования может быть простым хобби, способом убить время, а может стать делом всей жизни. Им можно заниматься из корысти, а можно просто для того, чтобы повысить самооценку. Если вы взялись за это всерьез, но оказались в тупике, пусть вас не смущает стойкость шифра. Ведь даже неудачные попытки разгадать спрятанный текст развивают мышление и логику.

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

Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.

5 интересных систем шифрования. Разгадайте секретные слова | Конкурсы и тесты

В этот день свой профессиональный праздник отмечает Криптографическая служба России.

«Криптография» с древнегреческого означает «тайнопись».

Как раньше прятали слова?

Своеобразный метод передачи тайного письма существовал во времена правления династии египетских фараонов:

выбирали раба. Брили его голову наголо и наносили на неё текст сообщения водостойкой растительной краской. Когда волосы отрастали, его отправляли к адресату.

Шифр — это какая-либо система преобразования текста с секретом (ключом) для обеспечения секретности передаваемой информации.

АиФ.ru сделал подборку интересных фактов из истории шифрования.

Все тайнописи имеют системы

1. Акростих — осмысленный текст (слово, словосочетание или предложение), сложенный из начальных букв каждой строки стихотворения.

Вот, например, стихотворение-загадка с разгадкой в первых буквах:

Довольно именем известна я своим;
Равно клянётся плут и непорочный им,
Утехой в бедствиях всего бываю боле,
Жизнь сладостней при мне и в самой лучшей доле.
Блаженству чистых душ могу служить одна,
А меж злодеями — не быть я создана.
                                               Юрий Нелединский-Мелецкий
Сергей Есенин, Анна Ахматова, Валентин Загорянский часто пользовались акростихами.

2. Литорея — род шифрованного письма, употреблявшегося в древнерусской рукописной литературе. Бывает простая и мудрая. Простую называют тарабарской грамотой, она заключается в следующем: поставив согласные буквы в два ряда в порядке:

употребляют в письме верхние буквы вместо нижних и наоборот, причём гласные остаются без перемены; так, например, токепот = котёнок и т. п.

Мудрая литорея предполагает более сложные правила подстановки.

3. «ROT1» — шифр для детишек?

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

А заменяется на Б, Б заменяется на В и так далее. «ROT1» буквально означает «вращать на 1 букву вперёд по алфавиту». Фраза «Я люблю борщ» превратится в секретную фразу «А мявмя впсъ». Этот шифр предназначен для развлечения, его легко понять и расшифровать, даже если ключ используется в обратном направлении.

4. От перестановки слагаемых…

Во время Первой мировой войны конфиденциальные сообщения отправляли с помощью так называемых перестановочных шрифтов. В них буквы переставляются с использованием некоторых заданных правил или ключей.

Например, слова могут быть записаны в обратном направлении, так что фраза «мама мыла раму» превращается во фразу «амам алым умар». Другой перестановочный ключ заключается в перестановке каждой пары букв, так что предыдущее сообщение становится «ам ам ым ал ар ум».

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

Диск с шифром Цезаря. Фото: mr.santak/commons.wikimedia.org

5. Сдвижной шифр Цезаря

Он состоит из 33 различных шифров, по одному на каждую букву алфавита (количество шифров меняется в зависимости от алфавита используемого языка). Человек должен был знать, какой шифр Юлия Цезаря использовать для того, чтобы расшифровать сообщение. Например, если используется шифр Ё, то А становится Ё, Б становится Ж, В становится З и так далее по алфавиту. Если используется шифр Ю, то А становится Ю, Б становится Я, В становится А и так далее. Данный алгоритм является основой для многих более сложных шифров, но сам по себе не обеспечивает надёжную защиту тайны сообщений, поскольку проверка 33-х различных ключей шифра займёт относительно небольшое время.

Никто не смог. Попробуйте вы

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

Манускрипт Войнича. «Ботанический» раздел содержит изображения растений. Фото:commons.wikimedia.org

Манускрипт Войнича

Это 240-страничная книга, написанная на абсолютно неизвестном языке с цветными рисунками и странными диаграммами, изображениями невероятных событий и растений, которые не похожи ни на один известный вид.

Криптос у штаба ЦРУ в Лэнгли, штат Вирджиния. Фото: Jim Sanborn/commons.wikimedia.org

Криптос. Скульптура, созданная художником Джимом Санборном, которая расположена перед штаб-квартирой Центрального разведывательного управления в Лэнгли, Вирджиния. Скульптура содержит в себе четыре шифровки, вскрыть код четвёртой не удаётся до сих пор. В 2010 году было раскрыто, что символы 64-69 NYPVTT в четвёртой части означают слово БЕРЛИН.

Криптограмма № 1 — местонахождение тайника. Фото: commons.wikimedia.org

Шифр Бэйла — это комплект из трёх шифровок, которые, предположительно, раскрывают местонахождение одного из величайших захороненных сокровищ в американской истории: многих тысяч фунтов золота, серебра и драгоценных камней.

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

Свои варианты оставляйте в комментариях к этой статье. Ответ появится в 13:00 13 мая 2014 года.

Ответ:

1) Блюдечко

2) Слоненку все надоело

3) Хорошая погода

Смотрите также:

Онлайн калькулятор: Шифр Виженера

Так как Шифр Цезаря у нас уже есть, было бы логично дополнить его калькулятором, который шифрует/расшифровывает текст используя шифр Виженера.

Суть алгоритма шифрования проста. Шифр Виженера — это последовательность шифров Цезаря с различными значениями сдвига (ROTX — см. Шифр Цезаря). То есть к первой букве текста применяется преобразование, например, ROT5, ко второй, например, ROT17, и так далее. Последовательность применяемых преобразований определяется ключевой фразой, в которой каждая буква слова обозначает требуемый сдвиг, например, фраза ГДЕ ОН задает такую последовательность шифров Цезаря: ROT3-ROT4-ROT5-ROT15-ROT14, которая повторяется, пока не будет зашифрован весь текст сообщения.

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

Еще там можно прочитать про вариант шифра с бегущим ключом (running key), который был когда-то был невзламываемым. Этот вариант заключается в использовании в качестве ключа блока текста, равного по длине исходному тексту. Впрочем, и этот вариант, как оказалось, успешно поддается взлому. Проблема с бегущим ключом шифра Виженера состоит в том, что криптоаналитик имеет статистическую информацию о ключе (учитывая, что блок текста написан на известном языке) и эта информация будет отражаться в шифрованном тексте. Если ключ действительно случайный, его длина равна длине сообщения и он использовался единожды, то шифр Виженера теоретически будет невзламываемым, но такие системы уже относятся к классу систем одноразового кода, или одноразового шифр-блокнота (one-time pad). Они действительно не поддаются взлому, однако их практическое применение довольно затруднительно.

Шифр Виженера
Квадрат Виженера начинается сROT0 («a» преобразуется в «а»)ROT1 («а» преобразуется в «б») Карл у Клары украл кораллыПреобразование АлфавитАнглийскийИспанскийПортугальскийРусскийРусский (без ё)

Преобразованный текст

 

content_copy Ссылка save Сохранить extension Виджет

Взламываем шифры: криптография за 60 минут

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

Это, если хотите, школьная программа криптографии, первый класс. Шифр Цезаря научились вскрывать еще в IX веке, поэтому сегодня он почти бесполезен, но как база – урок просто отличный. Начинается терминологией и подробным объяснением того, что из себя представляет и как работает ключ. Далее затрагивается шифр Цезаря, принципы его работы, а также способ быстрой дешифровки.

https://www.youtube.com/watch?v=gF_YRW9-eLY

Этот урок тоже начинается короткой терминологией и объяснением разницы между закрытым текстом и шифром. Автор всегда ссылается на достоверные источники. Курс плавно перетекает в возможность шифровать цифрами и подробным описанием того, как это делается.

https://www.youtube.com/watch?v=bDHYdwqpmuM

Если вы посмотрели оба урока, считайте, что основы криптографии вы уже поняли.

А вот здесь начинается интересное. Автор не зацикливается только на шифровании, но и объясняет тонкости атак на подобные тексты. Он приводит много примеров, что хорошо сказывается на понимании. Затрагиваются преимущество перевода шифротекста в числа и умение анализировать полученную «картинку». Это полезно, если вы планируете разрабатывать приложения, рассчитанные на вскрытие шифротекста, ведь чтобы передать логическое решение будущей программе, сперва нужно самостоятельно к этому решению прийти.

https://www.youtube.com/watch?v=PgqL_GTqtwA

Примеры уроков хорошо визуализированы, демонстрируется поэтапное выполнение, поэтому проблем с пониманием быть не должно.

Еще один способ анализа с применением диаграммы частоты по алфавиту. Перечисляются слабые и сильные стороны частотного анализа, рассказывается, в каких случаях он будет по-настоящему мощным инструментом, а в каких – бесполезным. Снова приводятся визуализированные примеры с применением метода, так что под конец урока вы обязательно поймете принцип работы частотного анализа.

https://www.youtube.com/watch?v=5bM93uVmehw

До этого затрагивались только моноалфавитные шифры и соответствующие типы замены. А вот пятый урок открывает новый раздел в криптографии под названием «Полиалфавитные шифры». Введение ознаменовано набором терминов и примеров, которые помогают разобраться во «множественном» шифровании. Затрагивается и шифр Гронсфельда, который также применяет ключ, как и шифр Цезаря, но делает это иначе. Полиалфавитные шифры намного эффективнее, ведь такой текст сложнее вскрыть. Почему? Смотрите в видеоуроке.

https://www.youtube.com/watch?v=S8Coc22uNdg

Здесь расписывается самый популярный полиалфавитные шифр – шифр Виженера. Разобравшись с ним, можете считать, что криптография вам далась, и можно смело переходить к реализации знаний в своих приложениях.

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

https://www.youtube.com/watch?v=oPTWao7j4Uk

Даже шифр Виженера не так «зубаст», как может показаться. Существует метод индекса совпадений, который работает не с самим зашифрованным словом, а именно с ключом, и от этого уже плавно двигается в сторону разгадки. Здесь уже применяются сложные формулы и вычисления, поэтому рекомендуем внимательно следить за решением задачи.

https://www.youtube.com/watch?v=xWA2FJ74TBg

Автокорреляционный метод более простой, но точно так же напичканный формулами, в которые придется вникнуть. В этом уроке объясняется лишь альтернативный поиск длины ключа, а все остальное, что касается вскрытия, – как и в предыдущем уроке.

https://www.youtube.com/watch?v=cl3G-4Gyf2A

Ссылка на канал.

Технические сведения о шифровании — Microsoft 365 Compliance

  • Чтение занимает 4 мин

В этой статье

Обратитесь к этой статье, чтобы узнать о сертификатах, технологиях и шифрах TLS, используемых для шифрования в Office 365.Refer to this article to learn about certificates, technologies, and TLS cipher suites used for encryption in Office 365. В этой статье также приводится подробная информация о планируемых амортизации.This article also provides details about planned deprecations.

Владение и управление сертификатами Microsoft Office 365Microsoft Office 365 certificate ownership and management

Вам не нужно приобретать или поддерживать сертификаты для Office 365.You don’t need to purchase or maintain certificates for Office 365. Вместо этого Office 365 использует собственные сертификаты.Instead, Office 365 uses its own certificates.

Текущие стандарты шифрования и планируемые амортизацииCurrent encryption standards and planned deprecations

Чтобы обеспечить наилучшее шифрование в своем классе, Office 365 регулярно проверяет поддерживаемые стандарты шифрования.To provide best-in-class encryption, Office 365 regularly reviews supported encryption standards. Иногда старые стандарты устарели и становятся менее безопасными.Sometimes, old standards are deprecated as they become out of date and less secure. В этой статье описываются поддерживаемые в настоящее время наборы шифров и другие стандарты и сведения о планируемых амортизации.This article describes currently supported cipher suites and other standards and details about planned deprecations.

Соответствие требованиям FIPS для Office 365FIPS compliance for Office 365

Все наборы шифров, поддерживаемые Office 365, используют алгоритмы, приемлемые в соответствии с FIPS 140-2.All cipher suites supported by Office 365 use algorithms acceptable under FIPS 140-2. Office 365 наследует проверки FIPS от Windows (через Schannel).Office 365 inherits FIPS validations from Windows (through Schannel). Сведения о Schannel см. в ссылке Cipher Suites in TLS/SSL (Schannel SSP).For information about Schannel, see Cipher Suites in TLS/SSL (Schannel SSP).

Версии протокола TLS, поддерживаемые Office 365Versions of TLS supported by Office 365

TLS и SSL, которые были до TLS, являются криптографическими протоколами, которые обеспечивает связь через сеть с помощью сертификатов безопасности для шифрования подключения между компьютерами.TLS, and SSL that came before TLS, are cryptographic protocols that secure communication over a network by using security certificates to encrypt a connection between computers. Office 365 поддерживает TLS версии 1.2 (TLS 1.2).Office 365 supports TLS version 1.2 (TLS 1.2).

TLS версия 1.3 (TLS 1.3) в настоящее время не поддерживается.TLS version 1.3 (TLS 1.3) is currently not supported.

Важно!

Следует помнить, что версии TLS обесценяются и что не следует использовать их там, где доступны более новые версии.Be aware that TLS versions deprecate, and that deprecated versions should not be used where newer versions are available. Если устаревшие службы не требуют TLS 1.0 или 1.1, их следует отключить.If your legacy services do not require TLS 1.0 or 1.1 you should disable them.

Поддержка амортизации TLS 1.0 и 1.1Support for TLS 1.0 and 1.1 deprecation

Office 365 TLS 1.0 и 1.1 31 октября 2018 г.Office 365 stopped supporting TLS 1.0 and 1.1 on October 31, 2018. Мы завершили отключение TLS 1.0 и 1.1 в GCC средах High и DoD.We have completed disabling TLS 1.0 and 1.1 in GCC High and DoD environments. Начиная с 15 октября 2020 г. мы начали отключение сред TLS 1.0 и 1.1 для всемирной и GCC среды, и в течение следующих недель и месяцев мы продолжим работу.We began disabling TLS 1.0 and 1.1 for Worldwide and GCC environments beginning on October 15, 2020 and will continue with roll-out over the next weeks and months.

Для обеспечения безопасного подключения к Office 365 и Microsoft 365 все комбинации клиент-сервер и браузер-сервер используют TLS 1.2 и современные наборы шифров.To maintain a secure connection to Office 365 and Microsoft 365 services, all client-server and browser-server combinations use TLS 1.2 and modern cipher suites. Возможно, придется обновить определенные сочетания клиент-сервер и браузер-сервер.You might have to update certain client-server and browser-server combinations. Сведения о том, как это изменение влияет на вас, см. в статью Подготовка к обязательному использованию TLS 1.2 в Office 365.For information about how this change impacts you, see Preparing for the mandatory use of TLS 1.2 in Office 365.

Откат поддержки для 3DESDeprecating support for 3DES

С 31 октября 2018 г. Office 365 больше не поддерживает использование шифров 3DES для связи с Office 365.Since October 31, 2018, Office 365 no longer supports the use of 3DES cipher suites for communication to Office 365. В частности, Office 365 больше не поддерживает набор TLS_RSA_WITH_3DES_EDE_CBC_SHA шифров.More specifically, Office 365 no longer supports the TLS_RSA_WITH_3DES_EDE_CBC_SHA cipher suite. С 28 февраля 2019 г. этот набор шифров отключен в Office 365.Since February 28, 2019, this cipher suite has been disabled in Office 365. Клиенты и серверы, Office 365 должны поддерживать один или несколько поддерживаемых шифров.Clients and servers that communicate with Office 365 must support one or more of the supported ciphers. Список поддерживаемых шифров см. в списке наборов шифров TLS,поддерживаемых Office 365.For a list of supported ciphers, see TLS cipher suites supported by Office 365.

Прекращение поддержки сертификата SHA-1 в Office 365Deprecating SHA-1 certificate support in Office 365

С июня 2016 Office 365 больше не принимает сертификат SHA-1 для исходящие или входящие подключения.Since June 2016, Office 365 no longer accepts an SHA-1 certificate for outbound or inbound connections. Используйте SHA-2 (Secure Hash Algorithm 2) или более надежный алгоритм хаширования в цепочке сертификатов.Use SHA-2 (Secure Hash Algorithm 2) or a stronger hashing algorithm in the certificate chain.

Наборы шифров TLS, поддерживаемые Office 365TLS cipher suites supported by Office 365

TLS использует наборы шифров, коллекции алгоритмов шифрования для создания безопасных подключений.TLS uses cipher suites, collections of encryption algorithms, to establish secure connections. Office 365 поддерживает наборы шифров, перечисленные в следующей таблице.Office 365 supports the cipher suites listed in the following table. В таблице перечислены наборы шифров в порядке прочности, а самый сильный набор шифров указан в первую очередь.The table lists the cipher suites in order of strength, with the strongest cipher suite listed first.

Office 365 отвечает на запрос подключения, пытаясь подключиться с помощью наиболее безопасного набора шифров.Office 365 responds to a connection request by first attempting to connect using the most secure cipher suite. Если подключение не работает, Office 365 второй наиболее безопасный набор шифров в списке и т. д.If the connection doesn’t work, Office 365 tries the second most secure cipher suite in the list, and so on. Служба продолжает оставаться в списке до тех пор, пока подключение не будет принято.The service continues down the list until the connection is accepted. Кроме того, Office 365 запрашивает подключение, служба получения выбирает, будет ли использоваться TLS и какой набор шифров использовать.Likewise, when Office 365 requests a connection, the receiving service chooses whether TLS will be used and which cipher suite to use.

Имя набора шифровCipher suite name Алгоритм обмена ключами/прочностьKey exchange algorithm/strength Секретность впередForward secrecy Cipher/strengthCipher/strength Алгоритм проверки подлинности/прочностьAuthentication algorithm/strength
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
ECDH/192ECDH/192
ДаYes
AES/256AES/256
RSA/112RSA/112
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
ECDH/128ECDH/128
ДаYes
AES/128AES/128
RSA/112RSA/112
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
ECDH/192ECDH/192
ДаYes
AES/256AES/256
RSA/112RSA/112
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
ECDH/128ECDH/128
ДаYes
AES/128AES/128
RSA/112RSA/112
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHATLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
ECDH/192ECDH/192
ДаYes
AES/256AES/256
RSA/112RSA/112
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHATLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
ECDH/128ECDH/128
ДаYes
AES/128AES/128
RSA/112RSA/112
TLS_RSA_WITH_AES_256_GCM_SHA384TLS_RSA_WITH_AES_256_GCM_SHA384
RSA/112RSA/112
НетNo
AES/256AES/256
RSA/112RSA/112
TLS_RSA_WITH_AES_128_GCM_SHA256TLS_RSA_WITH_AES_128_GCM_SHA256
RSA/112RSA/112
НетNo
AES/256AES/256
RSA/112RSA/112

Следующие наборы шифров поддерживали протоколы TLS 1.0 и 1.1 до даты их амортизации.The following cipher suites supported TLS 1.0 and 1.1 protocols until their deprecation date. Для GCC среды High и DoD дата амортизации была 15 января 2020 г.For GCC High and DoD environments that deprecation date was January 15, 2020. Для мировых и GCC средах эта дата была 15 октября 2020 г.For Worldwide and GCC environments that date was October 15, 2020.

ПротоколыProtocols Имя набора шифровCipher suite name Алгоритм обмена ключами/прочностьKey exchange algorithm/strength Секретность впередForward secrecy Cipher/strengthCipher/strength Алгоритм проверки подлинности/прочностьAuthentication algorithm/strength
TLS 1.0, 1.1, 1.2TLS 1.0, 1.1, 1.2
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHATLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
ECDH/192ECDH/192
ДаYes
AES/256AES/256
RSA/112RSA/112
TLS 1.0, 1.1, 1.2TLS 1.0, 1.1, 1.2
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHATLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
ECDH/128ECDH/128
ДаYes
AES/128AES/128
RSA/112RSA/112
TLS 1.0, 1.1, 1.2TLS 1.0, 1.1, 1.2
TLS_RSA_WITH_AES_256_CBC_SHATLS_RSA_WITH_AES_256_CBC_SHA
RSA/112RSA/112
НетNo
AES/256AES/256
RSA/112RSA/112
TLS 1.0, 1.1, 1.2TLS 1.0, 1.1, 1.2
TLS_RSA_WITH_AES_128_CBC_SHATLS_RSA_WITH_AES_128_CBC_SHA
RSA/112RSA/112
НетNo
AES/128AES/128
RSA/112RSA/112
TLS 1.0, 1.1, 1.2TLS 1.0, 1.1, 1.2
TLS_RSA_WITH_AES_256_CBC_SHA256TLS_RSA_WITH_AES_256_CBC_SHA256
RSA/112RSA/112
НетNo
AES/256AES/256
RSA/112RSA/112
TLS 1.0, 1.1, 1.2TLS 1.0, 1.1, 1.2
TLS_RSA_WITH_AES_128_CBC_SHA256TLS_RSA_WITH_AES_128_CBC_SHA256
RSA/112RSA/112
НетNo
AES/256AES/256
RSA/112RSA/112

Некоторые Office 365 (в том числе Microsoft Teams) используют переднюю дверь Azure для эффективного прекращения подключений tLS и сетевого трафика маршрутов.Certain Office 365 products (including Microsoft Teams) use Azure Front Door to terminate TLS connections and route network traffic efficiently. Для успешного подключения к этим продуктам необходимо включить по крайней мере один из наборов шифров, поддерживаемых входной дверью Azure над TLS 1.2.At least one of the cipher suites supported by Azure Front Door over TLS 1.2 must be enabled to successfully connect to these products. Для Windows 10 и выше мы рекомендуем включить один или оба набора шифров ECDHE для улучшения безопасности.For Windows 10 and above, we recommend enabling one or both of the ECDHE cipher suites for better security. Windows 7, 8 и 8.1 не совместимы с шифрами ECDHE Azure передней двери, а шифры DHE предоставлены для совместимости с этими операционными системами.Windows 7, 8, and 8.1 are not compatible with Azure Front Door’s ECDHE cipher suites and the DHE cipher suites have been provided for compatibility with those operating systems.

Статьи по темеRelated articles

Наборы шифров TLS в Windows 10 v1903TLS Cipher Suites in Windows 10 v1903

Шифрование в Office 365Encryption in Office 365

Настройка шифрования в Office 365 корпоративныйSet up encryption in Office 365 Enterprise

Schannel implementation of TLS 1.0 in Windows security status update: 24 November 2015Schannel implementation of TLS 1.0 in Windows security status update: November 24, 2015

TLS/SSL Cryptographic Enhancements (Windows ИТ-центр)TLS/SSL Cryptographic Enhancements (Windows IT Center)

Подготовка к TLS 1.2 в Office 365 и Office 365 GCCPreparing for TLS 1.2 in Office 365 and Office 365 GCC

Какие современные наборы шифров поддерживаются входной дверью Azure?What are the current cipher suites supported by Azure Front Door?

Шифры перестановки — Учебная и научная деятельность Анисимова Владимира Викторовича

Криптографические методы защиты информации

Лекции

4. ШИФРЫ ПЕРЕСТАНОВКИ

 

4.1. Основы шифрования.

4.2. Шифры одинарной перестановки.

4.3. Шифры множественной перестановки.

Вопросы для самопроверки.

 

4.1. Основы шифрования

 

Перестановка представляет собой способ шифрования, при котором для получения шифрограммы символы исходного сообщения меняют местами. Типичным примером перестановки являются анаграммы, ставшие популярными в XVII в. Анаграмма (греч. ανα — «снова» и γράμμα — «запись») — литературный приём, состоящий в перестановке букв или звуков определённого слова (или словосочетания), что в результате даёт другое слово или словосочетание [17]. Например: апельсин — спаниель, полковник — клоповник, горилка — рогалик, лепесток — телескоп.

Прародителем анаграммы однако считают поэта и грамматика Ликофрона, который жил в Древней Греции в III веке до н. э. Как сообщал византийский автор Иоанн Цец, из имени царя Птоломея он составил первую из известных нам анаграмм: Ptolemaios — Аро Melitos, что в переводе означает «из мёда», а из имени царицы Арсинои: Arsinoe — Ion Eras («фиалка Геры»). В XVII—XIX вв. среди естествоиспытателей было принято зашифровывать свои открытия в виде анаграмм, что служило двум нуждам: скрыть гипотезу до её окончательной проверки и утвердить авторство на открытие, когда оно будет подтверждено. Так, в 1610 г. Галилео Галилей для закрепления авторства на открытие спутников Сатурна зашифровал латинскую фразу «Altissimun planetam tergeminum observavi» («Высочайшую планету тройную наблюдал») следующим образом: «Smaismrmilmepoetaleumibunenugttauiras» (буквы «v» и «u» в латинских текстах часто считались взаимозаменяемыми)1.

Доподлинно не известно, когда появился шифр перестановки, но вполне возможно, что писцы в древности переставляли буквы в имени своего царя ради того, чтобы скрыть его подлинное имя или в ритуальных целях [43].

Все шифры перестановки делятся на два подкласса:

— шифры одинарной (простой) перестановки. При шифровании символы перемещаются с исходных позиций в новые один раз;

— шифры множественной (сложной) перестановки. При шифровании символы перемещаются с исходных позиций в новые несколько раз.


1В те времена самой дальней из известных («высочайшей») планет был Сатурн. В действительности, в силу несовершенства телескопа, используемого Галилеем, он наблюдал не спутники, а кольца Сатурна, которые выступали по краям планеты. Эти выступы («ушки») и были приняты им за спутники. Свою гипотезу о них в виде анаграммы Галилей отослал Иоганну Кеплеру, который, потратив множество сил, перевел ее как «Salve umbistineum geminatum Martia proles» (лат., «Возрадуйтесь, два протуберанца — сыны Марса»). Кеплер не обратил внимание на то, что в его переводе была лишняя буква, т.к. по его соображениям у Марса должны были быть два спутника, неоткрытые на тот момент. Спутники Марса (Фобос и Деймос) были открыты американским астрономом Асафом Холлом позже — в 1877 г. [54].

 

4.2. Шифры одинарной перестановки

 

В общем случае для данного класса шифров при шифровании и дешифровании используется таблица перестановок.

Рис.4.1. Таблица перестановок

В первой строке данной таблицы указывается позиция символа в исходном сообщении, а во второй – его позиция в шифрограмме. Таким образом, максимальное количество ключей для шифров перестановки равно n!, где n – длина сообщения.

С увеличением числа n значение n! растет очень быстро (1! = 1, 5! = 120, 10! = 3628800, 15! = 1307674368000). При больших n для приближенного вычисления n! можно воспользоваться формулой Стирлинга

          (4.1)

Шифр простой одинарной перестановки. Для шифрования и дешифрования используется таблица перестановок, аналогичная показанной на рис.4.2.

Рис.4.2. Таблица перестановок

Например, если для шифрования исходного сообщения «АБРАМОВ» использовать таблицу, представленную на рис.4.2, то шифрограммой будет «РАВБОМА». Для использования на практике такой шифр не удобен, так как при больших значениях n приходится работать с длинными таблицами и для сообщений разной длины необходимо иметь свою таблицу перестановок.

Шифр блочной одинарной перестановки. При использовании этого шифра задается таблица перестановки блока символов, которая последовательно применяется до тех пор, пока исходное сообщение не закончится. Если исходное сообщение не кратно размеру блока, тогда оно при шифровании дополняется произвольными символами.

Рис.4.3. Таблица перестановок

Для примера выберем размер блока, равный 3, и примем таблицу перестановок, показанную на рис.4.3. Дополним исходное сообщение «АБРАМОВ» буквами Ь и Э, чтобы его длина была кратна 3. В результате шифрования получим «РАБОАМЭВЬ».

Количество ключей для данного шифра при фиксированном размере блока равно m!, где m – размер блока.

Шифры маршрутной перестановки. Широкое распространение получили шифры перестановки, использующие некоторую геометрическую фигуру (плоскую или объемную). Преобразования состоят в том, что в фигуру исходный текст вписывается по ходу одного маршрута, а выписывается по другому. Один из таких шифров – шифр «Сцитала» — упоминался ранее. Некоторые из них приводятся ниже.

Шифр табличной маршрутной перестановки. Наибольшее распространение получили шифры маршрутной перестановки, основанные на таблицах. При шифровании в такую таблицу вписывают исходное сообщение по определенному маршруту, а выписывают (получают шифрограмму) — по другому. Для данного шифра маршруты вписывания и выписывания, а также размеры таблицы являются ключом.

Рис.4.4. Пример использования шифра маршрутной перестановки

Например, исходное сообщения «АБРАМОВ ИЛЬЯ СЕРГЕЕВИЧ» вписывается в прямоугольную таблицу размерами 4х6, маршрут вписывания – слева-направо сверху-вниз, маршрут выписывания – сверху-вниз слева-направо. Шифрограмма в этом случае выглядит «АВ_ЕБ_СВРИЕИАЛР ЧМЬГ_ОЯЕ_».

Шифр вертикальной перестановки. Является разновидностью предыдущего шифра. К особенностям шифра можно отнести следующие:

— количество столбцов в таблице фиксируется и определяется длиной ключа;

— маршрут вписывания — строго слева-направо сверху-вниз;

— шифрограмма выписывается по столбцам в соответствии с их нумерацией (ключом).

КлючДЯДИНА
263451
ТекстАБРАМО
В_ИЛЬЯ
_СЕРГЕ
ЕВИЧ__

Рис.4.5. Пример использования шифра вертикальной перестановки

В качестве ключа можно использовать слово или фразу. Тогда порядок выписывания столбцов соответствует алфавитному порядку букв в ключе. Например, если ключевым словом будет «ДЯДИНА», то присутствующая в нем буква А получает номер 1, Д – 2 и т.д. Если какая-то буква входит в слово несколько раз, то ее появления нумеруются последовательно слева направо. В примере первая буква Д получает номер 2, вторая Д – 3.

При шифровании сообщения «АБРАМОВ ИЛЬЯ СЕРГЕЕВИЧ» результат будет «ОЯЕ_АВ_ЕРИЕИАЛРЧМЬГ_Б_СВ».

Шифр «Перекресток» [43]. Для перемешивания букв могут использоваться фигуры специального вида. Один из таких способов носит название «перекресток». В приведенном ниже примере рисуют крестообразные фигуры в количестве, достаточном, чтобы разместить в них все буквы сообщения. Открытый текст записывают вокруг этих фигур заранее оговоренным способом — в нашем случае по часовой стрелке. Таким образом, сообщение «АБРАМОВ ИЛЬЯ СЕРГЕЕВИЧ» может выглядеть следующим образом:

Рис.4.6. Пример размещения открытого текста в шифре «Перекресток»

Буквы берутся построчно. Вначале берется оговоренное количество букв (N) из первой строки, затем удвоенное количество букв (2N) из второй и снова N букв из третьей строки. Например, при N = 3 шифрограмма будет выглядеть «БОЛАРМВИЬА_ЯСЕЧ_ЕГЕИ_РВ_».

Шифры с использованием треугольников и трапеций [43]. Помочь выполнить перестановки могут как треугольники, так и трапеции. Открытый текст вписывается в эти фигуры в соответствии с количеством слов и формой выбранной фигуры, которая может быть растянута или сжата, чтобы в ней поместилось сообщение. Для первой фигуры, треугольника, открытый текст записывается построчно от вершины до основания.

А
БР
АМО
В_ИЛ
ЬЯ_СЕ
РГЕЕВИ
ДЯДИНАДЯДИН
2103681411579

Рис.4.7. Пример использования шифра перестановки при вписывании в треугольник

Ниже записывается ключевое слово. Поскольку основание широкое, ключевое слово повторяется. Буквы строки с ключевым словом нумеруются последовательно согласно их алфавитному порядку. Зашифрованное сообщение выписывается по столбцам согласно выполненной нумерации. Таким образом, для открытого текста «АБРАМОВ ИЛЬЯ СЕРГЕЕВИ» и ключевого слова «ДЯДИНА» шифрограмма будет выглядеть «АМ_РВГРИЕЛВАЯЕБ_ЕИЬРС».

Шифр «Поворотная решетка» [14, 17, 43]. В 1550 г. итальянский математик Джероламо Кардано2, состоящий на службе у папы Римского, в книге «О тонкостях» предложил новую технику шифрования — решётку Кардано.

Изначально решетка Кардано представляла собой трафарет с прорезанными в нем отверстиями. В этих отверстиях на листе бумаги, который клали под решетку, записывались буквы, слоги и слова сообщения. Далее трафарет снимался, и свободное пространство заполнялось более или менее осмысленным текстом для маскировки секретного послания. Такой метод сокрытия информации относится к стеганографии.

Позднее был предложен шифр «поворотная решетка» или, как его еще называют, «решетка для вьющихся растений», поскольку она напоминала отверстия в деревянных решетках садовых строений. Этот шифр считают первым транспозиционным (геометрическим) шифром.

Несмотря на то, что между изначальным предложением Кардано и шифром «поворотная решетка» большая разница, методы сокрытия информации, основанные на использовании трафаретов, принято называть «решетками Кардано».

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

При шифровании трафарет накладывается на таблицу. В видимые ячейки таблицы выписываются буквы исходного текста слева-направо сверху-вниз. Далее трафарет поворачивается и вписывается следующая часть букв. Эта операция повторяется еще два раза. Шифрограмму выписывают из итоговой таблицы по определенному маршруту.

Таким образом, ключом при шифровании является трафарет, порядок его поворотов и маршрут выписывания.

Пример шифрования сообщения «АБРАМОВ+ДЯДИНА» показан на рис.4.8. Результат шифрования – «АДВ_МНРДБЯ+_ОААИ».

Рис.4.8. Пример использования шифра «поворотная решетка»

Данный метод шифрования применялся нидерландскими правителями для секретных посланий в 1740-x гr. Он также использовался в армии кайзера Вильгельма в Первую мировую войну. Для шифрования немцы использовали решетки разных размеров, которым французские криптоаналитики дали собственные кодовые имена: Анна (25 букв), Берта (36 букв), Дора (64 буквы) и Эмиль (81 буква). Однако использовались решетки очень недолго (всего четыре месяца) к огромному разочарованию французов, которые только-только начали подбирать к ним ключи.

Магические квадраты. Магическими [нормальными] квадратами называются квадратные таблицы со вписанными в их ячейки последовательными натуральными числами начиная с 1, которые в сумме по каждому столбцу, каждой строке и главным диагоналям дают одно и то же число.

Впервые эти квадраты появились в Китае, где им и была приписана некоторая «магическая сила». По преданию, описанному в одной из пяти канонических книг Древнего Китая — Шу-Цзин (Книге записанных преданий), в 2200 году до н.э. из реки Ло вышла огромная черепаха (по другой версии — дракон), символ вечности. На ее панцире были видны пятна, образовывавшие удивительный рисунок.

Рис.4.9. Магический квадрат Ло Шу

Когда черепаха вышла из воды, высыхали лужи после недавнего ливня. Великий Юй взял эту черепаху и рассмотрел странный узор на ее панцире. Этот узор вдохновил его на создание трактата под названием «Хун Фань» («Великий план»), в котором говорилось о физике, астрологии, предсказаниях, морали, политике и религии [53].

Магические квадраты широко применялись для передачи секретной информации. При шифровании исходное сообщение вписывалось в квадрат по приведенной в них нумерации, после чего шифрограмма выписывалась по строкам. Количество возможных магических квадратов (ключей) быстро возрастает с увеличением их размера. Так, существует лишь один магический квадрат размером 3х3, если не принимать во внимание его повороты. Магических квадратов 4х4 насчитывается уже 880, а число магических квадратов размером 5х5 около 250000. Поэтому магические квадраты больших размеров могли быть хорошей основой для надежной системы шифрования того времени, потому что ручной перебор всех вариантов ключа для этого шифра был немыслим [17].

Рассмотрим квадрат размером 4х4. В него вписываются числа от 1 до 16. Его магия состоит в том, что сумма чисел по строкам, столбцам и полным диагоналям равняется одному и тому же числу — 34.

163213
510118
96712
415141

Рис.4.10. Магический квадрат 4х4

Шифрование по магическому квадрату производилось следующим образом. Например, требуется зашифровать фразу: «АБРАМОВ+ДЯДИНА..». Буквы этой фразы вписываются последовательно в квадрат согласно записанным в ячейках числам. В пустые клетки ставится точка или любая буква.

16 .3 Р2 Б13 Н
5 М10 Я11 Д8 +
9 Д6 О7 В12 И
4 А15 .14 А1 А

Рис.4.11. Пример шифрования с помощью магического квадрата

После этого шифрованный текст записывается в строку (считывание производится слева-направо сверху-вниз, построчно) – «.РБНМЯД+ДОВИА.АА».


2Джелорамо Кардано (1501 – 1576 гг.) — итальянский математик, инженер, философ, медик и астролог. В его честь названы открытые Сципионом дель Ферро формулы решения кубического уравнения (Кардано первым их опубликовал) и карданный вал (известного ещё Леонардо да Винчи). Написал около 240 книг (131 из них была опубликована, 111 остались в виде рукописей) [43].

 

4.3. Шифры множественной перестановки

 

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

Шифр двойной перестановки. В таблицу по определенному маршруту записывается текст сообщения, затем переставляются столбцы, а потом переставляются строки. Шифрограмма выписывается по определенному маршруту.

Пример шифрования сообщения «АБРАМОВ+ДЯДИНА» показан на следующем рисунке. Результат шифрования – «ОАБЯ+_АИВ_РДМНАД».

Рис.4.12. Пример использования шифра двойной перестановки

Ключом к шифру являются размеры таблицы, маршруты вписывания и выписывания, а также порядки перестановки столбцов и строк. Если маршруты являются фиксированными величинами, то количество ключей равно n!*m!, n и m – количество столбцов и строк в таблице.

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

12345678910111213141516
АБРАМОВ+ДЯДИНА__
15311713195164128142106
ОАБЯ+_АИВ_РДМНАД

Рис.4.13. Таблица эквивалентных одинарных перестановок

Аналогичную замену на шифр простой одинарной перестановки можно выполнить и для других шифров: табличная маршрутная перестановка, «поворотная решетка», «магический квадрат» и др.

 

Вопросы для самопроверки

 

1. В чем заключается основная идея криптографических преобразований шифров перестановки?

2. Перечислите основные разновидности шифров перестановки.

3. Дайте характеристику разновидностям шифров перестановки.

Практическая криптография

Хотя большинство людей заявляют, что не знакомы с криптографией , они часто знакомы с концепцией шифров, независимо от того, осознают ли они это на самом деле.

Шифры, возможно, являются краеугольным камнем криптографии. В общем, шифр — это просто набор шагов (алгоритм) для выполнения как шифрования, так и соответствующего дешифрования.

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

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

В этом разделе (вполне уместно) рассматриваются отдельные шифры и алгоритмы. Они были разделены в зависимости от их эпохи и категории (т.е. , когда они использовали и , как они работают ). Если вы ищете справочное руководство, обратитесь к алфавитному списку справа, в противном случае продолжайте чтение.

Стремясь обеспечить практический подход к ним, мы разработали реализацию javascript для каждого шифра, которая позволяет шифрование и дешифрование произвольного текста (по вашему выбору) с использованием этого шифра.Также включена история каждого шифра и даны советы по криптоанализу.

Какие эпохи криптографии?

Криптография прошла через множество этапов эволюции. Ранние шифры в криптографии были разработаны, чтобы обеспечить возможность шифрования и дешифрования вручную, тогда как те, которые разработаны и используются сегодня, возможны только благодаря высокой вычислительной производительности современных машин (то есть компьютера, который вы используете прямо сейчас). Основные эпохи, сформировавшие криптографию, перечислены ниже.

Классический

Классические алгоритмы — это алгоритмы, изобретенные до компьютера примерно до 1950-х годов. Список ниже примерно упорядочен по сложности, наименее сложный вверху.

Механический

Механические шифры

— это те, которые были разработаны во время Второй мировой войны и основаны на сложных механизмах передачи для шифрования текста.

Модерн

Современные алгоритмы — это те, которые используются в современных технологиях. E.грамм. блочные шифры, криптосистемы с открытым ключом и т. д. Эти алогрифмы очень безопасны (в противном случае они не использовались бы), но во многих случаях мы можем практиковаться на ослабленных версиях алгоритмов.

Практическая криптография

Классические алгоритмы — это алгоритмы, изобретенные до компьютера примерно до 1950-х годов. Список ниже примерно упорядочен по сложности, наименее сложный вверху.

Классические шифры — это криптографические алгоритмы, которые использовались в прошлом (до Второй мировой войны).Некоторые из них когда-либо использовались только любителями (например, Bifid), в то время как некоторые из них использовались армиями для защиты своих коммуникаций на высшем уровне (например, ADFGVX).

Ни один из этих алгоритмов не является очень безопасным с точки зрения защиты информации (с сегодняшними компьютерами, чтобы взломать их), поэтому, если требуется реальная безопасность данных, вам, вероятно, следует обратить внимание на современные алгоритмы.

  • Шифр ​​Атбаша — это шифр подстановки с определенным ключом, в котором буквы алфавита меняются местами.Т.е. все As заменяются на Zs, все B заменяются на Ys и так далее.

  • Шифр ​​ROT13 на самом деле не шифр, а просто способ временно скрыть информацию. Его часто используют, чтобы скрыть, например спойлеры фильмов.

  • Шифр ​​Цезаря (он же шифр сдвига, Код Цезаря или Цезарь Сдвиг) — один из самых ранних известных и простейших шифров.

  • Тип простого подстановочного шифра, который очень легко взломать.

  • Простой шифр транспонирования.

  • Шифр ​​Бэкона — это «двулитерационный» шифр, то есть в нем используются только 2 символа. Это подстановочный шифр.

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

  • Простой шифр, используемый правительствами на протяжении сотен лет.Код предназначен для шифрования, дешифрования и криптоанализа.

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

  • Еще один простой шифр транспонирования, в котором буквы расположены в ряды, а столбцы транспонированы в соответствии с ключом.

  • Шифр ​​Autokey тесно связан с шифром Виженера, он отличается тем, как генерируется ключевой материал.Шифр Autokey использует ключевое слово в дополнение к открытому тексту в качестве ключевого материала, это делает это более безопасно, чем Виженера.

  • Очень похож на шифр Виженера, но немного другой алгоритм.

  • Шифр ​​Porta — это полиалфавитный шифр замещения, который использует ключевое слово для выбора алфавита для шифрования букв.

  • Шифр ​​Running Key похож на шифр Виженера, но ключ обычно представляет собой длинный кусок неповторяющегося текста.Это затрудняет взлом в целом, чем шифры Виженера или Автоключ.

  • Более сложный полиалфавитный шифр замещения. Код предназначен для шифрования, дешифрования и криптоанализа.

  • Шифр ​​гомофонической замены — это шифр замены, в котором отдельные буквы открытого текста могут быть заменены любой из нескольких букв зашифрованного текста. Их, как правило, намного сложнее взломать, чем стандартные подстановочные шифры.

  • Алгоритм, изобретенный Феликсом Деластелем, опубликованный в 1902 г.

  • Алгоритм, основанный на теории матриц. Очень хорошо распределяется.

  • Метод шифрует пары букв (диграфов) вместо отдельных букв, как в простом шифре подстановки. Таким образом, шифр Playfair значительно труднее взломать, поскольку частотный анализ, используемый для простых подстановочных шифров, с ним не работает.

  • Шифр ​​транспонирования с дроблением. Использовался немцами во время Первой мировой войны, но сломан французами. Довольно сложно взломать шифр.

  • Шифр ​​транспонирования с дроблением. Используется немцами во время Первой мировой войны, тесно связан с ADFGVX (обратите внимание на дополнительную букву V в названии).

  • Шифр ​​транспонирования с дроблением.Используется только криптографами-любителями. Достаточно легко может быть сломан.

  • Замещающий шифр с заменами переменной длины.

  • Шифр ​​транспонирования с дроблением. Вариант Bifid.

  • Base64 на самом деле не является шифром, но я вижу, что он все время используется для «шифрования» текста, поэтому получает почетное упоминание.

  • Fractionated Morse сначала преобразует открытый текст в код Морзе, затем зашифровывает блоки кода Морзе фиксированного размера обратно в буквы.Эта процедура означает, что буквы открытого текста смешиваются с буквами зашифрованного текста, т.е. одна буква открытого текста не отображается в одну букву зашифрованного текста.

  • /docs/man1.0.2/man1/ciphers.html

    НАЗВАНИЕ

    openssl-ciphers, ciphers — инструмент для отображения шифров SSL и списка шифров.

    ОБЗОР

    openssl шифры [ -v ] [ -V ] [ -ssl2 ] [ -ssl3 ] [ -tls1 ] [ cipherlist ]

    ОПИСАНИЕ

    Команда ciphers преобразует текстовые списки шифров OpenSSL в упорядоченные списки предпочтений шифров SSL.Его можно использовать как тестовый инструмент для определения подходящего шифровального списка.

    ОПЦИИ КОМАНД

    -v

    Подробный вариант. Перечислите шифры с полным описанием версии протокола (SSLv2 или SSLv3; последний включает TLS), используемых алгоритмов обмена ключами, аутентификации, шифрования и Mac вместе с любыми ограничениями на размер ключа, а также с указанием того, классифицируется ли алгоритм как «экспортный» шифр. Обратите внимание, что без опции -v шифры могут появляться дважды в списке шифров; это когда аналогичные шифры доступны для SSL v2 и для SSL v3 / TLS v1.

    Аналогично -v , но включает в себя коды набора шифров в выводе (шестнадцатеричный формат).

    -ssl3 , -tls1

    Здесь перечислены шифры, совместимые с любым из SSLv3, TLSv1, TLSv1.1 или TLSv1.2.

    -ssl2

    Включает только шифры SSLv2.

    -h , -?

    Распечатайте краткое сообщение об использовании.

    шифрованный список

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

    ФОРМАТ СПИСКА ШИФРОВ

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

    Фактическая строка шифра может иметь несколько различных форм.

    Он может состоять из одного набора шифров, например RC4-SHA .

    Он может представлять собой список наборов шифров, содержащих определенный алгоритм, или наборов шифров определенного типа. Например, SHA1 представляет все наборы шифров с использованием алгоритма дайджеста SHA1, а SSLv3 представляет все алгоритмы SSL v3.

    Списки комплектов шифров можно объединить в одну строку шифров, используя символы + . Это используется как логическая операция и .Например, SHA1 + DES представляет все наборы шифров, содержащие алгоритмы SHA1 и DES.

    Каждой строке шифра могут предшествовать символы ! , или + .

    Если ! Если используется , шифры навсегда удаляются из списка. Удаленные шифры никогда не могут снова появиться в списке, даже если они явно указаны.

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

    Если используется + , то шифры перемещаются в конец списка. Эта опция не добавляет никаких новых шифров, она просто перемещает соответствующие существующие.

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

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

    ШИФРОВЫЕ СТРОКИ

    Ниже приводится список всех разрешенных строк шифрования и их значений.

    ПО УМОЛЧАНИЮ

    Список шифров по умолчанию. Это определяется во время компиляции и обычно составляет ALL:! EXPORT:! LOW:! ANULL:! ENULL:! SSLv2 . При использовании это должна быть первая указанная строка шифрования.

    ДОПОЛНЕНИЕ ПО УМОЛЧАНИЮ

    шифры включены в ВСЕ , но не включены по умолчанию.В настоящее время это ADH и AECDH . Обратите внимание, что это правило не распространяется на eNULL , который не входит в ALL (при необходимости используйте COMPLEMENTOFALL ).

    ВСЕ

    все комплекты шифров, кроме шифров eNULL , которые должны быть явно разрешены; начиная с OpenSSL, наборы шифров ALL разумно упорядочены по умолчанию

    ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ ДЛЯ ПАДЕНИЯ

    наборы шифров, не включенные ALL , в настоящее время eNULL .

    ВЫСОКАЯ

    набора шифров с высоким уровнем шифрования. В настоящее время это означает те, у которых длина ключа превышает 128 бит, и некоторые комплекты шифров с 128-битными ключами.

    СРЕДНИЙ

    «средних» шифровальных комплектов, некоторые из которых в настоящее время используют 128-битное шифрование.

    НИЗКИЙ

    Комплекты шифров с низким уровнем защиты, в настоящее время использующие 64- или 56-битные алгоритмы шифрования, но исключая комплекты экспортных шифров.Начиная с OpenSSL 1.0.2g, они отключены в сборках по умолчанию.

    EXP , ЭКСПОРТ

    Экспорт надежных алгоритмов шифрования. Включая 40- и 56-битные алгоритмы. Начиная с OpenSSL 1.0.2g, они отключены в сборках по умолчанию.

    ЭКСПОРТ40

    40-битные алгоритмы шифрования экспорта Начиная с OpenSSL 1.0.2g, они отключены в сборках по умолчанию.

    ЭКСПОРТ56

    56-битных алгоритмов шифрования экспорта.В OpenSSL 0.9.8c и более поздних версиях набор 56-битных экспортных шифров пуст, если OpenSSL не был явно настроен с поддержкой экспериментальных шифров. Начиная с OpenSSL 1.0.2g, они отключены в сборках по умолчанию.

    eNULL , NULL

    «NULL» шифры, то есть те, которые не предлагают шифрования. Поскольку они вообще не предлагают шифрования и представляют угрозу безопасности, они не активируются ни с помощью строк шифра DEFAULT , ни с помощью ALL строк шифра.Будьте осторожны при построении шифровальных списков из примитивов более низкого уровня, таких как kRSA или aECDSA , поскольку они перекрываются с шифрами eNULL . Если сомневаетесь, включите ! ENULL в свой зашифрованный список.

    НЕТ

    Наборы шифров, не предлагающие аутентификации. В настоящее время это анонимные алгоритмы DH и анонимные алгоритмы ECDH. Эти комплекты шифров уязвимы для атаки «человек посередине», поэтому их использование обычно не рекомендуется.Они исключены из шифров DEFAULT , но включены в шифры ALL . Будьте осторожны при построении шифровальных списков из примитивов более низкого уровня, таких как kDHE или AES , поскольку они перекрываются с шифрами aNULL . Если сомневаетесь, включите ! ANULL в свой шифровальный список.

    kRSA , RSA

    шифров, использующих обмен ключами RSA или аутентификацию. RSA — это псевдоним для kRSA .

    кДч , кДч , кДч

    комплектов шифров, использующих соглашение о ключах DH и сертификаты DH, подписанные центрами сертификации с ключами RSA и DSS или любым из них соответственно.

    кДГЭ , кЭДХ

    комплектов шифров, использующих соглашение о эфемерных ключах DH, включая анонимные комплекты шифров.

    DHE , EDH

    комплектов шифров, использующих аутентифицированное соглашение о эфемерных ключах DH.

    ADH

    анонимных наборов шифров DH, обратите внимание, что они не включают анонимные наборы шифров Elliptic Curve DH (ECDH).

    DH

    набора шифров, использующих DH, включая анонимный DH, эфемерный DH и фиксированный DH.

    kECDHr , kECDHe , kECDH

    комплектов шифров, использующих соглашение о фиксированном ключе ECDH, подписанное центрами сертификации с ключами RSA и ECDSA или любым из них соответственно.

    kECDHE , kEECDH

    комплектов шифров, использующих согласование эфемерных ключей ECDH, включая анонимные комплекты шифров.

    ECDHE , EECDH

    комплектов шифров, использующих согласованный с аутентификацией эфемерный ключ ECDH.

    AECDH

    анонимных набора шифров Диффи-Хеллмана с эллиптической кривой.

    ECDH

    набора шифров, использующих обмен ключами ECDH, включая анонимный, эфемерный и фиксированный ECDH.

    ARSA

    наборов шифров, использующих аутентификацию RSA, то есть сертификаты несут ключи RSA.

    ADSS , DSS

    наборов шифров, использующих аутентификацию DSS, то есть сертификаты несут ключи DSS.

    ADH
    Наборы шифров

    эффективно используют аутентификацию DH, т. Е. Сертификаты несут ключи DH.

    aECDH

    комплектов шифров, эффективно использующих аутентификацию ECDH, т.е.е. сертификаты содержат ключи ECDH.

    aECDSA , ECDSA

    шифров, использующих аутентификацию ECDSA, т.е. сертификаты содержат ключи ECDSA.

    kFZA , aFZA , eFZA , FZA

    наборов шифров, использующих обмен ключами FORTEZZA, аутентификацию, шифрование или все алгоритмы FORTEZZA. Не реализованы.

    TLSv1.2 , TLSv1 , SSLv3 , SSLv2

    TLS v1.2, TLS v1.0, SSL v3.0 или SSL v2.0 соответственно. Примечание: для TLS v1.1 нет специальных шифровальных наборов.

    AES128 , AES256 , AES

    шифров, использующих 128-битный AES, 256-битный AES или 128 или 256-битный AES.

    AESGCM

    AES в режиме счетчика Галуа (GCM): эти наборы шифров поддерживаются только в TLS v1.2.

    CAMELLIA128 , CAMELLIA256 , CAMELLIA

    наборов шифров, использующих 128-битную CAMELLIA, 256-битную CAMELLIA или 128 или 256-битную CAMELLIA.

    3DES

    набора шифров, использующих тройной DES.

    DES

    набора шифров, использующих DES (не тройной DES).

    RC4

    набора шифров с использованием RC4.

    RC2

    набора шифров с использованием RC2.

    ИДЕЯ

    набора шифров с использованием IDEA.

    СЕМЕНА

    набора шифров с использованием SEED.

    MD5

    набора шифров с использованием MD5.

    SHA1 , SHA

    набора шифров, использующих SHA1.

    SHA256 , SHA384

    шифровальных наборов с использованием SHA256 или SHA384.

    а ГОСТ

    наборов шифров, использующих ГОСТ Р 34.10 (2001 или 94) для аутентификации (требуется механизм, поддерживающий алгоритмы ГОСТ).

    а ГОСТ01

    шифров с аутентификацией по ГОСТ Р 34.10-2001.

    а ГОСТ94

    наборов шифров, использующих аутентификацию по ГОСТ Р 34.10-94 (обратите внимание, что срок действия стандарта Р 34.10-94 истек, поэтому используйте ГОСТ Р 34.10-2001)

    к ГОСТ

    набора шифров, использующих обмен ключами VKO 34.10, как указано в RFC 4357.

    ГОСТ94

    шифровальных наборов, использующих HMAC по ГОСТ Р 34.11-94.

    ГОСТ89МАЦ

    шифров с использованием ГОСТ 28147-89 MAC вместо HMAC.

    ПСК

    набора шифров с использованием предварительно разделенных ключей (PSK).

    SUITEB128 , SUITEB128ONLY , SUITEB192

    позволяет работать в режиме B Suite с использованием 128-битного (разрешая 192-битный режим для однорангового узла), 128-битного (не разрешающего 192-битный одноранговый) или 192-битного уровня безопасности соответственно.При использовании эти строки шифрования должны появиться первыми в списке шифров, а все, что после них, игнорируется. Установка режима Suite B имеет дополнительные последствия, необходимые для соответствия RFC6460. В частности, поддерживаемые алгоритмы подписи сокращены до поддержки только ECDSA и SHA256 или SHA384, могут использоваться только эллиптические кривые P-256 и P-384 и только два набора шифров, совместимых с набором B (ECDHE-ECDSA-AES128-GCM-SHA256 и ECDHE-ECDSA-AES256-GCM-SHA384) допустимы.

    CIPHER SUITE NAMES

    В следующих списках приведены имена наборов шифров SSL или TLS из соответствующей спецификации и их эквивалентов OpenSSL.Следует отметить, что некоторые имена наборов шифров не включают используемую аутентификацию, например DES-CBC3-SHA. В этих случаях используется проверка подлинности RSA.

    комплектов шифров SSL v3.0.
      SSL_RSA_WITH_NULL_MD5 NULL-MD5
     SSL_RSA_WITH_NULL_SHA NULL-SHA
     SSL_RSA_EXPORT_WITH_RC4_40_MD5 EXP-RC4-MD5
     SSL_RSA_WITH_RC4_128_MD5 RC4-MD5
     SSL_RSA_WITH_RC4_128_SHA RC4-SHA
     SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5 EXP-RC2-CBC-MD5
     SSL_RSA_WITH_IDEA_CBC_SHA IDEA-CBC-SHA
     SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-DES-CBC-SHA
     SSL_RSA_WITH_DES_CBC_SHA DES-CBC-SHA
     SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC3-SHA
    
     SSL_DH_DSS_WITH_DES_CBC_SHA DH-DSS-DES-CBC-SHA
     SSL_DH_DSS_WITH_3DES_EDE_CBC_SHA DH-DSS-DES-CBC3-SHA
     SSL_DH_RSA_WITH_DES_CBC_SHA DH-RSA-DES-CBC-SHA
     SSL_DH_RSA_WITH_3DES_EDE_CBC_SHA DH-RSA-DES-CBC3-SHA
     SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA EXP-EDH-DSS-DES-CBC-SHA
     SSL_DHE_DSS_WITH_DES_CBC_SHA EDH-DSS-CBC-SHA
     SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA EDH-DSS-DES-CBC3-SHA
     SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-EDH-RSA-DES-CBC-SHA
     SSL_DHE_RSA_WITH_DES_CBC_SHA EDH-RSA-DES-CBC-SHA
     SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA EDH-RSA-DES-CBC3-SHA
    
     SSL_DH_anon_EXPORT_WITH_RC4_40_MD5 EXP-ADH-RC4-MD5
     SSL_DH_anon_WITH_RC4_128_MD5 ADH-RC4-MD5
     SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA EXP-ADH-DES-CBC-SHA
     SSL_DH_anon_WITH_DES_CBC_SHA ADH-DES-CBC-SHA
     SSL_DH_anon_WITH_3DES_EDE_CBC_SHA ADH-DES-CBC3-SHA
    
     SSL_FORTEZZA_KEA_WITH_NULL_SHA Не реализовано.SSL_FORTEZZA_KEA_WITH_FORTEZZA_CBC_SHA Не реализовано.
     SSL_FORTEZZA_KEA_WITH_RC4_128_SHA Не реализовано.  
    Наборы шифров TLS v1.0.
      TLS_RSA_WITH_NULL_MD5 NULL-MD5
     TLS_RSA_WITH_NULL_SHA NULL-SHA
     TLS_RSA_EXPORT_WITH_RC4_40_MD5 EXP-RC4-MD5
     TLS_RSA_WITH_RC4_128_MD5 RC4-MD5
     TLS_RSA_WITH_RC4_128_SHA RC4-SHA
     TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 EXP-RC2-CBC-MD5
     TLS_RSA_WITH_IDEA_CBC_SHA IDEA-CBC-SHA
     TLS_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-DES-CBC-SHA
     TLS_RSA_WITH_DES_CBC_SHA DES-CBC-SHA
     TLS_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC3-SHA
    
     TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA Не реализовано.TLS_DH_DSS_WITH_DES_CBC_SHA Не реализовано.
     TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA Не реализовано.
     TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA Не реализовано.
     TLS_DH_RSA_WITH_DES_CBC_SHA Не реализовано.
     TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA Не реализовано.
     TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA EXP-EDH-DSS-DES-CBC-SHA
     TLS_DHE_DSS_WITH_DES_CBC_SHA EDH-DSS-CBC-SHA
     TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA EDH-DSS-DES-CBC3-SHA
     TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-EDH-RSA-DES-CBC-SHA
     TLS_DHE_RSA_WITH_DES_CBC_SHA EDH-RSA-DES-CBC-SHA
     TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA EDH-RSA-DES-CBC3-SHA
    
     TLS_DH_anon_EXPORT_WITH_RC4_40_MD5 EXP-ADH-RC4-MD5
     TLS_DH_anon_WITH_RC4_128_MD5 ADH-RC4-MD5
     TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA EXP-ADH-DES-CBC-SHA
     TLS_DH_anon_WITH_DES_CBC_SHA ADH-DES-CBC-SHA
     TLS_DH_anon_WITH_3DES_EDE_CBC_SHA ADH-DES-CBC3-SHA  
    шифрокомплект AES из RFC3268, расширяющий TLS v1.0
      TLS_RSA_WITH_AES_128_CBC_SHA AES128-SHA
     TLS_RSA_WITH_AES_256_CBC_SHA AES256-SHA
    
     TLS_DH_DSS_WITH_AES_128_CBC_SHA DH-DSS-AES128-SHA
     TLS_DH_DSS_WITH_AES_256_CBC_SHA DH-DSS-AES256-SHA
     TLS_DH_RSA_WITH_AES_128_CBC_SHA DH-RSA-AES128-SHA
     TLS_DH_RSA_WITH_AES_256_CBC_SHA DH-RSA-AES256-SHA
    
     TLS_DHE_DSS_WITH_AES_128_CBC_SHA DHE-DSS-AES128-SHA
     TLS_DHE_DSS_WITH_AES_256_CBC_SHA DHE-DSS-AES256-SHA
     TLS_DHE_RSA_WITH_AES_128_CBC_SHA DHE-RSA-AES128-SHA
     TLS_DHE_RSA_WITH_AES_256_CBC_SHA DHE-RSA-AES256-SHA
    
     TLS_DH_anon_WITH_AES_128_CBC_SHA ADH-AES128-SHA
     TLS_DH_anon_WITH_AES_256_CBC_SHA ADH-AES256-SHA  
    Набор шифров Camellia из RFC4132, расширяющий TLS v1.0
      TLS_RSA_WITH_CAMELLIA_128_CBC_SHA CAMELLIA128-SHA
     TLS_RSA_WITH_CAMELLIA_256_CBC_SHA CAMELLIA256-SHA
    
     TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA DH-DSS-CAMELLIA128-SHA
     TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA DH-DSS-CAMELLIA256-SHA
     TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA DH-RSA-CAMELLIA128-SHA
     TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA DH-RSA-CAMELLIA256-SHA
    
     TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA DHE-DSS-CAMELLIA128-SHA
     TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA DHE-DSS-CAMELLIA256-SHA
     TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA DHE-RSA-CAMELLIA128-SHA
     TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA DHE-RSA-CAMELLIA256-SHA
    
     TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA ADH-CAMELLIA128-SHA
     TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA ADH-CAMELLIA256-SHA  
    наборов шифров SEED из RFC4162, расширяющих TLS v1.0
      TLS_RSA_WITH_SEED_CBC_SHA SEED-SHA
    
     TLS_DH_DSS_WITH_SEED_CBC_SHA DH-DSS-SEED-SHA
     TLS_DH_RSA_WITH_SEED_CBC_SHA DH-RSA-SEED-SHA
    
     TLS_DHE_DSS_WITH_SEED_CBC_SHA DHE-DSS-SEED-SHA
     TLS_DHE_RSA_WITH_SEED_CBC_SHA DHE-RSA-SEED-SHA
    
     TLS_DH_anon_WITH_SEED_CBC_SHA ADH-SEED-SHA  
    Набор шифров ГОСТ из draft-chudov-cryptopro-cptls, расширяющий TLS v1.0

    Примечание: для этих шифров требуется механизм, включающий криптографические алгоритмы ГОСТ, например, механизм ccgost , включенный в дистрибутив OpenSSL.

      TLS_GOSTR341094_WITH_28147_CNT_IMIT GOST94-GOST89-GOST89
     TLS_GOSTR341001_WITH_28147_CNT_IMIT GOST2001-GOST89-GOST89
     TLS_GOSTR341094_WITH_NULL_GOSTR3411 GOST94-NULL-GOST94
     TLS_GOSTR341001_WITH_NULL_GOSTR3411 GOST2001-NULL-GOST94  
    Дополнительный экспорт 1024 и другие наборы шифров

    Примечание: эти шифры также могут использоваться в SSL v3.

      TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA EXP1024-DES-CBC-SHA
     TLS_RSA_EXPORT1024_WITH_RC4_56_SHA EXP1024-RC4-SHA
     TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA EXP1024-DHE-DSS-DES-CBC-SHA
     TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA EXP1024-DHE-DSS-RC4-SHA
     TLS_DHE_DSS_WITH_RC4_128_SHA DHE-DSS-RC4-SHA  
    Наборы шифров с эллиптической кривой.
      TLS_ECDH_RSA_WITH_NULL_SHA ECDH-RSA-NULL-SHA
     TLS_ECDH_RSA_WITH_RC4_128_SHA ECDH-RSA-RC4-SHA
     TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA ECDH-RSA-DES-CBC3-SHA
     TLS_ECDH_RSA_WITH_AES_128_CBC_SHA ECDH-RSA-AES128-SHA
     TLS_ECDH_RSA_WITH_AES_256_CBC_SHA ECDH-RSA-AES256-SHA
    
     TLS_ECDH_ECDSA_WITH_NULL_SHA ECDH-ECDSA-NULL-SHA
     TLS_ECDH_ECDSA_WITH_RC4_128_SHA ECDH-ECDSA-RC4-SHA
     TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA ECDH-ECDSA-DES-CBC3-SHA
     TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA ECDH-ECDSA-AES128-SHA
     TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA ECDH-ECDSA-AES256-SHA
    
     TLS_ECDHE_RSA_WITH_NULL_SHA ECDHE-RSA-NULL-SHA
     TLS_ECDHE_RSA_WITH_RC4_128_SHA ECDHE-RSA-RC4-SHA
     TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA ECDHE-RSA-DES-CBC3-SHA
     TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA ECDHE-RSA-AES128-SHA
     TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA ECDHE-RSA-AES256-SHA
    
     TLS_ECDHE_ECDSA_WITH_NULL_SHA ECDHE-ECDSA-NULL-SHA
     TLS_ECDHE_ECDSA_WITH_RC4_128_SHA ECDHE-ECDSA-RC4-SHA
     TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA ECDHE-ECDSA-DES-CBC3-SHA
     TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA ECDHE-ECDSA-AES128-SHA
     TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA ECDHE-ECDSA-AES256-SHA
    
     TLS_ECDH_anon_WITH_NULL_SHA AECDH-NULL-SHA
     TLS_ECDH_anon_WITH_RC4_128_SHA AECDH-RC4-SHA
     TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA AECDH-DES-CBC3-SHA
     TLS_ECDH_anon_WITH_AES_128_CBC_SHA AECDH-AES128-SHA
     TLS_ECDH_anon_WITH_AES_256_CBC_SHA AECDH-AES256-SHA  
    TLS v1.2 набора шифров
      TLS_RSA_WITH_NULL_SHA256 NULL-SHA256
    
     TLS_RSA_WITH_AES_128_CBC_SHA256 AES128-SHA256
     TLS_RSA_WITH_AES_256_CBC_SHA256 AES256-SHA256
     TLS_RSA_WITH_AES_128_GCM_SHA256 AES128-GCM-SHA256
     TLS_RSA_WITH_AES_256_GCM_SHA384 AES256-GCM-SHA384
    
     TLS_DH_RSA_WITH_AES_128_CBC_SHA256 DH-RSA-AES128-SHA256
     TLS_DH_RSA_WITH_AES_256_CBC_SHA256 DH-RSA-AES256-SHA256
     TLS_DH_RSA_WITH_AES_128_GCM_SHA256 DH-RSA-AES128-GCM-SHA256
     TLS_DH_RSA_WITH_AES_256_GCM_SHA384 DH-RSA-AES256-GCM-SHA384
    
     TLS_DH_DSS_WITH_AES_128_CBC_SHA256 DH-DSS-AES128-SHA256
     TLS_DH_DSS_WITH_AES_256_CBC_SHA256 DH-DSS-AES256-SHA256
     TLS_DH_DSS_WITH_AES_128_GCM_SHA256 DH-DSS-AES128-GCM-SHA256
     TLS_DH_DSS_WITH_AES_256_GCM_SHA384 DH-DSS-AES256-GCM-SHA384
    
     TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 DHE-RSA-AES128-SHA256
     TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 DHE-RSA-AES256-SHA256
     TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
     TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 DHE-RSA-AES256-GCM-SHA384
    
     TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 DHE-DSS-AES128-SHA256
     TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 DHE-DSS-AES256-SHA256
     TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 DHE-DSS-AES128-GCM-SHA256
     TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 DHE-DSS-AES256-GCM-SHA384
    
     TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 ECDH-RSA-AES128-SHA256
     TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 ECDH-RSA-AES256-SHA384
     TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256 ECDH-RSA-AES128-GCM-SHA256
     TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384 ECDH-RSA-AES256-GCM-SHA384
    
     TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 ECDH-ECDSA-AES128-SHA256
     TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 ECDH-ECDSA-AES256-SHA384
     TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 ECDH-ECDSA-AES128-GCM-SHA256
     TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 ECDH-ECDSA-AES256-GCM-SHA384
    
     TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 ECDHE-RSA-AES128-SHA256
     TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 ECDHE-RSA-AES256-SHA384
     TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256
     TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 ECDHE-RSA-AES256-GCM-SHA384
    
     TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 ECDHE-ECDSA-AES128-SHA256
     TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 ECDHE-ECDSA-AES256-SHA384
     TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 ECDHE-ECDSA-AES128-GCM-SHA256
     TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 ECDHE-ECDSA-AES256-GCM-SHA384
    
     TLS_DH_anon_WITH_AES_128_CBC_SHA256 ADH-AES128-SHA256
     TLS_DH_anon_WITH_AES_256_CBC_SHA256 ADH-AES256-SHA256
     TLS_DH_anon_WITH_AES_128_GCM_SHA256 ADH-AES128-GCM-SHA256
     TLS_DH_anon_WITH_AES_256_GCM_SHA384 ADH-AES256-GCM-SHA384  
    Шифровальные наборы с предварительным общим ключом (PSK)
      TLS_PSK_WITH_RC4_128_SHA PSK-RC4-SHA
     TLS_PSK_WITH_3DES_EDE_CBC_SHA PSK-3DES-EDE-CBC-SHA
     TLS_PSK_WITH_AES_128_CBC_SHA PSK-AES128-CBC-SHA
     TLS_PSK_WITH_AES_256_CBC_SHA PSK-AES256-CBC-SHA  
    Устаревший SSL v2.0 наборов шифров.
      SSL_CK_RC4_128_WITH_MD5 RC4-MD5
     SSL_CK_RC4_128_EXPORT40_WITH_MD5 Не реализовано.
     SSL_CK_RC2_128_CBC_WITH_MD5 RC2-CBC-MD5
     SSL_CK_RC2_128_CBC_EXPORT40_WITH_MD5 Не реализовано.
     SSL_CK_IDEA_128_CBC_WITH_MD5 IDEA-CBC-MD5
     SSL_CK_DES_64_CBC_WITH_MD5 Не реализовано.
     SSL_CK_DES_192_EDE3_CBC_WITH_MD5 DES-CBC3-MD5  

    ПРИМЕЧАНИЯ

    Некоторые скомпилированные версии OpenSSL могут не включать все перечисленные здесь шифры, потому что некоторые шифры были исключены во время компиляции.

    ПРИМЕРЫ

    Подробный список всех шифров OpenSSL, включая NULL-шифры:

      openssl ciphers -v 'ВСЕ: eNULL'  

    Включите все шифры, кроме NULL и анонимного DH, затем отсортируйте по силе:

      openssl ciphers -v 'ВСЕ:! ADH: @STRENGTH'  

    Включить все шифры, кроме шифров без шифрования (eNULL) или без аутентификации (aNULL):

      openssl ciphers -v 'ВСЕ:! ANULL'  

    Включите только шифры 3DES, а затем разместите шифры RSA последними:

      openssl шифров -v '3DES: + RSA'  

    Включить все шифры RC4, но исключить те, которые не имеют аутентификации:

      openssl шифров -v 'RC4:! COMPLEMENTOFDEFAULT'  

    Включить все микросхемы с аутентификацией RSA, но не включать шифры без шифрования.

      openssl шифров -v 'RSA:! COMPLEMENTOFALL'  

    СМОТРИ ТАКЖЕ

    s_client (1), s_server (1), ssl (3)

    ИСТОРИЯ

    Опции выбора COMPLENTOFALL и COMPLEMENTOFDEFAULT для строк зашифрованного списка были добавлены в OpenSSL 0.9.7. Параметр -V для команды ciphers был добавлен в OpenSSL 1.0.0.

    Секретный язык: криптография и секретные коды

    Рон Хипшман

    Когда вы были ребенком, у вас было кольцо-декодер «Captain Midnight»? С его помощью вы могли отправлять друзьям сообщения, которые никто не мог прочитать.Или, может быть, вы помните, как использовали специальные символы для написания заметок в классе. Если записку перехватили, ваш учитель ничего не узнал бы о вашем романе.

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

    Изучение шифрования и кодирования (на передающей стороне), а также расшифровки и декодирования (на принимающей стороне) называется криптографией от греческого κρυπτός (криптос) или скрытый и γράφειν (графия) или письмо. Если вы не знаете греческого (а многие из нас знают), приведенные выше буквы могут быть формой кода! Хотя различие нечеткое, шифры отличаются от кодов. Когда вы заменяете одно слово другим словом или предложением, как, например, в словаре иностранного языка, вы используете код.Когда вы смешиваете или заменяете существующие буквы, вы используете шифр. (Я сказал вам, что разница нечеткая, и вы можете комбинировать коды и шифры, заменяя одно слово другим, а затем смешивая результат.) Мы сконцентрируемся на шифрах.

    Чтобы шифр был полезным, необходимо знать несколько вещей как на отправляющей, так и на принимающей стороне.

    1. Алгоритм или метод , используемый для шифрования исходного сообщения (известного как открытый текст).
    2. Ключ , используемый с алгоритмом, чтобы обеспечить как шифрование, так и дешифрование открытого текста.
    3. Период или время , в течение которого ключ действителен.

    По аналогии, чтобы попасть в свой дом, нужно вставить ключ в замок, чтобы открыть дверь. Этот процесс (использование ключа и замка) является методом или алгоритмом. Теперь этот метод работает только в том случае, если у вас есть подходящий ключ для вставки в замок, и ваш ключ будет действителен только до тех пор, пока вы проживаете в конкретном жилище. Следующий житель поменяет замки на другой ключ, чтобы убедиться, что вы не можете войти, даже если вы знаете метод.

    Выбор трех вышеперечисленных пунктов — алгоритма, ключа и периода — зависит от ваших потребностей. Если вы находитесь на поле боя и получаете текущие тактические данные, вам нужен алгоритм, который упрощает расшифровку сообщения в пылу битвы. С другой стороны, вы также должны предполагать, что ваш оппонент перехватил ваше зашифрованное сообщение и пытается его сломать. Следовательно, вы должны выбрать достаточно сложный алгоритм (метод), чтобы к тому времени, когда ваш оппонент это выяснил, данные были бесполезны.Чем проще алгоритм вы выберете, тем чаще вам придется менять ключ, открывающий код, — если вы хотите держать своего врага в неведении.

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


    Замещающие шифры и кольца декодера

    Мы постоянно используем подстановочные шифры. (На самом деле, шифры подстановки в большинстве случаев можно было бы правильно называть кодами.) Код Морзе, сокращение, семафор и код ASCII, с которым эти символы хранятся внутри моего Macintosh, — все это примеры.(ASCII означает Американский стандартный код для обмена информацией, на всякий случай, если вам интересно.) Единственное различие между этими и шпионскими кодами состоит в том, что приведенные выше примеры стандартизированы, так что их знают все.

    Кольцо декодера Captain Midnight (которое также является кольцом «кодировщика») позволяет выполнять простой шифр подстановки. Обычно он имеет два концентрических колеса букв, от A до Z. Вы вращаете внешнее кольцо и заменяете буквы в сообщении, находящемся на внешнем кольце, буквами, расположенными непосредственно под ним на внутреннем кольце (см. Диаграмму).Здесь алгоритм заключается в смещении алфавита, а ключ — это количество символов для его смещения. Юлий Цезарь использовал эту простую схему, смещая на 3 символа (Он бы поставил «A» на внешнем кольце букв поверх «D» на внутреннем кольце, если бы у него было кольцо декодера Captain Midnight.) Слово «EXPLORATORIUM» «таким образом становится» HASORUDWRULXP. » Такая схема была легко сломана и показывала определенную степень наивности Цезаря в отношении разведки врага.


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

    Щелкните здесь, чтобы загрузить копию Cypher Wheel (12k PDF).Скопируйте и вырежьте два колеса. Поместите меньшее колесо поверх большего колеса и поверните их так, чтобы ваша «ключевая буква» на маленьком колесе оказалась под буквой «А» большого колеса. Теперь вы можете зашифровать свой открытый текст и передать его другу, который знает правильную ключевую букву.

    Вы можете немного усложнить декодирование своего зашифрованного текста, если бросите в шляпу 26 листов бумаги, на каждом из которых написана буква алфавита, вытащите их по одной и положите рядом друг с другом. нормальный алфавит.Результат может выглядеть следующим образом (я просто использовал порядок клавиш на своей клавиатуре, поэтому вы можете назвать это кодом «Qwerty»):

    Обычная буква A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 
    Буква зашифрованного текста Q W E R T Y U I O P A S D F G H J K L Z X C V B N M

    Вы можете составить секретное сообщение из приведенной выше таблицы. Каждый раз, когда вы видите «Я», вы заменяете внизу «О» и так далее для других символов. Сообщение «Встретимся после школы за спортзалом» будет выглядеть так:

    .

    «DTTZ DT QYZTK LEIGGS WTIOFR ZIT UND.»

    Длина слова — особенно короткие слова — дает отличные подсказки относительно природы кода (см. Частотные диаграммы). Чтобы скрыть ваше сообщение, игнорируйте пробелы и разбейте сообщение на части равного размера. В шпионском бизнесе обычно используется пять букв, поэтому ваше сообщение будет выглядеть следующим образом (обратите внимание, что в конце добавляется дополнительный «фиктивный» символ «M», чтобы оно представляло собой группу из 5 букв. У получателя не должно быть никаких проблема с лишним персонажем.):

    DTTZD TQYZT KLEIG GSWTI OFRZI TUNDM

    Другая популярная система, называемая схематическим шифром, используемая многими детьми в школе, заменяет буквы символами вместо других букв.Эта система, по сути, аналогична системе замены букв, но ее легче запомнить, чем 26 случайно выбранных букв. Здесь используются доски для крестиков-ноликов и два крестика, как показано ниже.

    То же секретное сообщение, что и выше, с использованием линий, окружающих каждую букву (и включая точку там, где это необходимо), становится:

    Несмотря на то, что это выглядит как неразборчивый текст из космоса, на это у ручного криптолога уйдет не более 10 минут, чтобы разобраться.Почему? При наличии достаточного количества зашифрованного текста определенные закономерности становятся очевидными. Обратите внимание, как часто появляется пустой четырехсторонний прямоугольник: шесть раз из 29 символов или примерно 20% времени. Это сразу указывало бы на то, что пустое поле почти наверняка было символом «Е», наиболее часто используемой буквы в английском языке. Другие буквы также можно определить по их частоте и по их ассоциации с другими соседними символами (см. «Частоты»). Почти все шифры подстановки открыты для такого рода анализа.

    Фрэнсис Бэкон создал один из наиболее интересных подстановочных шифров. Он использовал два разных шрифта, немного различающихся по весу (жирности). Он разбил свой зашифрованный текст на 5 групп символов, каждая из которых будет представлять один символ в его открытом тексте. В зависимости от того, какие символы в группе были выделены жирным шрифтом, можно определить символ открытого текста, используя следующую таблицу (* обозначает простой символ, а B — жирный символ)

    A = ***** G = ** BB * M = * BB ** S = B ** B * Y = BB ***
    B = **** B H = ** BBB N = * BB * B T = B ** BB Z = BB ** B
    C = *** B * I = * B *** O = * BBB * U = B * B **
    D = *** BB J = * B ** B P = * BBBB V = B * B * B
    E = ** B ** K = * B * B * Q = B **** W = B * BB *
    F = ** B * B L = * B * BB R = B *** B X = B * BBB
     

    Наше то же секретное сообщение, что и выше, появилось бы таким образом (жирные и простые символы Бэкона были менее очевидны, чем те, что ниже):

    T  o b  e или n  o  t to b  e  th  a  t i  s t  h  e q ​​ uest  i  on.Whet  h  er ' t  is no  ble  r  i  n the  mi  n  d  to
    s  uf   f  er  th  e s  lin  gs  a  nd ar  ro  w  s o  f
    out  ra  geous fort  u  n  e   или  t  o t  ak  e  ar  m  s
    ag  a   i  ns  t  a sea  o  f tr  oub  l  es a  nd  by
    o  pp  o  s  in  g конец им?
     

    Чтобы расшифровать, мы просто разбиваем символы на группы по 5 и используем ключ выше, чтобы найти текстовое сообщение.

      М Е Е Т М Е Б Е
    T  ob  eo rn  o  tt ob  e  th  a  ti  st  h  eq  ue st  i  on Whet  h  er  t  is
    
      Г И Н Д Т Е Г
    нет  ble  r  i  nth e  mi  n  d  tos  uf   f  er  th  es  lin  gs  a  и ar  ro  w
    
      Г М А Ф Т Е Р С
      so  fou t  ra  ge ousfo rt  u  n  e   or  t  ot  ak  e  ar  m  sag  a   i  ns  t 
    
      C H O O L
    море  o  f tr  oub  l  esa  n d  byo  p p  o  s  in  gendt hem?
     

    Шифры транспонирования

    Возвращаясь к школьным дням, oo-day oo-yay emember-ray ig-pay atin-lay? Свинья-латынь — это форма транспозиционного шифра, в котором оригинальные буквы сохраняются нетронутыми (хотя и с добавлением суффикса «ау»), но каким-то образом переставлены.

    Еще до школьных времен, в 5 веке до нашей эры, спартанцы использовали интересный шифр транспозиции, названный scytale . В скитале использовался цилиндр с лентой, спирально обернутой вокруг него от одного конца до другого. Сообщение было написано на ленточках, а затем распаковано с цилиндра. Только тот, у кого цилиндр такого же диаметра, мог перемотать и прочитать сообщение.

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

    Поскольку и отправитель, и получатель транспонированного зашифрованного текста должны согласовать и запомнить этот алгоритм или метод шифрования и дешифрования, было бы неплохо сделать что-нибудь простое. Поскольку геометрические фигуры легко запомнить, они служат основой для целого класса транспозиционных шифров.Поместим наше сообщение в форму коробки. Так как здесь 29 символов, мы добавим пустышку («О»), чтобы получилось 30, и напишем сообщение в поле размером шесть на пять.

    ВСТРЕТЬ МЕНЯ
    А Ф Т Е Р С
    C H O O L B
    E H I N D T
    H E G Y M O
     

    Теперь мы можем расшифровать сообщение, перемещаясь вниз по столбцам, а не по строкам. Еще раз мы разделим символы на группы по пять, чтобы не было никаких подсказок о размерах слов. Результат выглядит так:

    MACEH EFHHE ETOIG TEONY MRLDM ESBTO

    Настоящее разнообразие начинается, когда вы понимаете, что вам не нужно записывать открытый текст в поле строка за строкой.Вместо этого вы можете следовать шаблону, который зигзагообразно движется по горизонтали, вертикали или диагонали, или по спирали внутрь или по спирали (по часовой стрелке или против часовой стрелки), или по многим другим вариантам (см. Диаграмму ниже).

    После того, как вы поместили текст в выбранную форму, используя один маршрут, вы можете затем зашифровать его, выбрав другой маршрут по тексту. Вам и вашему партнеру просто нужно согласовать маршрут чтения, маршрут транскрипции (шифрования) и отправную точку для создания системы.Эти системы называются транскрипциями маршрутов.

    И снова наше сообщение. Маршрут считывания закручивается по спирали внутрь против часовой стрелки, начиная с правого нижнего угла (левый рисунок). Маршрут транскрипции (правая диаграмма) представляет собой зигзагообразную диагональ, начиная с нижнего левого угла. Зашифрованный текст становится:

    EAMTN FTDIE EHOTE RHMEM BYESC GLOHO

    Чтобы расшифровать, вы заполняете поле ввода, следуя зигзагообразному маршруту, и читаете сообщение, используя спиральный маршрут.

    Другой тип шифра транспозиции использует ключевое слово или фразу для перемешивания столбцов.Это называется столбчатым транспонированием. Это работает так: сначала придумайте секретное ключевое слово. Нашим будет слово СЕКРЕТНО. Затем напишите его над столбцами букв в квадрате и пронумеруйте буквы ключевого слова так, как если бы они упали, если бы мы разместили их в алфавитном порядке. (Если есть повторяющиеся буквы, такие как «E», они нумеруются слева направо.)

    5 2 1 4 3 6
    С Е К Р Е Т
    ВСТРЕТЬ МЕНЯ
    А Ф Т Е Р С
    C H O O L B
    E H I N D T
    H E G Y M O
     

    Теперь запишите столбцы в порядке, указанном числами.Полученный зашифрованный текст выглядит так:

    ETOIG EFHHE MRLDM TEONY MACEH ESBTO

    Как видите, это просто другая структура предыдущего зашифрованного текста, но, по крайней мере, это не какой-то обычный шаблон. Мы могли бы легко усложнить задачу, заполнив квадрат более сложным путем. Мы также могли бы использовать геометрическую форму, отличную от прямоугольника, и комбинировать замену и транспонирование. Единственная проблема, которая может возникнуть, — это то, что расшифровка может стать настолько сложной, что навсегда останется в секрете на принимающей стороне! Если подумать, она никогда не встречала меня за спортзалом…


    Частоты

    Порядок частотности отдельных букв:
    E T O A N I R S H D L C W U M F YG P B V K X Q J Z

    Порядок частотности орграфов (двухбуквенных комбинаций):
    , в зависимости от того, в каком месте он находится, или нет в нем, как и раньше,

    Порядок частотности триграфов:
    и то и другое для nde имеет nce edt tis of sth men

    Порядок частоты наиболее распространенных двойников:
    ss ee tt ff 11 mm oo

    Порядок частотности начальных букв:
    T O A W B C D S F M R H I Y E G L N P U J K

    Порядок частотности последних букв:
    E S T D N R Y F L O G H A R M P U W

    Однобуквенные слова:
    a, I, 0.

    Наиболее частые двухбуквенные слова:
    of, to, in, it, is, be, as, at, so, we, he, by, or, on, do, if, me, my, up, an , иди, нет, нас, я …

    Наиболее частые трехбуквенные слова:
    the, and, for, are, but, not, you, all, any, can, had, her, was, one, our, out, day, get, has, him , его, как, мужик, новый, сейчас, старый, смотри, два, путь, кто, мальчик, сделал, его, давай, поставил, скажем, она тоже пользуется …

    Наиболее частые четырехбуквенные слова:
    что, с, иметь, это, будет, ваш, от, они, знают, хотят, были, хорошо, много, немного, время, очень, когда, приди, сюда, только Давно, сделай, много, больше, только, более, таких, возьми, чем, они, ну, были…


    Библиография:

    Гарднер, Мартин. Коды, шифры и секретная запись.
    Нью-Йорк, Нью-Йорк: Dover Publications Inc., 1972.
    Замечательное, веселое и легкое для чтения введение в коды и шифры.

    Смит, Лоуренс Дуайт. Криптография, наука секретного письма.
    Нью-Йорк, Нью-Йорк: Dover Publications Inc., 1943.
    Хороший отчет о кодах и шифров с множеством исторических примеров.

    Конхейм, Алан Г. Криптография: Учебник.
    Нью-Йорк, Нью-Йорк: John Wiley & Sons, 1981.
    Техническая (и математическая) книга о более современных методах создания и взлома кода.

    Гейнс, Хелен Фуше. Криптоанализ: исследование шифров и их решение.
    Нью-Йорк, Нью-Йорк: Dover Publications Inc., 1956.
    Название говорит само за себя.


    Интернет-ресурсы


    © 2019, Рон Хипшман

    Известные коды и шифры в истории и их роль в современном шифровании


    Мы скрывали сообщения с тех пор, как отправляли сообщения.Первоначальная уловка заключалась в использовании скрытности; быстрые и скрытные посыльные передавали сообщения туда и обратно. Основной способ уберечь эти сообщения от посторонних глаз — просто не попасться. После того, как сообщение было обнаружено, оно попадало в руки злоумышленников. Оттуда злоумышленник может просто прочитать сообщение, а затем узнать, что вы запланировали, или притвориться предполагаемым получателем и отправить ложный ответ, тем самым выполнив исходную атаку Man In The Middle (MITM).

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

    Методы шифрования текста безграничны, как и наше воображение. Однако практическое применение любого данного метода шифрования очень ограничено. Методы шифрования и дешифрования должны быть известны обеим сторонам, и они должны быть достаточно строгими, чтобы злоумышленники не могли их угадать.Эти две, казалось бы, простые проблемы вечно преследовали системы шифрования. Игра по поддержанию работоспособности шифровальных шифров против непрекращающегося натиска плохих парней с целью взлома тех же самых систем привела к богатой и интересной истории шифров.

    Введение в терминологию шифров

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

    Блочный шифр

    Блочный шифр шифрует сообщение с заданным числом бит (блок) за раз.

    Код

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

    Шифр ​​

    Шифры — это замена зашифрованного текста открытым текстом. Этому процессу не приписывается никакого смысла, это математическая или механическая операция, предназначенная для того, чтобы просто запутать открытый текст. НАПРИМЕР: алгоритм «вращения 13» (ROT13), в котором буквам назначается буква на 13 позиций после нее в алфавите. Это приводит к A = N, B = O и т. Д. Чтобы зашифровать или расшифровать сообщение, человеку нужно только знать алгоритм .

    Шифрованный текст

    зашифрованный текст — это нечитаемая зашифрованная форма открытого текста.Любой, кто пытается прочитать зашифрованный текст, должен сначала его декодировать. Расшифровка зашифрованного текста показывает читаемый открытый текст.

    Keyspace

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

    Хэш

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

    Отличительными чертами хорошего шифра хеширования являются:

    1. Это детерминированный ; это означает, что одно и то же сообщение, проходящее через один и тот же хеш-шифр, всегда будет давать один и тот же отпечаток пальца, и
    2. Он имеет низкий уровень коллизия ; Это означает, что разные сообщения, проходящие через один и тот же хеш-шифр, должны давать разные отпечатки пальцев.

    Моноалфавитные шифры

    Шифр, использующий один алфавит и обычно являющийся простым транспонированием. Например, буква A будет представлена ​​буквой F.

    Их так легко взломать, что теперь у нас есть Cryptogram книг в аптеках вместе с кроссвордами для развлечения.

    Вот несколько примеров моноалфавитных шифров:

    • Шифр ​​Цезаря
    • Шифр ​​Пигпен
    • Шифр ​​Playfair
    • Азбука Морзе (несмотря на название)

    Обычный текст

    Открытый текст относится к читаемому тексту сообщения.Открытый текст зашифрован в зашифрованный текст и может быть расшифрован получателем обратно в открытый текст.

    Полиалфавитные шифры

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

    Вот несколько примеров полиалфавитных шифров:

    • Шифр ​​Альберти
    • Шифр ​​Виженера

    Потоковый шифр

    Потоковый шифр шифрует сообщение по одному символу за раз.Машина Enigma — это пример потокового шифра.

    Симметричные / асимметричные ключи

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

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

    Криптоанализ

    Есть два способа обнаружить открытый текст из зашифрованного текста. Первый способ — расшифровать зашифрованный текст с использованием ожидаемых методов дешифрования. Второй способ — использовать анализ для обнаружения открытого текста без наличия ключа шифрования. Последний процесс в просторечии называется взлом криптовалюты , что более правильно называть криптоанализом.

    Частотный анализ

    Криптоанализ проверяет зашифрованный текст и пытается найти шаблоны или другие индикаторы, чтобы выявить открытый текст под ним. Чаще всего используется метод криптоанализа , частотный анализ . В английском языке 26 букв, и частота букв в обычном языке известна. Гласные, такие как A и E, встречаются чаще, чем буквы, такие как Z и Q. Если сделать еще один шаг назад, целые слова, такие как THE и AN, встречаются чаще, чем такие слова, как ANT или BLUE.

    Чтобы уменьшить частоту слов, зашифрованный текст можно разбить на стандартные блоки, а не оставить в их естественной форме. Например:

    Учитывая открытый текст:

    СКОЛЬКО ДЕРЕВА БЫЛ ДЕРЕВЯННЫЙ ЧАК, ЕСЛИ ДЕРЕВЯННЫЙ ЧАК МОЖЕТ ЗАПРАВИТЬ ДРЕВЕСИНА

    и применяя шифр Цезаря с поворотом на 16, мы получаем следующий открытый текст:

    75

    90 XEM CKSX MEET MEKBT Q MEET SXKSA SXKSA YV Q MEET SXKSA SEKBT SXKSA MEET

    Частотный анализ дает нам некоторые подсказки относительно открытого текста:

    • Фразы MEET и SXKSA повторяются по одной только дважды
    • Буквы Q появляются дважды является убедительным показателем того, что Q — это либо A, либо I
    • Слово MEET почти наверняка будет иметь две гласные в середине, потому что в этой позиции будет очень мало слов с двумя одинаковыми согласными.
    • Недостаток ротационных шифров состоит в том, что ни одна буква не может соответствовать самой себе, поэтому мы можем исключить фактическое слово MEET как открытый текст.
    • Если мы предположим, что Q — это либо A, либо I, то мы также можем предположить, что E не является ни A, ни I и не может быть E. Поскольку мы почти уверены, что E — гласная, в результате у нас E будет либо O, либо U. Оттуда не требуется больших усилий, чтобы проверить эти варианты и, в конечном итоге, получится вероятное слово WOOD .
    • Если WOOD правильный, то мы можем изменить те же буквы другими словами: E = 0, M = W, T = D, Q = A, и продолжить работу над зашифрованным текстом.
    • Другой способ продолжить — проверить, является ли это простым шифром вращения. Для этого мы должны вычислить смещение от буквы зашифрованного текста и буквы открытого текста, например M = W. Это дает нам 16, и если мы затем перевернем каждую букву назад на 16 слотов в алфавите, остальная часть открытого текста либо сделает толку, а то все равно будет тарабарщина непонятная.

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

    XEMCK SXMEE TMEKB TQMEE TSXKS ASXKS AYVQM EETSX KSASE KBTSX KSAME ET

    Хотя это не делает частотный анализ невозможным, он значительно усложняет его.Первым шагом в изучении этого типа шифра будет попытка восстановить его естественную формулировку. По-прежнему можно увидеть повторы, такие как MEET и SXKSA , но гораздо сложнее выделить отдельные слова, такие как Q .

    Если вам нравятся такие вещи, загляните в раздел журналов в местной аптеке или книжном магазине. Обычно книги о криптоиграх находятся в том же разделе, что и книги кроссвордов.

    Использование замененных криптографических ключей

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

    В коммерческом Интернете в эпоху после Сноудена легко представить, что АНБ получит замененные ключи SSL и вернется к расшифровке огромного массива данных, полученных с помощью таких программ, как PRISM.

    Квантовые вычисления и криптоанализ

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

    Напротив, квантовые компьютеры работают с использованием физических концепций суперпозиции и запутанности вместо битов для вычислений. Если окажется возможным, квантовые вычисления, вероятно, смогут взломать любую современную криптосистему за долю времени, которое требуется сегодня. И наоборот, квантовые вычисления также должны поддерживать новые типы шифрования, которые открывают совершенно новую эру криптографии.

    Историческая прогрессия

    Первоначальные моноалфавитные и полиалфавитные шифры имели одну и ту же проблему: они использовали статический, никогда не меняющийся ключ.Это проблема, потому что, как только злоумышленник понял, как, например, построить диаграмму свиней, он сможет расшифровать каждое отдельное сообщение, когда-либо зашифрованное с помощью этого алгоритма.

    Ключи шифрования

    Чтобы еще больше запутать текст, была разработана концепция смены ключей. Используя шифр Цезаря, можно было изменить зашифрованный текст, просто увеличив значение поворота. Например:

    Использование шифра Цезаря для шифрования фразы FLEE TO THE HILLS FOR ALL IS LOST

      Ротация 10 шифротекста:
    PVOO DY DRO RSVVC PYB KVV SC VYCD
    
    Вращение 4-х шифр-текста:
    JPII XS XLI LMPPW JSV EPP MW PSWX  

    Преимущество применения произвольного ключа к открытому тексту состоит в том, что кто-то, кто знает, как работает шифр Цезаря, все равно не сможет расшифровать текст, не зная, какое значение поворота было использовано для его шифрования .

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

    Важные шифры

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

    • устойчивость к криптоанализу
    • достаточно гибкий, чтобы транспортировать посланником в суровых условиях
    • простой в использовании на грязном, кровавом поле битвы

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

    Некоторые из наиболее известных шифров следуют в следующем разделе.

    Scytale — 120 AD

    Это моноалфавитная симметричная система шифрования. Отправитель и получатель должны иметь деревянный цилиндр одинакового диаметра. Фактически, это ключ .

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

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

    Vigenère — 1553

    Первоначально описанный Джованом Беллазо в 1553 году, шифр Виженера был воссоздан несколько раз, последний раз — Блез де Виженера в 19 веке. Это один из первых полиалфавитных шифров.Он по-прежнему симметричен по своей природе, но он был достаточно прочным, чтобы сломать его, поэтому он использовался более трех столетий.

    Полиалфавитные шифры позволяют использовать множество алфавитов во время шифрования, что значительно увеличивает пространство ключей зашифрованного текста. Ранние версии полиалфавитных шифров требовали строгой привязки к точкам, в которых алфавит изменялся. Реализация этого шифра в Bellaso позволяла отправителю изменять алфавиты в произвольных местах в процессе шифрования.Сигнал смены алфавита должен был быть согласован заранее между отправителем и получателем, поэтому это все еще симметричный метод шифрования.

    Шифр ​​Виженера использовался на практике еще во время Гражданской войны в США. Однако хорошо известно, что Союз неоднократно нарушал эти сообщения, потому что руководство Конфедерации в значительной степени полагалось на слишком мало ключевых фраз, чтобы сигнализировать об изменении алфавита.

    Pigpen Cipher — 1700’s

    Также известный как масонский шифр, Pigpen Cipher — еще один симметричный моноалфавитный шифр подстановки.Шифрование и дешифрование выполняется путем разметки 4-х сеток. Две сетки содержат 9 ячеек, как доска для крестиков-ноликов, а две сетки напоминают большую букву X и содержат по 4 ячейки каждая. Вместе 26 пробелов совпадают с 26 буквами латинского алфавита. Все секции однозначно идентифицируются по комбинации формы секции и наличию или отсутствию на ней точки. Сообщения шифруются с использованием идентификатора раздела вместо фактического письма.

    Здесь я создал ключ шифра Pigpen:

    Расшифровка выполняется путем создания той же сетки и обратного переноса идентификатора раздела на букву.Следовательно, текстовая фраза READ COMPARITECH зашифровывается в эту серию изображений:

    Шифр ​​Playfair — 1854

    В качестве ключа кодирования шифр Playfair использует 26 биграмм (две буквы) вместо 26 монограмм. Это значительно увеличивает пространство ключей зашифрованного текста и очень затрудняет частотный анализ. Сообщения, закодированные в Playfair, создаются путем построения сетки букв 5 на 5, которая генерируется случайной короткой фразой, а затем заполнения остальной части сетки неповторяющимися буквами алфавита.Эта сетка образует ключ, и любой, кто хочет расшифровать сообщение, должен восстановить эту же сетку. Из этого можно сделать вывод, что получатель также должен знать ту же короткую фразу, которая использовалась для шифрования сообщения, которую гораздо труднее определить, чем простое число ротации.

    Проницательные читатели поймут, что 5 x 5 = 25, но в латинском алфавите 26 букв. Для этого буквы I и J обычно используются как взаимозаменяемые. Также можно использовать любые две другие буквы, но эта информация должна быть передана получателю, чтобы убедиться, что он правильно декодирует сообщение.

    После того, как сетка была построена, пользователям нужно было знать только 4 простых правила, чтобы зашифровать или расшифровать сообщение. В письменной статье сложно понять смысл, поэтому я создал сетку Playfair для иллюстрации. Я использовал фразу READ COMPARITECH в качестве ключевой. Записав это, я начинаю писать алфавит, чтобы заполнить остальную часть сетки. Помните, что каждая буква может быть в сетке только один раз, и I и J взаимозаменяемы. Это дает мне ключ Playfair, как на изображении ниже.Красные буквы пропущены, потому что они уже есть в сетке.

    Имейте в виду, что этап READ COMPARITECH — это просто случайная фраза для построения сетки. Это не зашифрованный текст. Эта результирующая сетка будет использоваться для шифрования вашего открытого текста.

    Одноразовые планшеты (OTP) — 1882

    Одноразовые планшеты (OTP) относятся к системе симметричного шифрования с использованием ключей, которые меняются с каждым отдельным сообщением. Если ключи действительно равны один раз , то зашифрованный текст будет чрезвычайно устойчив к криптоанализу.Эти клавиши изначально были буквально написаны на блокнотах, и, поскольку каждая клавиша используется только один раз, название One Time Pad прижилось.

    На практике сложно правильно развернуть OTP. Как симметричная система, она требует, чтобы отправитель и все получатели имели одну и ту же книгу OTP. У него также есть существенный недостаток, заключающийся в том, что сообщение не может быть длиннее, чем используемый блокнот. Если бы это было так, то части блокнота пришлось бы использовать повторно, что значительно ослабляет шифрованный текст для криптоанализа.

    OTP все еще используются в некоторых вооруженных силах для быстрых тактических полевых сообщений.

    Engima — 1914

    Созданная гражданином Германии Артуром Шербиусом после Первой мировой войны для коммерческих целей машина Enigma представляет собой полиалфавитную машину с потоковым шифрованием. Машина состояла из клавиатуры, световой панели и нескольких регулируемых роторов. Операторы устанавливали положение роторов, а затем вводили сообщение на клавиатуре. При вводе каждой буквы на световой панели загоралась соответствующая буква.Это было зашифрованное письмо, из которого образовался зашифрованный текст. Приемники должны знать правильные настройки роторов для использования, а затем они выполняют тот же процесс. Однако по мере того, как получатель вводит каждую букву зашифрованного текста, соответствующая буква, которая высвечивается, будет буквой открытого текста.

    Немецкие военные усовершенствовали машину, добавив коммутационную панель, поэтому считали ее небьющейся и использовали Enigma для всего. Шифровальное бюро польского генерального штаба раскрыло германскую военную загадку в 1932 году.Им удалось перепроектировать машину на основе информации, полученной из-за низкой операционной безопасности (OpSec) немецких пользователей Enigma. Однако они не могли расшифровать сообщения, пока французы не поделились информацией об Enigma, полученной от одного из их немецких шпионов.

    Польское бюро шифрования политики могло читать немецкий трафик Enigma в течение многих лет, пока постоянные успехи Германии в системе не сделали его слишком трудным. В этот момент, незадолго до начала Второй мировой войны, Великобритания и Франция были вовлечены, и мониторинг и расшифровка трафика Enigma стали частью Project Ultra.

    Принято считать, что способность союзников расшифровывать трафик Enigma сократила исход Второй мировой войны на несколько лет.

    Семейство хэш-шифров SHA 1993 — 2012

    SHA — это семейство алгоритмов, которые используются для хеширования, а не шифрования, и опубликованы Национальным институтом стандартов и технологий (NIST). Исходный шифр SHA, опубликованный в 1993 году, теперь имеет обозначение SHA-0 , чтобы соответствовать соглашениям об именах последующих версий.

    Было показано, что как SHA-0 , так и SHA-1 (прекращено в 2010 г.) не соответствуют стандартным критериям хеширования (перечисленным в разделе терминологии) и больше не используются. HMAC-SHA1 по-прежнему считается неразбитым, но от SHA-1 во всех вариантах следует отказаться в пользу более высоких версий, где это возможно.

    Текущие шифры SHA SHA-2 и SHA-3 (2012) все еще используются.

    MD5 Hash — 1991

    MD5 — это алгоритм хеширования, разработанный в 1991 году для решения проблем безопасности в MD4.К 2004 году MD5 был по существу сломан в результате краудсорсинга, показавшего, что MD5 очень уязвим для атаки на день рождения

    Отпечатки MD5 все еще используются для проверки файлов или сообщений. Но поскольку он криптографически взломан, на хэши MD5 можно положиться только для обнаружения непреднамеренных изменений файлов или сообщений. Преднамеренные изменения могут быть замаскированы из-за слабости алгоритма.

    Современные шифры

    Криптография сегодня широко используется в Интернете.Большая часть нашей интернет-активности зашифрована с использованием TLS (Transport Layer Security), а обмен ключами происходит с использованием асимметричного процесса.

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

    Из-за этой бесконечной битвы за вычислительную мощность компьютеры, использующие Интернет, обычно в любой момент времени поддерживают большой список шифров. Этот список шифров называется набором шифров , и когда два компьютера подключаются, они совместно используют список шифров, которые они оба поддерживают, и согласовывается общий шифр для выполнения шифрования между ними. Этот процесс существует для обеспечения максимальной совместимости между пользователями и серверами в любой момент времени.

    Шифры, такие как Enigma и DES (стандарт шифрования данных), были взломаны и больше не считаются безопасными для криптографического использования.На сегодняшний день RSA (Rivest, Shamir, Adleman) и AES (Advanced Encryption Standard) считаются безопасными, но по мере увеличения вычислительной мощности они также упадут в один прекрасный день, и необходимо будет разработать новые шифры, чтобы продолжить использование криптографии на Интернет.

    Криптография с открытым ключом

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

    RSA — это базовый шифр, используемый в криптографии с открытым ключом. Шифр RSA умножает два очень больших простых числа вместе как часть процесса генерации ключа. Его сила основана на том факте, что противник должен будет правильно разложить этот продукт на два первоначально использованных простых числа.Даже при сегодняшней вычислительной мощности это в большинстве случаев невозможно. Вы можете вспомнить, что факторизация — это процесс уменьшения числа до двух наименьших чисел, которые можно умножить вместе, чтобы получить исходное число. Простые числа имеют только два множителя: 1 и самих себя. Я описываю криптографию с открытым ключом более подробно здесь.

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

    Для таких мелких вещей, как электронная почта, асимметричная криптография подходит, но для крупномасштабного шифрования, такого как целые диски или резервные копии файлов, она слишком медленная. Большинство крупномасштабных криптосистем сегодня используют гибридный подход; асимметричное шифрование используется для обмена симметричными ключами, а затем симметричные ключи используются для фактических процессов шифрования и дешифрования.

    Непрерывный зашифрованный текст

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

    Последнее письмо убийцы-зодиака

    Убийца-зодиак был серийным убийцей, терроризировавшим Калифорнию в течение нескольких лет в конце 60-х годов. За это время убийца отправил в полицию 4 зашифрованных сообщения, из которых четвертое до сих пор не повреждено.

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

    Три последних сообщения Enigma

    Еще не все сообщения Enigma были расшифрованы. Хотя это не имеет большого военного значения, существует проект Enigma @ Home , который пытается расшифровать несколько оставшихся сообщений от 1942 года.Подобно другим проектам @ home , таким как SETI @ Home , проект использует свободные циклы ЦП на компьютерах участников, чтобы попытаться расшифровать окончательные сообщения.

    Что дальше?

    Вычислительная техника — это еще молодая наука. Мы все еще работаем с «версией 1», что означает, что наши компьютеры по-прежнему ограничены двоичными функциями единиц и нулей. Квантовые вычисления, вероятно, станут следующим большим достижением в вычислениях, и они кардинально изменят принцип работы вычислений, а не просто увеличат вычислительную мощность для обработки большего количества единиц и нулей.В квантовой механике это странное собственно называется «суперпозицией», что означает, что что-то может находиться более чем в одном состоянии, пока оно не будет обнаружено. Самый известный мысленный эксперимент, иллюстрирующий суперпозицию, — это эксперимент с котом Шредингера, в котором кот в ящике и жив, и мертв, пока не перейдет в одно из этих состояний после наблюдения.

    В вычислениях это означает, что кубиты (квантовые биты) могут иметь два состояния вместо одного состояния двоичного файла. В то время как бит может быть только 1 или 0, кубит может быть обоими через концепцию суперпозиции.Это не только делает сложную математику, такую ​​как та, которая используется для разложения больших чисел, почти тривиальной, но также может означать конец атак Main-In-The-Middle.

    Еще одно свойство квантовой передачи — понятие «интерференция». Интерференция — это поведение субатомных электронов, которые проходят через барьер, а затем воссоединяются на другой стороне. Вмешательство может иметь место только в том случае, если его никто не наблюдает (дерево, лес, кто-нибудь?). Следовательно, для кого-то было бы теоретически невозможно перехватить сообщение, прошедшее через квантовую систему, не будучи обнаруженным.Путь электронов изменится в результате наблюдения, и интерференция больше не возникнет, что означает, что сообщение было обнаружено. Лучший квантовый компьютер в настоящее время имеет несколько кубитов, но технология быстро развивается.

    «Скитейл» Луригена. CC Share-A-Like 3.0

    Лучшие коды: 27 шагов (с изображениями)

    Введение: Лучшие коды

    Это руководство наполнено множеством интересных кодов и шифров, я уверен, что всем вам понравится.

    Если вам нравится то, что я здесь делаю, подпишитесь на мой канал на YouTube, Bolillo Kremer, чтобы увидеть некоторые из моих занимательных проектов по кодированию. Вы можете посмотреть мое последнее видео здесь! Электрошокер с функцией распознавания лиц (ВЫ СМЕЕТЕСЬ, ЧТО ВАМ ПОПРОБОВАЛИ !!!)


    Чтобы узнать больше о кодах и шифрах, посетите мой сайт bestcodes.weebly.com
    или посетите bestcodesgame.weebly.com
    , чтобы попрактиковаться в декодировании

    Также посетите мои другие инструкции «Коды фильмов» или их можно посмотреть здесь, по адресу

    http: // bestcodes.weebly.com/movie-codes.html

    Добавить TipAsk QuestionDownload

    Шаг 1: A1Z26

    A1Z26

    Код A1Z26 — очень простой код. Как вы знаете, в американском алфавите 26 букв, поэтому Z будет равно 26, потому что это 26-я буква в алфавите.

    ABCDEFGHIJKLMNOPQRSTU VWXYZ

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

    Добавить TipAsk QuestionDownload

    Шаг 2: ASCII

    ASCII 9000II —

    компьютерный код, похожий на двоичный.Вместо двоичных единиц и нулей он использует числа 1-256

    A = 65

    B = 66

    C = 67

    D = 68

    E = 69

    F = 70

    G = 71

    H = 72

    I = 73

    J = 74

    K = 75

    L = 76

    M = 77

    N = 78

    O = 79

    P = 80

    Q = 81

    R = 82

    S = 83

    T = 84

    U = 85

    V = 86

    W = 87

    X = 88

    Y = 89

    Z = 90

    a = 97

    b = 98

    c = 99

    d = 100

    e = 101

    f = 102

    g = 103

    h = 104

    i = 105

    j = 106

    k = 107

    l = 108

    m = 109

    n = 110

    o = 111

    p = 112

    q = 113

    r = 114

    s = 115

    t = 116

    u = 117

    v = 118

    w = 1 19

    x = 120

    y = 121

    z = 122

    0 = 48

    1 = 49

    2 = 50

    3 = 51

    4 = 52

    5 = 53

    6 = 54

    7 = 55

    8 = 56

    9 = 57

    Добавить TipAsk QuestionDownload

    Шаг 3: Atbash

    Atbash

    Код Atbash — это просто обратный алфавит.Например, A будет равно Z.

    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

    Z Y X W V U T S R Q P O N M L K J I H G F E D C B A

    Добавить TipAsk QuestionDownload

    Двоичный код

    распознает только двоичный код

    Step

    , который распознает двоичный код

    Step

    , только двоичный код

    . Это очень сложный код, потому что они разные для строчных и заглавных букв.

    A 01000001

    B 01000010

    C 01000011

    D 01000100

    E 01000101

    F 01000110

    G 01000111

    H 01001000

    000 00

    000

    000

    000

    000

    000

    000

    000

    000 M 01001101

    N 01001110

    O 01001111

    P 01010000

    Q 01010001

    R 01010010

    S 01010011

    T 01010100

    U105000 00

    00

    000

    00

    00

    00

    U105000

    00

    Z 01011010

    a 01100001

    b 01100010

    c 01100011

    d 01100100

    e 01100101

    f 01100110

    g 01100 i102000

    00

    00

    00

    00

    00

    00

    00

    00

    00

    00 l 01101100

    м 01101101

    n 01101110

    9000 2 o 01101111

    p 01110000

    q 01110001

    r 01110010

    s 01110011

    t 01110100

    u 01110101

    v 01110110

    000 00 00 00 00 110

    000 00 00 00 00 2000 .01011110

    и 00100110

    * 00101010

    (00101000

    ) 00101001

    — 00101101

    _ 01011111

    + 00101011

    = 00111101; 00111011

    : 00111010

    «00100010

    ‘00100111

    ` 01100000

    ~ 01111110

    <00111100

    > 00111110

    ? 001111

    00101110

    /00101111

    {01111011

    } 01111101

    [01011011

    ] 01011101

    € 10101100

    ¶ 10110110 Step

    0 Braille 9000Down

    000 10110110

    Down

    читать. Это серия выпуклых точек, которые говорят вам, что это за буква, цифра или слово.

    Добавить TipAsk QuestionDownload

    Шаг 6: Цезарь Шифр ​​

    Цезарь Шифр ​​

    Шифр ​​Цезаря — это код, который придумал Юлий Цезарь, когда отправлял письма.Он изобрел его, чтобы, если у его посланника украдут это письмо, грабитель не сможет его прочитать. Вероятно, это один из самых простых кодов на свете. Это 3 буквы назад, поэтому A будет X. Шифр ​​гнили почти такой же, как шифр Цезаря.

    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

    X Y Z A B C D E F G H I J K L M N O P Q R S T U V W

    Добавить TipAsk QuestionDownload

    Шаг 7: Columnar Cipher aumn Cipher

    1. Получите ключевое слово

    2. Если ваше ключевое слово — зебры, это 6 букв. Вы должны написать 632415, потому что Z — это шестая по высоте буква в слове, а E — это третья по высоте буква, и так далее

    3. Затем введите цифры в строках по 6, потому что Zebra — это слово из шести букв.

    4. Напишите 123456. Под числом напишите буквы из каждого столбца, которые соответствуют числам в исходной строке чисел.

    Добавить TipAsk QuestionDownload

    Шаг 8: Комбинированный шифр

    Комбинированный шифр

    Комбинированный шифр — это шифр, использующий 2 или более кодов.Например, если вы хотите создать лучший код, вы можете использовать Atbash, Caesar Cipher, Vigernere Cipher, а затем A1Z26.

    Добавить TipAsk QuestionDownload

    Шаг 9: Dice Cipher

    Dice Cipher

    Dice Cipher — это не игральные кости, это просто квадраты с точками в определенных местах.

    Добавить TipAsk QuestionDownload

    Шаг 10: Digraph Cipher

    Digraph Cipher

    Digraph Cipher похож на шифр Виженера. Когда вы пишете предложение, вы должны писать его парами двоек, например, это, и если осталась буква, добавьте к нему x.Пары букв будут координатами двух букв. Примером может быть «IA MT RY IN GT OE XP LA IN TH IS» = «VG ZN EI VT TN BC KR YG VT GZ VO». Чтобы расшифровать его, расшифрованные буквы будут координатами.

    Добавить TipAsk QuestionDownload

    Шаг 11: Дорабелла Шифр ​​

    Дорабелла Шифр ​​

    Дорабелла была сделана Эдвардом Элгаром 14 июля 1897 года для его юной подруги Доры Пенни. Не подтвержден решенный код.

    Добавить TipAsk QuestionDownload

    Шаг 12: Замещающий шифр Фрэнсиса Бэкона

    Замещающий шифр Фрэнсиса Бэкона

    Одним из лучших кодов Бэкона был код, в котором для создания новой буквы использовались полужирные и обычные шрифты в определенном порядке.Например, «код» будет примерно таким: «Fra n ci s Ba con wa s a co o l guy». После того, как вы увидите предложение, сгруппируйте все буквы в группы по 5 штук, например: «Fra n c i sBa c onwa s a co o l», опускайте любые лишние буквы. Как только вы его получите, вы готовы к декодированию.

    * = обычная буква B = жирная буква

    A = *****

    B = **** B

    C = *** B *

    D = *** BB

    E = * * B **

    F = ** B * B

    G = ** BB *

    H = ** BBB

    I = * B ***

    J = * B ** B

    K = * B * B *

    L = * B * BB

    M = * BB **

    N = * BB * B

    O = * BBB *

    P = * BBBB

    Q = B *** *

    R = B *** B

    S = B ** B *

    T = B ** BB

    U = B * B **

    V = B * B * B

    W = B * BB *

    X = B * BBB

    Y = BB ***

    Z = BB ** B

    Добавить TipAsk QuestionDownload

    Шаг 13: Шифр ​​транспозиции сетки

    Шифр ​​транспозиции сетки

    Шифр ​​транспозиции сетки это просто еще один тип шифра транспонирования.Сначала создайте сетку, которая может уместить все буквы, вы можете сделать это, взяв квадратный корень из общего количества букв, если он получается округленным в большую сторону. Если есть лишние пробелы, добавьте крестики. Затем вы разбрасываете числа в случайном порядке. Затем сопоставьте координаты со второй сеткой. Лучшие коды будут EDSEBSCTO. Чтобы расшифровать это, вам нужно сделать еще одну сетку с буквами в правильном порядке. Наконец, сопоставьте координаты с правильной сеткой.

    Добавить TipAsk QuestionDownload

    Шаг 14: Код клавиатуры

    Код клавиатуры

    Код клавиатуры — это просто порядок букв на клавиатуре.

    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

    Q W E R T Y U I O P A S D F G H J K L Z X C V B N M

    Добавить TipAsk QuestionDownload

    Шаг 15: код Морзе 18002

    был использован в телеграмме Морзе в телеграмме

    в телеграмме Морзе, и в телеграмме

    люди использовали код Морзе

    в телеграмме Морзе. Это серия коротких и длинных звуковых сигналов. Например, _ называется тире, и это будет длинный звуковой сигнал, а.будет точка и будет короткий звуковой сигнал.

    Добавить TipAsk QuestionDownload

    Шаг 16: Телефонный код

    Телефонный код

    Телефонный код действительно хорош, потому что не многие люди его знают. Это просто номер, на котором находится буква, а затем то, какой номер на этом номере. Например, A стоит 1-м номером на 2, поэтому это будет 2 1

    2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 7 8 8 8 9 9 9 9

    1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 4 1 2 3 1 2 3 4

    ABCDEFGHIJKLMNOPQRSTU VWXYZ

    Добавить TipAsk QuestionDownload

    Шаг 17: Pigpen Cipher

    Pigpen Cipher

    The Pigpen Масоны, чтобы они могли хранить документы в безопасности.Он также использовался солдатами конфедерации во время гражданской войны. Он называется The Pigpen Cipher, потому что коробка похожа на свинарку, а точки — на свиней. Это кажется сложным, но на самом деле это не так. Линии, окружающие букву, и точки внутри этих строк являются символами.

    Добавить TipAsk QuestionDownload

    Шаг 18: Розенкрейцерский шифр

    Розенкрейцерский шифр

    Розенкрейцерский шифр почти полностью похож на шифр Свиньи. Символ, который находится внутри буквы, — это символ, который вы поместили для этой буквы.

    Добавить TipAsk QuestionDownload

    Шаг 19: ROT Cipher

    Rot Cipher

    Rot Cipher — это когда вы берете письмо и кладете его обратно или четвертым, чтобы равняться другой букве. Например, -1 равно A = Z. +1 равно A + B Это связано с шифром Цезаря.

    Это распечатка колеса шифрования Rot. Вырежьте 2 круга, оставив внутренний круг НЕ ПОЛЫМ. Затем вы вставляете прихватку или скрепку через середину внутреннего колеса. Затем вы можете вращать его, чтобы выполнить свой шифр.

    Добавить TipAsk QuestionDownload

    Шаг 20: Маршрутный шифр

    Маршрутный шифр

    Маршрутный шифр — это ваше сообщение в скороговорке, похожее на поиск слова. Вы делаете стрелку в направлении первых двух или трех букв, а затем предоставляете другому человеку сделать все остальное. Чтобы было проще, вы можете сделать стрелку насквозь.

    Добавить TipAsk QuestionDownload

    Шаг 21: Scytale

    Scytale

    Цилиндр декодирует за вас!

    Для изготовления цилиндрического шифра вам понадобится длинная полоса бумаги и цилиндр.

    Оберните бумагу вокруг цилиндра так, чтобы не было видно частей цилиндра.

    Вы можете временно заклеить края лентой, чтобы помочь вам с этой деталью. напишите ваше сообщение поперек цилиндра (напишите по 1 или 2 буквы на каждой части полоски). Затем разверните бумагу из цилиндра.

    Вы не сможете расшифровать шифр, если у вас нет цилиндра того же диаметра, что и тот, на котором он был сделан.

    Добавить TipAsk QuestionDownload

    Шаг 22: Tap Code

    Tap Code

    Tap Code использовался во Вьетнаме военнопленными для общения, обычно путем постукивания по металлическим прутьям или стенам.Это комбинация кода Морзе и кода сетки, в котором K заменяется буквой C или X. Точки (.) Говорят вам, к каким числам переходить сверху вниз, а тире (/) говорят вам, когда следует разделять слово.

    Добавить TipAsk QuestionDownload

    Шаг 23: Код сетки

    Код сетки

    Код сетки — это сетка 5×5. Все очень просто.

    Добавить TipAsk QuestionDownload

    Шаг 24: Транспонирующий шифр

    Транспонирующий шифр

    Транспонирующий шифр может быть, например, словами, записанными в обратном порядке (вы круты) = (uoy era looc).Это также может быть каждая пара или каждые 3 буквы, пары букв меняются местами. Примером этого может быть (you are cool) = (oya uer oclo)

    Добавить TipAsk QuestionDownload

    Шаг 25: Vigenere Cipher

    Vigenere Cipher

    Vigenere Cipher представляет собой сетку 26×26 букв от a до z. Это более сложный шифр, поэтому мне придется продемонстрировать его с объяснением боевого корабля.

    Маршруты

    1. Выберите кодовое слово (любое слово, без цифр)

    2.Запишите это так (мое кодовое слово будет «code») imtryingtoexplainhowt odothis не имеет значения, если кодовое слово не подходит равномерно codecodecodecodecodec odecode

    3. Посмотрите на сетку и проследите за строкой i и столбцом c до пересечения как на боевом корабле. буква, на которой они пересекаются, — k. вот как вы это кодируете. Чтобы его расшифровать, возьмите кодовую букву в данном случае c и идите, пока не найдете k.Затем поднимитесь до конца, чтобы найти i.

    Добавить TipAsk QuestionDownload

    Шаг 26: Wig Wag

    Wig Wag

    Wig Wag использовался в гражданской войне для общения во время сражений. Это довольно легко сделать, вам просто нужно помнить, что вам не нужно записывать все слова.

    Добавить TipAsk QuestionDownload

    Шаг 27: Подпишитесь на Bolillo Kremer

    Если вам понравился этот урок или просто понравилась какая-либо его часть, пожалуйста, подпишитесь на Bolillo Kremer.

    Скоро я буду делать еще несколько забавных проектов роботов и буду очень признателен за вашу поддержку! Большое спасибо! Увидимся на следующем уроке;)

    Добавить TipAsk QuestionDownload

    Будьте первым, кто поделится

    Вы сделали этот проект? Поделитесь с нами!

    Я сделал это!

    Рекомендации

    4.13. Повышение безопасности конфигурации TLS Red Hat Enterprise Linux 7

    TLS ( Transport Layer Security ) — это криптографический протокол, используемый для защиты сетевых подключений.При усилении настроек безопасности системы путем настройки предпочтительных протоколов обмена ключами , методов аутентификации и алгоритмов шифрования необходимо учитывать, что чем шире диапазон поддерживаемых клиентов, тем ниже конечный уровень безопасности. И наоборот, строгие настройки безопасности приводят к ограниченной совместимости с клиентами, что может привести к блокировке доступа некоторых пользователей в систему. Убедитесь, что вы выбрали самую строгую доступную конфигурацию и ослабляете ее только тогда, когда это требуется по соображениям совместимости.

    Обратите внимание, что настройки по умолчанию, предоставляемые библиотеками, включенными в Red Hat Enterprise Linux 7, достаточно безопасны для большинства развертываний. Реализации TLS по возможности используют безопасные алгоритмы, не препятствуя подключению к устаревшим клиентам или серверам или к ним. Применяйте усиленные параметры, описанные в этом разделе, в средах со строгими требованиями к безопасности, где устаревшие клиенты или серверы, не поддерживающие безопасные алгоритмы или протоколы, не ожидаются или не могут подключаться.

    4.13.1. Выбор алгоритмов для включения

    Необходимо выбрать и настроить несколько компонентов. Каждое из перечисленных ниже действий напрямую влияет на надежность полученной конфигурации (и, следовательно, на уровень поддержки клиентов) или вычислительные требования, которые решение предъявляет к системе.

    Версии протокола

    Последняя версия TLS обеспечивает лучший механизм безопасности. Если у вас нет веских причин для включения поддержки более старых версий TLS (или даже SSL ), разрешите вашим системам согласовывать соединения, используя только последнюю версию TLS .

    Не разрешайте согласование с использованием SSL версии 2 или 3. Обе версии имеют серьезные уязвимости в системе безопасности. Разрешить согласование только с использованием TLS версии 1.0 или выше. Всегда следует отдавать предпочтение текущей версии TLS , 1.2.

    Обратите внимание, что в настоящее время безопасность всех версий TLS зависит от использования расширений TLS , конкретных шифров (см. Ниже) и других обходных путей. Все одноранговые узлы TLS должны реализовать безопасную индикацию повторного согласования (RFC 5746), не должны поддерживать сжатие и должны реализовывать меры по смягчению последствий для временных атак на шифры режима CBC (атака Lucky Thirteen). TLS 1.0 Клиенты должны дополнительно реализовать разделение записей (обходной путь против атаки BEAST). TLS 1.2 поддерживает шифрование с аутентификацией и связанными данными с шифрами режима (AEAD), такими как AES-GCM , AES-CCM или Camellia-GCM , у которых нет известных проблем. Все упомянутые меры защиты реализованы в криптографических библиотеках, включенных в Red Hat Enterprise Linux.

    Таблица 4.6. Версии протокола

    Версия протокола Рекомендации по использованию
    SSL v2

    Не использовать.Имеет серьезные уязвимости в безопасности.

    SSL v3

    Не использовать. Имеет серьезные уязвимости в безопасности.

    TLS 1.0

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

    TLS 1.1

    При необходимости используйте для обеспечения совместимости. Не имеет известных проблем, но полагается на исправления протокола, которые включены во все реализации TLS в Red Hat Enterprise Linux. Не поддерживает современные наборы шифров.

    TLS 1,2

    Рекомендуемая версия. Поддерживает современные наборы шифров AEAD .

    Некоторые компоненты Red Hat Enterprise Linux настроены на использование TLS 1.0 , даже если они обеспечивают поддержку TLS 1.1 или даже 1.2 . Это мотивировано попыткой достичь наивысшего уровня взаимодействия с внешними службами, которые могут не поддерживать последние версии TLS . В зависимости от ваших требований к совместимости включите самую высокую доступную версию TLS .

    SSL v3 не рекомендуется использовать. Однако, если, несмотря на то, что он считается небезопасным и непригодным для общего использования, вы обязательно должны оставить SSL v3 включенным, см. Раздел 4.8, «Использование stunnel» для получения инструкций о том, как использовать stunnel для безопасного шифрования даже сообщений. при использовании служб, которые не поддерживают шифрование или могут использовать только устаревшие и небезопасные режимы шифрования.

    Наборы шифров

    Современные, более безопасные наборы шифров следует предпочесть старым, небезопасным.Всегда отключайте использование наборов шифров eNULL и aNULL, которые вообще не предлагают никакого шифрования или аутентификации. По возможности следует также отключить комплекты шифров на основе RC4 или HMAC-MD5 , имеющие серьезные недостатки. То же самое относится к так называемым комплектам шифров export , которые были намеренно ослаблены и поэтому их легко взломать.

    Хотя они и не являются сразу небезопасными, наборы шифров, которые предлагают менее 128 битов безопасности, не должны рассматриваться из-за их короткого срока службы.Можно ожидать, что алгоритмы, использующие 128-битную защиту или более, не смогут взломать в течение как минимум нескольких лет, и поэтому настоятельно рекомендуется. Обратите внимание, что хотя шифры 3DES рекламируют использование 168 бит, они фактически предлагают 112 бит безопасности.

    Всегда отдавайте предпочтение комплектам шифров, которые поддерживают (совершенную) прямую секретность ( PFS ), что обеспечивает конфиденциальность зашифрованных данных даже в случае взлома ключа сервера. Это исключает быстрый обмен ключами RSA , но позволяет использовать ECDHE и DHE .Из двух, ECDHE является более быстрым и, следовательно, предпочтительным выбором.

    Вы также должны отдать предпочтение шифрам AEAD , таким как AES-GCM , перед шифрами режима CBC , поскольку они не уязвимы для атак оракула с дополнением. Кроме того, во многих случаях AES-GCM быстрее, чем AES в режиме CBC , особенно когда оборудование имеет криптографические ускорители для AES .

    Также обратите внимание, что при использовании обмена ключами ECDHE с сертификатами ECDSA транзакция выполняется даже быстрее, чем чистый обмен ключами RSA .Чтобы обеспечить поддержку устаревших клиентов, вы можете установить на сервере две пары сертификатов и ключей: одну с ключами ECDSA (для новых клиентов) и одну с ключами RSA (для старых).

    Длина открытого ключа

    При использовании ключей RSA всегда отдавайте предпочтение ключам длиной не менее 3072 бит, подписанных не менее SHA-256, что достаточно велико для истинных 128 битов безопасности.

    Имейте в виду, что безопасность вашей системы зависит от самого слабого звена в цепи.Например, один только надежный шифр не гарантирует хорошей безопасности. Ключи и сертификаты так же важны, как и хэш-функции и ключи, используемые центром сертификации Certification Authority ( CA ) для подписи ваших ключей.

    4.13.2. Использование реализаций TLS

    Red Hat Enterprise Linux 7 распространяется с несколькими полнофункциональными реализациями TLS . В этом разделе описывается конфигурация OpenSSL и GnuTLS .См. Раздел 4.13.3, «Настройка конкретных приложений» для получения инструкций по настройке поддержки TLS в отдельных приложениях.

    Доступные реализации TLS предлагают поддержку различных наборов шифров , которые определяют все элементы, которые объединяются при установлении и использовании связи, защищенной по протоколу TLS .

    Используйте инструменты, включенные в различные реализации, чтобы перечислить и указать наборы шифров, которые обеспечивают наилучшую возможную безопасность для вашего варианта использования, с учетом рекомендаций, изложенных в разделе 4.13.1, «Выбор алгоритмов для включения». Полученные в результате комплекты шифров можно затем использовать для настройки способа согласования отдельными приложениями и защиты соединений.

    Обязательно проверяйте свои настройки после каждого обновления или обновления используемой вами реализации TLS или приложений, которые используют эту реализацию. В новых версиях могут появиться новые комплекты шифров, которые вы не хотите включать и которые не отключаются в вашей текущей конфигурации.

    4.13.2.1. Работа с наборами шифров в OpenSSL

    OpenSSL — это набор инструментов и криптографическая библиотека, которые поддерживают протоколы SSL и TLS . В Red Hat Enterprise Linux 7 файл конфигурации находится по адресу /etc/pki/tls/openssl.cnf . Формат этого файла конфигурации описан в config (1). См. Также Раздел 4.7.9, «Настройка OpenSSL».

    Чтобы получить список всех наборов шифров, поддерживаемых вашей установкой OpenSSL , используйте команду openssl с подкомандой ciphers следующим образом:

     ~] $  openssl ciphers -v 'ALL: COMPLEMENTOFALL'  

    Передайте другие параметры (называемые строк шифра и ключевыми словами в документации OpenSSL ) в подкоманду ciphers , чтобы сузить вывод.Специальные ключевые слова могут использоваться только для перечисления наборов, удовлетворяющих определенному условию. Например, чтобы вывести список только тех наборов, которые определены как принадлежащие к группе HIGH , используйте следующую команду:

     ~] $  openssl ciphers -v 'HIGH'  

    См. Справочную страницу ciphers (1) для получения списка доступных ключевых слов и строк шифра.

     ~] $  openssl ciphers -v 'kEECDH + aECDSA + AES: kEECDH + AES + aRSA: kEDH + aRSA + AES' | столбец -t 
    ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx = ECDH Au = ECDSA Enc = AESGCM (256) Mac = AEAD
    ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx = ECDH Au = ECDSA Enc = AES (256) Mac = SHA384
    ECDHE-ECDSA-AES256-SHA SSLv3 Kx = ECDH Au = ECDSA Enc = AES (256) Mac = SHA1
    ECDHE-ECDSA-AES128-GCM-SHA256 TLSv1.2 Kx = ECDH Au = ECDSA Enc = AESGCM (128) Mac = AEAD
    ECDHE-ECDSA-AES128-SHA256 TLSv1.2 Kx = ECDH Au = ECDSA Enc = AES (128) Mac = SHA256
    ECDHE-ECDSA-AES128-SHA SSLv3 Kx = ECDH Au = ECDSA Enc = AES (128) Mac = SHA1
    ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx = ECDH Au = RSA Enc = AESGCM (256) Mac = AEAD
    ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx = ECDH Au = RSA Enc = AES (256) Mac = SHA384
    ECDHE-RSA-AES256-SHA SSLv3 Kx = ECDH Au = RSA Enc = AES (256) Mac = SHA1
    ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx = ECDH Au = RSA Enc = AESGCM (128) Mac = AEAD
    ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx = ECDH Au = RSA Enc = AES (128) Mac = SHA256
    ECDHE-RSA-AES128-SHA SSLv3 Kx = ECDH Au = RSA Enc = AES (128) Mac = SHA1
    DHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx = DH Au = RSA Enc = AESGCM (256) Mac = AEAD
    DHE-RSA-AES256-SHA256 TLSv1.2 Kx = DH Au = RSA Enc = AES (256) Mac = SHA256
    DHE-RSA-AES256-SHA SSLv3 Kx = DH Au = RSA Enc = AES (256) Mac = SHA1
    DHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx = DH Au = RSA Enc = AESGCM (128) Mac = AEAD
    DHE-RSA-AES128-SHA256 TLSv1.2 Kx = DH Au = RSA Enc = AES (128) Mac = SHA256
    DHE-RSA-AES128-SHA SSLv3 Kx = DH Au = RSA Enc = AES (128) Mac = SHA1 

    Вышеупомянутая команда опускает все небезопасные шифры, отдает предпочтение обмену ключами с эфемерной эллиптической кривой Diffie-Hellman и шифрам ECDSA и опускает обмен ключами RSA (таким образом, обеспечивая совершенной прямой секретности ).

    Обратите внимание, что это довольно строгая конфигурация, и может потребоваться смягчить условия в реальных сценариях, чтобы обеспечить совместимость с более широким кругом клиентов.

    4.13.2.2. Работа с наборами шифров в GnuTLS

    GnuTLS — это коммуникационная библиотека, которая реализует протоколы SSL и TLS и связанные с ними технологии.

    Установка GnuTLS в Red Hat Enterprise Linux 7 предлагает оптимальные значения конфигурации по умолчанию, которые обеспечивают достаточную безопасность для большинства случаев использования.Если вам не нужно выполнять особые требования безопасности, рекомендуется использовать предоставленные значения по умолчанию.

    Используйте команду gnutls-cli с параметром -l (или --list ), чтобы вывести список всех поддерживаемых наборов шифров:

     ~] $  gnutls-cli -l  
    Чтобы сузить список наборов шифров, отображаемых опцией -l , передайте один или несколько параметров (называемых строк приоритета и ключевыми словами в документации GnuTLS ) опции --priority .См. Документацию GnuTLS по адресу http://www.gnutls.org/manual/gnutls.html#Priority-Strings для получения списка всех доступных строк приоритета. Например, введите следующую команду, чтобы получить список наборов шифров, которые предлагают не менее 128 бит безопасности:
     ~] $  gnutls-cli --priority SECURE128 -l  
     ~] $  gnutls-cli --priority SECURE256: + SECURE128: -VERS-TLS-ALL: + VERS-TLS1.2: -RSA: - DHE-DSS: -CAMELLIA-128-CBC: -CAMELLIA-256-CBC -l 
    Наборы шифров для SECURE256: + SECURE128: -VERS-TLS-ALL: + VERS-TLS1.2: -RSA: -DHE-DSS: -CAMELLIA-128-CBC: -CAMELLIA-256-CBC
    TLS_ECDHE_ECDSA_AES_256_GCM_SHA384 0xc0, 0x2c TLS1.2
    TLS_ECDHE_ECDSA_AES_256_CBC_SHA384 0xc0, 0x24 TLS1.2
    TLS_ECDHE_ECDSA_AES_256_CBC_SHA1 0xc0, 0x0a SSL3.0
    TLS_ECDHE_ECDSA_AES_128_GCM_SHA256 0xc0, 0x2b TLS1.2
    TLS_ECDHE_ECDSA_AES_128_CBC_SHA256 0xc0, 0x23 TLS1.2
    TLS_ECDHE_ECDSA_AES_128_CBC_SHA1 0xc0, 0x09 SSL3.0
    TLS_ECDHE_RSA_AES_256_GCM_SHA384 0xc0, 0x30 TLS1.2
    TLS_ECDHE_RSA_AES_256_CBC_SHA1 0xc0, 0x14 SSL3.0
    TLS_ECDHE_RSA_AES_128_GCM_SHA256 0xc0, 0x2f TLS1.2
    TLS_ECDHE_RSA_AES_128_CBC_SHA256 0xc0, 0x27 TLS1.2
    TLS_ECDHE_RSA_AES_128_CBC_SHA1 0xc0, 0x13 SSL3.0
    TLS_DHE_RSA_AES_256_CBC_SHA256 0x00, 0x6b TLS1.2
    TLS_DHE_RSA_AES_256_CBC_SHA1 0x00, 0x39 SSL3.0
    TLS_DHE_RSA_AES_128_GCM_SHA256 0x00, 0x9e TLS1.2
    TLS_DHE_RSA_AES_128_CBC_SHA256 0x00, 0x67 TLS1.2
    TLS_DHE_RSA_AES_128_CBC_SHA1 0x00, 0x33 SSL3.0
    
    Типы сертификатов: CTYPE-X.509
    Протоколы: VERS-TLS1.2
    Сжатие: COMP-NULL
    Эллиптические кривые: CURVE-SECP384R1, CURVE-SECP521R1, CURVE-SECP256R1
    PK-подписи: SIGN-RSA-SHA384, SIGN-ECDSA-SHA384, SIGN-RSA-SHA512, SIGN-ECDSA-SHA512, SIGN-RSA-SHA256, SIGN-DSA-SHA256, SIGN-ECDSA-SHA256 

    Вышеупомянутая команда ограничивает вывод шифрами с уровнем безопасности не менее 128 бит, отдавая предпочтение более сильным.Он также запрещает обмен ключами RSA и аутентификацию DSS .

    Обратите внимание, что это довольно строгая конфигурация, и может потребоваться смягчить условия в реальных сценариях, чтобы обеспечить совместимость с более широким кругом клиентов.

    4.13.3. Настройка конкретных приложений

    Различные приложения предоставляют свои собственные механизмы конфигурации для TLS . В этом разделе описаны файлы конфигурации, связанные с TLS и , которые используются наиболее часто используемыми серверными приложениями, и предлагаются примеры типичных конфигураций.

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

    4.13.3.1. Настройка HTTP-сервера Apache

    HTTP-сервер Apache может использовать библиотеки OpenSSL и NSS для своих нужд TLS . В зависимости от вашего выбора библиотеки TLS вам необходимо установить либо модуль mod_ssl , либо модуль mod_nss (предоставляемый одноименными пакетами).Например, чтобы установить пакет, который предоставляет модуль OpenSSL mod_ssl , введите следующую команду от имени пользователя root:

     ~] #  yum install mod_ssl  

    Пакет mod_ssl устанавливает файл конфигурации /etc/httpd/conf.d/ssl.conf , который можно использовать для изменения связанных с TLS настроек Apache HTTP Server . Точно так же пакет mod_nss устанавливает файл конфигурации /etc/httpd/conf.d/nss.conf .

    При изменении настроек в файле конфигурации /etc/httpd/conf.d/ssl.conf обязательно учитывайте как минимум следующие три директивы:

    Протокол SSL

    Используйте эту директиву, чтобы указать версию TLS (или SSL ), которую вы хотите разрешить.

    SSLCipherSuite

    Используйте эту директиву, чтобы указать предпочтительный набор шифров или отключить те, которые вы хотите запретить.

    SSLHonorCipherOrder

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

    Например:

     SSL Протокол все -SSLv2 -SSLv3
    SSLCipherSuite HIGH:! ANULL:! MD5
    SSLHonorCipherЗаказать на 
    Чтобы настроить и использовать модуль mod_nss , измените файл конфигурации /etc/httpd/conf.d/nss.conf .Модуль mod_nss является производным от mod_ssl , и поэтому он разделяет с ним многие функции, не в последнюю очередь структуру файла конфигурации и доступные директивы. Обратите внимание, что директивы mod_nss имеют префикс NSS вместо SSL . См. Https://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html для обзора информации о mod_nss , включая список директив конфигурации mod_ssl , которые не применимы к mod_nss .

    4.13.3.2. Настройка почтового сервера Dovecot

    Чтобы настроить установку почтового сервера Dovecot для использования TLS , измените файл конфигурации /etc/dovecot/conf.d/10-ssl.conf . Вы можете найти объяснение некоторых основных директив конфигурации, доступных в этом файле, в /usr/share/doc/dovecot-2.2.10/wiki/SSL.DovecotConfiguration.txt (этот файл справки устанавливается вместе со стандартной установкой из Dovecot ).

    При изменении настроек в файле конфигурации /etc/dovecot/conf.d/10-ssl.conf обязательно учитывайте как минимум следующие три директивы:

    ssl_protocols

    Используйте эту директиву, чтобы указать версию TLS (или SSL ), которую вы хотите разрешить.

    ssl_cipher_list

    Используйте эту директиву, чтобы указать предпочтительные наборы шифров или отключить те, которые вы хотите запретить.

    Разное

    Leave a Comment

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Семейный блог Ирины Поляковой Semyablog.ru® 2019. При использовании материалов сайта укажите, пожалуйста, прямую ссылку на источник.Карта сайта