Секретный шифр для переписки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Шифр Атбаша

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

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

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

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

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

    Шифр Цезаря

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

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

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

    Например, ключ у нас будет 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

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

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

    Шифр Вернама (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:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Войти

    Самые действенные способы кодирования. Топ-10: кодов и шифров

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

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

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

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

    4. Код Морзе (Азбука Морзе)
    Несмотря на свое название, код Морзе не является кодом — это шифр. Каждая буква алфавита, цифры от 0 до 9 и некоторые символы пунктуации заменены на последовательность коротких и длинных звуковых сигналов, которые часто называют «точка и тире». А становится «• — «, Б становится « — • • •” и так далее. В отличие от большинства других шифров, код Морзе не используется для сокрытия сообщений. Код Морзе начал широко применяться с изобретением телеграфа Сэмюэлем Морзе. Это было первое широко используемое электрическое приспособление для передачи сообщений на дальние расстояния. Телеграф произвел революцию в средствах массовой информации и позволял немедленно передавать сообщения о событиях, произошедшие в одной стране, по всему миру. Код Морзе изменил характер войны, позволяя обеспечивать мгновенную связь с войсками на большом расстоянии.

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

    6. Моноалфавитная замена
    ROT1, шифр Цезаря и азбука Морзе относятся к одному и тому же типу — моноалфавитной замене, а это означает, что каждая буква алфавита заменяется в соответствии с ключом, другой буквой или символом. На самом деле их легко расшифровать, даже не зная ключа. Наиболее употребительной буквой в английском языке является буква Е. Таким образом, во многих моноалфавитных шифрах, наиболее употребительной буквой или символом также будет E (прим. переводчика. — в русском языке наиболее употребительная — это буква О). Вторая наиболее употребительная буква в английском языке — это T, и третьей является буква, А, поэтому эти две буквы также могут быть определены для дешифрования. С этой точки зрения, человек может расшифровать сообщение с использованием частотности английских букв, или он может искать почти полные слова, такие как «T_E», которое наиболее вероятным образом является «THE».

    7. Шифр Виженера
    Данный алгоритм является более сложным, чем моноалфавитныя замена. Его ключевыми словами являются, такие слова, как например «CHAIR». Первая буква сообщения с ключевым словом «CHAIR» будет закодирована с алфавитным шифром С, вторая буква с алфавитным шифром Н и так продолжается до последней буквы ключевого слова. Ключевое слово состоит всего из пяти букв, так что для шестой буквы сообщения снова будет использоваться алфавитный шифр С. Длительное времени считалось, что Шифр Виженера взломать невозможно. Чтобы его расшифровать, прежде всего, надо найти длину ключевого слова. Если ключевое слово состоит из пяти букв, то буквы с номерами 1, 6, 11, 16, 21, и т.д. будут соответствовать первой букве ключевого слова, и анализ частотности букв позволит расшифровать сообщение. Декодеровщик затем переходит на буквы 2, 7, 12, 17, и так далее. Если ключевое слово, действительно состоит из пяти букв, то расшифровать сообщение будет несложно. Если нет, то надо найти другое ключевое слово, и снова повторить процесс.

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

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

    10. Криптография с открытыми ключами
    Это самый современный шифр, и он имеет несколько вариантов. Это шифр, который используется во всем мире, и имеет два ключа: один открытый и один личный. Открытый ключ — это большое число, доступное всем. Ключ является таким сложным потому что при делении можно получить только два целых числа (кроме 1 и самого числа). Эти два числа и есть личный ключ, и, если их перемножить, получится открытый ключ. Например, открытый ключ может быть 1961, следовательно, личный ключ — это 37 и 53. Открытый ключ используется для шифрования сообщения, и сообщение невозможно расшифровать без личного ключа. При отправке личных данных в банк, или когда ваша банковская карта обрабатывается машиной, данные зашифрованы именно таким образом, и только банк со своим личным ключом может получить к ним доступ. Причина, почему этот способ является настолько безопасным, заключается в том, что математически очень трудно найти делители больших чисел. Для улучшения безопасности до 2007 года компания «RSA Laboratories» выплачивала деньги любому, кто сможет найти два делителя для чисел, которые она предлагала. Вот сравнительно легкий пример, который стоил 1000 долларов, вам предлагается найти два 50-значных делителя для числа: 15226050279225333605356183781326374 29718068114961380688657908494580 12296325895289765400350692006139

    Оцените статью
    ПК Знаток
    Добавить комментарий

    Adblock
    detector