10 популярных кодов и шифров
Коды и шифры — не одно и то же: в коде каждое слово заменяется другим, в то время как в шифре заменяются все символы сообщения.
В данной статье мы рассмотрим наиболее популярные способы шифрования, а следующим шагом будет изучение основ криптографии.
- Стандартные шифры
- Цифровые шифры
- Как расшифровать код или шифр?
Стандартные шифры
ROT1
Этот шифр известен многим детям. Ключ прост: каждая буква заменяется на следующую за ней в алфавите. Так, А заменяется на Б, Б — на В, и т. д. Фраза «Уйрйшоьк Рспдсбннйту» — это «Типичный Программист».
Попробуйте расшифровать сообщение:
Лбл еёмб, рспдсбннйту?
Сумели? Напишите в комментариях, что у вас получилось.
Шифр транспонирования
В транспозиционном шифре буквы переставляются по заранее определённому правилу. Например, если каждое слово пишется задом наперед, то из hello world получается dlrow olleh. Другой пример — менять местами каждые две буквы. Таким образом, предыдущее сообщение станет
Ещё можно использовать столбчатый шифр транспонирования, в котором каждый символ написан горизонтально с заданной шириной алфавита, а шифр создаётся из символов по вертикали. Пример:
Из этого способа мы получим шифр holewdlo lr. А вот столбчатая транспозиция, реализованная программно:
def split_len(seq, length):
return [seq[i:i + length] for i in range(0, len(seq), length)]
def encode(key, plaintext):
order = {
int(val): num for num, val in enumerate(key)
}
ciphertext = ''
for index in sorted(order.keys()):
for part in split_len(plaintext, len(key)):
try:ciphertext += part[order[index]]
except IndexError:
continue
return ciphertext
print(encode('3214', 'HELLO'))
Азбука Морзе
В азбуке Морзе каждая буква алфавита, цифры и наиболее важные знаки препинания имеют свой код, состоящий из череды коротких и длинных сигналов:
Сможете расшифровать сообщение, используя картинку?
•−− −•− −−− −• −•−• • ••• − •− − −••− •• • ••• − −••− −•• • −−−− •• ••−• •−• •− − −−− •−• −•−−
Шифр Цезаря
Это не один шифр, а целых 26, использующих один принцип. Так, ROT1 — лишь один из вариантов шифра Цезаря. Получателю нужно просто сообщить, какой шаг использовался при шифровании: если ROT2, тогда А заменяется на В, Б на Г и т. д.
А здесь использован шифр Цезаря с шагом 5:
Иербэй йюк ёурбэй нтчйхйцтаъ энщхуж
Моноалфавитная замена
Коды и шифры также делятся на подгруппы. Например, ROT1, азбука Морзе, шифр Цезаря относятся к моноалфавитной замене: каждая буква заменяется на одну и только одну букву или символ. Такие шифры очень легко расшифровываются с помощью частотного анализа.
Например, наиболее часто встречающаяся буква в английском алфавите — «E». Таким образом, в тексте, зашифрованном моноалфавитным шрифтом, наиболее часто встречающейся буквой будет буква, соответствующая «E». Вторая наиболее часто встречающаяся буква — это «T», а третья — «А».
Однако этот принцип работает только для длинных сообщений. Короткие просто не содержат в себе достаточно слов.
Шифр Виженера
Представим, что есть таблица по типу той, что на картинке, и ключевое слово «CHAIR». Шифр Виженера использует принцип шифра Цезаря, только каждая буква меняется в соответствии с кодовым словом.
В нашем случае первая буква послания будет зашифрована согласно шифровальному алфавиту для первой буквы кодового слова «С», вторая буква — для «H», etc. Если послание длиннее кодового слова, то для (k*n+1)-ой буквы, где n — длина кодового слова, вновь будет использован алфавит для первой буквы кодового слова.
Чтобы расшифровать шифр Виженера, для начала угадывают длину кодового слова и применяют частотный анализ к каждой n-ной букве послания.
Попробуйте расшифровать эту фразу самостоятельно:
зюм иэлруй южжуглёнъ
Подсказка длина кодового слова — 4.
Шифр Энигмы
Энигма — это машина, которая использовалась нацистами во времена Второй Мировой для шифрования сообщений.
Есть несколько колёс и клавиатура. На экране оператору показывалась буква, которой шифровалась соответствующая буква на клавиатуре. То, какой будет зашифрованная буква, зависело от начальной конфигурации колес.
Существовало более ста триллионов возможных комбинаций колёс, и со временем набора текста колеса сдвигались сами, так что шифр менялся на протяжении всего сообщения.
Цифровые шифры
В отличие от шифровки текста алфавитом и символами, здесь используются цифры. Рассказываем о способах и о том, как расшифровать цифровой код.
Двоичный код
Текстовые данные вполне можно хранить и передавать в двоичном коде. В этом случае по таблице символов (чаще всего ASCII) каждое простое число из предыдущего шага сопоставляется с буквой: 01100001 = 97 = «a», 01100010 = 98 = «b», etc. При этом важно соблюдение регистра.
Расшифруйте следующее сообщение, в котором использована кириллица:
110100001001101011010000101111101101000010110100
Шифр A1Z26
Это простая подстановка, где каждая буква заменена её порядковым номером в алфавите. Только нижний регистр.
Попробуйте определить, что здесь написано:
15-6-2-16-13-30-26-16-11 17-18-10-14-6-18
Шифрование публичным ключом
Алгоритм шифрования, применяющийся сегодня буквально во всех компьютерных системах. Есть два ключа: открытый и секретный. Открытый ключ — это большое число, имеющее только два делителя, помимо единицы и самого себя. Эти два делителя являются секретным ключом, и при перемножении дают публичный ключ. Например, публичный ключ — это 1961, а секретный — 37 и 53.
Открытый ключ используется, чтобы зашифровать сообщение, а секретный — чтобы расшифровать.
Как-то RSA выделила 1000 $ в качестве приза тому, кто найдет два пятидесятизначных делителя числа:
1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139
Как расшифровать код или шифр?
Для этого применяются специальные сервисы. Выбор такого инструмента зависит от того, что за код предстоит расшифровать. Примеры шифраторов и дешифраторов:
Адаптированный перевод «10 codes and ciphers»
5.4 Числовые шифры . Основы классической криптологии. Секреты шифров и кодов
Ни для кого не секрет, что нашу современную жизнь представить без цифр просто невозможно. С их помощью не только обозначаются номера домов и квартир или указываются цены в магазинах. Перечислить все возможные сферы применения этих десяти символов просто невозможно.
Вполне естественно, что цифры и числа нашли широкое применение и в криптографии. Так, например, отдельными числами можно заменять буквы, создавая шифры, которые трудно разгадать. Такие шифры, которые специалисты называют числовыми, относятся к одним из самых распространенных и интересных шифров. На первый взгляд криптограммы, созданные с помощью числовых систем шифрования, выглядят как набор ничего не значащих цифр.
Простой числовой шифр
Перед тем как приступить к созданию шифрованных сообщений с помощью простого числового шифра, необходимо составить шифровальную таблицу. В верхней строке такой таблицы записываются буквы алфавита, а в нижней — числа. При этом первую букву можно обозначить произвольно выбранным числом, а каждую последующую букву надо обозначить числом, большим, чем предыдущее, на 1,2 или 3.
Например, в русском алфавите букву А можно обозначить числом 27, а числа, предназначенные для обозначения каждой из последующих букв алфавита, увеличивать на 2. В таком случае шифровальная таблица будет выглядеть так:
В качестве примера зашифруем с помощью этой таблицы открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ.
Вместо буквы С запишем соответствующее ей в таблице число 61. Вместо буквы Е запишем соответствующее ей число 37, вместо буквы К — число 47 и так далее. В результате получится следующая криптограмма:
61 37 47 59 37 63 53 55 37 61 55 55 29 77 37 53 43 37
Для большей скрытности этот текст можно произвольно разделить на группы цифр, например вот так:
6137 4759 3763 5355 3761 5555 2977 3753 4337
Перед расшифровкой полученный в данном случае шифрованный текст надо разбить на пары цифр, а затем с помощью приведенной выше шифровальной таблицы заменить цифры на соответствующие буквы.
Шифр гласных букв
Не представляет особых трудностей шифрование сообщений с помощью так называемого шифра гласных букв.
При использовании такого шифра гласные буквы в алфавите нумеруются цифрами от 1 до 9. При этом, например, в русском алфавите буква А обозначается цифрой 1, буква Е — цифрой 2, буква И — цифрой 3 и так далее. Затем каждой согласной букве присваивается свой номер, который определяется ее положением относительно ближайшей к ней с левой стороны в алфавите гласной буквы.
Так, например, буква Б — первая согласная буква, расположенная справа от буквы А имеющей номер 1. Поэтому букве Б присваивается число 11. Буква Д — четвертая справа от буквы А, ее обозначают числом 14. Буква Н — пятая справа от гласной буквы И, обозначенной числом 3. Поэтому букве Н должно соответствовать число 35. В соответствии с этим правилом выбираются числа, которыми будут заменены остальные буквы алфавита.
Для быстрого создания шифрованных сообщений с помощью шифра гласных букв можно составить вот такую шифровальную таблицу:
Теперь достаточно в открытом тексте заменить буквы на соответствующие числа, записываемые через точку, и шифровка готова.
В качестве примера попробуем с помощью приведенной выше таблицы зашифровать открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ Сначала необходимо заменить букву С на соответствующее ей число 43, затем букву Е — на число 2, букву К — на число 32 и так до конца текста. В результате зашифрованное сообщение будет выглядеть вот так
43.2.32.42.2.44.35.4.2 43.4.4.11.56.2.35.3.2
Или без пробелов:
43.2.32.42.2.44.35.4.2.43.4.4.11.56.235.3.2
Расшифровка такой криптограммы при использовании заранее составленной таблицы также не будет долгой и затруднительной.
Календарный шифр
Для создания криптограмм с помощью календарного шифра сначала также надо составить шифровальную таблицу. В верхней строке такой таблицы записываются буквы алфавита, а в нижней — числа от 1 до 32. В таком случае наша таблица будет выглядеть так:
В качестве примера зашифруем с помощью календарного шифра открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ
Вместо буквы С запишем соответствующее ей в таблице число 18. Вместо буквы Е запишем соответствующее ей число 6, вместо буквы К — число 11 и так далее. В результате получится следующая криптограмма:
18.6.11.17.6.19.14.15.6.18.15.15.2.26.6.14.9.6
Но на этом процесс шифрования не заканчивается. Теперь выберем какой-либо месяц календаря и каждый день недели обозначим соответствующей буквой. Например, понедельнику будет соответствовать буква П, вторнику — буква В, среде — буква С, четвергу — буква 4, пятнице — буква П, субботе — буква С, воскресенью — буква В.
Поскольку названия некоторых дней недели начинаются с одинаковых букв, для их различия можно применить цифры. Например, понедельнику будет соответствовать сочетание П1, вторнику — сочетание В1, среде — сочетание С1, четвергу — буква Ч, пятнице сочетание П2, субботе — сочетание С2, воскресенью — сочетание В2.
Шифрование открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ начнется с первой буквы, которой в таблице соответствует число 18. Если 18-е число выбранного месяца выпадет на четверг третьей недели, то первую букву в открытом тексте, а именно букву С, следует заменить на сочетание 43. Таким образом, шифрованное сообщение будет начинаться со знаков 43. Если же 18-е число выбранного месяца выпадет на пятницу третьей недели, то сообщение будет начинаться с сочетания П23. В том случае, когда 18-е число окажется, например, понедельником четвертой недели, то шифровку начнут знаки П14. Таким же образом следует заменить остальные буквы открытого текста.
Например, если для шифрования открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ выбрать календарь на март 2012 года, то порядок шифрования будет следующим.
Сначала в соответствии с приведенной выше таблицей необходимо перевести буквы в цифры. В результате из открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ получим:
18.6.11.17.6.19.14.15.6.18.15.15.2.26.6.14.9.6
Теперь с помощью календаря на март 2012 года следует зашифровать числа в дни недели.
Число 18 в марте 2012 года — воскресенье третьей недели, поэтому его надо обозначить как В23.
Число 6 — вторник второй недели, этот день обозначается как В12.
Число 11 в марте 2012 года — воскресенье второй недели, поэтому его надо заменить на сочетание В22.
Для удобства в работе, после того как будут выбраны месяц и год шифровальную таблицу можно дополнить строкой, в которой будет непосредственно указано, на какие сочетания букв и цифр следует заменять соответствующие буквы открытого текста.
В результате шифровальная таблица с использованием календаря на март 2012 года примет следующий вид:
Теперь с помощью такой таблицы зашифровать любое сообщение будет очень просто. Достаточно всего лишь для каждой буквы открытого текста найти соответствующее сочетание знаков для шифровки и выполнить замену. Так, например, открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ после шифрования с помощью календарного шифра с использованием календаря на декабрь 2005 года будет преобразован вот в такую криптограмму:
В23.В12.В22.С23.В12.П14.С13.ЧЗ.В12 В23.ЧЗ.ЧЗ.П21.П15.В12.С13.П22.В12
Или без пробелов:
В23.В12.В22.С23.В12.П14.С13.ЧЗ.В12.В23.ЧЗ.ЧЗ.П21.П15.В12.С13.П22.В12
Дешифровка такого сообщения производится в обратном порядке. Сначала дни недели переводятся в числа месяца, а затем — в буквы открытого текста Естественно, для расшифровки получателю необходимо знать месяц и год, используемые в шифре. Если же заранее составить приведенную выше таблицу, то процесс расшифровки займет всего лишь несколько минут.
Наблюдательный читатель заметит, что в приведенной таблице для обозначения букв алфавита используются 32 числа, хотя в каждом месяце года дней не более, чем 31. Все правильно. Однако в данной таблице ошибок нет. Просто при применении календарного шифра используется маленькая хитрость, заключающаяся в том, что недостающие дни берутся как бы из следующего месяца.
Если посмотреть на букву Я, которая имеет в таблице порядковый номер 32, то она обозначена сочетанием В25. А это означает воскресенье пятой недели. В то же время в календаре на декабрь 2005 года мы не найдем такой даты, поскольку последний, 31-й день этого месяца приходится на субботу пятой недели. Но это не страшно. Из таблицы пользователь точно знает, что буква Я заменена на сочетание В25. Точно так же заполняются соответствующие ячейки таблицы при использовании месяцев с меньшим количеством дней, от 28 до 30 дней.
Использование несуществующих дат лишь запутает того, кто без ведома и разрешения отправителя захочет разгадать такую шифровку. Главное, чтобы тот, кому такое сообщение предназначается, знал об этих маленьких хитростях.
5.5. Книжные шифры
Среди специалистов так называемые книжные шифры считаются сравнительно стойкими системами шифрования. Дело в том, что взломать подобный шифр и расшифровать созданную с его помощью криптограмму, не зная книги, использовавшейся при шифровании, неспециалисту практически невозможно.
В то же время созд ание шифрованных сообщений с помощью книжных шифров не представляет особого труда даже для начинающих пользователей. Для этого достаточно взять какую-либо книгу, по определенному правилу обозначить отдельные буквы текста этой книги числами и выполнить замену букв открытого текста на соответствующие им числа. Не обязательно, чтобы книга, используемая для шифрования, была широко известной. Однако она обязательно должна быть у получателя сообщения, который должен знать и правило шифрования.
Необходимо добавить, что во избежание ошибок книга, находящаяся у получателя сообщения и используемая для дешифрования, должна быть точно такой же, что и книга, имеющаяся у отправителя. Это означает, что обе книги должны быть полностью идентичны, с тем же количеством страниц и тем же размещением текста на них.
Простой книжный шифр
Знакомство с книжными шифрами следует начать с простого книжного шифра.
Перед началом работы необходимо выбрать книгу и страницу, которые будут использоваться для шифрования. Это может быть, например, первая страница первой части третьего тома романа «Война и мир» Льва Николаевича Толстого. Для шифрования простого сообщения достаточно воспользоваться первыми двумя абзацами текста.
«С конца 1811 года началось усиленное вооружение и сосредоточение сил Западной Европы, и в 1812 году силы эти — миллионы людей (считая тех, которые перевозили и кормили армию) двинулись с Запада на Восток, к границам России, к которым точно так же с 1811 года стягивались силы России. 12 июня силы Западной Европы перешли границы России, и началась война, то есть совершилось противное человеческому разуму и всей человеческой природе событие. Миллионы людей совершали друг против друга такое бесчисленное количество злодеяний, обманов, измен, воровства, подделок и выпуска фальшивых ассигнаций, грабежей, поджогов и убийств, которого в целые века не соберет летопись всех судов мира и на которые в этот период времени люди, совершавшие их, не смотрели как на преступления.
Что произвело это необычайное событие? Какие были причины его? Историки с наивной уверенностью говорят, что причинами этого события были обида, нанесенная герцогу Ольденбургскому, несоблюдение континентальной системы, властолюбие Наполеона, твердость Александра, ошибки дипломатов и т. п.»
Все слова текста, напечатанного на этой странице бессмертного произведения великого русского классика, за исключением дат, следует пронумеровать. В результате текст примет следующий вид:
«С(1) конца(2) 1811 года(3) началось(4) усиленное(5) вооружение(6) и(7) сосредоточение(8) сил(9) Западной(10) Европы(11), и(12) в(13) 1812году(14)силы(15)эти(16) — миллионы(17) людей(18) (считая(19) тех(20), которые(21) перевозили(22) и(23) кормили(24) армию(25),) двинулись(26) с(27) Запада(28) на(29) Восток(30), к(31) границам(32) России(33), к(34) которым(35) точно(36) так(37) же(38) с(39) 1811 года(40) стягивались(41) силы(42) России(43). 12 июня(44) силы(45) Западной(46) Европы(47) перешли(48) границы(49) России(50), и(51) началась(52) война(53), то(54) есть(55) совершилосъ(56) противное(57) человеческому(58) разуму(59) и(60) всей(61) человеческой(62) природе(63) событие(64). Миллионы(65) людей(66) совершали(67) друг(68) против(69) друга(70) такое(71) бесчисленное(72) количество(73) злодеяний(74), обманов(75), измен(76), воровства(77), подделок(78) и(79) выпуска(80) фальшивых(81) ассигнаций(82), грабежей(83), поджогов(84) и(85) убийств(86), которого(87) в(88) целые(89) века(90) не(91) соберет(92) летопись(93) всех(94) судов(95) мира(96) и(97) на(98) которые(99) в(100) этот(101) период(102) времени(ЮЗ) люди(104), совершавшие(105) их(106), не(107) смотрели(108) как(109) на(110) преступления(111).
Что(112) произвело(113) это(114) необычайное(115) событием(116)? Какие(117) были(118) причины(119) его(120)? Историки(121) с(122) наивнойМ23) уверенностью(124) говорятМ25), что(126) причинамиМ?7) этого(128) события(129) были(130) обида(131), нанесеннаяМ32) герцогу(133) Ольденбургскому(134), несо6людение(135) контентальной(136) системы(137), властолюбие(138) Наполеона(139), твердость(140) Александра(141), ошибки(142) дипламатов(143) ит.(144) п.(145).
Алгоритм шифрования при использовании простого книжного шифра заключается в том, что цифра 1 обозначает первую букву первого слова, то есть в рассматриваемом примере букву С. Цифра 2 соответствует первой букве второго слова — букве К и так далее. Например, число 38 соответствует букве Ж, а число 81 — букве Ф.
Наблюдательный читатель заметит, что одной и той же букве соответствуют разные числа. Так, например, букве Г соответствуют числа 3,14,32 и др. В этом заключается одно из достоинств книжного шифра. Поскольку одну и ту же букву открытого текста в криптограмме можно заменить разными числами, разгадать такую криптограмму с помощью методов частотного анализа невозможно.
В качестве примера попробуем зашифровать с помощью простого книжного шифра открытый текст СЕКРЕТНОЕ ПОСЛАНИЕ. Итак, если в данном открытом тексте заменить буквы на соответствующие им числа из приведенного выше текста, то полученная криптограмма будет выглядеть так:
1.11.87.33.47.71.107.75.55. 22.134.108.93.25.91.121.120
Для того чтобы расшифровать это сообщение, получатель должен в аналогичной книге на известной ему странице пронумеровать все слова, а затем произвести замену указанных в криптограмме чисел на соответствующие буквы.
Усовершенствованный книжный шифр
При практическом применении рассмотренного ранее простого книжного шифра пользователь, без сомнения, столкнется с одной трудно разрешимой проблемой. Она заключается в том, что в русском алфавите есть буквы, с которых начинается лишь небольшое число слов, таких как, например, буква Ы. Найти такие слова в подавляющем числе книг просто невозможно. В то же время в русском языке практически вообще нет слов, которые начинались бы с таких букв, как Ъ или Ь. Однако незначительное усовершенствование простого книжного шифра позволяет решить эту задачу.
В усовершенствованном книжном шифре для замены каждой буквы открытого текста используются два числа, записываемые через тире. При этом первое число означает порядковый номер слова в тексте, а второе число означает номер буквы в этом слове.
Так, например, в приведенном ранее тексте первой страницы первой части третьего тома романа «Война и мир» Л. Н. Толстого число 2–4 соответствует четвертой букве второго слова, то есть букве Ц Таким же образом определяются числа для других букв. Число 46-8 соответствует в данном темпе букве Й, число 134-3 — букве Ь, число 49-7 — букве Ы и так далее.
Теперь, если в открытом тексте СЕКРЕТНОЕ ПОСЛАНИЕ заменить буквы на соответствующие им числа в соответствии с рассматриваемым алгоритмом шифрования, то полученная криптограмма будет выглядеть так:
4–7.48-2.117-1.83-2.89-5.137-4.57-7.101-3.67-4. 48-1.123-6.82-3.74-2.117-2.124-7.119-3.20-2
Расшифровка такой криптограммы для получателя сообщения не представляет труда. Достаточно в аналогичной книге на определенной странице пронумеровать все слова, а затем произвести замену указанных в криптограмме чисел на соответствующие буквы. В то же время несанкционированный пользователь разгадать подобную шифрограмму не сможет.
5.6. Тайны решеток и таблиц
Уже в древние века наши предки для создания шифрованных сообщений использовали специальные системы шифрования, основу которых составляли так называемые решетки, в отдельные клетки которых в определенном порядке записывались буквы алфавита.
Не менее известны и шифры, при применении которых используются специальные таблицы, ячейки которых также заполняются буквами алфавита При этом шифровальные таблицы с одинаковым количеством строк и столбцов получили название квадратов.
Шифры с использованием всевозможных шифровальных таблиц и решеток постоянно совершенствовались и усложнялись. В то же время эти шифры благодаря простоте их составления и применения может использовать даже неподготовленный пользователь.
В зависимости от используемых алгоритмов данные системы шифрования можно разделить на шифры замены и шифры перестановки. При этом среди шифров замены на основе таблиц следует отметить, например, квадрат Полибия, так называемый шифр «Большой крест» и др.
Простая шифровальная таблица
Данный шифр является одним из самых простых. Его основу составляет таблица, ячейки которой заполнены буквами алфавита. Для русского алфавита такая шифровальная таблица может состоять из шести столбцов по пять строк в каждом, которая будет выглядеть следующим образом:
Теперь эту таблицу следует дополнить еще одним столбцом, который заполнен буквами, и строкой, заполненной цифрами. При этом буквы и цифры могут быть абсолютно любыми. Для начала заполним ячейки дополнительной строки цифрами от 1 до 6, а ячейки дополнительного столбца заполним буквами от А до Д.
В итоге шифровальная таблица примет следующий вид:
Правило шифрования заключается в том, что каждую букву открытого текста необходимо заменить на комбинацию буквы и цифры. При этом буква в криптограмме соответствует строке, а цифра — столбцу, на пересечении которых расположена ячейка с соответствующей буквой открытого текста.
Так, например, в данной таблице ячейка с буквой С находится на пересечении строки В и столбца 5. Поэтому при шифровании открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ с помощью рассматриваемого шифра буква С должна быть заменена на сочетание или группу В5. Таким же образом букву Е открытого текста надо заменить на А6, букву К — на Б4 и так далее. В результате шифрования криптограмма примет следующий вид:
В5.А6.Б4.В4.А6.В6.В1 В2.А6. В5.В2.В2.А2.Д1.А6.В1.БЗ.А6.
Для расшифровки такой криптограммы следует использовать точно такую же таблицу с аналогичным расположением букв в ячейках. При этом каждая комбинация буквы и цифры шифрограммы должна быть заменена на букву, расположенную в соответствующей ячейке на пересечении строки и столбца, обозначенных этой буквой и этой цифрой. В рассматриваемом примере вместо комбинации В5 следует записать букву С, вместо А6 — букву Е и так далее, пока не будет расшифрован весь текст.
В одном из вариантов такого шифра для обозначения строк также можно использовать цифры. При этом шифровальная таблица будет выглядеть вот так:
После шифрования открытого текста с помощью приведенного выше алгоритма криптограмма будет состоять из нескольких пар или групп цифр. При этом в каждой группе первая цифра обозначает строку, а вторая цифра — столбец, на пересечении которых расположена ячейка с соответствующей буквой открытого текста.
Так например, в результате шифрования открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ криптограмма примет следующий вид:
35.16.24.34.16.36.31.32.16. 35.32.32.12.51.16.31.23.16.
Расшифровка такой криптограммы заключается в замене пар или групп цифр буквами, находящимися в тех ячейках таблицы, строки и столбцы для которых обозначены соответствующими цифрами.
Таблица с паролем
В приведенных ранее примерах шифров буквы в ячейки шифровальных таблиц вписывались в том порядке, в каком они расположены в алфавите. Естественно, стойкость таких шифров оставляет желать лучшего. Поэтому чаще всего при применении различных шифровальных систем, основанных на использовании таблиц, буквы алфавита в ячейки таких таблиц вписываются в случайном порядке или в соответствии с определенным правилом. Главное, чтобы порядок заполнения ячеек был известен получателю.
Наиболее удобным вариантом будет конечно же тот, когда ячейки заполнены в абсолютно произвольном порядке, а получатель уже имеет готовую таблицу с записанными в ячейки буквами. Однако в этом случае велик риск того, что такая шифровальная таблица может оказаться в руках незаконного пользователя со всеми вытекающими последствиями. Поэтому желательно, чтобы отправитель и получатель сообщения не хранили у себя шифровальную таблицу, а лишь знали, по какому правилу она составляется. При необходимости на основании такого правила всегда можно составить шифровальную таблицу, с ее помощью зашифровать или расшифровать сообщение, а затем эту таблицу уничтожить.
Одним из способов заполнения таблиц является использование паролей. Для составления такой таблицы сначала необходимо выбрать пароль или кодовое слово. При этом желательно, чтобы в пароле не было повторяющихся букв. Конечно же данная рекомендация не является обязательной. После этого буквы пароля вписываются в первые ячейки таблицы, а остальные ячейки заполняются оставшимися, не использованными в пароле, буквами алфавита.
Так, например, если в качестве пароля выбрано слово ПАРОДИЯ, то шифровальная таблица примет следующий вид;
Если теперь эту таблицу дополнить еще одним столбцом, заполненным буквами, и строкой, заполненной цифрами, то можно воспользоваться одним из рассмотренных ранее алгоритмов шифрования.
При использовании этого шифра каждую букву открытого текста необходимо заменить на комбинацию буквы и цифры. При этом буква в криптограмме соответствует строке, а цифра — столбцу таблицы, на пересечении которых расположена ячейка с соответствующей буквой открытого текста.
В результате шифрования открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ таким шифром криптограмма примет следующий вид:
В6.Б5.В2.АЗ.Б5.Г1.В5.А4.Б5. В6.А4.А4.Б2.Д2.Б5.В5.А6.Б5.
Таким же образом можно зашифровать сообщение с помощью таблицы, в которой для обозначения столбцов и строк используются только цифры.
В этом случае после шифрования открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ криптограмма будет выглядеть так:
36.25.32.13.25.41.35.14.25. 36.14.14.22.52.25.35.16.25.
При выборе пароля желательно, чтобы в нем не было повторяющихся букв, поскольку в этом случае упрощается создание шифровальной таблицы. Конечно желанная рекомендация не является обязательной. Можно использовать слова и с повторяющимися буквами, только при заполнении таблицы такие буквы следует пропустить.
Так, например, если в качестве пароля выбрано слово ПЕРЕПРАВА, то повторяющиеся буквы Е, П, Р и В не записываются в ячейки, а пропускаются. При этом шифровальная таблица примет следующий вид:
Если теперь данную таблицу дополнить еще одним столбцом, заполненным буквами, и строкой, заполненной цифрами, то можно воспользоваться уже упоминавшимся алгоритмом шифрования.
Напомним, что при использовании этого шифра правило шифрования заключается в том, что каждую букву открытого текста необходимо заменить на комбинацию буквы и цифры. При этом буква в криптограмме соответствует строке, а цифра — столбцу, на пересечении которых расположена ячейка с соответствующей буквой открытого текста. В результате шифрования открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ таким шифром криптограмма примет следующий вид:
В5.А2.Б6.АЗ.А2.В6.ВЗ.В4.А2. В5.В4.В4.А6.Д1.А2.ВЗ.Б5.А2.
И в этой таблице для обозначения строк можно использовать цифры. При этом порядок применения алгоритма шифрования не отличается от рассмотренных ранее шифров.
Для того чтобы усложнить незаконному пользователю задачу взлома шифра, вместо повторяющихся в пароле букв в ячейки можно вписывать оставшиеся буквы алфавита. Так, например, при использовании в качестве пароля слова ПЕРЕПРАВА повторяющиеся буквы Е, П, Р и В не записываются в ячейки. Вместо них в соответствующие ячейки вставляются не вошедшие в пароль следующие буквы алфавита Для рассматриваемого пароля вместо второй буквы Е следует записать букву Б, вместо второй буквы П — букву Г, вместо второй буквы Р — букву Д и так далее. При этом шифровальная таблица примет следующий вид:
Такую таблицу можно использовать для шифрования сообщений в соответствии как с рассмотренными ранее алгоритмами шифрования, так и с другими.
Следует отметить, что паролем может служить не только отдельное слово, но и целая фраза. Эго может быть известная поговорка или пословица, цитата или строка из стихотворения. При этом правила заполнения ячеек шифровальной таблицы буквами алфавита остаются такими же, как и для уже упоминавшихся таблиц с простым паролем.
Так, например, при использовании в качестве пароля фразы ПРИКАЗЫ НЕ ОБСУЖДАЮТСЯ шифровальная таблица может выглядеть следующим образом:
Такую таблицу также можно использовать для шифрования сообщений в соответствии как со всеми рассмотренными ранее алгоритмами шифрования, так и с другими.
Квадрат Полибия
Одну из первых систем шифрования, в которой использовалась таблица, описал древнегреческий историк Полибий. Точно неизвестно, является ли талантливый писатель автором этого шифра. Тем не менее специалисты называют этот шифр «квадратом Полибия». Еще до наступления нашей эры этот шифр широко применялся как греками, так и римлянами.
При использовании данного шифра составляется таблица, которая, например, для английского алфавита состоит из пяти столбцов по пять строк в каждом. В каждую клетку этой таблицы в произвольном порядке вписывается одна из букв алфавита. Необходимо отметить, что для русского алфавита, содержащего большее количество букв, шифровальная таблица должна содержать не менее 30 клеток. Эго может быть, например, таблица из шести столбцов по пять строк в каждом.
Алгоритм шифрования заключается в том, что при преобразовании открытого текста в криптограмму необходимо найти в таблице ячейку с нужной буквой и вставить в шифрованный текст букву, располагающуюся в нижней от нее ячейке в том же столбце. Если же буква открытого текста оказывается в ячейке нижней строки, то в шифрограмму следует записать букву из верхней ячейки того же столбца.
В качестве при мера зашифруем с помощью шифра «квадрат Полибия» открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ. Перед началом работы необходимо составить шифровальную таблицу, которая может выглядеть, например, вот так:
Теперь следует найти клетку с первой буквой открытого текста Эго буква С, ячейка с которой расположена в третьей строке третьего столбца. В соответствии с алгоритмом шифрования вместо этой буквы в криптограмму необходимо записать букву, расположенную в нижней от нее ячейке в том же столбце, то есть вместо буквы С — букву К. Таким же образом букву Е открытого текста надо заменить на букву У, букву К на букву Ц и так далее. Не следует забывать о том, что в случае если буква открытого текста окажется в ячейке нижней строки, то в шифрограмму следует записать букву из самой верхней ячейки того же столбца. Например, буква Р должна быть заменена в криптограмме на букву Ю.
В результате шифрования открытого текста СЕКРЕТНОЕ СООБЩЕНИЕс помощью рассматриваемого шифра криптограмма примет следующий вид:
КУЦЮУПВНУ КННИГУВМУ
Для расшифровки получатель сообщения должен использовать точно такую же таблицу с аналогичным расположением букв в ячейках. При этом каждая буква шифрограммы должна быть заменена на букву, расположенную в верхней от нее ячейке в том же столбце.
В рассматриваемом примере вместо буквы К следует записать букву С, вместо буквы У — букву Е и так далее, пока не будет расшифрован весь текст. Если же буква из криптограммы в таблице занимает верхнюю ячейку, то ее следует заменить на букву, находящуюся в самой нижней ячейке того же столбца.
Шифр «Большой крест»
Первые упоминания о шифре, в некоторых источниках называемом «Большой крест», относятся к XVIII столетию. Необходимо отметить, что в отдельных зарубежных изданиях автору встречались варианты этого шифра с весьма экзотическими названиями. Например, название одного из вариантов можно перевести на русский язык как шифр «Загончики для поросят».
Шифр «Большой крест» прост и в то же время очень эффективен. Неподготовленный незаконный пользователь, желающий прочитать сообщение, зашифрованное с помощью данного шифра замены, вряд ли сможет сразу догадаться, как его взломать. В связи с ограниченным объемом данной книги далее будут рассмотрены лишь некоторые варианты шифра «Большой крест».
Практическое использование данного шифра следует начать с составления специальной шифровальной таблицы, которая будет выглядеть как несколько решеток. В одном из вариантов такая таблица может иметь вид, показанный на рис. 5.1.
Рис. 5.1 Шифровальная таблица для шифра «Большой крест»
В качестве примера зашифруем с помощью шифра «Большой крест» открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ. Если заменить буквы открытого текста соответствующими им символами ячеек решетки, то получится промежуточный результат, показанный на рис. 5.2.
В окончательном виде криптограмма для открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ будет выглядеть так, как показано на рис. 5.3.
Рис. 5.2 Промежуточный результат шифрования с помощью шифра «Большой крест»
Рис. 5.3 Криптограмма для открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ полученная в результате использования шифра «Большой крест»
Если с помощью рассматриваемого шифра зашифровать открытый текст ИЛЛЮЗИЯ, то криптограмма примет вид показанный на рис. 5.4.
Рис. 5.4 Криптограмма для открытого текста ИЛЛЮЗИЯ, полученная в результате использования шифра «Большой крест»
Для того чтобы расшифровать приведенные криптограммы, достаточно составить аналогичную шифровальную таблицу и заменить символы на соответствующие им буквы.
Необходимо отметить, что комбинаций расположения букв в ячейках решеток может быть довольно много. Поэтому законный пользователь для шифрования сообщений при желании может придумать свой, оригинальный вариант шифра «Большой крест».
5.7. Перестановки в таблицах
В шифрах, основу которых составляют таблицы, применяются самые разнообразные алгоритмы шифрования. Ранее были рассмотрены несколько простых систем шифрования, в которых используются специальные таблицы, ячейки которых заполняются буквами алфавита.
При этом составление криптограммы заключается в замене букв открытого текста в соответствии с определенными правилами.
В то же время существует множество шифров, при работе с которыми также составляются таблицы, однако ячейки этих таблиц заполняются не всеми буквами алфавита, а только буквами открытого текста. Алгоритм шифрования при использовании таких шифров заключается в том, что строки и столбцы в таблице с открытым текстом переставляются или перемешаются в соответствии с определенным правилом.
Простая перестановка
Одним из шифров, основанных на перестановке строк и столбцов в таблице с открытым текстом, является шифр простой перестановки. Создание криптограммы при использовании данного шифра следует начать с составления таблицы, в ячейки которой необходимо вписать по строкам буквы открытого текста. При этом количество строк и столбцов в такой шифровальной таблице выбирается произвольно. После заполнения таблицы буквы в криптограмму выписываются по столбцам, сначала из первого столбца, затем из второго и так далее.
В качестве примера зашифруем с помощью этого шифра открытый текст МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО. При выборе таблицы, состоящей из пяти строк и шести столбцов, ее ячейки будут заполнены следующим образом:
Теперь для создания криптограммы достаточно последовательно выписать буквы из ячеек первого столбца, затем из ячеек второго столбца и так далее.
В окончательном виде криптограмма для открытого текста МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО будет выглядеть так:
МСИТЗ ЕТЗЬМ СРМНО ТЕЕЕЖ ОЧНВН ВИИОО
Если записать эту криптограмму без пробелов, то она примет следующий вид:
МСИТЗЕТЗЫИСРМНОТЕЕЕЖОЧНВНВИИОО
Для расшифровки такого шифрованного сообщения достаточно в таблицу аналогичных размеров по столбцам вписать буквы криптограммы, а затем по строкам прочитать открытый текст. Естественно, для этого получатель сообщения должен знать размер таблицы.
Перестановка с паролем
Не менее интересен более сложный способ шифрования, который можно назвать перестановкой с паролем. При использовании этого шифра столбцы или строки в таблице, заполненной буквами открытого текста, перемещаются на определенное количество позиций по определенному правилу. Порядок перемещения столбцов или строк в таблице должен быть известен получателю сообщения.
Как и в рассмотренном ранее шифре простой перестановки, создание криптограммы при использовании данного шифра следует начать с составления таблицы, в ячейки которой необходимо вписать по строкам буквы открытого текста. При этом количество строк и столбцов в такой шифровальной таблице выбирается произвольно.
В качестве примера зашифруем с помощью этого шифра открытый текст МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО. При выборе таблицы, состоящей из пяти строк и шести столбцов, ее ячейки будут заполнены следующим образом:
Если пользователь решил произвести перестановку столбцов, то к этой таблице следует добавить еще две строки. В ячейки первой добавленной строки необходимо вписать буквы пароля. В ячейки второй строки записываются цифры, соответствующие позиции каждой буквы пароля в алфавите по отношению к другим буквам пароля.
Если в качестве пароля выбрать, например, слово ПРИВЕТ, то шифровальная таблица будет выглядеть вот так:
После этого необходимо переставить столбцы в таблице так, чтобы цифры во второй строке располагались по порядку. В результате такой перестановки таблица примет следующий вид:
Теперь для создания криптограммы достаточно последовательно выписать буквы из ячеек третьей строки, затем из ячеек четвертой строки и так далее.
В окончательном виде криптограмма для открытого текста МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО будет выглядеть так:
ТОСМЕВ ЕЧРСТИ ЕНМИЗИ ЕВНТЬО ЖНОЗМО
Для того чтобы расшифровать эту шифрограмму, получатель сообщения, зная пароль, должен сначала составить аналогичную шифровальную таблицу, во второй строке которой записываются цифры по порядку, а в первой — соответствующие этим цифрам буквы пароля. Остальные ячейки следует заполнить по строкам буквами криптограммы. Если теперь переставить столбцы таблицы так, чтобы буквы в верхней строчке образовали пароль, то в строках таблицы получатель сообщения сможет прочитать открытый текст.
Таким же образом в таблице с открытым текстом можно произвести перестановку строк. В этом случае к первоначальной таблице следует добавить еще два столбца. При этом в ячейки первого добавленного столбца необходимо вписать буквы пароля. В ячейки второго столбца записываются цифры, соответствующие позиции каждой буквы пароля в алфавите по отношению к другим буквам пароля.
Если в качестве пароля выбрать, например, слово ВЕСНА, то шифровальная таблица для открытого текста МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО примет следующий вид:
После этого необходимо переставить строки в таблице так, чтобы цифры во втором столбце располагались по порядку. В результате такой перестановки таблица примет следующий вид:
Теперь для создания криптограммы достаточно последовательно выписать буквы из ячеек третьего столбца, затем из ячеек четвертого столбца и так далее.
В окончательном виде шифрограмма для открытого текста МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО будет выглядеть так:
ЗМСТИ МЕТЬЗ ОСРНМ ЖТЕЕЕ НОЧВН ОВИОИ
Для расшифровки этой криптограммы получатель сообщения, зная пароль, должен сначала составить аналогичную шифровальную таблицу, во втором столбце шторой записываются цифры по порядку, а в первом — соответствующие этим цифрам буквы пароля. Остальные ячейки следует заполнить по столбцам буквами криптограммы. Если теперь переставить строки таблицы так, чтобы буквы в первом столбце образовали пароль, то в строках таблицы получатель сообщения сможет прочитать открытый текст.
При выборе пароля желательно, чтобы в нем не было повторяющихся букв, поскольку в этом случае упрощается создание шифровальной таблицы. Конечно желанная рекомендация не является обязательной. Можно использовать слова и с повторяющимися буквами, только при заполнении таблицы номера таким буквам присваиваются слева направо.
Двойная перестановка
Следует признать, что рассмотренные ранее системы шифрования, в которых применяется перестановка столбцов и строк шифровальной таблицы, ячейки которой заполнены буквами открытого текста, имеют сравнительно низкую стойкость. Для специалистов взлом таких шифров не представляет особого труда. В то же время неподготовленный незаконный пользователь на разгадку подобного шифра будет вынужден затратить немало времени. Задача взлома шифра значительно усложнится, если отправитель сообщения воспользуется так называемым шифром двойной перестановки.
При использовании шифра двойной перестановки в таблице, заполненной буквами открытого текста, на определенное количество позиций по определенному правилу перемещаются как столбцы, так и строки.
В качестве примера зашифруем с помощью этого шифра открытый текст МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО. Если пользователь решил воспользоваться шифром двойной перестановки, то к уже знакомой шифровальной таблице, состоящей из пяти строк и шести столбцов, следует добавить еще две строки и два столбца. При этом ячейки таблицы будут заполнены следующим образом:
В ячейки первой добавленной строки необходимо вписать буквы пароля для перестановки столбцов. В ячейки второй строки записываются цифры, соответствующие позиции каждой буквы пароля в алфавите по отношению к другим буквам пароля. Если в качестве пароля для перестановки столбцов выбрать, например, слово ПРИВЕТ, то шифровальная таблица будет выглядеть вот так:
В ячейки первого добавленного столбца необходимо вписать буквы пароля для перестановки строк. В ячейки второго столбца записываются цифры, соответствующие позиции каждой буквы пароля в алфавите по отношению к другим буквам пароля. Если в качестве пароля для перестановки строк выбрать, например, слово ВЕСНА, то шифровальная таблица примет следующий вид:
Для создания криптограммы сначала необходимо переставить столбцы в таблице так, чтобы цифры во второй строке располагались по порядку. В результате такой перестановки таблица примет следующий вид:
После этого следует переставить строки в таблице так, чтобы цифры во втором столбце располагались по порядку. После выполнения такой перестановки таблица будет выглядеть вот так:
Теперь дпя создания шифрограммы достаточно последовательно выписать буквы из ячеек первой строки, затем из ячеек второй строки ит. д. В окончательном виде криптограмма для открытого текста МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО будет выглядеть так:
ЖНОЗМО ТОСМЕВ ЕЧРСТИ ЕВНТЬО ЕНМИЗИ
Для того чтобы расшифровать эту шифрограмму, получатель сообщения должен знать пароли для перемещения столбцов и строк Затем необходимо составить аналогичную шифровальную таблицу. Во второй строке этой таблицы записываются цифры по порядку, а в первой — соответствующие этим цифрам буквы пароля для перемещения столбцов. Во втором столбце таблицы записываются цифры по порядку, а в первом — соответствующие этим цифрам буквы пароля для перемещения строк. Остальные ячейки следует заполнить по строкам буквами криптограммы. Теперь необходимо переставить столбцы таблицы так, чтобы буквы в первой строке образовали пароль для перемещения столбцов. После этого достаточно переставить строки таблицы так, чтобы буквы в первом столбце образовали пароль для перемещения строк и в строках таблицы получатель сообщения сможет прочитать открытый текст.
В процессе шифрования буквы из ячеек шифровальной таблицы можно выписать и по столбцам, сначала из ячеек первого столбца, затем из ячеек второго столбца и так далее. В этом случае криптограмма для открытого текста МЕСТО ВСТРЕЧИ ИЗМЕНИТЬ НЕВОЗМОЖНО примет следующий вид:
ЖТЕЕЕ НОЧВН ОСРНМ ЗМСТИ МЕТЬЗ ОВИОИ
Однако в этом случае порядок действий при дешифровании незначительно изменится. При составлении таблицы получатель сообщения, как и в рассмотренном ранее примере, во второй строке должен записать цифры по порядку, а в первой — соответствующие этим цифрам буквы пароля для перемещения столбцов. Во втором столбце таблицы записываются цифры по порядку, а в первом — соответствующие этим цифрам буквы пароля для перемещения строк. Однако остальные ячейки следует заполнить буквами криптограммы не по строкам, а по столбцам.
После этого, как и в рассмотренном ранее примере, необходимо переставить столбцы таблицы так, чтобы буквы в первой строке образовали пароль для перемещения столбцов. Теперь достаточно переставить строки таблицы так, чтобы буквы в первом столбце образовали пароль для перемещения строк, и в строках таблицы получатель сообщения сможет прочитать открытый текст.
5.8. Магические квадраты
В Средние века широкое распространение получили шифры, основу которых составляли так называемые магические квадраты.
В математике магическими квадратами называются таблицы с одинаковым количеством строк и столбцов. В каждую ячейку такой таблицы вписывается какое-либо число, при этом сумма всех чисел, расположенных в одном столбце, в одной строке и на одной диагонали, составляет одно и то же число.
Необходимо отметить, что для шифрования проще всего использовать магические квадраты, в ячейки которых записываются числа по порядку без повторов, начиная от цифры 1 и до числа, которое определяется количеством ячеек в данном квадрате. При этом не следует забывать о том, что для шифрования длинных сообщений потребуются таблицы большего размера. Так, например, для шифрования открытого текста, состоящего из 16 знаков, достаточно воспользоваться магическим квадратом размером 4×4, а для шифрования текста, содержащего 64 знака, потребуется таблица размером 8×8.
При использовании шифров, основанных на магических квадратах, алгоритм шифрования заключается в том, что в ячейки таблицы вместо цифр магического квадрата по определенному правилу вписываются буквы и знаки открытого текста После того как все ячейки будут заполнены, текст криптограммы выписывается из таблицы по строкам или по столбцам.
Простейший магический квадрат
Как известно, чем меньше столбцов и строк в квадратной таблице, тем меньше вариантов построения на ее основе магического квадрата Так, например, для таблицы, состоящей из трех столбцов и трех строк, известен всего лишь один вариант заполнения ячеек цифрами от 1 до 9, в результате которого получится магический квадрат. Такая таблица будет выглядеть так:
Нетрудно подсчитать, что сумма цифр в каждом столбце, в каждой строке и в каждой большой диагонали составляет одно и то же число и равна 15.
При использовании шифров, основанных на магических квадратах, один из простейших алгоритмов шифрования заключается в том, что в ячейки таблицы вместо цифр магического квадрата вписываются по порядку буквы открытого текста. Так, например, вместо цифры 1 в соответствующую ей ячейку следует записать первую букву сообщения, вместо цифры 2 — вторую букву, вместо цифры 3 — третью букву и так далее.
В качестве примера зашифруем с помощью этого магического квадрата открытый текст РАЗВЕДЧИК При этом в ячейку с цифрой 1 следует записать букву Р, в ячейку с цифрой 2 — букву А, в ячейку с цифрой 3 — букву 3 и так до конца сообщения. В результате таблица примет следующий вид:
Теперь для создания криптограммы достаточно последовательно выписать буквы из ячеек первой строки, затем из ячеек второй строки и так далее.
В окончательном виде криптограмма для открытого текста РАЗВЕДЧИК будет выглядеть так:
ИРД ЗЕЧ ВКА
Получив такую шифрограмму, получатель для расшифровки сообщения должен сначала заполнить таблицу буквами криптограммы, а затем из соответствующих ячеек выписать буквы открытого текста в порядке, определяемом цифрами используемого магического квадрата.
Необходимо отметить, что утверждение о существовании лишь одного магического квадрата размером 3×3 для цифр от 1 до 9 не касается случаев, когда другие магические квадраты могут быть образованы из первоначального с помощью поворота таблицы или отражения строк и столбцов.
Один из таких производных квадратов может выглядеть следующим образом:
Такой магический квадрат также с успехом можно использовать для шифрования коротких сообщений в соответствии с приведенным выше алгоритмом.
Индийский квадрат
В одном из древних индийских храмов исследователи обнаружили квадратную таблицу, которая при более подробном изучении оказалась одним из самых первых известных магических квадратов. По мнению некоторых историков, эта таблица была создана в XII веке.
Ячейки данной таблицы, состоящей из четырех столбцов и четырех строк, заполнены числами от 1 до 16 так, что сумма всех чисел, расположенных в одном столбце, в одной строке и на одной диагонали, составляет одно и то же число, а именно 34. Более того, сумма чисел в четырех ячейках, образующих квадратные таблицы внутри данного магического квадрата, также составляет 34.
Порядок заполнения ячеек в этой таблице выглядит следующим образом:
Естественно, что такой магический квадрат также можно использовать для шифровки короткого сообщения, содержащего до шестнадцати знаков.
В качестве примера зашифруем, например, открытый текст СЕКРЕТНАЯ ВСТРЕЧА. Для шифрования данного сообщения с использованием рассмотренного ранее алгоритма необходимо сначала вставить в ячейки таблицы вместо цифр буквы открытого текста. При этом вместо цифры 1 в соответствующую ячейку следует вставить первую букву открытого текста, в рассматриваемом примере это будет буква С. Вместо цифры 2 в соответствующую ячейку следует вставить вторую букву открытого текста, то есть букву Е, и так далее.
В результате такой замены шифровальная таблица примет следующий вид:
Теперь для создания криптограммы достаточно последовательно выписать буквы из ячеек первой строки, затем из ячеек второй строки и так далее.
В окончательном виде криптограмма для открытого текста СЕКРЕТНАЯ ВСТРЕЧА будет выглядеть так:
НТСЕ ЕРАС АКВЕ ЯТЧР
Для того чтобы расшифровать эту шифрограмму, получатель сообщения должен сначала заполнить таблицу известных ему размеров буквами криптограммы, а затем из соответствующих ячеек выписать буквы открытого текста в порядке, определяемом цифрами используемого магического квадрата.
По утверждению некоторых источников, классических магических квадратов размером 4×4 существует всего 12. При этом другие магические квадраты тех же размеров могут быть образованы из первоначального, например с помощью поворота таблицы или отражения строк и столбцов. Общее число таких производных магических квадратов разными специалистами оценивается от нескольких сотен до нескольких тысяч. С учетом того, что любой из упомянутых магических квадратов может быть использован для шифрования сообщения, задача взлома шифра для незаконного пользователя с помощью подбора необходимой таблицы вручную становится практически невыполнимой.
Квадрат Эйлера
Известный математик, астролог и криптограф Леонард Эйлер, долгое время работавший в России в XVIII веке, является автором известной таблицы, состоящей из восьми столбцов и восьми строк.
Все клетки так называемого квадрата Эйлера заполнены числами от 1 до 64 так, что сумма всех чисел, расположенных в одном столбце и в одной строке, составляет одно и то же число, а именно 260. Более того, если данную таблицу разделить на четыре квадратные таблицы, то и в каждой из них сумма чисел в ячейках одного столбца и одной строки также будет одинакова и составит 130. Таким же свойством обладает и квадрат размером 4×4, составленный из ячеек, расположенных в центральной части большой таблицы.
Порядок заполнения ячеек в квадрате Эйлера выглядит следующим образом:
Нетрудно заметить, что с математической точки зрения данная таблица не является классическим магическим квадратом, поскольку суммы чисел в ячейках, образующих диагонали, не равны между собой. В то же время квадрат Эйлера можно использовать для шифрования сравнительно длинных сообщений, используя алгоритм шифрования, рассмотренный ранее для классических магических квадратов.
Магический квадрат 9×9
Как отмечалось ранее, для шифрования длинных сообщений необходимо использовать таблицы большего размера. При этом не следует забывать о том, что чем больше столбцов и строк в квадратной таблице, тем больше вариантов построения на ее основе магического квадрата. Данный факт значительно усложняет незаконному пользователю задачу расшифровки сообщений, зашифрованных, например, с помощью магического квадрата размером 4×4.
Естественно, применение магических квадратов, например, размером 9×9 обеспечивает еще более высокую степень защиты и уменьшает вероятность того, что сообщение будет прочитано тем, кому оно не предназначено.
Один из вариантов такого квадрата имеет следующий вид:
Как и упоминавшийся квадрат Эйлера, данный магический квадрат также можно использовать для шифрования длинных сообщений, используя рассмотренный ранее алгоритм шифрования для классических магических квадратов. При этом открытый текст может содержать до 81 знака.
5.9. Трафарет в системах шифрования
Для создания шифрованных сообщений можно использовать специальные трафареты, которые представляют собой, например, лист бумаги с вырезанными в произвольном порядке отверстиями. Необходимо отметить, что в настоящее время известно множество систем шифрования, в которых применяются различные способы создания и использования таких трафаретов. Естественно, при применении таких шифров получатель криптограммы должен не только иметь точно такой же трафарет, но и хорошо знать правила работы с ним.
Один из вариантов простого шифра с использованием трафарета применял, например, великий русский писатель А. С. Грибоедов в начале XIX века. На лист бумаги он с помощью трафарета наносил текст сообщения, а затем уже без трафарета дополнял текст так, чтобы получилось вполне невинное письмо.
Трафаретные шифры неоднократно упоминаются и в произведениях авторов детективных романов. Среди более сложных шифров с трафаретами следует отметить, например, так называемую решетку Кардано.
Простой шифр с трафаретом
При использовании такого способа шифрования сначала необходимо сделать трафарет из листа бумаги с вырезанными в нем отверстиями. Для этого удобно воспользоваться листом бумаги в клеточку, в котором отдельные клетки следует вырезать в произвольном порядке.
Так, например, трафарет для шифрования сообщений может выглядеть так, как показано на рис. 5.5.
Рис. 5.5 Один из вариантов трафарета для шифрования сообщений
На представленном рисунке черным цветом закрашены ячейки, которые следует вырезать.
В качестве примера зашифруем с помощью данного трафарета открытый текст СЕКРЕТНОЕ ПИСЬМО. Для этого сначала необходимо наложить трафарет на чистый лист бумаги и в вырезанных прямоугольниках вписать буквы открытого текста.
В результате на листе получится следующая надпись:
Теперь для создания криптограммы достаточно убрать трафарет и между буквами открытого текста вписать любые другие буквы в произвольном порядке. В этом случае криптограмма может принять следующий вид:
Для того чтобы запутать незаконного пользователя, буквы можно вписать так, чтобы получился какой-либо вполне обычный текст.
При расшифровке такой криптограммы получателю сообщения достаточно наложить аналогичный трафарет на лист с текстом и в вырезанных ячейках прочитать открытый текст.
Необходимо отметить, что при использовании данного шифра для шифровки сравнительно коротких сообщений при создании трафарета необходимо обратить внимание на то, чтобы количество вырезанных клеточек было не меньше, чем количество букв в открытом тексте. Для шифровки длинных сообщений можно сделать трафарет с большим количеством вырезанных ячеек или же один и тот же трафарет использовать несколько раз.
Решетка Кардано
Более сложной системой шифрования, в которой также используется трафарет определенной формы, является шифр, называемый решеткой Кардано. Название этого шифра произошло от имени его автора, итальянского математика и философа Джероламо Кардано. Именно он в далеком 1566 году водной из своих работ опубликовал описание рассматриваемого шифра.
Основу простейшей решетки Кардано составляет трафарет, выполненный в форме квадратной таблицы. При этом ячейки в данном трафарете вырезаются так, чтобы после поворота трафарета вокруг центральной оси буквы, записанные в ячейках на подложенном листе бумага, не перекрывались. Другими словами, при четырех поворотах трафарета на 90? ячейки, перекрыв все клетки таблицы, ни разу не должны оказаться в одном и том же месте.
Рис. 5.8 Решетка Кардано размером 4×4
Так, например, вариант такого трафарета размером 4×4 имеет вид, изображенный на рис. 5.6.
На представленном рисунке черным цветом закрашены ячейки, которые следует вырезать.
В качестве примера зашифруем с помощью решетки Кардано открытый текст СЕКРЕТНАЯ ВСТРЕЧА Шифрование данного сообщения необходимо начать с заполнения ячеек таблицы буквами открытого текста Для этого наложим трафарет на лист с таблицей и в вырезанные ячейки впишем первые буквы открытого текста. В рассматриваемом примере это первые четыре буквы, а именно буквы С, Е, К и Р.
В результате надпись на листе будет выглядеть так:
После этого повернем трафарет по часовой стрелке на 90? и в свободные ячейки вновь запишем следующие четыре буквы открытого текста В рассматриваемом примере это буквы Е, Т, Н и А
Теперь повернем трафарет по часовой стрелке еще на 90? и в свободные ячейки вновь запишем следующие четыре буквы открытого текста а именно буквы Е, П, И и С.
Следующий поворот трафарета также следует провести по часовой стрелке еще на 90?, а свободные ячейки заполнить оставшимися четырьмя буквами открытого текста
После заполнения всех свободных ячеек и снятия трафарета на листе бумаги останется шифровальная таблица которая имеет следующий вид:
Теперь для создания криптограммы достаточно последовательно выписать буквы из ячеек первой строки, затем из ячеек второй строки и так далее. В окончательном виде криптограмма для открытого текста СЕКРЕТНАЯ ВСТРЕЧА будет выглядеть так:
ЯСЕР ЕВЕТ ЧНКС ААТР
Для того чтобы расшифровать эту шифрограмму, получатель сообщения должен сначала заполнить таблицу известных ему размеров буквами криптограммы. Затем необходимо наложить на заполненную таблицу трафарет и, поворачивая его по часовой стрелке на 90?, последовательно выписать из открывающихся ячеек буквы открытого текста.
Рис. 5.7 Решетка Кардано размером 6×6
Если пользователю потребуется зашифровать открытый текст, содержащий большое количество знаков, то решетку Кардано размером 4×4 можно использовать неоднократно.
В то же время для шифрования длинных сообщений любой желающий может составить и использовать решетку Кардано практически любых размеров.
Один из вариантов решетки Кардано размером 6×6 имеет вид, изображенный на рис. 5.7.
На представленном рисунке черным цветом закрашены ячейки, которые следует вырезать. Порядок пользования этим трафаретом аналогичен ранее рассмотренному.
Остается добавить, что применение решеток Кардано обеспечивает сравнительно высокую степень защиты и уменьшает вероятность того, что сообщение будет прочитано неподготовленным незаконным пользователем. Однако для специалиста взлом такого шифра не представляет особых трудностей.
5.10. Биграммные шифры
Одной из особенностей рассмотренных ранее систем шифрования является то, что в них каждая буква открытого текста шифруется отдельно. Однако еще в Средние века некоторые ученые предложили шифры с использованием алгоритмов, обеспечивающих одновременное шифрование сразу двух букв сообщения. Такие шифры стали называться биграммными.
Одно из первых описаний биграммного шифра было опубликовано немецким ученым И. Тритемиусом в начале XVI века Однако некоторые специалисты считают, что первое заслуживающее внимания описание биграммного шифра привел итальянец Д. Порта в 1563 году в книге «О тайной переписке».
Необходимо отметить, что биграммные шифры, несмотря на более высокую степень защищенности, по сравнению с другими использовавшимися в то время системами шифрования, в течение примерно 300 лет почти не применялись. И лишь в XIX веке одновременно в нескольких европейских странах началась активная работа над созданием оригинальных биграммных шифров. Так, например, в России над своим вариантом биграммного шифра работал талантливый криптограф и изобретатель П. Ф. Шиллинг, а в Британии — Ч. Ветстоун.
Название одного из биграммных шифров, придуманного в XIX веке, связано с именем министра почт Британской империи барона Л. Плейфера (L Playfair). Шифр «Playfair» был настолько удачным, что в различных версиях применялся англичанами и во время Первой мировой войны уже в XX столетии.
При использовании шифра «Playfair» алгоритм шифрования заключается в том, что открытый текст разделяется на пары букв, после чего каждая пара по определенному правилу заменяется на пару букв криптограммы. При этом в процессе шифрования необходимо использовать таблицу, заполненную буквами соответствующего алфавита.
В оригинальном шифре «Playfair» для английского алфавита применяется таблица размером 5×5 с паролем Playfair. Для русского алфавита можно использовать, например, уже рассмотренную ранее таблицу с паролем ПАРОДИЯ:
В качестве примера зашифруем с помощью шифра «Playfair» открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ.
Как уже отмечалось, сначала шифруемое сообщение необходимо разбить на пары букв, которые часто называются группами. В рассматриваемом примере после выполнения данного преобразования открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ примет следующ ий вид;
СЕ КР ЕТ НО ЕС ОО БЩ ЕН ИЕ
Необходимо отметить, что в соответствии с алгоритмом шифрования пара или группа букв, состоящая из одной и той же буквы, должна быть разделена буквой X или буквой У.
В то же время одной из указанных букв следует дополнить открытый текст в том случае, если последняя группа букв будет неполной.
С учетом данных требований в рассматриваемом примере открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ, разделенный на пары букв, будет выглядеть вот так:
СЕ КР ЕТ НО ЕС ОХ ОБ ЩЕ НИ ЕХ
Теперь каждую пару букв следует зашифровать отдельно с помощью составленной ранее шифровальной таблицы, ячейки которой должны быть заполнены буквами алфавита по определенному правилу. В нашем примере это приведенная выше таблица с паролем ПАРОДИЯ.
Сначала в таблице надо найти каждую из двух букв, входящих в состав подлежащей шифрованию группы. Затем следует мысленно построить четырехугольник, в двух противоположных вершинах которого находятся две шифруемые буквы открытого текста Две буквы, оказавшиеся в двух других вершинах этого прямоугольника, являются составной частью криптограммы. При этом каждая буква пары открытого текста заменяется буквой криптограммы, лежащей с ней в одной строке.
Так, например, в рассматриваемом примере при шифровании первой пары букв, а именно букв СЕ, в криптограмму следует записать буквы НЖ, вместо букв КР — буквы ЛА, вместо букв ЕТ — буквы ЯЦ и так далее.
В случае если обе буквы какой-либо группы открытого текста находятся в одном столбце таблицы, то в криптограмму записываются буквы, находящиеся под ними, то есть в соответствующих ячейках следующей строки.
Так, в рассматриваемом примере при шифровании группы ОХ открытого текста в криптограмму записывается пара ГЫ Если же при этом одна из пары букв открытого текста окажется в нижней строке столбца, то в шифрограмме эта буква должна быть заменена на букву, находящуюся в верхней строке этого столбца.
В случае, если обе буквы какой-либо группы открытого текста находятся в одной строке таблицы, то в криптограмму записываются буквы, находящиеся справа от них, то есть в соответствующих ячейках следующего столбца.
Так, например, при шифровании группы ТХ открытого текста в криптограмму записывается пара УЦ. Если же при этом одна из пары букв открытого текста окажется в крайнем правом столбце строки, то в шифрограмме эта буква должна быть заменена на букву, находящуюся в первом столбце этой строки.
По окончании шифрования криптограмма открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ примет следующий вид:
НЖ ЛА ЯЦ МД ЖН ГЫ АГ ЭБ СД ГЦ
Для дешифрования такого сообщения получатель сначала должен с помощью известного ему правила или пароля составить таблицу, а затем, используя указанные выше правила, заменить пары или группы букв криптограммы на соответствующие им пары или группы букв открытого текста.
Шифр «Двойной квадрат»
Помимо шифра «Playfair», в том же XIX веке был изобретен биграммный шифр, получивший название «Двойной квадрат». Однако, в отличие от шифра «Playfair», при применении шифра «Двойной квадрат» в процессе шифрования используется не одна, а две таблицы, ячейки которых заполнены буквами алфавита.
В то же время алгоритмы шифрования указанных шифров очень похожи: открытый текст разделяется на пары букв, после чего каждая пара по определенному правилу заменяется на пару букв криптограммы.
Перед началом шифрования открытого текста с помощью шифра «Двойной квадрат» необходимо составить две таблицы, заполненные буквами алфавита Для русского алфавита можно использовать, например, уже рассмотренные ранее таблицы с паролем ПАРОДИЯ и с паролем ПРИКАЗЫ НЕ ОБСУЖДАЮТСЯ, которые следует расположить рядом:
В качестве примера зашифруем с помощью шифра «Двойной квадрат» открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ
Как уже отмечалось, сначала шифруемое сообщение необходимо разбить на пары букв. В рассматриваемом примере после выполнения данного преобразования открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ примет следующий вид:
СЕ КР ЕТ НО ЕС 00 БЩ ЕН ИЕ
В соответствии с алгоритмом шифрования пара букв, состоящая из одной и той же буквы, должна быть разделена буквой X или буквой У. В то же время одной из указанных букв следует дополнить открытый текст в том случае, если последняя группа букв будет неполной.
С учетом данных требований в рассматриваемом примере открытый текст СЕКРЕТНОЕ СООБЩЕНИЕ, разделенный на пары букв, будет выглядеть вот так:
СЕ КР ЕТ НО ЕС ОХ ОБ ЩЕ НИ ЕХ
Теперь каждую пару или группу букв следует зашифровать отдельно. Для этого сначала надо найти эти две буквы в таблицах, при этом первая буква биграммы должна находиться в левой таблице, а вторая — в правой. После этого необходимо в двух таблицах построить четырехугольник, в двух противоположных вершинах которого находятся две шифруемые буквы открытого текста. Две буквы, оказавшиеся в двух других вершинах этого прямоугольника, являются составной частью криптограммы. При этом каждая буква пары открытого текста заменяется буквой криптограммы, лежащей с ней в одной строке, но в другой таблице.
Так, например, в рассматриваемом примере при шифровании первой пары букв, а именно букв СЕ, в криптограмму следует записать буквы ДЖ, вместо букв КР — буквы ЖА, вместо букв ЕГ — буквы БН и так далее.
При использовании данного шифра возможна ситуация, когда обе буквы какой-либо группы открытого текста окажутся в одной строке таблиц В этом случае в криптограмму вместо первой буквы биграммы открытого текста записывается буква, находящаяся в том же столбце той же строки второй таблицы. Вместо второй буквы биграммы открытого текста в криптограмму записывается буква, находящаяся в том же столбце той же строки первой таблицы.
Так, в рассматриваемом примере при шифровании группы ЕС открытого текста в криптограмму записывается пара БЖ.
Если же при этом одна из пары букв открытого текста окажется в крайнем правом столбце строки, то в шифрограмме эта буква должна быть заменена на букву, находящуюся в первом столбце этой строки.
По окончании шифрования криптограмма открытого текста СЕКРЕТНОЕ СООБЩЕНИЕ примет следующий вид:
ДЖ ЖА БН ЮЕ БЖ ЗХ АГ ШБ ДД СЦ
Для дешифрования такого сообщения получатель сначала должен с помощью известных ему правил или паролей составить две таблицы, а затем, используя указанные выше правила, заменить пары или группы букв криптограммы на соответствующие им пары или группы открытого текста. При этом первая буква биграммы шифрованного текста должна находиться в правой таблице, а вторая — в левой.
Как зашифровать цифры. Никто не смог
Поскольку шифров в мире насчитывается огромное количество, то рассмотреть все шифры невозможно не только в рамках данной статьи, но и целого сайта. Поэтому рассмотрим наиболее примитивные системы шифрации, их применение, а так же алгоритмы расшифровки. Целью своей статьи я ставлю максимально доступно объяснить широкому кругу пользователей принципов шифровки \ дешифровки, а так же научить примитивным шифрам.
Еще в школе я пользовался примитивным шифром, о котором мне поведали более старшие товарищи. Рассмотрим примитивный шифр «Шифр с заменой букв цифрами и обратно».
Нарисуем таблицу, которая изображена на рисунке 1. Цифры располагаем по порядку, начиная с единицы, заканчивая нулем по горизонтали. Ниже под цифрами подставляем произвольные буквы или символы.
Рис. 1 Ключ к шифру с заменой букв и обратно.
Теперь обратимся к таблице 2, где алфавиту присвоена нумерация.
Рис. 2 Таблица соответствия букв и цифр алфавитов.
Теперь зашифруем словоК О С Т Е Р :
1) 1. Переведем буквы в цифры:К = 12, О = 16, С =19, Т = 20, Ё = 7, Р = 18
2) 2. Переведем цифры в символы согласно таблицы 1.
КП КТ КД ПЩ Ь КЛ
3) 3. Готово.
Этот пример показывает примитивный шифр. Рассмотрим похожие по сложности шрифты.
1. 1. Самым простым шифром является ШИФР С ЗАМЕНОЙ БУКВ ЦИФРАМИ. Каждой букве соответствует число по алфавитному порядку. А-1, B-2, C-3 и т.д.
Например слово «TOWN » можно записать как «20 15 23 14», но особой секретности и сложности в дешифровке это не вызовет.
2. Также можно зашифровывать сообщения с помощью ЦИФРОВОЙ ТАБЛИЦЫ. Её параметры могут быть какими угодно, главное, чтобы получатель и отправитель были в курсе. Пример цифровой таблицы.
Рис. 3 Цифровая таблица. Первая цифра в шифре – столбец, вторая – строка или наоборот. Так слово «MIND» можно зашифровать как «33 24 34 14».
3. 3. КНИЖНЫЙ ШИФР
В таком шифре ключом является некая книга, имеющаяся и у отправителя и у получателя. В шифре обозначается страница книги и строка, первое слово которой и является разгадкой. Дешифровка невозможна, если книги у отправителя и корреспондента разных годов издания и выпуска. Книги обязательно должны быть идентичными.
4. 4. ШИФР ЦЕЗАРЯ (шифр сдвига, сдвиг Цезаря)
Известный шифр. Сутью данного шифра является замена одной буквы другой, находящейся на некоторое постоянное число позиций левее или правее от неё в алфавите. Гай Юлий Цезарь использовал этот способ шифрования при переписке со своими генералами для защиты военных сообщений. Этот шифр довольно легко взламывается, поэтому используется редко. Сдвиг на 4. A = E, B= F, C=G, D=H и т.д.
Пример шифра Цезаря: зашифруем слово « DEDUCTION » .
Получаем: GHGXFWLRQ . (сдвиг на 3)
Еще пример:
Шифрование с использованием ключа К=3 . Буква «С» «сдвигается» на три буквы вперёд и становится буквой «Ф». Твёрдый знак, перемещённый на три буквы вперёд, становится буквой «Э», и так далее:
Исходный алфавит:А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
Шифрованный:Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В
Оригинальный текст:
Съешь же ещё этих мягких французских булок, да выпей чаю.
Шифрованный текст получается путём замены каждой буквы оригинального текста соответствующей буквой шифрованного алфавита:
Фэзыя йз зьи ахлш пвёнлш чугрщцкфнлш дцосн, жг еютзм ъгб.
5. ШИФР С КОДОВЫМ СЛОВОМ
Еще один простой способ как в шифровании, так и в расшифровке. Используется кодовое слово (любое слово без повторяющихся букв). Данное слово вставляется впереди алфавита и остальные буквы по порядку дописываются, исключая те, которые уже есть в кодовом слове. Пример: кодовое слово – NOTEPAD.
Исходный: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
Замена:N O T E P A D B C F G H I J K L M Q R S U V W X Y Z
6. 6. ШИФР АТБАШ
Один из наиболее простых способов шифрования. Первая буква алфавита заменяется на последнюю, вторая – на предпоследнюю и т.д.
Пример: « SCIENCE » = HXRVMXV
7. 7. ШИФР ФРЕНСИСА БЭКОНА
Один из наиболее простых методов шифрования. Для шифрования используется алфавит шифра Бэкона: каждая буква слова заменяется группой из пяти букв «А» или «B» (двоичный код).
a AAAAA g AABBA m ABABB s BAAAB y BABBA
b AAAAB h AABBB n ABBAA t BAABA z BABBB
c AAABA i ABAAA o ABBAB u BAABB
d AAABB j BBBAA p ABBBA v BBBAB
e AABAA k ABAAB q ABBBB w BABAA
f AABAB l ABABA r BAAAA x BABAB
Сложность дешифрования заключается в определении шифра. Как только он определен, сообщение легко раскладывается по алфавиту.
Существует несколько способов кодирования.
Также можно зашифровать предложение с помощью двоичного кода. Определяются параметры (например, «А» — от A до L, «В» — от L до Z). Таким образом, BAABAAAAABAAAABABABB означает TheScience of Deduction ! Этот способ более сложен и утомителен, но намного надежнее алфавитного варианта.
8. 8. ШИФР БЛЕЗА ВИЖЕНЕРА.
Этот шифр использовался конфедератами во время Гражданской войны. Шифр состоит из 26 шифров Цезаря с различными значениями сдвига (26 букв лат.алфавита). Для зашифровывания может использоваться tabula recta (квадрат Виженера). Изначально выбирается слово-ключ и исходный текст. Слово ключ записывается циклически, пока не заполнит всю длину исходного текста. Далее по таблице буквы ключа и исходного текста пересекаются в таблице и образуют зашифрованный текст.
Рис. 4 Шифр Блеза Виженера
9. 9. ШИФР ЛЕСТЕРА ХИЛЛА
Основан на линейной алгебре. Был изобретен в 1929 году.
В таком шифре каждой букве соответствует число (A = 0, B =1 и т.д.). Блок из n-букв рассматривается как n-мерный вектор и умножается на (n х n) матрицу по mod 26. Матрица и является ключом шифра. Для возможности расшифровки она должна быть обратима в Z26n.
Для того, чтобы расшифровать сообщение, необходимо обратить зашифрованный текст обратно в вектор и умножить на обратную матрицу ключа. Для подробной информации – Википедия в помощь.
10. 10. ШИФР ТРИТЕМИУСА
Усовершенствованный шифр Цезаря. При расшифровке легче всего пользоваться формулой:
L= (m+k) modN , L-номер зашифрованной буквы в алфавите, m-порядковый номер буквы шифруемого текста в алфавите, k-число сдвига, N-количество букв в алфавите.
Является частным случаем аффинного шифра.
11. 11. МАСОНСКИЙ ШИФР
12. 12. ШИФР ГРОНСФЕЛЬДА
По своему содержанию этот шифр включает в себя шифр Цезаря и шифр Виженера, однако в шифре Гронсфельда используется числовой ключ. Зашифруем слово “THALAMUS”, используя в качестве ключа число 4123. Вписываем цифры числового ключа по порядку под каждой буквой слова. Цифра под буквой будет указывать на количество позиций, на которые нужно сдвинуть буквы. К примеру вместо Т получится Х и т.д.
T H A L A M U S
4 1 2 3 4 1 2 3
T U V W X Y Z
0 1 2 3 4
В итоге: THALAMUS = XICOENWV
13. 13. ПОРОСЯЧЬЯ ЛАТЫНЬ
Чаще используется как детская забава, особой трудности в дешифровке не вызывает. Обязательно употребление английского языка, латынь здесь ни при чем.
В словах, начинающихся с согласных букв, эти согласные перемещаются назад и добавляется “суффикс” ay. Пример: question = estionquay. Если же слово начинается с гласной, то к концу просто добавляется ay, way, yay или hay (пример: a dog = aay ogday).
В русском языке такой метод тоже используется. Называют его по-разному: “синий язык”, “солёный язык”, “белый язык”, “фиолетовый язык”. Таким образом, в Синем языке после слога, содержащего гласную, добавляется слог с этой же гласной, но с добавлением согласной “с” (т.к. язык синий). Пример:Информация поступает в ядра таламуса = Инсифорсомасацисияся поссотусупасаетсе в ядсяраса тасаласамусусаса.
Довольно увлекательный вариант.
14. 14. КВАДРАТ ПОЛИБИЯ
Подобие цифровой таблицы. Существует несколько методов использования квадрата Полибия. Пример квадрата Полибия: составляем таблицу 5х5 (6х6 в зависимости от количества букв в алфавите).
1 МЕТОД. Вместо каждой буквы в слове используется соответствующая ей буква снизу (A = F, B = G и т.д.). Пример: CIPHER — HOUNIW.
2 МЕТОД. Указываются соответствующие каждой букве цифры из таблицы. Первой пишется цифра по горизонтали, второй — по вертикали. (A = 11, B = 21…). Пример: CIPHER = 31 42 53 32 51 24
3 МЕТОД. Основываясь на предыдущий метод, запишем полученный код слитно. 314253325124. Делаем сдвиг влево на одну позицию. 142533251243. Снова разделяем код попарно.14 25 33 25 12 43. В итоге получаем шифр. Пары цифр соответствуют букве в таблице: QWNWFO.
Шифров великое множество, и вы так же можете придумать свой собственный шифр, однако изобрести стойкий шифр очень сложно, поскольку наука дешифровки с появлением компьютеров шагнула далеко вперед и любой любительский шифр будет взломан специалистами за очень короткое время.
Методы вскрытия одноалфавитных систем (расшифровка)
При своей простоте в реализации одноалфавитные системы шифрования легко уязвимы.
Определим количество различных систем в аффинной системе. Каждый ключ полностью определен парой целых чисел a и b, задающих отображение ax+b. Для а существует j(n) возможных значений, где j(n) — функция Эйлера, возвращающая количество взаимно простых чисел с n, и n значений для b, которые могут быть использованы независимо от a, за исключением тождественного отображения (a=1 b=0), которое мы рассматривать не будем.
Таким образом получается j(n)*n-1 возможных значений, что не так уж и много: при n=33 в качестве a могут быть 20 значений(1, 2, 4, 5, 7, 8, 10, 13, 14, 16, 17, 19, 20, 23, 25, 26, 28, 29, 31, 32), тогда общее число ключей равно 20*33-1=659. Перебор такого количества ключей не составит труда при использовании компьютера.
Но существуют методы упрощающие этот поиск и которые могут быть использованы при анализе более сложных шифров.
Частотный анализ
Одним из таких методов является частотный анализ. Распределение букв в криптотексте сравнивается с распределением букв в алфавите исходного сообщения. Буквы с наибольшей частотой в криптотексте заменяются на букву с наибольшей частотой из алфавита. Вероятность успешного вскрытия повышается с увеличением длины криптотекста.
Существуют множество различных таблиц о распределении букв в том или ином языке, но ни одна из них не содержит окончательной информации — даже порядок букв может отличаться в различных таблицах. Распределение букв очень сильно зависит от типа теста: проза, разговорный язык, технический язык и т.п. В методических указаниях к лабораторной работе приведены частотные характеристики для различных языков, из которых ясно, что буквы буквы I, N, S, E, A (И, Н, С, Е, А) появляются в высокочастотном классе каждого языка.
Простейшая защита против атак, основанных на подсчете частот, обеспечивается в системе омофонов (HOMOPHONES) — однозвучных подстановочных шифров, в которых один символ открытого текста отображается на несколько символов шифротекста, их число пропорционально частоте появления буквы. Шифруя букву исходного сообщения, мы выбираем случайно одну из ее замен. Следовательно простой подсчет частот ничего не дает криптоаналитику. Однако доступна информация о распределении пар и троек букв в различных естественных языках.
Когда-то мы со старшей Настей запоем играли в сыщиков и детективов, придумывали свои шифры, методы расследования. Потом это увлечение прошло и вот вернулось снова. У Насти появился жених Димка, который с упоением играет в разведчиков. Его увлечение разделила и моя дочь. Как известно, для того, чтобы передавать друг другу важные сведения, разведчикам нужен шифр. С помощью этих игр вы тоже узнаете, как зашифровать слово или даже целый текст!
Белые пятна
Любой текст даже без шифра может превратиться в трудночитаемую абракадабру, если между буквами и словами неправильно расставить пробелы.
Например, вот во что превращается простое и понятное предложение «Встречаемся на берегу озера» — «В стре чаем с Янабер егуоз ера» .
Даже внимательный человек не сразу заметит подвох. Но опытный разведчик Димка говорит, что это самый простой вид шифровки.
Без гласных
Либо можно воспользоваться таким методом – писать текст без гласных букв.
Для примера привожу такое предложение: «Записка лежит в дупле дуба, который стоит на опушке леса» . Шифрованный текст выглядит так: «Зпска лжт в дпл дб, ктр стт н пшке лс» .
Тут потребуется и смекалка, и усидчивость, и, возможно, помощь взрослых (которым тоже иногда не вредно потренировать память и вспомнить детство).
Читай наоборот
Эта шифровка объединяет в себе сразу два метода. Текст нужно читать справа налево (то есть наоборот), причем пробелы между словами могут быть расставлены наобум.
Вот, прочтите и расшифруйте: «Нелета минвь дуб, маноро тсоп иртомс» .
Второй за первого
Либо каждую букву алфавита можно обозначить следующей за ней буквой. То есть вместо «а» мы пишем «б», вместо «б» напишем «в», вместо «в» — «г» и так далее.
Опираясь на этот принцип можно составить необычный шифр. Мы, чтобы не запутаться, сделали для всех участников игры мини-шпаргалки. С ними намного удобнее пользоваться этим методом.
Разгадайте, что за фразу мы для вас зашифровали: «Тьъйлб г тжсйбмж фиобуэ мждлп – по ожлпдеб ож тойнбжу щмарф» .
Заместители
По такому же принципу, как и предыдущий шифр, используется метод «Замена». Я читала, что его использовали для шифровки священных иудейских текстов.
Вместо первой буквы алфавита мы пишем последнюю, вместо второй – предпоследнюю и так далее. То есть вместо А – Я, вместо Б – Ю, вместо В – Э…
Чтобы было легче расшифровать текст, нужно иметь под рукой алфавит и листочек с ручкой. Смотришь соответствие буквы и записываешь. Прикинуть на глазок и расшифровать ребенку будет трудно.
Таблицы
Можно зашифровать текст, предварительно записав его в таблицу. Только заранее нужно договориться, какой буквой вы будете отмечать пробелы между словами.
Небольшая подсказка — это должна быть распространенная буква (типа р, к, л, о), потому что за редко встречающиеся в словах буквы сразу цепляется взгляд и из-за этого текст легко расшифровывается. Также нужно обговорить, какой по величине будет таблица и каким образом вы будете вписывать слова (слева направо или сверху вниз).
Давайте вместе зашифруем фразу с помощью таблицы: Ночью идем ловить карасей.
Пробел будем обозначать буквой «р», слова пишем сверху вниз. Таблица 3 на 3 (рисуем в клеточках обычного тетрадного листа).
Вот что у нас получается:
Н Ь И М О Т К А Й
О Ю Д Р В Ь А С Р
Ч Р Е Л И Р Р Е.
Решетка
Для того, чтобы прочесть текст, зашифрованный таким образом, вам и вашему другу понадобится одинаковые трафареты: листы бумаги с вырезанными на них в произвольном порядке квадратиками.
Шифровку нужно писать на листке точно такого же формата, как и трафарет. Буквы пишутся в клеточки-дырки (причем тоже можно писать, например, справа-налево или сверху-вниз), остальные клеточки заполняются любыми другими буквами.
Ключ в книге
Если в прошлом шифре мы готовили два трафарета, то теперь нам понадобятся одинаковые книги. Помню еще во времена моего детства мальчишки в школе использовали для этих целей роман Дюма «Три мушкетера».
Записки выглядели примерно так:
«324 с, 4 а, в, 7 сл.
150 с, 1 а, н, 11 сл….»
Первая цифра обозначала номер страницы,
вторая – номер абзаца,
третья буква – как надо считать абзацы сверху (в) или снизу (н),
четвертая буква – слово.
В моем примере нужные слова нужно искать:
Первое слово: на странице 324, в 4 абзаце сверху, седьмое слово.
Второе слово: на странице 150, в 1 абзаце снизу, одиннадцатое слово.
Процесс расшифровки небыстрый, зато никто из посторонних прочитать послание не сможет.
1. Простейшая система этого шифра заключается в том, что азбука разбивается на группы с равным числом букв и каждая из них обозначается двумя цифрами. Первая цифра обозначает группу, а вторая — порядковый номер буквы в этой группе.
АБВГ ДЕЖЗ ИКЛМ НОПР СТУФ ХЦЧШ ЩЫЮЯ
1 2 3 4 5 6 7
Зашифрованные слова, например «Уголовный розыск», будут выглядеть следующим образом:
53 14 42 33 42 13 41 72 31 44 42 24 72 51 32
Алфавит может браться и не в обычном порядке, а с любой перестановкой букв.
2. Шифр может быть усложнен по следующей схеме:
Буквы составляются из двух цифр. Первая — ее место в группе, а вторая обозначает номер группы. Например, слово «опасность» в зашифрованном виде будет выглядеть так:
33 37 14 32 34 33 32 35 58
Для усложнения прочтения слово можно записать в одну строку:
333714323433323558
3. Сюда же можно отнести и цифровое письмо, где буквы разделяются на пять групп, каждая из которых снабжается двумя номерами.
№ |
Каждая буква изображается дробью таким образом, что числителем ее будет номер группы, а знаменателем — номер места в группе. Так как при этой схеме не употребляются цифры свыше шести, то цифры с семи до девяти можно использовать как пустые знаки.
Этим шифром слово «день» может быть записано следующим образом:
71 81 30 57
95 76 19 38
4. Множительный шифр. Для работы с ним нужно запомнить кодовое число и заранее договориться, все ли буквы алфавита будут использоваться, не будут ли выкинуты какие-нибудь.
Предположим, что кодовым числом будет 257, а из алфавита исключаются буквы: й, ь, ъ, ы, т.е. он выглядит следующим образом:
АБВГДЕЁЖЗИКЛМНОПРСТУФЧЦЧШЩЭЮЯ
Требуется зашифровать выражение:
«Встреча завтра».
Текст пишется для удобства шифрования вразрядку:
В С Т Р Е Ч А З А В Т Р А
2 5 7 2 5 7 2 5 7 2 5 7 2
Под каждой буквой пишется по цифре до тех пор, пока не кончится фраза. Затем вместо каждой буквы текста пишется та буква алфавита, которая по счету оказывается первой вслед за таким количеством букв, какое показывает цифра, стоящая внизу, причем счет производится вправо. Так, под первой буквой «В» стоит цифра «2», поэтому вместо буквы «В» в шифровальном письме ставится третья буква алфавита «Д». Под второй буквой текста «С» стоит цифр «5», поэтому вместо нее ставится шестая после «С», т.е. буква «Ц».
В цифрованном виде письмо приобретет следующий вид:
ДЦШТКБВ НЖДЧЧВ
Для прочтения шифровки необходимо под каждую букву поставить ключевое, кодовое число. В нашем случае число 257. А в алфавите отсчитывать влево от данной буквы шифрованного письма столько букв, сколько показывает стоящая перед нею цифра.
Значит, вместо буквы «Д» вторая налево будет буква «В», а вместо «Ц» пятая, значит буква «С».
Д Ц Щ Т К Б В Н Ж Д Ч Ч В
2 5 7 2 5 7 2 5 7 2 5 7 2
В С Т Р Е Ч А З А В Т Р А
По материалам Л.А.Мильяненков
По ту сторону закона
энциклопедия преступного мира
Инструкция
Пользуясь современными терминами, у любого зашифрованного сообщения есть автор, составивший его; адресат, которому оно предназначено; и перехватчик — криптограф, пытающийся его прочесть.
В ручном шифровании применяются два основных метода — замена и перестановка. Первый заключается в том, что буквы исходного сообщения заменяются на другие согласно определенному правилу. Второй — в том, что буквы, опять же согласно правилу, меняются местами. Разумеется, эти два способа можно комбинировать, что делает шифр более стойким.
Самый простой вид шифра замены — тайнопись. В этом случае буквы меняются на условные значки: цифры, символы, изображения пляшущих человечков и так далее. Чтобы раскрыть тайнописное послание, достаточно определить, какой символ какой букве соответствует.
Для этой цели обычно используют таблицы частотности, показывающие, насколько часто встречается та или иная буква в языке послания. Например, в языке на первых местах в такой таблице будут буквы «а», «е», «о». Подставляя их вместо самых часто попадающихся значков, можно расшифровать некоторые слова, а это, в свою очередь, даст значения других символов.
В более надежных шифрах замена букв производится по ключу. Например, ключом может стать многозначное число. Чтобы зашифровать таким образом текст, над ним много раз пишут число-ключ так, чтобы над каждой буквой оказалась цифра. После этого букву заменяют на другую, следующую после нее по через столько позиций, сколько обозначено цифрой. Алфавит при этом считается замкнутым в кольцо, то есть, например, второй буквой после «я» будет «б».
Раскрыть такую криптограмму сложнее, поскольку для каждой буквы шифра есть десять вариантов прочтения. Для расшифровки нужно прежде всего определить длину ключа и разделить текст на слова. Обычно это делается с помощью таблицы, где первой строчкой идет текст шифровки, а ниже него — варианты, где каждая буква шифра заменена на возможную букву исходного текста. Таким образом, в таблице получается одиннадцать строчек.
Глядя, какие варианты приводят к наиболее естественному на вид делению текста на слова, криптограф определяет, какими буквами кодируются пробелы, а значит — находит одну или несколько цифр ключа. Из этого уже можно начинать делать выводы, сколько раз ключ повторяется в тексте.
Подставляя на места пока еще неизвестных букв варианты из таблицы, криптограф определяет, в каких случаях в тексте появляются осмысленные слова и фрагменты.
Для облегчения работы криптограф обычно стремится узнать любую информацию о содержании текста или ключа. Если известно, какая подпись стоит в конце документа, или какое слово должно там часто повторяться, то по этим сведениям можно раскрыть часть ключа шифрования. Подставляя найденный фрагмент в другие места документа, криптограф выясняет длину ключа и узнает еще несколько частей исходного текста.
Видео по теме
Источники:
- Владимир Жельников. Криптография от папируса до компьютера
- как заменить буквы на символы
Дешифровка — одно из самых увлекательнейших занятий. Ведь всегда так любопытно узнать, что именно скрывается за той или иной кодировкой. Тем более, что видов различных шифров очень и очень много. Поэтому и способов их распознавания и перевода тоже предостаточно. Самая сложная задача — правильно определить, каким именно способом нужно расшифровывать ту или иную загадку.
Инструкция
Если вы собираетесь расшифровывать определенную кодировку, помните, что в большинстве случаев информацию шифруют посредством подмены . Попробуйте определить наиболее часто встречающиеся буквы в языке и соотнесите их с имеющимися у вас в шифре. Исследователи облегчили вам задачу и часть из них уже свели в определенную таблицу. Если вы ей воспользуетесь, то это значительно ускорит процесс дешифровки. Подобным образом в свое время были разгаданы шифры Полибия и Цезаря.
Чтобы было легче заниматься , пользуйтесь ключами. Для дешифровки вам понадобится понятие, как длина ключа, определить которую вы сможете только методом подбора отдельных букв (см. шаг 1). После того как вы подберете длину вашего ключа, вы сможете сформировать группу символов, которая закодирована одной буквой. И так постепенно весь шифр откроется вам. Процесс этот достаточно трудоемкий и затратный по времени, поэтому запаситесь изрядной долей терпения.
Попробуйте также расшифровать сообщение посредством подбора одного слова, которое с большой долей вероятности должно встретиться в этом тексте. Смещайте его по тексту до того момента, пока оно не наложится само на себя в шифре. Таким образом вы определите часть ключа. Дальше расшифровывайте текст в районе области вокруг ключа. Соответственно подбирайте варианты расшифровки текста. Он обязательно должен соотноситься со словом-ключом и быть ему адекватным, т.е. совпадать по контексту.
Помните, что для успешной расшифровки кодировки вам пригодятся знания о самых известных методах шифрования сообщений. Так, например, если перед вами текст, датированный 5 веком до н.э., то с большой долей вероятности можно сказать, что он закодирован в скитала. Принцип такой шифровки заключался в методе простой перестановке. То есть буквы алфавита просто менялись местами а затем при помощи круглого предмета наносились на лист в хаотичном порядке. Для дешифровки подобного сообщения главное правильно восстановить размер этого круглого предмета.
Цифровые шифровки распознавайте при помощи математических методов. Один из популярных способов — использование теории вероятности. А в средние века с использованием математических символов производилась при помощи перестановки и использования магических квадратов. Это такие фигуры, в которые цифры вписываются в клетки последовательными натуральными числами. Начинаются, как правило, с 1. Секрет магического квадрата в том, что все цифры в нем в сумме каждого столбца или строки, или диагонали дают одно и то же число.
Учитывайте тот факт, что текст для дешифровки располагается в таком квадрате согласно нумерации клеток. Выпишите содержимое таблицы по и получите тот текст, который нужно расшифровать. А уже потом путем перестановок подберите необходимый вариант шифровки.
В интернете быстро распространяется мода на расшифровку слов. Часть людей искренне верит в смысл этого действия, другие откровенно развлекаются. В обоих случаях речь идет о разгадывании ребусов. Только правила головоломки могут быть разные.
Человек – социальное существо. Мы учимся взаимодействовать с другими, наблюдая за их реакцией на наши действия с первых дней жизни. При любом взаимодействии мы используем то, что искусствоведы называют «культурными кодами». А ведь культурные коды – самые сложные в дешифровке, здесь нет специальной программы, которая подскажет, что может значить приподнятая бровь или беспричинные, казалось бы, слёзы; нет однозначного ответа; более того, даже сам «кодирующий» может не знать, что он имел в виду под своим действием! Наука понимать окружающих – это то, что мы постигаем всю жизнь, и чем лучше развито это умение, тем, как правило, гармоничнее складывается общение с окружающими и любая деятельность, в которой нужны согласованные действия.
Изучение криптографии в обеих её ипостасях (шифровка и дешифровка) позволяет научиться находить связь между шифрованным, запутанным, непонятным посланием и смыслом, который в нём таится. Проходя исторический путь от шифра Юлия Цезаря до RSA-ключей, от розеттского камня до эсперанто, мы учимся воспринимать информацию в непривычном нам виде, разгадываем загадки, привыкаем к многовариантности. И главное – учимся понимать: как разных, непохожих на нас людей, так и математико-лингвистические механизмы, которые лежат в основе каждого, абсолютно каждого послания.
Итак, приключенческий рассказ о криптографии для детей, для всех, у кого есть дети, и для всех, кто когда-нибудь был ребёнком.
Трепещут на ветру флаги, ржут разгорячённые кони, бряцают доспехи: это Римская империя обнаружила, что в мире ещё есть кто–то, кого они не завоевали. Под командованием Гая Юлия Цезаря находится огромная армия, которой надо быстро и точно управлять.
Шпионы не дремлют, враги готовятся перехватить посланников императора, чтобы узнать все его блестящие планы. Каждый кусок пергамента, попадающий не в те руки – это вероятность проиграть сражение.
Но вот захвачен посланник, злоумышленник разворачивает записку… и ничего не понимает! «Наверное, – чешет он в затылке, – это на каком–то неизвестном языке…». Рим торжествует, его планы в безопасности.
Что же такое шифр Цезаря? Самый простой его вариант – это когда мы вместо каждой буквы ставим следующую по алфавиту: вместо «а» – «б», вместо «е» – «ж», а вместо «я» – «а». Тогда, например, «Я люблю играть» станет «А мявмя йдсбуэ». Давайте посмотрим на табличку, сверху в ней будет буква, которую шифруем, а снизу – на которую заменяем.
Алфавит как бы «сдвинут» на одну букву, правда? Поэтому этот шифр ещё называют «шифром сдвига» и говорят «используем шифр Цезаря со сдвигом 10» или «со сдвигом 18». Это значит, что надо «сдвинуть» нижний алфавит не на 1, как у нас, а, например, на 10 – тогда у нас вместо «а» будет «й», а вместо «у» – «э».
Сам Цезарь использовал этот шифр со сдвигом 3, то есть его таблица шифрования выглядела вот так:
Точнее, она бы так выглядела, если бы Цезарь жил в России. В его случае алфавит был латинский.
Такой шифр достаточно легко взломать, если вы профессиональный шпион или Шерлок Холмс. Но он до сих пор подходит для того, чтобы хранить свои маленькие секреты от посторонних глаз.
Вы и сами можете устроить свой маленький домашний заговор. Договоритесь о своём числе сдвига, и вы сможете оставлять друг другу шифрованные записки на холодильнике о сюрпризе на чей-нибудь день рождения, отправлять шифрованные сообщения и, может быть, если случится длинная разлука, даже писать друг другу тайные, кодированные письма!
Но вся история криптографии – это история борьбы между искусством зашифровывать послания и искусством их расшифровывать. Когда появляется новый способ закодировать сообщение, находятся те, кто пытаются этот код взломать.
Что такое «взломать код»? Это значит – придумать способ его разгадать, не зная ключа и смысла шифра. Шифр Цезаря тоже когда-то был взломан – так называемым «методом частотного анализа». Посмотрите на любой текст – гласных в нём гораздо больше, чем согласных, а «о» гораздо больше, чем, например, «я». Для каждого языка можно назвать самые часто и редко используемые буквы. Надо только найти, какой буквы больше всего в зашифрованном тексте. И скорее всего это будет зашифрованная «о», «е», «и» или «а» – самые часто встречающиеся буквы в русских словах. А как только ты знаешь, какой буквой обозначили, например, «а», ты знаешь, и на сколько «сдвинут» шифрованный алфавит, а значит, можешь расшифровать весь текст.
Когда разгадку кода Цезаря узнал весь мир, криптографам пришлось придумать что-нибудь помощнее. Но, как часто бывает, люди не стали изобретать что–то совсем новое, а усложнили уже имеющееся. Вместо того, чтобы шифровать все буквы по одному и тому же сдвинутому алфавиту, в тайных посланиях их стали использовать несколько. Например, первую букву шифруем по алфавиту со сдвигом 3, вторую – со сдвигом 5, третью – со сдвигом 20, четвертую – снова со сдвигом 3, пятую – со сдвигом 5, шестую – со сдвигом 20 и так далее, по кругу. Такой шифр называют полиалфавитным (то есть многоалфавитным). Попробуйте, так ваш шифр уже может разгадать только тот, кто посвящён в тайны криптографии!
Казалось бы, злоумышленники должны были запутаться и тайны должны были навсегда остаться тайнами. Но если шифр один раз был взломан, то и любые более сложные его варианты тоже будут однажды взломаны.
Давайте представим, что кто–то зашифровал послание двумя алфавитами. Первая буква – со сдвигом 5, вторая – со сдвигом 3, третья – снова 5, четвертая снова 3 – как на табличке ниже.
Мы можем разделить все зашифрованные буквы на две группы: буквы, зашифрованные со сдвигом 5 (1, 3, 5, 7, 9, 11, 13, 15, 17, 19) и буквы, зашифрованные со сдвигом 3 (2, 4, 6, 8, 10, 12, 14, 16, 18, 20). И внутри каждой группы искать, какие буквы встретились нам чаще остальных – так же, как в шифре Цезаря, только мороки побольше.
Если шифровщик использовал три алфавита, то мы разделим буквы на три группы, если пять – то на пять. А дальше снова идет в ход тот же самый частотный анализ.
Можно задать вопрос – откуда дешифраторы знали, что алфавитов три, а не, например, пять? На самом деле они не знали. И перебирали все возможные варианты. Поэтому дешифровка занимала гораздо больше времени, но все же была возможной.
В криптографии сообщение, которое надо передать, называется «открытым текстом», а зашифрованное сообщение – «шифрованным текстом». И правило, по которому текст зашифрован, называется «ключом шифра».
Незаметно подкрался XX век. Человечество всё больше надеется на машины: поезда заменяют повозки, радио появляется почти в каждом доме, и уже встали на крыло первые самолеты. И шифровку тайных планов в конце концов тоже передают машинам.
Во время Второй мировой войны было изобретено очень много машин для шифрования сообщений, но все они опирались на идею того, что полиалфавитный шифр можно ещё больше запутать. Запутать настолько, что, хотя по идее его и можно будет разгадать, на практике это ни у кого не получится. Запутать настолько, насколько это способна сделать машина, но не способен человек. Самая известная из таких шифровальных машин – «Энигма», использовавшаяся Германией.
theromanroad.files.wordpress.com
Но, пока самой главной тайной Германии была конструкция «Энигмы», самой главной тайной её противников было то, что к середине войны все страны уже «Энигму» разгадали. Если бы об этом стало известно в самой Германии, они бы начали придумывать что-то новое, но до конца войны они верили в идеальность своей шифровальной машины, а Франция, Англия, Польша, Россия читали тайные немецкие сообщения как открытую книгу.
Всё дело в том, что польский ученый Мариан Реевский однажды подумал о том, что раз придумали машину для шифровки сообщений, то можно придумать и машину для расшифровки, и первый свой образец называл «Бомба». Не из-за «взрывного» эффекта, как можно было бы подумать, а в честь вкусного, круглого пирожного.
Потом математик Алан Тьюринг построил на его основе машину, которая полностью расшифровывала код «Энигмы», и которую, между прочим, можно считать первым прародителем наших современных компьютеров.
Самый сложный код за всю Вторую мировую придумали американцы. На каждый боевой корабль США был откомандирован… индеец. Их язык был настолько непонятен и малоизучен, звучал так странно, что дешифровщики не знали, как и подступиться, и флот США безбоязненно передавал информацию на языке индейского племени чокта.
Вообще, криптография – это же не только о том, как загадать загадку, но и о том, как её разгадать. Не всегда такие загадки специально придумывают люди – иногда их подбрасывает сама история. И одной из главных загадок для криптографов долгое время была загадка древнеегипетского языка.
Никто не знал, что же значат все эти иероглифы. Что египтяне имели в виду, рисуя птиц и скарабеев. Но в один счастливый день французская армия обнаружила в Египте «Розеттский камень».
На этом камне была надпись – одна и та же, на древнегреческом, египетском буквенном (демотический текст) и египетском иероглифическом. Историки того времени хорошо знали древнегреческий, поэтому что же написано на камне они узнали быстро. Но главное, что, зная перевод, они смогли раскрыть тайны древнего египетского языка. Демотический текст был расшифрован достаточно быстро, а вот над иероглифами историки, лингвисты, математики, криптографы ломали голову долгие годы, но в конце концов всё-таки разгадали.
И это была большая победа криптографов – победа над самим временем, которое надеялось спрятать от людей их историю.
Но среди всех этих разгаданных шифров есть три особенных. Один – это метод Диффи – Хеллмана. Если маленькое сообщение зашифровать этим методом, то, чтобы его расшифровать, надо взять все компьютеры в мире и занять их этим на много-много лет. Именно он используется сегодня в Интернете.
Второй – это квантовое шифрование. Оно, правда, ещё не совсем придумано, зато, если люди сделают квантовые компьютеры такими, как о них мечтают, то такой шифр будет знать, когда его пытаются расшифровывать .
А третий особенный шифр – это «книжный шифр». Его удивительность в том, что им просто что-то зашифровать и непросто – расшифровать. Два человека выбирают одну и ту же книгу, и каждое слово из своего письма в ней ищут и заменяют тремя цифрами: номер страницы, номер строки и номер слова в строке. Это очень просто сделать, правда? А разгадать совсем не просто: откуда шпиону знать, какую книгу вы выбрали? И самое главное, компьютеры в этом деле тоже особо не помогут. Конечно, если подключить очень много умных людей и очень много мощных компьютеров, такой шифр не устоит.
Но есть главное правило безопасности. Её, этой безопасности, должно быть столько, чтобы зашифрованное послание не стоило тех огромных усилий, которые надо потратить на её расшифровку. То есть чтобы злодею – шпиону пришлось потратить столько сил, чтобы разгадать ваш код, сколько он не готов тратить на то, чтобы узнать ваше сообщение. И это правило работает всегда и везде, как в дружеских школьных переписках, так и в мире настоящих шпионских игр.
Криптография – это искусство загадывать и разгадывать загадки. Искусство сохранить тайны, и искусство их раскрывать. С криптографией мы учимся понимать друг друга и придумываем, как сохранить что-то важное для себя в безопасности. А чем лучше мы умеем и то и другое, тем спокойнее и деятельнее может быть наша жизнь.
Можно зашифровать цифры. Как расшифровать секретный код
С той самой поры, как человечество доросло до письменной речи, для защиты сообщений используются коды и шифры. Греки и египтяне использовали шифры для защиты личной переписки. Собственно говоря, именно из этой славной традиции и произрастает современная традиция взлома кодов и шифров. Криптоанализ изучает коды и методы их взлома, и это занятие в современных реалиях может принести немало пользы. Если вы хотите этому научиться, то можно начать с изучения самых распространенных шифров и всего, что с ними связано. В общем, читайте эту статью!
Шаги
Расшифровка шифров замещения
Начните с поиска слов из одной буквы. Большинство шифров на основе относительно простой замены легче всего взломать банальным перебором с подстановкой. Да, придется повозиться, но дальше будет только сложнее.
- Слова из одной буквы в русском языке — это местоимения и предлоги (я, в, у, о, а). Чтобы найти их, придется внимательно изучить текст. Угадывайте, проверяйте, закрепляйте или пробуйте новые варианты — иного метода разгадки шифра нет.
- Вы должны научиться читать шифр. Взламывать его — это не столь важно. Учитесь выхватывать шаблоны и правила, лежащие в основе шифра, и тогда его взлом не будет представлять для вас принципиальной сложности.
Ищите наиболее часто употребляемые символы и буквы. К примеру, в английском языке такими являются “e”, “t” и “a”. Работая с шифром, используйте свое знание языка и структуры предложений, на основе чего делайте гипотезы и предположения. Да, на все 100% вы редко будете уверены, но разгадывание шифров — это игра, где от вас требуется делать догадки и исправлять собственные ошибки!
- Двойные символы и короткие слова ищите в первую очередь, старайтесь начать расшифровку именно с них. Легче, как никак, работать с двумя буквами, чем с 7-10.
Обращайте внимание на апострофы и символы вокруг. Если в тексте есть апострофы, то вам повезло! Так, в случае английского языка, использование апострофа означает, что после зашифрованы такие знаки, как s, t, d, m, ll или re. Соответственно, если после апострофа идут два одинаковых символа, то это наверняка L!
Попробуйте определить, какой у вас тип шифра. Если вы, разгадывая шифр, в определенный момент поймете, к какому из вышеописанных типов он относится, то вы его практически разгадали. Конечно, такое будет случаться не так уж и часто, но чем больше шифров вы разгадаете, тем проще вам будет потом.
- Цифровая замена и клавиатурные шифры в наши дни распространены более всего. Работая над шифром, первым делом проверяйте, не такого ли он типа.
Распознавание обычных шифров
Шифры замещения. Строго говоря, шифры замещения кодируют сообщение, замещая одни буквы другими, согласно заранее определенному алгоритму. Алгоритм — и есть ключ к разгадке шифра, если разгадать его, то и раскодировать сообщение проблемы не составит.
- Даже если в коде есть цифры, кириллица или латиница, иероглифы или необычные символы — пока используются одни и те же типы символов, то вы, вероятно, работаете именно с шифром замещения. Соответственно, вам надо изучить используемый алфавит и вывести из него правила замещения.
Квадратный шифр. Простейшее шифрование, используемое еще древними греками, работающее на основе использования таблицы цифр, каждая из которых соответствует какой-то букве и из которых впоследствии и составляются слова. Это действительно простой код, своего рода — основа основ. Если вам надо разгадать шифр в виде длинной строки цифр — вероятно, что пригодятся именно методы работы с квадратным шифром.
Шифр Цезаря. Цезарь умел не только делать три дела одновременно, он еще и понимал в шифровании. Цезарь создал хороший, простой, понятный и, в то же время, устойчивый ко взлому шифр, который в его честь и назвали. Шифр Цезаря — это первый шаг на пути к изучению сложных кодов и шифров. Суть шифра Цезаря в том, что все символы алфавита сдвигаются в одну сторону на определенное количество символов. Например, сдвиг на 3 символа влево будет менять А на Д, Б на Е и т.д.
Следите за клавиатурными шаблонами. На основе традиционной раскладки клавиатуры типа QWERTY в наше время создаются различные шифры, работающие по принципу смещения и замещения. Буквы смещаются влево, вправо, вверх и вниз на определенное количество символов, что и позволяет создать шифр. В случае таких шифров надо знать, в какую сторону были смещены символы.
- Так, меняя колонки на одну позицию вверх, “wikihow” превращается в “28i8y92”.
Полиалфавитные шифры. Простые замещающие шифры опираются на создание шифрующим своего рода алфавита для шифрования. Но уже в Средние века это стало слишком ненадежно, слишком просто для взлома. Тогда криптография сделала шаг вперед и стала сложнее, начав использовать для шифрования символы сразу нескольких алфавитов. Что и говорить, надежность шифрования сразу повысилась.
Что значит быть дешифровальщиком
Будьте терпеливы. Взломать шифр — это терпение, терпение и еще раз терпение. Ну и упорство, конечно же. Это медленная, кропотливая работа, сопряженная с большим количеством разочарования из-за частых ошибок и необходимости постоянно подбирать символы, слова, методы и т.д. Хороший дешифровальщик просто обязан быть терпеливым.
Пожалуй, шифр Цезаря один из самых простейших способов шифрования данных. Он использовался Цезарем еще до нашей эры для тайной переписки. И если предложить любому человеку придумать свой алгоритм шифровки, то он, наверняка, «придумает» именно такой способ, ввиду его простоты.
Шифр Цезаря часто называют шифром сдвига . Давайте разберемся, как шифровать данные с помощью этого метода криптографии.
Шифр Цезаря онлайн
Сервис предназначен для шифрования любого текста, используя для этого шифр сдвига (Цезаря). Шифруются только русские буквы, все остальные символы остаются без изменения.
Как шифровать
Предположим, что мы хотим зашифровать слово Россия. Рассмотрим, как для этого можно использовать шифр Цезаря. Для начала, вспомним русский алфавит и пронумеруем буквы по-порядку.
Итак, наше слово Россия. Попробуем его зашифровать. Для этого нам нужно определиться с шагом шифрования. Шаг шифрования или сдвиг — это число, которое указывает на сколько позиций мы будем смещаться влево или вправо по алфавиту. Часто сдвиг называют ключом . Его можно выбрать произвольно. В нашем примере выберем шаг равный 7. Таким образом каждую букву шифруемого слова мы будем смещать вправо (в сторону конца алфавита) на 7 позиций. Буква Р у нас имеет номер 18. Прибавим к 18 наш шаг и получим 25. Значит в зашифрованном слове вместо буквы Р будет буква с номером 25 — Ч. Буква о превратится в букву х. Буква с — в ш и так далее. В итоге после шифрования слово Россия превратится в Чхшшпё.
- Р -> Ч
- о -> х
- с -> ш
- с -> ш
- и -> п
- я -> ё
Задавая шаг шифрования можно зашифровать любой текст.
Как расшифровать
Во-первых, вы можете воспользоваться специально созданным калькулятором на этой странице. В поле для текста вводите зашифрованный текст, а наш сервис дешифрует его, используя все возможные варианты сдвига. На выходе вы получите все полученные результаты и вам останется только выбрать правильный. К примеру, у вас есть зашифрованный шифром Цезаря текст — «З шчхцж аьмцчн хлцчкнцен». Вставляем его в калькулятор и получаем варианты дешифрования, среди которого видим «Я помню чудное мгновенье» со сдвигом 24.
Ну и, естественно, вы можете произвести дешифровку вручную. Но такая расшифровка займет очень много времени.
Человек – социальное существо. Мы учимся взаимодействовать с другими, наблюдая за их реакцией на наши действия с первых дней жизни. При любом взаимодействии мы используем то, что искусствоведы называют «культурными кодами». А ведь культурные коды – самые сложные в дешифровке, здесь нет специальной программы, которая подскажет, что может значить приподнятая бровь или беспричинные, казалось бы, слёзы; нет однозначного ответа; более того, даже сам «кодирующий» может не знать, что он имел в виду под своим действием! Наука понимать окружающих – это то, что мы постигаем всю жизнь, и чем лучше развито это умение, тем, как правило, гармоничнее складывается общение с окружающими и любая деятельность, в которой нужны согласованные действия.
Изучение криптографии в обеих её ипостасях (шифровка и дешифровка) позволяет научиться находить связь между шифрованным, запутанным, непонятным посланием и смыслом, который в нём таится. Проходя исторический путь от шифра Юлия Цезаря до RSA-ключей, от розеттского камня до эсперанто, мы учимся воспринимать информацию в непривычном нам виде, разгадываем загадки, привыкаем к многовариантности. И главное – учимся понимать: как разных, непохожих на нас людей, так и математико-лингвистические механизмы, которые лежат в основе каждого, абсолютно каждого послания.
Итак, приключенческий рассказ о криптографии для детей, для всех, у кого есть дети, и для всех, кто когда-нибудь был ребёнком.
Трепещут на ветру флаги, ржут разгорячённые кони, бряцают доспехи: это Римская империя обнаружила, что в мире ещё есть кто–то, кого они не завоевали. Под командованием Гая Юлия Цезаря находится огромная армия, которой надо быстро и точно управлять.
Шпионы не дремлют, враги готовятся перехватить посланников императора, чтобы узнать все его блестящие планы. Каждый кусок пергамента, попадающий не в те руки – это вероятность проиграть сражение.
Но вот захвачен посланник, злоумышленник разворачивает записку… и ничего не понимает! «Наверное, – чешет он в затылке, – это на каком–то неизвестном языке…». Рим торжествует, его планы в безопасности.
Что же такое шифр Цезаря? Самый простой его вариант – это когда мы вместо каждой буквы ставим следующую по алфавиту: вместо «а» – «б», вместо «е» – «ж», а вместо «я» – «а». Тогда, например, «Я люблю играть» станет «А мявмя йдсбуэ». Давайте посмотрим на табличку, сверху в ней будет буква, которую шифруем, а снизу – на которую заменяем.
Алфавит как бы «сдвинут» на одну букву, правда? Поэтому этот шифр ещё называют «шифром сдвига» и говорят «используем шифр Цезаря со сдвигом 10» или «со сдвигом 18». Это значит, что надо «сдвинуть» нижний алфавит не на 1, как у нас, а, например, на 10 – тогда у нас вместо «а» будет «й», а вместо «у» – «э».
Сам Цезарь использовал этот шифр со сдвигом 3, то есть его таблица шифрования выглядела вот так:
Точнее, она бы так выглядела, если бы Цезарь жил в России. В его случае алфавит был латинский.
Такой шифр достаточно легко взломать, если вы профессиональный шпион или Шерлок Холмс. Но он до сих пор подходит для того, чтобы хранить свои маленькие секреты от посторонних глаз.
Вы и сами можете устроить свой маленький домашний заговор. Договоритесь о своём числе сдвига, и вы сможете оставлять друг другу шифрованные записки на холодильнике о сюрпризе на чей-нибудь день рождения, отправлять шифрованные сообщения и, может быть, если случится длинная разлука, даже писать друг другу тайные, кодированные письма!
Но вся история криптографии – это история борьбы между искусством зашифровывать послания и искусством их расшифровывать. Когда появляется новый способ закодировать сообщение, находятся те, кто пытаются этот код взломать.
Что такое «взломать код»? Это значит – придумать способ его разгадать, не зная ключа и смысла шифра. Шифр Цезаря тоже когда-то был взломан – так называемым «методом частотного анализа». Посмотрите на любой текст – гласных в нём гораздо больше, чем согласных, а «о» гораздо больше, чем, например, «я». Для каждого языка можно назвать самые часто и редко используемые буквы. Надо только найти, какой буквы больше всего в зашифрованном тексте. И скорее всего это будет зашифрованная «о», «е», «и» или «а» – самые часто встречающиеся буквы в русских словах. А как только ты знаешь, какой буквой обозначили, например, «а», ты знаешь, и на сколько «сдвинут» шифрованный алфавит, а значит, можешь расшифровать весь текст.
Когда разгадку кода Цезаря узнал весь мир, криптографам пришлось придумать что-нибудь помощнее. Но, как часто бывает, люди не стали изобретать что–то совсем новое, а усложнили уже имеющееся. Вместо того, чтобы шифровать все буквы по одному и тому же сдвинутому алфавиту, в тайных посланиях их стали использовать несколько. Например, первую букву шифруем по алфавиту со сдвигом 3, вторую – со сдвигом 5, третью – со сдвигом 20, четвертую – снова со сдвигом 3, пятую – со сдвигом 5, шестую – со сдвигом 20 и так далее, по кругу. Такой шифр называют полиалфавитным (то есть многоалфавитным). Попробуйте, так ваш шифр уже может разгадать только тот, кто посвящён в тайны криптографии!
Казалось бы, злоумышленники должны были запутаться и тайны должны были навсегда остаться тайнами. Но если шифр один раз был взломан, то и любые более сложные его варианты тоже будут однажды взломаны.
Давайте представим, что кто–то зашифровал послание двумя алфавитами. Первая буква – со сдвигом 5, вторая – со сдвигом 3, третья – снова 5, четвертая снова 3 – как на табличке ниже.
Мы можем разделить все зашифрованные буквы на две группы: буквы, зашифрованные со сдвигом 5 (1, 3, 5, 7, 9, 11, 13, 15, 17, 19) и буквы, зашифрованные со сдвигом 3 (2, 4, 6, 8, 10, 12, 14, 16, 18, 20). И внутри каждой группы искать, какие буквы встретились нам чаще остальных – так же, как в шифре Цезаря, только мороки побольше.
Если шифровщик использовал три алфавита, то мы разделим буквы на три группы, если пять – то на пять. А дальше снова идет в ход тот же самый частотный анализ.
Можно задать вопрос – откуда дешифраторы знали, что алфавитов три, а не, например, пять? На самом деле они не знали. И перебирали все возможные варианты. Поэтому дешифровка занимала гораздо больше времени, но все же была возможной.
В криптографии сообщение, которое надо передать, называется «открытым текстом», а зашифрованное сообщение – «шифрованным текстом». И правило, по которому текст зашифрован, называется «ключом шифра».
Незаметно подкрался XX век. Человечество всё больше надеется на машины: поезда заменяют повозки, радио появляется почти в каждом доме, и уже встали на крыло первые самолеты. И шифровку тайных планов в конце концов тоже передают машинам.
Во время Второй мировой войны было изобретено очень много машин для шифрования сообщений, но все они опирались на идею того, что полиалфавитный шифр можно ещё больше запутать. Запутать настолько, что, хотя по идее его и можно будет разгадать, на практике это ни у кого не получится. Запутать настолько, насколько это способна сделать машина, но не способен человек. Самая известная из таких шифровальных машин – «Энигма», использовавшаяся Германией.
theromanroad.files.wordpress.com
Но, пока самой главной тайной Германии была конструкция «Энигмы», самой главной тайной её противников было то, что к середине войны все страны уже «Энигму» разгадали. Если бы об этом стало известно в самой Германии, они бы начали придумывать что-то новое, но до конца войны они верили в идеальность своей шифровальной машины, а Франция, Англия, Польша, Россия читали тайные немецкие сообщения как открытую книгу.
Всё дело в том, что польский ученый Мариан Реевский однажды подумал о том, что раз придумали машину для шифровки сообщений, то можно придумать и машину для расшифровки, и первый свой образец называл «Бомба». Не из-за «взрывного» эффекта, как можно было бы подумать, а в честь вкусного, круглого пирожного.
Потом математик Алан Тьюринг построил на его основе машину, которая полностью расшифровывала код «Энигмы», и которую, между прочим, можно считать первым прародителем наших современных компьютеров.
Самый сложный код за всю Вторую мировую придумали американцы. На каждый боевой корабль США был откомандирован… индеец. Их язык был настолько непонятен и малоизучен, звучал так странно, что дешифровщики не знали, как и подступиться, и флот США безбоязненно передавал информацию на языке индейского племени чокта.
Вообще, криптография – это же не только о том, как загадать загадку, но и о том, как её разгадать. Не всегда такие загадки специально придумывают люди – иногда их подбрасывает сама история. И одной из главных загадок для криптографов долгое время была загадка древнеегипетского языка.
Никто не знал, что же значат все эти иероглифы. Что египтяне имели в виду, рисуя птиц и скарабеев. Но в один счастливый день французская армия обнаружила в Египте «Розеттский камень».
На этом камне была надпись – одна и та же, на древнегреческом, египетском буквенном (демотический текст) и египетском иероглифическом. Историки того времени хорошо знали древнегреческий, поэтому что же написано на камне они узнали быстро. Но главное, что, зная перевод, они смогли раскрыть тайны древнего египетского языка. Демотический текст был расшифрован достаточно быстро, а вот над иероглифами историки, лингвисты, математики, криптографы ломали голову долгие годы, но в конце концов всё-таки разгадали.
И это была большая победа криптографов – победа над самим временем, которое надеялось спрятать от людей их историю.
Но среди всех этих разгаданных шифров есть три особенных. Один – это метод Диффи – Хеллмана. Если маленькое сообщение зашифровать этим методом, то, чтобы его расшифровать, надо взять все компьютеры в мире и занять их этим на много-много лет. Именно он используется сегодня в Интернете.
Второй – это квантовое шифрование. Оно, правда, ещё не совсем придумано, зато, если люди сделают квантовые компьютеры такими, как о них мечтают, то такой шифр будет знать, когда его пытаются расшифровывать .
А третий особенный шифр – это «книжный шифр». Его удивительность в том, что им просто что-то зашифровать и непросто – расшифровать. Два человека выбирают одну и ту же книгу, и каждое слово из своего письма в ней ищут и заменяют тремя цифрами: номер страницы, номер строки и номер слова в строке. Это очень просто сделать, правда? А разгадать совсем не просто: откуда шпиону знать, какую книгу вы выбрали? И самое главное, компьютеры в этом деле тоже особо не помогут. Конечно, если подключить очень много умных людей и очень много мощных компьютеров, такой шифр не устоит.
Но есть главное правило безопасности. Её, этой безопасности, должно быть столько, чтобы зашифрованное послание не стоило тех огромных усилий, которые надо потратить на её расшифровку. То есть чтобы злодею – шпиону пришлось потратить столько сил, чтобы разгадать ваш код, сколько он не готов тратить на то, чтобы узнать ваше сообщение. И это правило работает всегда и везде, как в дружеских школьных переписках, так и в мире настоящих шпионских игр.
Криптография – это искусство загадывать и разгадывать загадки. Искусство сохранить тайны, и искусство их раскрывать. С криптографией мы учимся понимать друг друга и придумываем, как сохранить что-то важное для себя в безопасности. А чем лучше мы умеем и то и другое, тем спокойнее и деятельнее может быть наша жизнь.
Когда-то мы со старшей Настей запоем играли в сыщиков и детективов, придумывали свои шифры, методы расследования. Потом это увлечение прошло и вот вернулось снова. У Насти появился жених Димка, который с упоением играет в разведчиков. Его увлечение разделила и моя дочь. Как известно, для того, чтобы передавать друг другу важные сведения, разведчикам нужен шифр. С помощью этих игр вы тоже узнаете, как зашифровать слово или даже целый текст!
Белые пятна
Любой текст даже без шифра может превратиться в трудночитаемую абракадабру, если между буквами и словами неправильно расставить пробелы.
Например, вот во что превращается простое и понятное предложение «Встречаемся на берегу озера» — «В стре чаем с Янабер егуоз ера» .
Даже внимательный человек не сразу заметит подвох. Но опытный разведчик Димка говорит, что это самый простой вид шифровки.
Без гласных
Либо можно воспользоваться таким методом – писать текст без гласных букв.
Для примера привожу такое предложение: «Записка лежит в дупле дуба, который стоит на опушке леса» . Шифрованный текст выглядит так: «Зпска лжт в дпл дб, ктр стт н пшке лс» .
Тут потребуется и смекалка, и усидчивость, и, возможно, помощь взрослых (которым тоже иногда не вредно потренировать память и вспомнить детство).
Читай наоборот
Эта шифровка объединяет в себе сразу два метода. Текст нужно читать справа налево (то есть наоборот), причем пробелы между словами могут быть расставлены наобум.
Вот, прочтите и расшифруйте: «Нелета минвь дуб, маноро тсоп иртомс» .
Второй за первого
Либо каждую букву алфавита можно обозначить следующей за ней буквой. То есть вместо «а» мы пишем «б», вместо «б» напишем «в», вместо «в» — «г» и так далее.
Опираясь на этот принцип можно составить необычный шифр. Мы, чтобы не запутаться, сделали для всех участников игры мини-шпаргалки. С ними намного удобнее пользоваться этим методом.
Разгадайте, что за фразу мы для вас зашифровали: «Тьъйлб г тжсйбмж фиобуэ мждлп – по ожлпдеб ож тойнбжу щмарф» .
Заместители
По такому же принципу, как и предыдущий шифр, используется метод «Замена». Я читала, что его использовали для шифровки священных иудейских текстов.
Вместо первой буквы алфавита мы пишем последнюю, вместо второй – предпоследнюю и так далее. То есть вместо А – Я, вместо Б – Ю, вместо В – Э…
Чтобы было легче расшифровать текст, нужно иметь под рукой алфавит и листочек с ручкой. Смотришь соответствие буквы и записываешь. Прикинуть на глазок и расшифровать ребенку будет трудно.
Таблицы
Можно зашифровать текст, предварительно записав его в таблицу. Только заранее нужно договориться, какой буквой вы будете отмечать пробелы между словами.
Небольшая подсказка — это должна быть распространенная буква (типа р, к, л, о), потому что за редко встречающиеся в словах буквы сразу цепляется взгляд и из-за этого текст легко расшифровывается. Также нужно обговорить, какой по величине будет таблица и каким образом вы будете вписывать слова (слева направо или сверху вниз).
Давайте вместе зашифруем фразу с помощью таблицы: Ночью идем ловить карасей.
Пробел будем обозначать буквой «р», слова пишем сверху вниз. Таблица 3 на 3 (рисуем в клеточках обычного тетрадного листа).
Вот что у нас получается:
Н Ь И М О Т К А Й
О Ю Д Р В Ь А С Р
Ч Р Е Л И Р Р Е.
Решетка
Для того, чтобы прочесть текст, зашифрованный таким образом, вам и вашему другу понадобится одинаковые трафареты: листы бумаги с вырезанными на них в произвольном порядке квадратиками.
Шифровку нужно писать на листке точно такого же формата, как и трафарет. Буквы пишутся в клеточки-дырки (причем тоже можно писать, например, справа-налево или сверху-вниз), остальные клеточки заполняются любыми другими буквами.
Ключ в книге
Если в прошлом шифре мы готовили два трафарета, то теперь нам понадобятся одинаковые книги. Помню еще во времена моего детства мальчишки в школе использовали для этих целей роман Дюма «Три мушкетера».
Записки выглядели примерно так:
«324 с, 4 а, в, 7 сл.
150 с, 1 а, н, 11 сл….»
Первая цифра обозначала номер страницы,
вторая – номер абзаца,
третья буква – как надо считать абзацы сверху (в) или снизу (н),
четвертая буква – слово.
В моем примере нужные слова нужно искать:
Первое слово: на странице 324, в 4 абзаце сверху, седьмое слово.
Второе слово: на странице 150, в 1 абзаце снизу, одиннадцатое слово.
Процесс расшифровки небыстрый, зато никто из посторонних прочитать послание не сможет.
В шифрах замены (или шифрах подстановки), в отличие от , элементы текста не меняют свою последовательность, а изменяются сами, т.е. происходит замена исходных букв на другие буквы или символы (один или несколько) по неким правилам.
На этой страничке описаны шифры, в которых замена происходит на буквы или цифры. Когда же замена происходит на какие-то другие не буквенно-цифровые символы, на комбинации символов или рисунки, это называют прямым .
Моноалфавитные шифры
В шифрах с моноалфавитной заменой каждая буква заменяется на одну и только одну другую букву/символ или группу букв/символов. Если в алфавите 33 буквы, значит есть 33 правила замены: на что менять А, на что менять Б и т.д.
Такие шифры довольно легко расшифровать даже без знания ключа. Делается это при помощи частотного анализа зашифрованного текста — надо посчитать, сколько раз каждая буква встречается в тексте, и затем поделить на общее число букв. Получившуюся частоту надо сравнить с эталонной. Самая частая буква для русского языка — это буква О, за ней идёт Е и т.д. Правда, работает частотный анализ на больших литературных текстах. Если текст маленький или очень специфический по используемым словам, то частотность букв будет отличаться от эталонной, и времени на разгадывание придётся потратить больше. Ниже приведена таблица частотности букв (то есть относительной частоты встречаемых в тексте букв) русского языка, рассчитанная на базе НКРЯ .
Использование метода частотного анализа для расшифровки шифрованных сообщений красиво описано во многих литературных произведениях, например, у Артура Конана Дойля в романе « » или у Эдгара По в « ».
Составить кодовую таблицу для шифра моноалфавитной замены легко, но запомнить её довольно сложно и при утере восстановить практически невозможно, поэтому обычно придумывают какие-то правила составления таких кодовых страниц. Ниже приведены самые известные из таких правил.
Случайный код
Как я уже писал выше, в общем случае для шифра замены надо придумать, какую букву на какую надо заменять. Самое простое — взять и случайным образом перемешать буквы алфавита, а потом их выписать под строчкой алфавита. Получится кодовая таблица. Например, вот такая:
Число вариантов таких таблиц для 33 букв русского языка = 33! ≈ 8.683317618811886*10 36 . С точки зрения шифрования коротких сообщений — это самый идеальный вариант: чтобы расшифровать, надо знать кодовую таблицу. Перебрать такое число вариантов невозможно, а если шифровать короткий текст, то и частотный анализ не применишь.
Но для использования в квестах такую кодовую таблицу надо как-то по-красивее преподнести. Разгадывающий должен для начала эту таблицу либо просто найти, либо разгадать некую словесно-буквенную загадку. Например, отгадать или решить .
Ключевое слово
Один из вариантов составления кодовой таблицы — использование ключевого слова. Записываем алфавит, под ним вначале записываем ключевое слово, состоящее из неповторяющихся букв, а затем выписываем оставшиеся буквы. Например, для слова «манускрипт» получим вот такую таблицу:
Как видим, начало таблицы перемешалось, а вот конец остался неперемешенным. Это потому, что самая «старшая» буква в слове «манускрипт» — буква «У», вот после неё и остался неперемешенный «хвост». Буквы в хвосте останутся незакодированными. Можно оставить и так (так как большая часть букв всё же закодирована), а можно взять слово, которое содержит в себе буквы А и Я, тогда перемешаются все буквы, и «хвоста» не будет.
Само же ключевое слово можно предварительно тоже загадать, например при помощи или . Например, вот так:
Разгадав арифметический ребус-рамку и сопоставив буквы и цифры зашифрованного слова, затем нужно будет получившееся слово вписать в кодовую таблицу вместо цифр, а оставшиеся буквы вписать по-порядку. Получится вот такая кодовая таблица:
Атбаш
Изначально шифр использовался для еврейского алфавита, отсюда и название. Слово атбаш (אתבש) составлено из букв «алеф», «тав», «бет» и «шин», то есть первой, последней, второй и предпоследней букв еврейского алфавита. Этим задаётся правило замены: алфавит выписывается по порядку, под ним он же выписывается задом наперёд. Тем самым первая буква кодируется в последнюю, вторая — в предпоследнюю и т.д.
Фраза «ВОЗЬМИ ЕГО В ЭКСЕПШН» превращается при помощи этого шифра в «ЭРЧГТЦ ЪЬР Э ВФНЪПЖС». Онлайн-калькулятор шифра Атбаш
ROT1
Этот шифр известен многим детям. Ключ прост: каждая буква заменяется на следующую за ней в алфавите. Так, A заменяется на Б, Б на В и т.д., а Я заменяется на А. «ROT1» значит «ROTate 1 letter forward through the alphabet» (англ. «поверните/сдвиньте алфавит на одну букву вперед»). Сообщение «Хрюклокотам хрюклокотамит по ночам» станет «Цсялмплпубн цсялмплпубнйу рп опшбн». ROT1 весело использовать, потому что его легко понять даже ребёнку, и легко применять для шифрования. Но его так же легко и расшифровать.
Шифр Цезаря
Шифр Цезаря — один из древнейших шифров. При шифровании каждая буква заменяется другой, отстоящей от неё в алфавите не на одну, а на большее число позиций. Шифр назван в честь римского императора Гая Юлия Цезаря, использовавшего его для секретной переписки. Он использовал сдвиг на три буквы (ROT3). Шифрование для русского алфавита многие предлагают делать с использованием такого сдвига:
Я всё же считаю, что в русском языке 33 буквы, поэтому предлагаю вот такую кодовую таблицу:
Интересно, что в этом варианте в алфавите замены читается фраза «где ёж?»:)
Но сдвиг ведь можно делать на произвольное число букв — от 1 до 33. Поэтому для удобства можно сделать диск, состоящий из двух колец, вращающихся относительно друг друга на одной оси, и написать на кольцах в секторах буквы алфавита. Тогда можно будет иметь под рукой ключ для кода Цезаря с любым смещением. А можно совместить на таком диске шифр Цезаря с атбашем, и получится что-то вроде этого:
Собственно, поэтому такие шифры и называются ROT — от английского слова «rotate» — «вращать».
ROT5
В этом варианте кодируются только цифры, остальной текст остаётся без изменений. Производится 5 замен, поэтому и ROT5: 0↔5, 1↔6, 2↔7, 3↔8, 4↔9.
ROT13
ROT13 — это вариация шифра Цезаря для латинского алфавита со сдвигом на 13 символов. Его часто применяют в интернете в англоязычных форумах как средство для сокрытия спойлеров, основных мыслей, решений загадок и оскорбительных материалов от случайного взгляда.
Латинский алфавит из 26 букв делится на две части. Вторая половина записывается под первой. При кодировании буквы из верхней половины заменяются на буквы из нижней половины и наоборот.
ROT18
Всё просто. ROT18 — это комбинация ROT5 и ROT13:)
ROT47
Существует более полный вариант этого шифра — ROT47. Вместо использования алфавитной последовательности A–Z, ROT47 использует больший набор символов, почти все отображаемые символы из первой половины ASCII -таблицы. При помощи этого шифра можно легко кодировать url, e-mail, и будет непонятно, что это именно url и e-mail:)
Например, ссылка на этот текст зашифруется вот так: 9EEAi^^[email protected]]CF^82>6D^BF6DE^4CJAE^4:A96C^K2>[email protected] Только опытный разгадывальщик по повторяющимся в начале текста двойкам символов сможет додуматься, что 9EEAi^^ может означать HTTP:⁄⁄ .
Квадрат Полибия
Полибий — греческий историк, полководец и государственный деятель, живший в III веке до н.э. Он предложил оригинальный код простой замены, который стал известен как «квадрат Полибия» (англ. Polybius square) или шахматная доска Полибия. Данный вид кодирования изначально применялся для греческого алфавита, но затем был распространен на другие языки. Буквы алфавита вписываются в квадрат или подходящий прямоугольник. Если букв для квадрата больше, то их можно объединять в одной ячейке.
Такую таблицу можно использовать как в шифре Цезаря. Для шифрования на квадрате находим букву текста и вставляем в шифровку нижнюю от неё в том же столбце. Если буква в нижней строке, то берём верхнюю из того же столбца. Для кириллицы можно использовать таблицу РОТ11 (аналог шифра Цезаря со сдвигом на 11 символов):
Буквы первой строки кодируются в буквы второй, второй — в третью, а третьей — в первую.
Но лучше, конечно, использовать «фишку» квадрата Полибия — координаты букв:
Под каждой буквой кодируемого текста записываем в столбик две координаты (верхнюю и боковую). Получится две строки. Затем выписываем эти две строки в одну строку, разбиваем её на пары цифр и используя эти пары как координаты, вновь кодируем по квадрату Полибия.
Можно усложнить. Исходные координаты выписываем в строку без разбиений на пары, сдвигаем на нечётное количество шагов, разбиваем полученное на пары и вновь кодируем.
Квадрат Полибия можно создавать и с использованием кодового слова. Сначала в таблицу вписывается кодовое слово, затем остальные буквы. Кодовое слово при этом не должно содержать повторяющихся букв.
Вариант шифра Полибия используют в тюрьмах, выстукивая координаты букв — сначала номер строки, потом номер буквы в строке.
Стихотворный шифр
Этот метод шифрования похож на шифр Полибия, только в качестве ключа используется не алфавит, а стихотворение, которое вписывается построчно в квадрат заданного размера (например, 10×10). Если строка не входит, то её «хвост» обрезается. Далее полученный квадрат используется для кодирования текста побуквенно двумя координатами, как в квадрате Полибия. Ну чем не шифр? Самый что ни на есть шифр замены. В качестве кодовой таблицы выступает клавиатура.
Таблица перекодировки выглядит вот так:
Литорея
Литорея (от лат. littera — буква) — тайнописание, род шифрованного письма, употреблявшегося в древнерусской рукописной литературе. Известна литорея двух родов: простая и мудрая. Простая, иначе называемая тарабарской грамотой, заключается в следующем. Если «е» и «ё» считать за одну букву, то в русском алфавите остаётся тридцать две буквы, которые можно записать в два ряда — по шестнадцать букв в каждом:
Получится русский аналог шифра ROT13 — РОТ16 🙂 При шифровке верхнюю букву меняют на нижнюю, а нижнюю — на верхнюю. Ещё более простой вариант литореи — оставляют только двадцать согласных букв:
Получается шифр РОТ10 . При шифровании меняют только согласные, а гласные и остальные, не попавшие в таблицу, оставляют как есть. Получается что-то типа «словарь → лсошамь» и т.п.
Мудрая литорея предполагает более сложные правила подстановки. В разных дошедших до нас вариантах используются подстановки целых групп букв, а также числовые комбинации: каждой согласной букве ставится в соответствие число, а потом совершаются арифметические действия над получившейся последовательностью чисел.
Шифрование биграммами
Шифр Плейфера
Шифр Плейфера — ручная симметричная техника шифрования, в которой впервые использована замена биграмм. Изобретена в 1854 году Чарльзом Уитстоном. Шифр предусматривает шифрование пар символов (биграмм), вместо одиночных символов, как в шифре подстановки и в более сложных системах шифрования Виженера. Таким образом, шифр Плейфера более устойчив к взлому по сравнению с шифром простой замены, так как затрудняется частотный анализ.
Шифр Плейфера использует таблицу 5х5 (для латинского алфавита, для русского алфавита необходимо увеличить размер таблицы до 6х6), содержащую ключевое слово или фразу. Для создания таблицы и использования шифра достаточно запомнить ключевое слово и четыре простых правила. Чтобы составить ключевую таблицу, в первую очередь нужно заполнить пустые ячейки таблицы буквами ключевого слова (не записывая повторяющиеся символы), потом заполнить оставшиеся ячейки таблицы символами алфавита, не встречающимися в ключевом слове, по порядку (в английских текстах обычно опускается символ «Q», чтобы уменьшить алфавит, в других версиях «I» и «J» объединяются в одну ячейку). Ключевое слово и последующие буквы алфавита можно вносить в таблицу построчно слева-направо, бустрофедоном или по спирали из левого верхнего угла к центру. Ключевое слово, дополненное алфавитом, составляет матрицу 5х5 и является ключом шифра.
Для того, чтобы зашифровать сообщение, необходимо разбить его на биграммы (группы из двух символов), например «Hello World» становится «HE LL OW OR LD», и отыскать эти биграммы в таблице. Два символа биграммы соответствуют углам прямоугольника в ключевой таблице. Определяем положения углов этого прямоугольника относительно друг друга. Затем руководствуясь следующими 4 правилами зашифровываем пары символов исходного текста:
1) Если два символа биграммы совпадают, добавляем после первого символа «Х», зашифровываем новую пару символов и продолжаем. В некоторых вариантах шифра Плейфера вместо «Х» используется «Q».
2) Если символы биграммы исходного текста встречаются в одной строке, то эти символы замещаются на символы, расположенные в ближайших столбцах справа от соответствующих символов. Если символ является последним в строке, то он заменяется на первый символ этой же строки.
3) Если символы биграммы исходного текста встречаются в одном столбце, то они преобразуются в символы того же столбца, находящимися непосредственно под ними. Если символ является нижним в столбце, то он заменяется на первый символ этого же столбца.
4) Если символы биграммы исходного текста находятся в разных столбцах и разных строках, то они заменяются на символы, находящиеся в тех же строках, но соответствующие другим углам прямоугольника.
Для расшифровки необходимо использовать инверсию этих четырёх правил, откидывая символы «Х» (или «Q») , если они не несут смысла в исходном сообщении.
Рассмотрим пример составления шифра. Используем ключ «Playfair example», тогда матрица примет вид:
Зашифруем сообщение «Hide the gold in the tree stump». Разбиваем его на пары, не забывая про правило . Получаем: «HI DE TH EG OL DI NT HE TR EX ES TU MP». Далее применяем правила -:
1. Биграмма HI формирует прямоугольник, заменяем её на BM.
2. Биграмма DE расположена в одном столбце, заменяем её на ND.
3. Биграмма TH формирует прямоугольник, заменяем её на ZB.
4. Биграмма EG формирует прямоугольник, заменяем её на XD.
5. Биграмма OL формирует прямоугольник, заменяем её на KY.
6. Биграмма DI формирует прямоугольник, заменяем её на BE.
7. Биграмма NT формирует прямоугольник, заменяем её на JV.
8. Биграмма HE формирует прямоугольник, заменяем её на DM.
9. Биграмма TR формирует прямоугольник, заменяем её на UI.
10. Биграмма EX находится в одной строке, заменяем её на XM.
11. Биграмма ES формирует прямоугольник, заменяем её на MN.
12. Биграмма TU находится в одной строке, заменяем её на UV.
13. Биграмма MP формирует прямоугольник, заменяем её на IF.
Получаем зашифрованный текст «BM ND ZB XD KY BE JV DM UI XM MN UV IF». Таким образом сообщение «Hide the gold in the tree stump» преобразуется в «BMNDZBXDKYBEJVDMUIXMMNUVIF».
Двойной квадрат Уитстона
Чарльз Уитстон разработал не только шифр Плейфера, но и другой метод шифрования биграммами, который называют «двойным квадратом». Шифр использует сразу две таблицы, размещенные по одной горизонтали, а шифрование идет биграммами, как в шифре Плейфера.
Имеется две таблицы со случайно расположенными в них русскими алфавитами.
Перед шифрованием исходное сообщение разбивают на биграммы. Каждая биграмма шифруется отдельно. Первую букву биграммы находят в левой таблице, а вторую букву — в правой таблице. Затем мысленно строят прямоугольник так, чтобы буквы биграммы лежали в его противоположных вершинах. Другие две вершины этого прямоугольника дают буквы биграммы шифртекста. Предположим, что шифруется биграмма исходного текста ИЛ. Буква И находится в столбце 1 и строке 2 левой таблицы. Буква Л находится в столбце 5 и строке 4 правой таблицы. Это означает, что прямоугольник образован строками 2 и 4, а также столбцами 1 левой таблицы и 5 правой таблицы. Следовательно, в биграмму шифртекста входят буква О, расположенная в столбце 5 и строке 2 правой таблицы, и буква В, расположенная в столбце 1 и строке 4 левой таблицы, т.е. получаем биграмму шифртекста ОВ.
Если обе буквы биграммы сообщения лежат в одной строке, то и буквы шифртекста берут из этой же строки. Первую букву биграммы шифртекста берут из левой таблицы в столбце, соответствующем второй букве биграммы сообщения. Вторая же буква биграммы шифртекста берется из правой таблицы в столбце, соответствующем первой букве биграммы сообщения. Поэтому биграмма сообщения ТО превращается в биграмму шифртекста ЖБ. Аналогичным образом шифруются все биграммы сообщения:
Сообщение ПР ИЛ ЕТ АЮ _Ш ЕС ТО ГО
Шифртекст ПЕ ОВ ЩН ФМ ЕШ РФ БЖ ДЦ
Шифрование методом «двойного квадрата» дает весьма устойчивый к вскрытию и простой в применении шифр. Взламывание шифртекста «двойного квадрата» требует больших усилий, при этом длина сообщения должна быть не менее тридцати строк, а без компьютера вообще не реально.
Полиалфавитные шифры
Шифр Виженера
Естественным развитием шифра Цезаря стал шифр Виженера. В отличие от моноалфавитных это уже полиалфавитный шифр. Шифр Виженера состоит из последовательности нескольких шифров Цезаря с различными значениями сдвига. Для зашифровывания может использоваться таблица алфавитов, называемая «tabula recta» или «квадрат (таблица) Виженера». На каждом этапе шифрования используются различные алфавиты, выбираемые в зависимости от буквы ключевого слова.
Для латиницы таблица Виженера может выглядеть вот так:
Для русского алфавита вот так:
Легко заметить, что строки этой таблицы — это ROT-шифры с последовательно увеличивающимся сдвигом.
Шифруют так: под строкой с исходным текстом во вторую строку циклически записывают ключевое слово до тех пор, пока не заполнится вся строка. У каждой буквы исходного текста снизу имеем свою букву ключа. Далее в таблице находим кодируемую букву текста в верхней строке, а букву кодового слова слева. На пересечении столбца с исходной буквой и строки с кодовой буквой будет находиться искомая шифрованная буква текста.
Важным эффектом, достигаемым при использовании полиалфавитного шифра типа шифра Виженера, является маскировка частот появления тех или иных букв в тексте, чего лишены шифры простой замены. Поэтому к такому шифру применить частотный анализ уже не получится.
Для шифрования шифром Виженера можно воспользоваться Онлайн-калькулятором шифра Виженера . Для различных вариантов шифра Виженера со сдвигом вправо или влево, а также с заменой букв на числа можно использовать приведённые ниже таблицы:
Шифр Гронсвельда
Книжный шифр
Если же в качестве ключа использовать целую книгу (например, словарь), то можно зашифровывать не отдельные буквы, а целые слова и даже фразы. Тогда координатами слова будут номер страницы, номер строки и номер слова в строке. На каждое слово получится три числа. Можно также использовать внутреннюю нотацию книги — главы, абзацы и т.п. Например, в качестве кодовой книги удобно использовать Библию, ведь там есть четкое разделение на главы, и каждый стих имеет свою маркировку, что позволяет легко найти нужную строку текста. Правда, в Библии нет современных слов типа «компьютер» и «интернет», поэтому для современных фраз лучше, конечно, использовать энциклопедический или толковый словарь.
Это были шифры замены, в которых буквы заменяются на другие. А ещё бывают , в которых буквы не заменяются, а перемешиваются между собой.
Цифровые шифры | Тюрьма и жизнь за решеткой
1. Простейшая система этого шифра заключается в том, что азбука разбивается на группы с равным числом букв и каждая из них обозначается двумя цифрами. Первая цифра обозначает группу, а вторая – порядковый номер буквы в этой группе.
АБВГ ДЕЖЗ ИКЛМ НОПР СТУФ ХЦЧШ ЩЫЮЯ
1 2 3 4 5 6 7
Зашифрованные слова, например «Уголовный розыск», будут выглядеть следующим образом:
53 14 42 33 42 13 41 72 31 44 42 24 72 51 32
Алфавит может браться и не в обычном порядке, а с любой перестановкой букв.
2. Шифр может быть усложнен по следующей схеме:
Алфавит | АЖНУЩЯ | БЗОФЪ | ВИПХЫ | ГКРЦЬ | ЕМТШЮ | ДЛСЧЭ |
№ группы | 4 | 3 | 7 | 8 | 5 | 2 |
Буквы составляются из двух цифр. Первая – ее место в группе, а вторая обозначает номер группы. Например, слово «опасность» в зашифрованном виде будет выглядеть так:
33 37 14 32 34 33 32 35 58
Для усложнения прочтения слово можно записать в одну строку:
333714323433323558
3. Сюда же можно отнести и цифровое письмо, где буквы разделяются на пять групп, каждая из которых снабжается двумя номерами.
№ | 1 АБВГДЕ 123456 | 2 ЖЗИКЛМ 123456 | 3 НОПРСТ 123456 | 4 УФХЦЧШ 123456 | 5 ЩЫЬЭЮЯ 123456 |
Каждая буква изображается дробью таким образом, что числителем ее будет номер группы, а знаменателем – номер места в группе. Так как при этой схеме не употребляются цифры свыше шести, то цифры с семи до девяти можно использовать как пустые знаки.
Этим шифром слово «день» может быть записано следующим образом:
71 81 30 57
95 76 19 38
4. Множительный шифр. Для работы с ним нужно запомнить кодовое число и заранее договориться, все ли буквы алфавита будут использоваться, не будут ли выкинуты какие-нибудь.
Предположим, что кодовым числом будет 257, а из алфавита исключаются буквы: й, ь, ъ, ы, т.е. он выглядит следующим образом:
АБВГДЕЁЖЗИКЛМНОПРСТУФЧЦЧШЩЭЮЯ
Требуется зашифровать выражение:
«Встреча завтра».
Текст пишется для удобства шифрования вразрядку:
В С Т Р Е Ч А З А В Т Р А
2 5 7 2 5 7 2 5 7 2 5 7 2
Под каждой буквой пишется по цифре до тех пор, пока не кончится фраза. Затем вместо каждой буквы текста пишется та буква алфавита, которая по счету оказывается первой вслед за таким количеством букв, какое показывает цифра, стоящая внизу, причем счет производится вправо. Так, под первой буквой «В» стоит цифра «2», поэтому вместо буквы «В» в шифровальном письме ставится третья буква алфавита «Д». Под второй буквой текста «С» стоит цифр «5», поэтому вместо нее ставится шестая после «С», т.е. буква «Ц».
В цифрованном виде письмо приобретет следующий вид:
ДЦШТКБВ НЖДЧЧВ
Для прочтения шифровки необходимо под каждую букву поставить ключевое, кодовое число. В нашем случае число 257. А в алфавите отсчитывать влево от данной буквы шифрованного письма столько букв, сколько показывает стоящая перед нею цифра.
Значит, вместо буквы «Д» вторая налево будет буква «В», а вместо «Ц» пятая, значит буква «С».
Д Ц Щ Т К Б В Н Ж Д Ч Ч В
2 5 7 2 5 7 2 5 7 2 5 7 2
В С Т Р Е Ч А З А В Т Р А
По материалам Л.А.Мильяненков
По ту сторону закона
энциклопедия преступного мира
Шифрованные буквы. Цифровые шифры
Поскольку шифров в мире насчитывается огромное количество, то рассмотреть все шифры невозможно не только в рамках данной статьи, но и целого сайта. Поэтому рассмотрим наиболее примитивные системы шифрации, их применение, а так же алгоритмы расшифровки. Целью своей статьи я ставлю максимально доступно объяснить широкому кругу пользователей принципов шифровки \ дешифровки, а так же научить примитивным шифрам.
Еще в школе я пользовался примитивным шифром, о котором мне поведали более старшие товарищи. Рассмотрим примитивный шифр «Шифр с заменой букв цифрами и обратно».
Нарисуем таблицу, которая изображена на рисунке 1. Цифры располагаем по порядку, начиная с единицы, заканчивая нулем по горизонтали. Ниже под цифрами подставляем произвольные буквы или символы.
Рис. 1 Ключ к шифру с заменой букв и обратно.
Теперь обратимся к таблице 2, где алфавиту присвоена нумерация.
Рис. 2 Таблица соответствия букв и цифр алфавитов.
Теперь зашифруем словоК О С Т Е Р :
1) 1. Переведем буквы в цифры:К = 12, О = 16, С =19, Т = 20, Ё = 7, Р = 18
2) 2. Переведем цифры в символы согласно таблицы 1.
КП КТ КД ПЩ Ь КЛ
3) 3. Готово.
Этот пример показывает примитивный шифр. Рассмотрим похожие по сложности шрифты.
1. 1. Самым простым шифром является ШИФР С ЗАМЕНОЙ БУКВ ЦИФРАМИ. Каждой букве соответствует число по алфавитному порядку. А-1, B-2, C-3 и т.д.
Например слово «TOWN » можно записать как «20 15 23 14», но особой секретности и сложности в дешифровке это не вызовет.
2. Также можно зашифровывать сообщения с помощью ЦИФРОВОЙ ТАБЛИЦЫ. Её параметры могут быть какими угодно, главное, чтобы получатель и отправитель были в курсе. Пример цифровой таблицы.
Рис. 3 Цифровая таблица. Первая цифра в шифре – столбец, вторая – строка или наоборот. Так слово «MIND» можно зашифровать как «33 24 34 14».
3. 3. КНИЖНЫЙ ШИФР
В таком шифре ключом является некая книга, имеющаяся и у отправителя и у получателя. В шифре обозначается страница книги и строка, первое слово которой и является разгадкой. Дешифровка невозможна, если книги у отправителя и корреспондента разных годов издания и выпуска. Книги обязательно должны быть идентичными.
4. 4. ШИФР ЦЕЗАРЯ (шифр сдвига, сдвиг Цезаря)
Известный шифр. Сутью данного шифра является замена одной буквы другой, находящейся на некоторое постоянное число позиций левее или правее от неё в алфавите. Гай Юлий Цезарь использовал этот способ шифрования при переписке со своими генералами для защиты военных сообщений. Этот шифр довольно легко взламывается, поэтому используется редко. Сдвиг на 4. A = E, B= F, C=G, D=H и т.д.
Пример шифра Цезаря: зашифруем слово « DEDUCTION » .
Получаем: GHGXFWLRQ . (сдвиг на 3)
Еще пример:
Шифрование с использованием ключа К=3 . Буква «С» «сдвигается» на три буквы вперёд и становится буквой «Ф». Твёрдый знак, перемещённый на три буквы вперёд, становится буквой «Э», и так далее:
Исходный алфавит:А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
Шифрованный:Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В
Оригинальный текст:
Съешь же ещё этих мягких французских булок, да выпей чаю.
Шифрованный текст получается путём замены каждой буквы оригинального текста соответствующей буквой шифрованного алфавита:
Фэзыя йз зьи ахлш пвёнлш чугрщцкфнлш дцосн, жг еютзм ъгб.
5. ШИФР С КОДОВЫМ СЛОВОМ
Еще один простой способ как в шифровании, так и в расшифровке. Используется кодовое слово (любое слово без повторяющихся букв). Данное слово вставляется впереди алфавита и остальные буквы по порядку дописываются, исключая те, которые уже есть в кодовом слове. Пример: кодовое слово – NOTEPAD.
Исходный: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
Замена:N O T E P A D B C F G H I J K L M Q R S U V W X Y Z
6. 6. ШИФР АТБАШ
Один из наиболее простых способов шифрования. Первая буква алфавита заменяется на последнюю, вторая – на предпоследнюю и т.д.
Пример: « SCIENCE » = HXRVMXV
7. 7. ШИФР ФРЕНСИСА БЭКОНА
Один из наиболее простых методов шифрования. Для шифрования используется алфавит шифра Бэкона: каждая буква слова заменяется группой из пяти букв «А» или «B» (двоичный код).
a AAAAA g AABBA m ABABB s BAAAB y BABBA
b AAAAB h AABBB n ABBAA t BAABA z BABBB
c AAABA i ABAAA o ABBAB u BAABB
d AAABB j BBBAA p ABBBA v BBBAB
e AABAA k ABAAB q ABBBB w BABAA
f AABAB l ABABA r BAAAA x BABAB
Сложность дешифрования заключается в определении шифра. Как только он определен, сообщение легко раскладывается по алфавиту.
Существует несколько способов кодирования.
Также можно зашифровать предложение с помощью двоичного кода. Определяются параметры (например, «А» — от A до L, «В» — от L до Z). Таким образом, BAABAAAAABAAAABABABB означает TheScience of Deduction ! Этот способ более сложен и утомителен, но намного надежнее алфавитного варианта.
8. 8. ШИФР БЛЕЗА ВИЖЕНЕРА.
Этот шифр использовался конфедератами во время Гражданской войны. Шифр состоит из 26 шифров Цезаря с различными значениями сдвига (26 букв лат.алфавита). Для зашифровывания может использоваться tabula recta (квадрат Виженера). Изначально выбирается слово-ключ и исходный текст. Слово ключ записывается циклически, пока не заполнит всю длину исходного текста. Далее по таблице буквы ключа и исходного текста пересекаются в таблице и образуют зашифрованный текст.
Рис. 4 Шифр Блеза Виженера
9. 9. ШИФР ЛЕСТЕРА ХИЛЛА
Основан на линейной алгебре. Был изобретен в 1929 году.
В таком шифре каждой букве соответствует число (A = 0, B =1 и т.д.). Блок из n-букв рассматривается как n-мерный вектор и умножается на (n х n) матрицу по mod 26. Матрица и является ключом шифра. Для возможности расшифровки она должна быть обратима в Z26n.
Для того, чтобы расшифровать сообщение, необходимо обратить зашифрованный текст обратно в вектор и умножить на обратную матрицу ключа. Для подробной информации – Википедия в помощь.
10. 10. ШИФР ТРИТЕМИУСА
Усовершенствованный шифр Цезаря. При расшифровке легче всего пользоваться формулой:
L= (m+k) modN , L-номер зашифрованной буквы в алфавите, m-порядковый номер буквы шифруемого текста в алфавите, k-число сдвига, N-количество букв в алфавите.
Является частным случаем аффинного шифра.
11. 11. МАСОНСКИЙ ШИФР
12. 12. ШИФР ГРОНСФЕЛЬДА
По своему содержанию этот шифр включает в себя шифр Цезаря и шифр Виженера, однако в шифре Гронсфельда используется числовой ключ. Зашифруем слово “THALAMUS”, используя в качестве ключа число 4123. Вписываем цифры числового ключа по порядку под каждой буквой слова. Цифра под буквой будет указывать на количество позиций, на которые нужно сдвинуть буквы. К примеру вместо Т получится Х и т.д.
T H A L A M U S
4 1 2 3 4 1 2 3
T U V W X Y Z
0 1 2 3 4
В итоге: THALAMUS = XICOENWV
13. 13. ПОРОСЯЧЬЯ ЛАТЫНЬ
Чаще используется как детская забава, особой трудности в дешифровке не вызывает. Обязательно употребление английского языка, латынь здесь ни при чем.
В словах, начинающихся с согласных букв, эти согласные перемещаются назад и добавляется “суффикс” ay. Пример: question = estionquay. Если же слово начинается с гласной, то к концу просто добавляется ay, way, yay или hay (пример: a dog = aay ogday).
В русском языке такой метод тоже используется. Называют его по-разному: “синий язык”, “солёный язык”, “белый язык”, “фиолетовый язык”. Таким образом, в Синем языке после слога, содержащего гласную, добавляется слог с этой же гласной, но с добавлением согласной “с” (т.к. язык синий). Пример:Информация поступает в ядра таламуса = Инсифорсомасацисияся поссотусупасаетсе в ядсяраса тасаласамусусаса.
Довольно увлекательный вариант.
14. 14. КВАДРАТ ПОЛИБИЯ
Подобие цифровой таблицы. Существует несколько методов использования квадрата Полибия. Пример квадрата Полибия: составляем таблицу 5х5 (6х6 в зависимости от количества букв в алфавите).
1 МЕТОД. Вместо каждой буквы в слове используется соответствующая ей буква снизу (A = F, B = G и т.д.). Пример: CIPHER — HOUNIW.
2 МЕТОД. Указываются соответствующие каждой букве цифры из таблицы. Первой пишется цифра по горизонтали, второй — по вертикали. (A = 11, B = 21…). Пример: CIPHER = 31 42 53 32 51 24
3 МЕТОД. Основываясь на предыдущий метод, запишем полученный код слитно. 314253325124. Делаем сдвиг влево на одну позицию. 142533251243. Снова разделяем код попарно.14 25 33 25 12 43. В итоге получаем шифр. Пары цифр соответствуют букве в таблице: QWNWFO.
Шифров великое множество, и вы так же можете придумать свой собственный шифр, однако изобрести стойкий шифр очень сложно, поскольку наука дешифровки с появлением компьютеров шагнула далеко вперед и любой любительский шифр будет взломан специалистами за очень короткое время.
Методы вскрытия одноалфавитных систем (расшифровка)
При своей простоте в реализации одноалфавитные системы шифрования легко уязвимы.
Определим количество различных систем в аффинной системе. Каждый ключ полностью определен парой целых чисел a и b, задающих отображение ax+b. Для а существует j(n) возможных значений, где j(n) — функция Эйлера, возвращающая количество взаимно простых чисел с n, и n значений для b, которые могут быть использованы независимо от a, за исключением тождественного отображения (a=1 b=0), которое мы рассматривать не будем.
Таким образом получается j(n)*n-1 возможных значений, что не так уж и много: при n=33 в качестве a могут быть 20 значений(1, 2, 4, 5, 7, 8, 10, 13, 14, 16, 17, 19, 20, 23, 25, 26, 28, 29, 31, 32), тогда общее число ключей равно 20*33-1=659. Перебор такого количества ключей не составит труда при использовании компьютера.
Но существуют методы упрощающие этот поиск и которые могут быть использованы при анализе более сложных шифров.
Частотный анализ
Одним из таких методов является частотный анализ. Распределение букв в криптотексте сравнивается с распределением букв в алфавите исходного сообщения. Буквы с наибольшей частотой в криптотексте заменяются на букву с наибольшей частотой из алфавита. Вероятность успешного вскрытия повышается с увеличением длины криптотекста.
Существуют множество различных таблиц о распределении букв в том или ином языке, но ни одна из них не содержит окончательной информации — даже порядок букв может отличаться в различных таблицах. Распределение букв очень сильно зависит от типа теста: проза, разговорный язык, технический язык и т.п. В методических указаниях к лабораторной работе приведены частотные характеристики для различных языков, из которых ясно, что буквы буквы I, N, S, E, A (И, Н, С, Е, А) появляются в высокочастотном классе каждого языка.
Простейшая защита против атак, основанных на подсчете частот, обеспечивается в системе омофонов (HOMOPHONES) — однозвучных подстановочных шифров, в которых один символ открытого текста отображается на несколько символов шифротекста, их число пропорционально частоте появления буквы. Шифруя букву исходного сообщения, мы выбираем случайно одну из ее замен. Следовательно простой подсчет частот ничего не дает криптоаналитику. Однако доступна информация о распределении пар и троек букв в различных естественных языках.
Человек – социальное существо. Мы учимся взаимодействовать с другими, наблюдая за их реакцией на наши действия с первых дней жизни. При любом взаимодействии мы используем то, что искусствоведы называют «культурными кодами». А ведь культурные коды – самые сложные в дешифровке, здесь нет специальной программы, которая подскажет, что может значить приподнятая бровь или беспричинные, казалось бы, слёзы; нет однозначного ответа; более того, даже сам «кодирующий» может не знать, что он имел в виду под своим действием! Наука понимать окружающих – это то, что мы постигаем всю жизнь, и чем лучше развито это умение, тем, как правило, гармоничнее складывается общение с окружающими и любая деятельность, в которой нужны согласованные действия.
Изучение криптографии в обеих её ипостасях (шифровка и дешифровка) позволяет научиться находить связь между шифрованным, запутанным, непонятным посланием и смыслом, который в нём таится. Проходя исторический путь от шифра Юлия Цезаря до RSA-ключей, от розеттского камня до эсперанто, мы учимся воспринимать информацию в непривычном нам виде, разгадываем загадки, привыкаем к многовариантности. И главное – учимся понимать: как разных, непохожих на нас людей, так и математико-лингвистические механизмы, которые лежат в основе каждого, абсолютно каждого послания.
Итак, приключенческий рассказ о криптографии для детей, для всех, у кого есть дети, и для всех, кто когда-нибудь был ребёнком.
Трепещут на ветру флаги, ржут разгорячённые кони, бряцают доспехи: это Римская империя обнаружила, что в мире ещё есть кто–то, кого они не завоевали. Под командованием Гая Юлия Цезаря находится огромная армия, которой надо быстро и точно управлять.
Шпионы не дремлют, враги готовятся перехватить посланников императора, чтобы узнать все его блестящие планы. Каждый кусок пергамента, попадающий не в те руки – это вероятность проиграть сражение.
Но вот захвачен посланник, злоумышленник разворачивает записку… и ничего не понимает! «Наверное, – чешет он в затылке, – это на каком–то неизвестном языке…». Рим торжествует, его планы в безопасности.
Что же такое шифр Цезаря? Самый простой его вариант – это когда мы вместо каждой буквы ставим следующую по алфавиту: вместо «а» – «б», вместо «е» – «ж», а вместо «я» – «а». Тогда, например, «Я люблю играть» станет «А мявмя йдсбуэ». Давайте посмотрим на табличку, сверху в ней будет буква, которую шифруем, а снизу – на которую заменяем.
Алфавит как бы «сдвинут» на одну букву, правда? Поэтому этот шифр ещё называют «шифром сдвига» и говорят «используем шифр Цезаря со сдвигом 10» или «со сдвигом 18». Это значит, что надо «сдвинуть» нижний алфавит не на 1, как у нас, а, например, на 10 – тогда у нас вместо «а» будет «й», а вместо «у» – «э».
Сам Цезарь использовал этот шифр со сдвигом 3, то есть его таблица шифрования выглядела вот так:
Точнее, она бы так выглядела, если бы Цезарь жил в России. В его случае алфавит был латинский.
Такой шифр достаточно легко взломать, если вы профессиональный шпион или Шерлок Холмс. Но он до сих пор подходит для того, чтобы хранить свои маленькие секреты от посторонних глаз.
Вы и сами можете устроить свой маленький домашний заговор. Договоритесь о своём числе сдвига, и вы сможете оставлять друг другу шифрованные записки на холодильнике о сюрпризе на чей-нибудь день рождения, отправлять шифрованные сообщения и, может быть, если случится длинная разлука, даже писать друг другу тайные, кодированные письма!
Но вся история криптографии – это история борьбы между искусством зашифровывать послания и искусством их расшифровывать. Когда появляется новый способ закодировать сообщение, находятся те, кто пытаются этот код взломать.
Что такое «взломать код»? Это значит – придумать способ его разгадать, не зная ключа и смысла шифра. Шифр Цезаря тоже когда-то был взломан – так называемым «методом частотного анализа». Посмотрите на любой текст – гласных в нём гораздо больше, чем согласных, а «о» гораздо больше, чем, например, «я». Для каждого языка можно назвать самые часто и редко используемые буквы. Надо только найти, какой буквы больше всего в зашифрованном тексте. И скорее всего это будет зашифрованная «о», «е», «и» или «а» – самые часто встречающиеся буквы в русских словах. А как только ты знаешь, какой буквой обозначили, например, «а», ты знаешь, и на сколько «сдвинут» шифрованный алфавит, а значит, можешь расшифровать весь текст.
Когда разгадку кода Цезаря узнал весь мир, криптографам пришлось придумать что-нибудь помощнее. Но, как часто бывает, люди не стали изобретать что–то совсем новое, а усложнили уже имеющееся. Вместо того, чтобы шифровать все буквы по одному и тому же сдвинутому алфавиту, в тайных посланиях их стали использовать несколько. Например, первую букву шифруем по алфавиту со сдвигом 3, вторую – со сдвигом 5, третью – со сдвигом 20, четвертую – снова со сдвигом 3, пятую – со сдвигом 5, шестую – со сдвигом 20 и так далее, по кругу. Такой шифр называют полиалфавитным (то есть многоалфавитным). Попробуйте, так ваш шифр уже может разгадать только тот, кто посвящён в тайны криптографии!
Казалось бы, злоумышленники должны были запутаться и тайны должны были навсегда остаться тайнами. Но если шифр один раз был взломан, то и любые более сложные его варианты тоже будут однажды взломаны.
Давайте представим, что кто–то зашифровал послание двумя алфавитами. Первая буква – со сдвигом 5, вторая – со сдвигом 3, третья – снова 5, четвертая снова 3 – как на табличке ниже.
Мы можем разделить все зашифрованные буквы на две группы: буквы, зашифрованные со сдвигом 5 (1, 3, 5, 7, 9, 11, 13, 15, 17, 19) и буквы, зашифрованные со сдвигом 3 (2, 4, 6, 8, 10, 12, 14, 16, 18, 20). И внутри каждой группы искать, какие буквы встретились нам чаще остальных – так же, как в шифре Цезаря, только мороки побольше.
Если шифровщик использовал три алфавита, то мы разделим буквы на три группы, если пять – то на пять. А дальше снова идет в ход тот же самый частотный анализ.
Можно задать вопрос – откуда дешифраторы знали, что алфавитов три, а не, например, пять? На самом деле они не знали. И перебирали все возможные варианты. Поэтому дешифровка занимала гораздо больше времени, но все же была возможной.
В криптографии сообщение, которое надо передать, называется «открытым текстом», а зашифрованное сообщение – «шифрованным текстом». И правило, по которому текст зашифрован, называется «ключом шифра».
Незаметно подкрался XX век. Человечество всё больше надеется на машины: поезда заменяют повозки, радио появляется почти в каждом доме, и уже встали на крыло первые самолеты. И шифровку тайных планов в конце концов тоже передают машинам.
Во время Второй мировой войны было изобретено очень много машин для шифрования сообщений, но все они опирались на идею того, что полиалфавитный шифр можно ещё больше запутать. Запутать настолько, что, хотя по идее его и можно будет разгадать, на практике это ни у кого не получится. Запутать настолько, насколько это способна сделать машина, но не способен человек. Самая известная из таких шифровальных машин – «Энигма», использовавшаяся Германией.
theromanroad.files.wordpress.com
Но, пока самой главной тайной Германии была конструкция «Энигмы», самой главной тайной её противников было то, что к середине войны все страны уже «Энигму» разгадали. Если бы об этом стало известно в самой Германии, они бы начали придумывать что-то новое, но до конца войны они верили в идеальность своей шифровальной машины, а Франция, Англия, Польша, Россия читали тайные немецкие сообщения как открытую книгу.
Всё дело в том, что польский ученый Мариан Реевский однажды подумал о том, что раз придумали машину для шифровки сообщений, то можно придумать и машину для расшифровки, и первый свой образец называл «Бомба». Не из-за «взрывного» эффекта, как можно было бы подумать, а в честь вкусного, круглого пирожного.
Потом математик Алан Тьюринг построил на его основе машину, которая полностью расшифровывала код «Энигмы», и которую, между прочим, можно считать первым прародителем наших современных компьютеров.
Самый сложный код за всю Вторую мировую придумали американцы. На каждый боевой корабль США был откомандирован… индеец. Их язык был настолько непонятен и малоизучен, звучал так странно, что дешифровщики не знали, как и подступиться, и флот США безбоязненно передавал информацию на языке индейского племени чокта.
Вообще, криптография – это же не только о том, как загадать загадку, но и о том, как её разгадать. Не всегда такие загадки специально придумывают люди – иногда их подбрасывает сама история. И одной из главных загадок для криптографов долгое время была загадка древнеегипетского языка.
Никто не знал, что же значат все эти иероглифы. Что египтяне имели в виду, рисуя птиц и скарабеев. Но в один счастливый день французская армия обнаружила в Египте «Розеттский камень».
На этом камне была надпись – одна и та же, на древнегреческом, египетском буквенном (демотический текст) и египетском иероглифическом. Историки того времени хорошо знали древнегреческий, поэтому что же написано на камне они узнали быстро. Но главное, что, зная перевод, они смогли раскрыть тайны древнего египетского языка. Демотический текст был расшифрован достаточно быстро, а вот над иероглифами историки, лингвисты, математики, криптографы ломали голову долгие годы, но в конце концов всё-таки разгадали.
И это была большая победа криптографов – победа над самим временем, которое надеялось спрятать от людей их историю.
Но среди всех этих разгаданных шифров есть три особенных. Один – это метод Диффи – Хеллмана. Если маленькое сообщение зашифровать этим методом, то, чтобы его расшифровать, надо взять все компьютеры в мире и занять их этим на много-много лет. Именно он используется сегодня в Интернете.
Второй – это квантовое шифрование. Оно, правда, ещё не совсем придумано, зато, если люди сделают квантовые компьютеры такими, как о них мечтают, то такой шифр будет знать, когда его пытаются расшифровывать .
А третий особенный шифр – это «книжный шифр». Его удивительность в том, что им просто что-то зашифровать и непросто – расшифровать. Два человека выбирают одну и ту же книгу, и каждое слово из своего письма в ней ищут и заменяют тремя цифрами: номер страницы, номер строки и номер слова в строке. Это очень просто сделать, правда? А разгадать совсем не просто: откуда шпиону знать, какую книгу вы выбрали? И самое главное, компьютеры в этом деле тоже особо не помогут. Конечно, если подключить очень много умных людей и очень много мощных компьютеров, такой шифр не устоит.
Но есть главное правило безопасности. Её, этой безопасности, должно быть столько, чтобы зашифрованное послание не стоило тех огромных усилий, которые надо потратить на её расшифровку. То есть чтобы злодею – шпиону пришлось потратить столько сил, чтобы разгадать ваш код, сколько он не готов тратить на то, чтобы узнать ваше сообщение. И это правило работает всегда и везде, как в дружеских школьных переписках, так и в мире настоящих шпионских игр.
Криптография – это искусство загадывать и разгадывать загадки. Искусство сохранить тайны, и искусство их раскрывать. С криптографией мы учимся понимать друг друга и придумываем, как сохранить что-то важное для себя в безопасности. А чем лучше мы умеем и то и другое, тем спокойнее и деятельнее может быть наша жизнь.
Методы: объяснительно-иллюстративный, частично-поисковый.
- Создать условия для повышения познавательного интереса к предмету.
- Способствовать развитию аналитико-синтезирующего мышления.
- Способствовать формированию умений и навыков, носящих общенаучный и обще интеллектуальный характер.
Задачи:
образовательные:
- обобщить и систематизировать знания основных понятий: код, кодирование, криптография;
- познакомится с простейшими способами шифрования и их создателями;
- отрабатывать умения читать шифровки и шифровать информацию;
развивающие:
- развивать познавательную деятельность и творческие способности учащихся;
- формировать логическое и абстрактное мышление;
- развивать умение применять полученные знания в нестандартных ситуациях;
- развивать воображение и внимательность;
воспитательные:
- воспитывать коммуникативную культуру;
- развивать познавательный интерес.
Предлагаемая разработка может быть использована для учащихся 7–9 классов. Презентация помогает сделать материал наглядным и доступным.
Общество, в котором живёт человек, на протяжении своего развития имеет дело с информацией. Она накапливается, перерабатывается, хранится, передаётся. (Слайд 2. Презентация)
А все ли и всегда должны знать всё?
Конечно, нет.
Люди всегда стремились скрыть свои секреты. Сегодня вы познакомитесь с историей развития тайнописи, узнаете простейшие способы шифрования. У вас появится возможность расшифровать послания.
Простые приемы шифрования применялись и получили некоторое распространение уже в эпоху древних царств и в античности.
Тайнопись – криптография — является ровесницей письменности. История криптографии насчитывает не одно тысячелетие. Идея создания текстов с тайным смыслом и зашифрованными сообщениями почти так же стара, как и само искусство письма. Этому есть много свидетельств. Глиняная табличка из Угарита (Сирия) – упражнения обучающие искусству расшифровки (1200 год до н.э.). “Вавилонская теодицея” из Ирака – пример акростиха (середина II тысячелетия до н.э.).
Один из первых систематических шифров был разработан древними евреями; этот метод называется темура — “обмен”.
Самый простой из них “Атбаш”, алфавит разделялся посередине так, чтобы первые две буквы, А и Б, совпадали с двумя последними, Т и Ш. Использование шифра темура можно обнаружить в Библии. Это пророчество Иеремии, сделанное в начале VI века до нашей эры, содержит проклятие, всем правителям мира, заканчивая “царем Сесаха” который при дешифровки с шифра “Атбаш” оказывается царём Вавилона.
(Слайд 3) Более хитроумный способ шифрования был изобретён в древней Спарте во времена Ликурга (V век до н.э.) Для зашифровывания текста использовалась Сциталла — жезл цилиндрической формы, на который наматывалась лента из пергамента. Вдоль оси цилиндра построчно записывался текст, лента сматывалась с жезла и передавалась адресату, имеющему Сциталлу такого же диаметра. Этот способ осуществлял перестановку букв сообщения. Ключом шифра служил диаметр Сциталлы. АРИСТОТЕЛЬ придумал метод вскрытия такого шифра. Он изобрёл дешифровальное устройство “Антисциталла”.
(Слайд 4) Задание “Проверь себя”
(Слайд 5) Греческий писатель ПОЛИБИЙ использовал систему сигнализации, которая применялась как метод шифрования. С его помощью можно было передавать абсолютно любую информацию. Он записывал буквы алфавита в квадратную таблицу и заменял их координатами. Устойчивость этого шифра была велика. Основной причиной этого являлась возможность постоянно менять последовательность букв в квадрате.
(Слайд 6) Задание “Проверь себя”
(Слайд 7) Особую роль в сохранении тайны сыграл способ шифрования, предложенный ЮЛИЕМ ЦЕЗАРЕМ и описанный им в “Записках о галльской войне.
(Слайд 8) Задание “Проверь себя”
(Слайд 9) Существует несколько модификаций шифра Цезаря. Один из них алгоритм шифра Гронсфельда (созданный в 1734 году бельгийцем Хосе де Бронкхором, графом де Гронсфельд, военным и дипломатом). Шифрование заключается в том, что величина сдвига не является постоянной, а задается ключом (гаммой).
(Слайд 10) Для того, кто передаёт шифровку, важна её устойчивость к дешифрованию. Эта характеристика шифра называется криптостойкостью. Повысить криптостойкость позволяют шифры много алфавитной или многозначной замены. В таких шифрах каждому символу открытого алфавита ставятся в соответствие не один, а несколько символов шифровки.
(Слайд 11) Научные методы в криптографии впервые появились в арабских странах. Арабского происхождения и само слово шифр (от арабского «цифра»). Арабы первыми стали заменять буквы цифрами с целью защиты исходного текста. О тайнописи и её значении говорится даже в сказках “Тысячи и одной ночи”. Первая книга, специально посвящённая описанию некоторых шифров, появилась в 855 г., она называлась “Книга о большом стремлении человека разгадать загадки древней письменности”.
(Слайд 12) Итальянский математик и философ ДЖЕРОЛАМО КАРДАНО написал книгу «О тонкостях», в которой имеется часть, посвященная криптографии.
Его вклад в науку криптография содержит два предложения:
Первое — использовать открытый текст в качестве ключа.
Второе — он предложил шифр, называемый ныне «Решетка Кардано».
Кроме данных предложений Кардано дает «доказательство» стойкости шифров, основанное на подсчете числа ключей.
Решётка Кардано представляет собой лист из твердого материала, в котором через неправильные интервалы сделаны прямоугольные вырезы высотой для одной строчки и различной длины. Накладывая эту решетку на лист писчей бумаги, можно было записывать в вырезы секретное сообщение. Оставшиеся места заполнялись произвольным текстом, маскирующим секретное сообщение. Этим методом маскировки пользовались многие известные исторические лица, кардинал Ришелье во Франции и русский дипломат А. Грибоедов. На основе такой решетки Кардано построил шифр перестановки.
(Слайд 13) Задание “Проверь себя”
(Слайд 14) Увлекались тайнописью и в России. Используемые шифры — такие же, как в западных странах — значковые, замены, перестановки.
Датой появления криптографической службы в России следует считать 1549 год (царствование Ивана IV), с момента образования «посольского приказа», в котором имелось «цифирное отделение».
Петр I полностью реорганизовал криптографическую службу, создав «Посольскую канцелярию». В это время применяются для шифрования коды, как приложения к «цифирным азбукам». В знаменитом «деле царевича Алексея» в обвинительных материалах фигурировали и «цифирные азбуки».
(Слайд 15) Задание “Проверь себя”
(Слайд 16) Много новых идей в криптографии принес XIX век. ТОМАС ДЖЕФФЕРСОН создал шифровальную систему, занимающую особое место в истории криптографии — «дисковый шифр». Этот шифр реализовывался с помощью специального устройства, которое впоследствии назвали шифратором Джефферсона.
В 1817 г. ДЕСИУС УОДСВОРТ сконструировал шифровальное устройство, которое внесло новый принцип в криптографию. Нововведение состояло в том, что он сделал алфавиты открытого и шифрованного текстов различных длин. Устройство, с помощью которого он это осуществил, представляло собой диск, с двумя подвижными кольцами с алфавитами. Буквы и цифры внешнего кольца были съемными и могли собираться в любом порядке. Эта шифрсистема реализует периодическую многоалфавитную замену.
(Слайд 17) Способов кодирования информации можно привести много.
Капитан французской армии ШАРЛЬ БАРБЬЕ разработал в 1819 году систему кодирования ecriture noctrume – ночное письмо. В системе применялись выпуклые точки и тире, недостаток системы её сложность, так как кодировались не буквы, а звуки.
ЛУИ БРАЙЛЬ усовершенствовал систему, разработал собственный шифр. Основы этой системы используются поныне.
(Слайд 18) СЭМЮЕЛЬ МОРЗЕ разработал в 1838 году систему кодирования символов с помощью точки и тире. Он же является изобретателем телеграфа (1837год) – устройства в котором использовалась эта система. Самое важное в этом изобретении – двоичный код, то есть использованием для кодирования букв только двух символов.
(Слайд 19) Задание “Проверь себя”
(Слайд 20) В конце XIX века криптография начинает приобретать черты точной науки, а не только искусства, ее начинают изучать в военных академиях. В одной из них был разработан свой собственный военно-полевой шифр, получивший название «Линейка Сен-Сира». Она позволила существенно повысить эффективность труда шифровальщика, облегчить алгоритм реализации шифра Виженера. Именно в этой механизации процессов шифрования-дешифрования и заключается вклад авторов линейки в практическую криптографию.
В истории криптографии XIX в. ярко запечатлелось имя ОГЮСТА КЕРКГОФФСА. В 80-х годах XIX века издал книгу «Военная криптография» объемом всего в 64 страницы, но они обессмертили его имя в истории криптографии. В ней сформулированы 6 конкретных требований к шифрам, два из которых относятся к стойкости шифрования, а остальные — к эксплуатационным качествам. Одно из них («компрометация системы не должна причинять неудобств корреспондентам») стало называться «правилом Керкгоффса». Все эти требования актуальны и в наши дни.
В XX веке криптография стала электромеханической, затем электронной. Это означает, что основными средствами передачи информации стали электромеханические и электронные устройства.
(Слайд 21) Во второй половине XX века, вслед за развитием элементной базы вычислительной техники, появились электронные шифраторы. Сегодня именно электронные шифраторы составляют подавляющую долю средств шифрования. Они удовлетворяют все возрастающим требованиям по надежности и скорости шифрования.
В семидесятых годах произошло два события, серьезно повлиявших на дальнейшее развитие криптографии. Во-первых, был принят (и опубликован!) первый стандарт шифрования данных (DES), «легализовавший» принцип Керкгоффса в криптографии. Во-вторых, после работы американских математиков У. ДИФФИ и М. ХЕЛЛМАНА родилась «новая криптография»- криптография с открытым ключом.
(Слайд 22) Задание “Проверь себя”
(Слайд 23) Роль криптографии будет возрастать в связи с расширением ее областей приложения:
- цифровая подпись,
- аутентификация и подтверждение подлинности и целостности электронных документов,
- безопасность электронного бизнеса,
- защита информации, передаваемой через интернет и др.
Знакомство с криптографией потребуется каждому пользователю электронных средств обмена информацией, поэтому криптография в будущем станет «третьей грамотностью» наравне со «второй грамотностью» — владением компьютером и информационными технологиями.
В шифрах замены (или шифрах подстановки), в отличие от , элементы текста не меняют свою последовательность, а изменяются сами, т.е. происходит замена исходных букв на другие буквы или символы (один или несколько) по неким правилам.
На этой страничке описаны шифры, в которых замена происходит на буквы или цифры. Когда же замена происходит на какие-то другие не буквенно-цифровые символы, на комбинации символов или рисунки, это называют прямым .
Моноалфавитные шифры
В шифрах с моноалфавитной заменой каждая буква заменяется на одну и только одну другую букву/символ или группу букв/символов. Если в алфавите 33 буквы, значит есть 33 правила замены: на что менять А, на что менять Б и т.д.
Такие шифры довольно легко расшифровать даже без знания ключа. Делается это при помощи частотного анализа зашифрованного текста — надо посчитать, сколько раз каждая буква встречается в тексте, и затем поделить на общее число букв. Получившуюся частоту надо сравнить с эталонной. Самая частая буква для русского языка — это буква О, за ней идёт Е и т.д. Правда, работает частотный анализ на больших литературных текстах. Если текст маленький или очень специфический по используемым словам, то частотность букв будет отличаться от эталонной, и времени на разгадывание придётся потратить больше. Ниже приведена таблица частотности букв (то есть относительной частоты встречаемых в тексте букв) русского языка, рассчитанная на базе НКРЯ .
Использование метода частотного анализа для расшифровки шифрованных сообщений красиво описано во многих литературных произведениях, например, у Артура Конана Дойля в романе « » или у Эдгара По в « ».
Составить кодовую таблицу для шифра моноалфавитной замены легко, но запомнить её довольно сложно и при утере восстановить практически невозможно, поэтому обычно придумывают какие-то правила составления таких кодовых страниц. Ниже приведены самые известные из таких правил.
Случайный код
Как я уже писал выше, в общем случае для шифра замены надо придумать, какую букву на какую надо заменять. Самое простое — взять и случайным образом перемешать буквы алфавита, а потом их выписать под строчкой алфавита. Получится кодовая таблица. Например, вот такая:
Число вариантов таких таблиц для 33 букв русского языка = 33! ≈ 8.683317618811886*10 36 . С точки зрения шифрования коротких сообщений — это самый идеальный вариант: чтобы расшифровать, надо знать кодовую таблицу. Перебрать такое число вариантов невозможно, а если шифровать короткий текст, то и частотный анализ не применишь.
Но для использования в квестах такую кодовую таблицу надо как-то по-красивее преподнести. Разгадывающий должен для начала эту таблицу либо просто найти, либо разгадать некую словесно-буквенную загадку. Например, отгадать или решить .
Ключевое слово
Один из вариантов составления кодовой таблицы — использование ключевого слова. Записываем алфавит, под ним вначале записываем ключевое слово, состоящее из неповторяющихся букв, а затем выписываем оставшиеся буквы. Например, для слова «манускрипт» получим вот такую таблицу:
Как видим, начало таблицы перемешалось, а вот конец остался неперемешенным. Это потому, что самая «старшая» буква в слове «манускрипт» — буква «У», вот после неё и остался неперемешенный «хвост». Буквы в хвосте останутся незакодированными. Можно оставить и так (так как большая часть букв всё же закодирована), а можно взять слово, которое содержит в себе буквы А и Я, тогда перемешаются все буквы, и «хвоста» не будет.
Само же ключевое слово можно предварительно тоже загадать, например при помощи или . Например, вот так:
Разгадав арифметический ребус-рамку и сопоставив буквы и цифры зашифрованного слова, затем нужно будет получившееся слово вписать в кодовую таблицу вместо цифр, а оставшиеся буквы вписать по-порядку. Получится вот такая кодовая таблица:
Атбаш
Изначально шифр использовался для еврейского алфавита, отсюда и название. Слово атбаш (אתבש) составлено из букв «алеф», «тав», «бет» и «шин», то есть первой, последней, второй и предпоследней букв еврейского алфавита. Этим задаётся правило замены: алфавит выписывается по порядку, под ним он же выписывается задом наперёд. Тем самым первая буква кодируется в последнюю, вторая — в предпоследнюю и т.д.
Фраза «ВОЗЬМИ ЕГО В ЭКСЕПШН» превращается при помощи этого шифра в «ЭРЧГТЦ ЪЬР Э ВФНЪПЖС». Онлайн-калькулятор шифра Атбаш
ROT1
Этот шифр известен многим детям. Ключ прост: каждая буква заменяется на следующую за ней в алфавите. Так, A заменяется на Б, Б на В и т.д., а Я заменяется на А. «ROT1» значит «ROTate 1 letter forward through the alphabet» (англ. «поверните/сдвиньте алфавит на одну букву вперед»). Сообщение «Хрюклокотам хрюклокотамит по ночам» станет «Цсялмплпубн цсялмплпубнйу рп опшбн». ROT1 весело использовать, потому что его легко понять даже ребёнку, и легко применять для шифрования. Но его так же легко и расшифровать.
Шифр Цезаря
Шифр Цезаря — один из древнейших шифров. При шифровании каждая буква заменяется другой, отстоящей от неё в алфавите не на одну, а на большее число позиций. Шифр назван в честь римского императора Гая Юлия Цезаря, использовавшего его для секретной переписки. Он использовал сдвиг на три буквы (ROT3). Шифрование для русского алфавита многие предлагают делать с использованием такого сдвига:
Я всё же считаю, что в русском языке 33 буквы, поэтому предлагаю вот такую кодовую таблицу:
Интересно, что в этом варианте в алфавите замены читается фраза «где ёж?»:)
Но сдвиг ведь можно делать на произвольное число букв — от 1 до 33. Поэтому для удобства можно сделать диск, состоящий из двух колец, вращающихся относительно друг друга на одной оси, и написать на кольцах в секторах буквы алфавита. Тогда можно будет иметь под рукой ключ для кода Цезаря с любым смещением. А можно совместить на таком диске шифр Цезаря с атбашем, и получится что-то вроде этого:
Собственно, поэтому такие шифры и называются ROT — от английского слова «rotate» — «вращать».
ROT5
В этом варианте кодируются только цифры, остальной текст остаётся без изменений. Производится 5 замен, поэтому и ROT5: 0↔5, 1↔6, 2↔7, 3↔8, 4↔9.
ROT13
ROT13 — это вариация шифра Цезаря для латинского алфавита со сдвигом на 13 символов. Его часто применяют в интернете в англоязычных форумах как средство для сокрытия спойлеров, основных мыслей, решений загадок и оскорбительных материалов от случайного взгляда.
Латинский алфавит из 26 букв делится на две части. Вторая половина записывается под первой. При кодировании буквы из верхней половины заменяются на буквы из нижней половины и наоборот.
ROT18
Всё просто. ROT18 — это комбинация ROT5 и ROT13:)
ROT47
Существует более полный вариант этого шифра — ROT47. Вместо использования алфавитной последовательности A–Z, ROT47 использует больший набор символов, почти все отображаемые символы из первой половины ASCII -таблицы. При помощи этого шифра можно легко кодировать url, e-mail, и будет непонятно, что это именно url и e-mail:)
Например, ссылка на этот текст зашифруется вот так: 9EEAi^^[email protected]]CF^82>6D^BF6DE^4CJAE^4:A96C^K2>[email protected] Только опытный разгадывальщик по повторяющимся в начале текста двойкам символов сможет додуматься, что 9EEAi^^ может означать HTTP:⁄⁄ .
Квадрат Полибия
Полибий — греческий историк, полководец и государственный деятель, живший в III веке до н.э. Он предложил оригинальный код простой замены, который стал известен как «квадрат Полибия» (англ. Polybius square) или шахматная доска Полибия. Данный вид кодирования изначально применялся для греческого алфавита, но затем был распространен на другие языки. Буквы алфавита вписываются в квадрат или подходящий прямоугольник. Если букв для квадрата больше, то их можно объединять в одной ячейке.
Такую таблицу можно использовать как в шифре Цезаря. Для шифрования на квадрате находим букву текста и вставляем в шифровку нижнюю от неё в том же столбце. Если буква в нижней строке, то берём верхнюю из того же столбца. Для кириллицы можно использовать таблицу РОТ11 (аналог шифра Цезаря со сдвигом на 11 символов):
Буквы первой строки кодируются в буквы второй, второй — в третью, а третьей — в первую.
Но лучше, конечно, использовать «фишку» квадрата Полибия — координаты букв:
Под каждой буквой кодируемого текста записываем в столбик две координаты (верхнюю и боковую). Получится две строки. Затем выписываем эти две строки в одну строку, разбиваем её на пары цифр и используя эти пары как координаты, вновь кодируем по квадрату Полибия.
Можно усложнить. Исходные координаты выписываем в строку без разбиений на пары, сдвигаем на нечётное количество шагов, разбиваем полученное на пары и вновь кодируем.
Квадрат Полибия можно создавать и с использованием кодового слова. Сначала в таблицу вписывается кодовое слово, затем остальные буквы. Кодовое слово при этом не должно содержать повторяющихся букв.
Вариант шифра Полибия используют в тюрьмах, выстукивая координаты букв — сначала номер строки, потом номер буквы в строке.
Стихотворный шифр
Этот метод шифрования похож на шифр Полибия, только в качестве ключа используется не алфавит, а стихотворение, которое вписывается построчно в квадрат заданного размера (например, 10×10). Если строка не входит, то её «хвост» обрезается. Далее полученный квадрат используется для кодирования текста побуквенно двумя координатами, как в квадрате Полибия. Ну чем не шифр? Самый что ни на есть шифр замены. В качестве кодовой таблицы выступает клавиатура.
Таблица перекодировки выглядит вот так:
Литорея
Литорея (от лат. littera — буква) — тайнописание, род шифрованного письма, употреблявшегося в древнерусской рукописной литературе. Известна литорея двух родов: простая и мудрая. Простая, иначе называемая тарабарской грамотой, заключается в следующем. Если «е» и «ё» считать за одну букву, то в русском алфавите остаётся тридцать две буквы, которые можно записать в два ряда — по шестнадцать букв в каждом:
Получится русский аналог шифра ROT13 — РОТ16 🙂 При шифровке верхнюю букву меняют на нижнюю, а нижнюю — на верхнюю. Ещё более простой вариант литореи — оставляют только двадцать согласных букв:
Получается шифр РОТ10 . При шифровании меняют только согласные, а гласные и остальные, не попавшие в таблицу, оставляют как есть. Получается что-то типа «словарь → лсошамь» и т.п.
Мудрая литорея предполагает более сложные правила подстановки. В разных дошедших до нас вариантах используются подстановки целых групп букв, а также числовые комбинации: каждой согласной букве ставится в соответствие число, а потом совершаются арифметические действия над получившейся последовательностью чисел.
Шифрование биграммами
Шифр Плейфера
Шифр Плейфера — ручная симметричная техника шифрования, в которой впервые использована замена биграмм. Изобретена в 1854 году Чарльзом Уитстоном. Шифр предусматривает шифрование пар символов (биграмм), вместо одиночных символов, как в шифре подстановки и в более сложных системах шифрования Виженера. Таким образом, шифр Плейфера более устойчив к взлому по сравнению с шифром простой замены, так как затрудняется частотный анализ.
Шифр Плейфера использует таблицу 5х5 (для латинского алфавита, для русского алфавита необходимо увеличить размер таблицы до 6х6), содержащую ключевое слово или фразу. Для создания таблицы и использования шифра достаточно запомнить ключевое слово и четыре простых правила. Чтобы составить ключевую таблицу, в первую очередь нужно заполнить пустые ячейки таблицы буквами ключевого слова (не записывая повторяющиеся символы), потом заполнить оставшиеся ячейки таблицы символами алфавита, не встречающимися в ключевом слове, по порядку (в английских текстах обычно опускается символ «Q», чтобы уменьшить алфавит, в других версиях «I» и «J» объединяются в одну ячейку). Ключевое слово и последующие буквы алфавита можно вносить в таблицу построчно слева-направо, бустрофедоном или по спирали из левого верхнего угла к центру. Ключевое слово, дополненное алфавитом, составляет матрицу 5х5 и является ключом шифра.
Для того, чтобы зашифровать сообщение, необходимо разбить его на биграммы (группы из двух символов), например «Hello World» становится «HE LL OW OR LD», и отыскать эти биграммы в таблице. Два символа биграммы соответствуют углам прямоугольника в ключевой таблице. Определяем положения углов этого прямоугольника относительно друг друга. Затем руководствуясь следующими 4 правилами зашифровываем пары символов исходного текста:
1) Если два символа биграммы совпадают, добавляем после первого символа «Х», зашифровываем новую пару символов и продолжаем. В некоторых вариантах шифра Плейфера вместо «Х» используется «Q».
2) Если символы биграммы исходного текста встречаются в одной строке, то эти символы замещаются на символы, расположенные в ближайших столбцах справа от соответствующих символов. Если символ является последним в строке, то он заменяется на первый символ этой же строки.
3) Если символы биграммы исходного текста встречаются в одном столбце, то они преобразуются в символы того же столбца, находящимися непосредственно под ними. Если символ является нижним в столбце, то он заменяется на первый символ этого же столбца.
4) Если символы биграммы исходного текста находятся в разных столбцах и разных строках, то они заменяются на символы, находящиеся в тех же строках, но соответствующие другим углам прямоугольника.
Для расшифровки необходимо использовать инверсию этих четырёх правил, откидывая символы «Х» (или «Q») , если они не несут смысла в исходном сообщении.
Рассмотрим пример составления шифра. Используем ключ «Playfair example», тогда матрица примет вид:
Зашифруем сообщение «Hide the gold in the tree stump». Разбиваем его на пары, не забывая про правило . Получаем: «HI DE TH EG OL DI NT HE TR EX ES TU MP». Далее применяем правила -:
1. Биграмма HI формирует прямоугольник, заменяем её на BM.
2. Биграмма DE расположена в одном столбце, заменяем её на ND.
3. Биграмма TH формирует прямоугольник, заменяем её на ZB.
4. Биграмма EG формирует прямоугольник, заменяем её на XD.
5. Биграмма OL формирует прямоугольник, заменяем её на KY.
6. Биграмма DI формирует прямоугольник, заменяем её на BE.
7. Биграмма NT формирует прямоугольник, заменяем её на JV.
8. Биграмма HE формирует прямоугольник, заменяем её на DM.
9. Биграмма TR формирует прямоугольник, заменяем её на UI.
10. Биграмма EX находится в одной строке, заменяем её на XM.
11. Биграмма ES формирует прямоугольник, заменяем её на MN.
12. Биграмма TU находится в одной строке, заменяем её на UV.
13. Биграмма MP формирует прямоугольник, заменяем её на IF.
Получаем зашифрованный текст «BM ND ZB XD KY BE JV DM UI XM MN UV IF». Таким образом сообщение «Hide the gold in the tree stump» преобразуется в «BMNDZBXDKYBEJVDMUIXMMNUVIF».
Двойной квадрат Уитстона
Чарльз Уитстон разработал не только шифр Плейфера, но и другой метод шифрования биграммами, который называют «двойным квадратом». Шифр использует сразу две таблицы, размещенные по одной горизонтали, а шифрование идет биграммами, как в шифре Плейфера.
Имеется две таблицы со случайно расположенными в них русскими алфавитами.
Перед шифрованием исходное сообщение разбивают на биграммы. Каждая биграмма шифруется отдельно. Первую букву биграммы находят в левой таблице, а вторую букву — в правой таблице. Затем мысленно строят прямоугольник так, чтобы буквы биграммы лежали в его противоположных вершинах. Другие две вершины этого прямоугольника дают буквы биграммы шифртекста. Предположим, что шифруется биграмма исходного текста ИЛ. Буква И находится в столбце 1 и строке 2 левой таблицы. Буква Л находится в столбце 5 и строке 4 правой таблицы. Это означает, что прямоугольник образован строками 2 и 4, а также столбцами 1 левой таблицы и 5 правой таблицы. Следовательно, в биграмму шифртекста входят буква О, расположенная в столбце 5 и строке 2 правой таблицы, и буква В, расположенная в столбце 1 и строке 4 левой таблицы, т.е. получаем биграмму шифртекста ОВ.
Если обе буквы биграммы сообщения лежат в одной строке, то и буквы шифртекста берут из этой же строки. Первую букву биграммы шифртекста берут из левой таблицы в столбце, соответствующем второй букве биграммы сообщения. Вторая же буква биграммы шифртекста берется из правой таблицы в столбце, соответствующем первой букве биграммы сообщения. Поэтому биграмма сообщения ТО превращается в биграмму шифртекста ЖБ. Аналогичным образом шифруются все биграммы сообщения:
Сообщение ПР ИЛ ЕТ АЮ _Ш ЕС ТО ГО
Шифртекст ПЕ ОВ ЩН ФМ ЕШ РФ БЖ ДЦ
Шифрование методом «двойного квадрата» дает весьма устойчивый к вскрытию и простой в применении шифр. Взламывание шифртекста «двойного квадрата» требует больших усилий, при этом длина сообщения должна быть не менее тридцати строк, а без компьютера вообще не реально.
Полиалфавитные шифры
Шифр Виженера
Естественным развитием шифра Цезаря стал шифр Виженера. В отличие от моноалфавитных это уже полиалфавитный шифр. Шифр Виженера состоит из последовательности нескольких шифров Цезаря с различными значениями сдвига. Для зашифровывания может использоваться таблица алфавитов, называемая «tabula recta» или «квадрат (таблица) Виженера». На каждом этапе шифрования используются различные алфавиты, выбираемые в зависимости от буквы ключевого слова.
Для латиницы таблица Виженера может выглядеть вот так:
Для русского алфавита вот так:
Легко заметить, что строки этой таблицы — это ROT-шифры с последовательно увеличивающимся сдвигом.
Шифруют так: под строкой с исходным текстом во вторую строку циклически записывают ключевое слово до тех пор, пока не заполнится вся строка. У каждой буквы исходного текста снизу имеем свою букву ключа. Далее в таблице находим кодируемую букву текста в верхней строке, а букву кодового слова слева. На пересечении столбца с исходной буквой и строки с кодовой буквой будет находиться искомая шифрованная буква текста.
Важным эффектом, достигаемым при использовании полиалфавитного шифра типа шифра Виженера, является маскировка частот появления тех или иных букв в тексте, чего лишены шифры простой замены. Поэтому к такому шифру применить частотный анализ уже не получится.
Для шифрования шифром Виженера можно воспользоваться Онлайн-калькулятором шифра Виженера . Для различных вариантов шифра Виженера со сдвигом вправо или влево, а также с заменой букв на числа можно использовать приведённые ниже таблицы:
Шифр Гронсвельда
Книжный шифр
Если же в качестве ключа использовать целую книгу (например, словарь), то можно зашифровывать не отдельные буквы, а целые слова и даже фразы. Тогда координатами слова будут номер страницы, номер строки и номер слова в строке. На каждое слово получится три числа. Можно также использовать внутреннюю нотацию книги — главы, абзацы и т.п. Например, в качестве кодовой книги удобно использовать Библию, ведь там есть четкое разделение на главы, и каждый стих имеет свою маркировку, что позволяет легко найти нужную строку текста. Правда, в Библии нет современных слов типа «компьютер» и «интернет», поэтому для современных фраз лучше, конечно, использовать энциклопедический или толковый словарь.
Это были шифры замены, в которых буквы заменяются на другие. А ещё бывают , в которых буквы не заменяются, а перемешиваются между собой.
В этот день свой профессиональный праздник отмечает Криптографическая служба России.
«Криптография» с древнегреческого означает «тайнопись».
Как раньше прятали слова?
Своеобразный метод передачи тайного письма существовал во времена правления династии египетских фараонов:
выбирали раба. Брили его голову наголо и наносили на неё текст сообщения водостойкой растительной краской. Когда волосы отрастали, его отправляли к адресату.
Шифр — это какая-либо система преобразования текста с секретом (ключом) для обеспечения секретности передаваемой информации.
АиФ.ru сделал подборку интересных фактов из истории шифрования.
Все тайнописи имеют системы
1. Акростих — осмысленный текст (слово, словосочетание или предложение), сложенный из начальных букв каждой строки стихотворения.
Вот, например, стихотворение-загадка с разгадкой в первых буквах:
Д овольно именем известна я своим;
Р авно клянётся плут и непорочный им,
У техой в бедствиях всего бываю боле,
Ж изнь сладостней при мне и в самой лучшей доле.
Б лаженству чистых душ могу служить одна,
А меж злодеями — не быть я создана.
Юрий Нелединский-Мелецкий
Сергей Есенин, Анна Ахматова, Валентин Загорянский часто пользовались акростихами.
2. Литорея — род шифрованного письма, употреблявшегося в древнерусской рукописной литературе. Бывает простая и мудрая. Простую называют тарабарской грамотой, она заключается в следующем: поставив согласные буквы в два ряда в порядке:
употребляют в письме верхние буквы вместо нижних и наоборот, причём гласные остаются без перемены; так, например, токепот = котёнок и т. п.
Мудрая литорея предполагает более сложные правила подстановки.
3. «ROT1» — шифр для детишек?
Возможно, в детстве вы тоже его использовали. Ключ к шифру очень прост: каждая буква алфавита заменяется на последующую букву.
А заменяется на Б, Б заменяется на В и так далее. «ROT1» буквально означает «вращать на 1 букву вперёд по алфавиту». Фраза «Я люблю борщ» превратится в секретную фразу «А мявмя впсъ» . Этот шифр предназначен для развлечения, его легко понять и расшифровать, даже если ключ используется в обратном направлении.
4. От перестановки слагаемых…
Во время Первой мировой войны конфиденциальные сообщения отправляли с помощью так называемых перестановочных шрифтов. В них буквы переставляются с использованием некоторых заданных правил или ключей.
Например, слова могут быть записаны в обратном направлении, так что фраза «мама мыла раму» превращается во фразу «амам алым умар» . Другой перестановочный ключ заключается в перестановке каждой пары букв, так что предыдущее сообщение становится «ам ам ым ал ар ум» .
Возможно, покажется, что сложные правила перестановки могут сделать эти шифры очень трудными. Однако многие зашифрованные сообщения могут быть расшифрованы с использованием анаграмм или современных компьютерных алгоритмов.
5. Сдвижной шифр Цезаря
Он состоит из 33 различных шифров, по одному на каждую букву алфавита (количество шифров меняется в зависимости от алфавита используемого языка). Человек должен был знать, какой шифр Юлия Цезаря использовать для того, чтобы расшифровать сообщение. Например, если используется шифр Ё, то А становится Ё, Б становится Ж, В становится З и так далее по алфавиту. Если используется шифр Ю, то А становится Ю, Б становится Я, В становится А и так далее. Данный алгоритм является основой для многих более сложных шифров, но сам по себе не обеспечивает надёжную защиту тайны сообщений, поскольку проверка 33-х различных ключей шифра займёт относительно небольшое время.
Никто не смог. Попробуйте вы
Зашифрованные публичные послания дразнят нас своей интригой. Некоторые из них до сих пор остаются неразгаданными. Вот они:
Криптос . Скульптура, созданная художником Джимом Санборном, которая расположена перед штаб-квартирой Центрального разведывательного управления в Лэнгли, Вирджиния. Скульптура содержит в себе четыре шифровки, вскрыть код четвёртой не удаётся до сих пор. В 2010 году было раскрыто, что символы 64-69 NYPVTT в четвёртой части означают слово БЕРЛИН.
Теперь, когда вы прочитали статью, то наверняка сможете разгадать три простых шифра.
Свои варианты оставляйте в комментариях к этой статье. Ответ появится в 13:00 13 мая 2014 года.
Ответ:
1) Блюдечко
2) Слоненку все надоело
3) Хорошая погода
Цифровые шифры. Шифрование цифрами
Поскольку шифров в мире насчитывается огромное количество, то рассмотреть все шифры невозможно не только в рамках данной статьи, но и целого сайта. Поэтому рассмотрим наиболее примитивные системы шифрации, их применение, а так же алгоритмы расшифровки. Целью своей статьи я ставлю максимально доступно объяснить широкому кругу пользователей принципов шифровки \ дешифровки, а так же научить примитивным шифрам.
Еще в школе я пользовался примитивным шифром, о котором мне поведали более старшие товарищи. Рассмотрим примитивный шифр «Шифр с заменой букв цифрами и обратно».
Нарисуем таблицу, которая изображена на рисунке 1. Цифры располагаем по порядку, начиная с единицы, заканчивая нулем по горизонтали. Ниже под цифрами подставляем произвольные буквы или символы.
Рис. 1 Ключ к шифру с заменой букв и обратно.
Теперь обратимся к таблице 2, где алфавиту присвоена нумерация.
Рис. 2 Таблица соответствия букв и цифр алфавитов.
Теперь зашифруем словоК О С Т Е Р :
1) 1. Переведем буквы в цифры:К = 12, О = 16, С =19, Т = 20, Ё = 7, Р = 18
2) 2. Переведем цифры в символы согласно таблицы 1.
КП КТ КД ПЩ Ь КЛ
3) 3. Готово.
Этот пример показывает примитивный шифр. Рассмотрим похожие по сложности шрифты.
1. 1. Самым простым шифром является ШИФР С ЗАМЕНОЙ БУКВ ЦИФРАМИ. Каждой букве соответствует число по алфавитному порядку. А-1, B-2, C-3 и т.д.
Например слово «TOWN » можно записать как «20 15 23 14», но особой секретности и сложности в дешифровке это не вызовет.
2. Также можно зашифровывать сообщения с помощью ЦИФРОВОЙ ТАБЛИЦЫ. Её параметры могут быть какими угодно, главное, чтобы получатель и отправитель были в курсе. Пример цифровой таблицы.
Рис. 3 Цифровая таблица. Первая цифра в шифре – столбец, вторая – строка или наоборот. Так слово «MIND» можно зашифровать как «33 24 34 14».
3. 3. КНИЖНЫЙ ШИФР
В таком шифре ключом является некая книга, имеющаяся и у отправителя и у получателя. В шифре обозначается страница книги и строка, первое слово которой и является разгадкой. Дешифровка невозможна, если книги у отправителя и корреспондента разных годов издания и выпуска. Книги обязательно должны быть идентичными.
4. 4. ШИФР ЦЕЗАРЯ (шифр сдвига, сдвиг Цезаря)
Известный шифр. Сутью данного шифра является замена одной буквы другой, находящейся на некоторое постоянное число позиций левее или правее от неё в алфавите. Гай Юлий Цезарь использовал этот способ шифрования при переписке со своими генералами для защиты военных сообщений. Этот шифр довольно легко взламывается, поэтому используется редко. Сдвиг на 4. A = E, B= F, C=G, D=H и т.д.
Пример шифра Цезаря: зашифруем слово « DEDUCTION » .
Получаем: GHGXFWLRQ . (сдвиг на 3)
Еще пример:
Шифрование с использованием ключа К=3 . Буква «С» «сдвигается» на три буквы вперёд и становится буквой «Ф». Твёрдый знак, перемещённый на три буквы вперёд, становится буквой «Э», и так далее:
Исходный алфавит:А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
Шифрованный:Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В
Оригинальный текст:
Съешь же ещё этих мягких французских булок, да выпей чаю.
Шифрованный текст получается путём замены каждой буквы оригинального текста соответствующей буквой шифрованного алфавита:
Фэзыя йз зьи ахлш пвёнлш чугрщцкфнлш дцосн, жг еютзм ъгб.
5. ШИФР С КОДОВЫМ СЛОВОМ
Еще один простой способ как в шифровании, так и в расшифровке. Используется кодовое слово (любое слово без повторяющихся букв). Данное слово вставляется впереди алфавита и остальные буквы по порядку дописываются, исключая те, которые уже есть в кодовом слове. Пример: кодовое слово – NOTEPAD.
Исходный: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
Замена:N O T E P A D B C F G H I J K L M Q R S U V W X Y Z
6. 6. ШИФР АТБАШ
Один из наиболее простых способов шифрования. Первая буква алфавита заменяется на последнюю, вторая – на предпоследнюю и т.д.
Пример: « SCIENCE » = HXRVMXV
7. 7. ШИФР ФРЕНСИСА БЭКОНА
Один из наиболее простых методов шифрования. Для шифрования используется алфавит шифра Бэкона: каждая буква слова заменяется группой из пяти букв «А» или «B» (двоичный код).
a AAAAA g AABBA m ABABB s BAAAB y BABBA
b AAAAB h AABBB n ABBAA t BAABA z BABBB
c AAABA i ABAAA o ABBAB u BAABB
d AAABB j BBBAA p ABBBA v BBBAB
e AABAA k ABAAB q ABBBB w BABAA
f AABAB l ABABA r BAAAA x BABAB
Сложность дешифрования заключается в определении шифра. Как только он определен, сообщение легко раскладывается по алфавиту.
Существует несколько способов кодирования.
Также можно зашифровать предложение с помощью двоичного кода. Определяются параметры (например, «А» — от A до L, «В» — от L до Z). Таким образом, BAABAAAAABAAAABABABB означает TheScience of Deduction ! Этот способ более сложен и утомителен, но намного надежнее алфавитного варианта.
8. 8. ШИФР БЛЕЗА ВИЖЕНЕРА.
Этот шифр использовался конфедератами во время Гражданской войны. Шифр состоит из 26 шифров Цезаря с различными значениями сдвига (26 букв лат.алфавита). Для зашифровывания может использоваться tabula recta (квадрат Виженера). Изначально выбирается слово-ключ и исходный текст. Слово ключ записывается циклически, пока не заполнит всю длину исходного текста. Далее по таблице буквы ключа и исходного текста пересекаются в таблице и образуют зашифрованный текст.
Рис. 4 Шифр Блеза Виженера
9. 9. ШИФР ЛЕСТЕРА ХИЛЛА
Основан на линейной алгебре. Был изобретен в 1929 году.
В таком шифре каждой букве соответствует число (A = 0, B =1 и т.д.). Блок из n-букв рассматривается как n-мерный вектор и умножается на (n х n) матрицу по mod 26. Матрица и является ключом шифра. Для возможности расшифровки она должна быть обратима в Z26n.
Для того, чтобы расшифровать сообщение, необходимо обратить зашифрованный текст обратно в вектор и умножить на обратную матрицу ключа. Для подробной информации – Википедия в помощь.
10. 10. ШИФР ТРИТЕМИУСА
Усовершенствованный шифр Цезаря. При расшифровке легче всего пользоваться формулой:
L= (m+k) modN , L-номер зашифрованной буквы в алфавите, m-порядковый номер буквы шифруемого текста в алфавите, k-число сдвига, N-количество букв в алфавите.
Является частным случаем аффинного шифра.
11. 11. МАСОНСКИЙ ШИФР
12. 12. ШИФР ГРОНСФЕЛЬДА
По своему содержанию этот шифр включает в себя шифр Цезаря и шифр Виженера, однако в шифре Гронсфельда используется числовой ключ. Зашифруем слово “THALAMUS”, используя в качестве ключа число 4123. Вписываем цифры числового ключа по порядку под каждой буквой слова. Цифра под буквой будет указывать на количество позиций, на которые нужно сдвинуть буквы. К примеру вместо Т получится Х и т.д.
T H A L A M U S
4 1 2 3 4 1 2 3
T U V W X Y Z
0 1 2 3 4
В итоге: THALAMUS = XICOENWV
13. 13. ПОРОСЯЧЬЯ ЛАТЫНЬ
Чаще используется как детская забава, особой трудности в дешифровке не вызывает. Обязательно употребление английского языка, латынь здесь ни при чем.
В словах, начинающихся с согласных букв, эти согласные перемещаются назад и добавляется “суффикс” ay. Пример: question = estionquay. Если же слово начинается с гласной, то к концу просто добавляется ay, way, yay или hay (пример: a dog = aay ogday).
В русском языке такой метод тоже используется. Называют его по-разному: “синий язык”, “солёный язык”, “белый язык”, “фиолетовый язык”. Таким образом, в Синем языке после слога, содержащего гласную, добавляется слог с этой же гласной, но с добавлением согласной “с” (т.к. язык синий). Пример:Информация поступает в ядра таламуса = Инсифорсомасацисияся поссотусупасаетсе в ядсяраса тасаласамусусаса.
Довольно увлекательный вариант.
14. 14. КВАДРАТ ПОЛИБИЯ
Подобие цифровой таблицы. Существует несколько методов использования квадрата Полибия. Пример квадрата Полибия: составляем таблицу 5х5 (6х6 в зависимости от количества букв в алфавите).
1 МЕТОД. Вместо каждой буквы в слове используется соответствующая ей буква снизу (A = F, B = G и т.д.). Пример: CIPHER — HOUNIW.
2 МЕТОД. Указываются соответствующие каждой букве цифры из таблицы. Первой пишется цифра по горизонтали, второй — по вертикали. (A = 11, B = 21…). Пример: CIPHER = 31 42 53 32 51 24
3 МЕТОД. Основываясь на предыдущий метод, запишем полученный код слитно. 314253325124. Делаем сдвиг влево на одну позицию. 142533251243. Снова разделяем код попарно.14 25 33 25 12 43. В итоге получаем шифр. Пары цифр соответствуют букве в таблице: QWNWFO.
Шифров великое множество, и вы так же можете придумать свой собственный шифр, однако изобрести стойкий шифр очень сложно, поскольку наука дешифровки с появлением компьютеров шагнула далеко вперед и любой любительский шифр будет взломан специалистами за очень короткое время.
Методы вскрытия одноалфавитных систем (расшифровка)
При своей простоте в реализации одноалфавитные системы шифрования легко уязвимы.
Определим количество различных систем в аффинной системе. Каждый ключ полностью определен парой целых чисел a и b, задающих отображение ax+b. Для а существует j(n) возможных значений, где j(n) — функция Эйлера, возвращающая количество взаимно простых чисел с n, и n значений для b, которые могут быть использованы независимо от a, за исключением тождественного отображения (a=1 b=0), которое мы рассматривать не будем.
Таким образом получается j(n)*n-1 возможных значений, что не так уж и много: при n=33 в качестве a могут быть 20 значений(1, 2, 4, 5, 7, 8, 10, 13, 14, 16, 17, 19, 20, 23, 25, 26, 28, 29, 31, 32), тогда общее число ключей равно 20*33-1=659. Перебор такого количества ключей не составит труда при использовании компьютера.
Но существуют методы упрощающие этот поиск и которые могут быть использованы при анализе более сложных шифров.
Частотный анализ
Одним из таких методов является частотный анализ. Распределение букв в криптотексте сравнивается с распределением букв в алфавите исходного сообщения. Буквы с наибольшей частотой в криптотексте заменяются на букву с наибольшей частотой из алфавита. Вероятность успешного вскрытия повышается с увеличением длины криптотекста.
Существуют множество различных таблиц о распределении букв в том или ином языке, но ни одна из них не содержит окончательной информации — даже порядок букв может отличаться в различных таблицах. Распределение букв очень сильно зависит от типа теста: проза, разговорный язык, технический язык и т.п. В методических указаниях к лабораторной работе приведены частотные характеристики для различных языков, из которых ясно, что буквы буквы I, N, S, E, A (И, Н, С, Е, А) появляются в высокочастотном классе каждого языка.
Простейшая защита против атак, основанных на подсчете частот, обеспечивается в системе омофонов (HOMOPHONES) — однозвучных подстановочных шифров, в которых один символ открытого текста отображается на несколько символов шифротекста, их число пропорционально частоте появления буквы. Шифруя букву исходного сообщения, мы выбираем случайно одну из ее замен. Следовательно простой подсчет частот ничего не дает криптоаналитику. Однако доступна информация о распределении пар и троек букв в различных естественных языках.
Инструкция
Пользуясь современными терминами, у любого зашифрованного сообщения есть автор, составивший его; адресат, которому оно предназначено; и перехватчик — криптограф, пытающийся его прочесть.
В ручном шифровании применяются два основных метода — замена и перестановка. Первый заключается в том, что буквы исходного сообщения заменяются на другие согласно определенному правилу. Второй — в том, что буквы, опять же согласно правилу, меняются местами. Разумеется, эти два способа можно комбинировать, что делает шифр более стойким.
Самый простой вид шифра замены — тайнопись. В этом случае буквы меняются на условные значки: цифры, символы, изображения пляшущих человечков и так далее. Чтобы раскрыть тайнописное послание, достаточно определить, какой символ какой букве соответствует.
Для этой цели обычно используют таблицы частотности, показывающие, насколько часто встречается та или иная буква в языке послания. Например, в языке на первых местах в такой таблице будут буквы «а», «е», «о». Подставляя их вместо самых часто попадающихся значков, можно расшифровать некоторые слова, а это, в свою очередь, даст значения других символов.
В более надежных шифрах замена букв производится по ключу. Например, ключом может стать многозначное число. Чтобы зашифровать таким образом текст, над ним много раз пишут число-ключ так, чтобы над каждой буквой оказалась цифра. После этого букву заменяют на другую, следующую после нее по через столько позиций, сколько обозначено цифрой. Алфавит при этом считается замкнутым в кольцо, то есть, например, второй буквой после «я» будет «б».
Раскрыть такую криптограмму сложнее, поскольку для каждой буквы шифра есть десять вариантов прочтения. Для расшифровки нужно прежде всего определить длину ключа и разделить текст на слова. Обычно это делается с помощью таблицы, где первой строчкой идет текст шифровки, а ниже него — варианты, где каждая буква шифра заменена на возможную букву исходного текста. Таким образом, в таблице получается одиннадцать строчек.
Глядя, какие варианты приводят к наиболее естественному на вид делению текста на слова, криптограф определяет, какими буквами кодируются пробелы, а значит — находит одну или несколько цифр ключа. Из этого уже можно начинать делать выводы, сколько раз ключ повторяется в тексте.
Подставляя на места пока еще неизвестных букв варианты из таблицы, криптограф определяет, в каких случаях в тексте появляются осмысленные слова и фрагменты.
Для облегчения работы криптограф обычно стремится узнать любую информацию о содержании текста или ключа. Если известно, какая подпись стоит в конце документа, или какое слово должно там часто повторяться, то по этим сведениям можно раскрыть часть ключа шифрования. Подставляя найденный фрагмент в другие места документа, криптограф выясняет длину ключа и узнает еще несколько частей исходного текста.
Видео по теме
Источники:
- Владимир Жельников. Криптография от папируса до компьютера
- как заменить буквы на символы
Дешифровка — одно из самых увлекательнейших занятий. Ведь всегда так любопытно узнать, что именно скрывается за той или иной кодировкой. Тем более, что видов различных шифров очень и очень много. Поэтому и способов их распознавания и перевода тоже предостаточно. Самая сложная задача — правильно определить, каким именно способом нужно расшифровывать ту или иную загадку.
Инструкция
Если вы собираетесь расшифровывать определенную кодировку, помните, что в большинстве случаев информацию шифруют посредством подмены . Попробуйте определить наиболее часто встречающиеся буквы в языке и соотнесите их с имеющимися у вас в шифре. Исследователи облегчили вам задачу и часть из них уже свели в определенную таблицу. Если вы ей воспользуетесь, то это значительно ускорит процесс дешифровки. Подобным образом в свое время были разгаданы шифры Полибия и Цезаря.
Чтобы было легче заниматься , пользуйтесь ключами. Для дешифровки вам понадобится понятие, как длина ключа, определить которую вы сможете только методом подбора отдельных букв (см. шаг 1). После того как вы подберете длину вашего ключа, вы сможете сформировать группу символов, которая закодирована одной буквой. И так постепенно весь шифр откроется вам. Процесс этот достаточно трудоемкий и затратный по времени, поэтому запаситесь изрядной долей терпения.
Попробуйте также расшифровать сообщение посредством подбора одного слова, которое с большой долей вероятности должно встретиться в этом тексте. Смещайте его по тексту до того момента, пока оно не наложится само на себя в шифре. Таким образом вы определите часть ключа. Дальше расшифровывайте текст в районе области вокруг ключа. Соответственно подбирайте варианты расшифровки текста. Он обязательно должен соотноситься со словом-ключом и быть ему адекватным, т.е. совпадать по контексту.
Помните, что для успешной расшифровки кодировки вам пригодятся знания о самых известных методах шифрования сообщений. Так, например, если перед вами текст, датированный 5 веком до н.э., то с большой долей вероятности можно сказать, что он закодирован в скитала. Принцип такой шифровки заключался в методе простой перестановке. То есть буквы алфавита просто менялись местами а затем при помощи круглого предмета наносились на лист в хаотичном порядке. Для дешифровки подобного сообщения главное правильно восстановить размер этого круглого предмета.
Цифровые шифровки распознавайте при помощи математических методов. Один из популярных способов — использование теории вероятности. А в средние века с использованием математических символов производилась при помощи перестановки и использования магических квадратов. Это такие фигуры, в которые цифры вписываются в клетки последовательными натуральными числами. Начинаются, как правило, с 1. Секрет магического квадрата в том, что все цифры в нем в сумме каждого столбца или строки, или диагонали дают одно и то же число.
Учитывайте тот факт, что текст для дешифровки располагается в таком квадрате согласно нумерации клеток. Выпишите содержимое таблицы по и получите тот текст, который нужно расшифровать. А уже потом путем перестановок подберите необходимый вариант шифровки.
В интернете быстро распространяется мода на расшифровку слов. Часть людей искренне верит в смысл этого действия, другие откровенно развлекаются. В обоих случаях речь идет о разгадывании ребусов. Только правила головоломки могут быть разные.
Когда наконец удается разгадать сложный шифр, в нем могут оказаться тайны мировых лидеров, секретных обществ и древних цивилизаций. Перед вами — десятка самых загадочных шифров в истории человечества, которые до сих пор не удалось разгадать.
Спонсор поста: люстры и светильники
Записки Рики Маккормика
В июне 1999 года через 72 часа после того, как один человек был объявлен пропавшим без вести, на кукурузном поле в штате Миссури обнаружили тело. Что странно, труп разложился сильнее, чем должен был за такое время. На момент смерти у 41-летнего Рики Маккормика в карманах лежали две зашифрованные записки. Он был безработным с неоконченным школьным образованием, жил на пособие, и у него не было машины. Еще Маккормик отсидел в тюрьме за изнасилование несовершеннолетней. В последний раз его видели живым за пять дней до того, как его тело было найдено, — когда он пришел на плановый осмотр в больницу Форест-Парк в Сент-Луисе.
Ни подразделение криптоанализа ФБР, ни Американская криптоаналитическая ассоциация так и не смогли расшифровать эти записки и обнародовали их через 12 лет после убийства. Следователи полагают, что таинственные записки были написаны примерно за три дня до убийства. Родственники Маккормика утверждают, что убитый использовал такую технику кодирования сообщений с детства, но, к сожалению, никто из них не знает ключа к этому шифру.
Криптос
Это скульптура американского художника Джима Санборна, которая установлена перед входом в штаб-квартиру ЦРУ в Лэнгли, штат Вирджиния. Она содержит четыре сложных зашифрованных сообщения, три из которых были расшифрованы. До сих пор нерасшифрованными остаются 97 символов последней части, известной как К4.
Заместитель главы ЦРУ в 1990-е годы Билл Стадмен поставил АНБ задачу расшифровать надписи. Была создана специальная команда, которая смогла разгадать три из четырех сообщений в 1992 году, но не обнародовала их до 2000 года. Также три части разгадали в 1990-е годы аналитик ЦРУ Дэвид Стейн, который использовал бумагу и карандаш, и специалист по информатике Джим Гиллогли, который использовал компьютер.
Расшифрованные сообщения напоминают переписку ЦРУ, а скульптура по форме похожа на бумагу, выходящую из принтера во время печати.
Рукопись Войнича
Рукопись Войнича, созданная в XV веке, — одна из самых знаменитых загадок эпохи Возрождения. Книга носит имя антиквара Вильфрида Войнича, купившего ее в 1912 году. Она содержит 240 страниц, и каких-то страниц не хватает. В рукописи полно биологических, астрономических, космологических и фармацевтических иллюстраций. Здесь даже есть загадочная раскладывающаяся астрономическая таблица. Всего манускрипт содержит более 170 тысяч символов, которые не соответствуют каким-либо правилам. Нет ни пунктуации, ни разрывов в написании зашифрованных символов, что нетипично для рукописного зашифрованного текста. Кто создал эту рукопись? Исследователь? Травник? Алхимик? Книга когда-то предположительно принадлежала императору Священной Римской империи Рудольфу II, который увлекался астрологией и алхимией.
Леон Баттиста Альберти, итальянский писатель, художник, архитектор, поэт, священник, лингвист и философ, не мог выбрать какое-то одно занятие. Сегодня он известен как отец западной криптографии, и он жил в те же годы, когда была создана рукопись. Он создал первый полиалфавитный шифр и первую механическую шифровальную машину. Может, рукопись Войнича — один из первых экспериментов в криптографии? Если код рукописи Войнича расшифруют, это может изменить наши знания об истории наук и астрономии.
Надпись Шагборо
Пастуший монумент находится в живописном Стаффордшире в Англии. Он был возведен в XVIII веке, и это скульптурная интерпретация картины Николя Пуссена «Аркадийские пастухи», однако некоторые детали изменены. Под картиной — текст из 10 букв: последовательность O U O S V A V V между буквами D и M. Над изображением картины — две каменные головы: улыбающийся лысый мужчина и мужчина с козлиными рогами и острыми ушами. Согласно одной из версий, человек, который оплатил памятник, Джордж Ансон, написал аббревиатуру латинского высказывания «Optimae Uxoris Optimae Sororis Viduus Amantissimus Vovit Virtutibus», которое означает «Лучшей из жен, лучшей из сестер, преданный вдовец посвящает это вашим добродетелям».
Бывший лингвист ЦРУ Кит Мэсси связал эти буквы со строфой Евангелия от Иоанна 14:6. Другие исследователи считают, что шифр связан с масонством. Бывший аналитик Блетчли-парка Оливер Лоун предположил, что код может быть отсылкой к генеалогическому древу Иисуса, что маловероятно. Ричард Кемп, глава поместья Шагборо, инициировал в 2004 году рекламную кампанию, которая связывала надпись с местонахождением Святого Грааля.
Линейное письмо А
Линейное письмо А — это разновидность критского письма, содержащая сотни символов и до сих пор не расшифрованная. Оно использовалось несколькими древнегреческими цивилизациями в период с 1850 по 1400 год до н.э. После вторжения на Крит ахейцев ему на смену пришло Линейное письмо Б, которое расшифровали в 1950-х годах, и оказалось, что это одна из ранних форм греческого языка. Линейное письмо А так и не смогли расшифровать, и коды к Линейному письму Б для него не подходят. Чтение большинства знаков известно, но язык остается непонятным. В основном его следы находили на Крите, однако встречались памятники письменности на этом языке и в материковой Греции, Израиле, Турции, и даже в Болгарии.
Считается, что Линейное письмо А, которое называют предшественником крито-минойского письма, — это именно то, что можно увидеть на Фестском диске, одной из самых известных археологических загадок. Это диск из обожженной глины диаметром примерно 16 см, датируемый вторым тысячелетием до н.э. и найденный в Фестском дворце на Крите. Он покрыт символами неизвестного происхождения и значения.
Через 1000 лет после крито-минойского появился этеокритский язык, который не подлежит классификации и может быть как-то связан с Линейным письмом А. Он записывается буквами греческого алфавита, но это точно не греческий язык.
Шифр Дорабелла
Английский композитор Эдуард Элгар также очень интересовался криптологией. В память о нем первые шифровальные машины начала XX века назывались в честь его произведения «Энигма-вариации». Машины «Энигма» были способны зашифровывать и дешифровать сообщения. Элгар отправил своей подруге Доре Пенни «записку Дорабелле» — именно так он называл подругу, которая была младше его на двадцать лет. Он уже был счастливо женат на другой женщине. Может, у него с Пенни был роман? Она так и не расшифровала код, который он ей послал, и никто другой так и не смог этого сделать.
Криптограммы Бейла
Мужчина из Вирджинии, который создает шифры с тайнами спрятанных сокровищ, — это что-то из области произведений Дэна Брауна, а не из реального мира. В 1865 году была опубликована брошюра, описывающая огромное сокровище, которое сегодня бы стоило более 60 миллионов долларов. Оно якобы было зарыто на территории округа Бедфорд уже 50 лет. Возможно, человек, который это сделал, Томас Дж. Бейл, никогда не существовал. Но в брошюре было указано, что Бейл передал коробку с тремя зашифрованными сообщениями владельцу гостиницы, который на протяжении нескольких десятилетий ничего с ними не делал. О Бейле больше ничего не было слышно.
В единственном сообщении Бейла, которое было расшифровано, говорится, что автор оставил огромное количество золота, серебра и драгоценностей в каменном погребе на глубине шесть футов. Также там говорится, что в другом шифре описано точное местонахождение погреба, поэтому не должно возникнуть никаких сложностей в его обнаружении. Некоторые скептики считают, что сокровища Бейла — утка, которая удачно использовалась для продажи брошюр по 50 центов, что в переводе на современные деньги будет 13 долларов.
Загадки убийцы Зодиака
Знаменитый серийный убийца из Калифорнии по прозвищу Зодиак дразнил полицию Сан-Франциско несколькими шифрами, утверждая, что некоторые из них раскроют местонахождение бомб, заложенных по всему городу. Он подписывал письма кругом и крестом — символом, обозначающим Зодиак, небесный пояс из тринадцати созвездий.
Зодиак также отправил три письма в три разные газеты, в каждом из которых содержалась треть от шифра из 408 символов. Школьный учитель из Салинаса увидел символы в местной газете и разгадал шифр. В сообщении говорилось: «Мне нравится убивать людей, потому что это очень весело. Это веселее, чем убивать диких животных в лесу, потому что человек — самое опасное животное из всех. Убийство дает мне самые острые ощущения. Это даже лучше секса. Самое лучшее ждет, когда я умру. Я снова появлюсь на свет в раю, и все, кого я убил, станут моими рабами. Я не скажу вам моего имени, потому что вы захотите замедлить или остановить набор рабов для моей загробной жизни».
Зодиак взял ответственность за убийство 37 человек и так и не был найден. По всему миру у него появились подражатели.
Таман Шуд
В декабре 1948 года на пляже Сомертона в Австралии нашли тело мужчины. Личность умершего так и не удалось установить, а дело окутано тайной по сей день. Мужчину могли убить не оставляющим следов ядом, но даже причина смерти неизвестна. Человек из Сомертона был одет в белую рубашку, галстук, коричневый вязаный пуловер и серо-коричневый пиджак. Бирки с одежды были срезаны, а бумажник отсутствовал. Зубы не соответствовали каким-либо имеющимся стоматологическим записям.
В кармане у неизвестного обнаружили кусочек бумаги со словами «tamam shud», или «законченный» по-персидски. В дальнейшем при публикации материала на эту тему в одной из газет была допущена опечатка: вместо «Tamam» было напечатано слово «Taman», в результате чего в историю вошло именно ошибочное название. Это был обрывок страницы из редкого издания сборника «Рубайат» персидского поэта XII века Омара Хайяма. Книга была найдена, и на внутренней стороне обложки был написан местный номер телефона и зашифрованное сообщение. Кроме того, в камере хранения близлежащей железнодорожной станции нашли чемодан с вещами, но это не помогло установить личность убитого. Может, человек из Сомертона был шпионом холодной войны под глубоким прикрытием? Криптограф-любитель? Годы проходят, но исследователи так и не приблизились к разгадке.
Блиц-шифры
Эта загадка — самая новая из всех перечисленных, так как была обнародована только в 2011 году. Блиц-шифры — это несколько страниц, обнаруженных во время Второй мировой войны. Они лежали годами в деревянных ящиках в одном из подвалов Лондона, который был раскрыт в результате немецких бомбовых ударов. Один солдат взял с собой эти бумаги, и оказалось, что в них полно странных чертежей и зашифрованных слов. Документы содержат более 50 уникальных символов, напоминающих каллиграфические. Датировать документы не удается, однако, согласно популярной версии, блиц-шифры — дело рук оккультистов или масонов XVIII века.
В этот день свой профессиональный праздник отмечает Криптографическая служба России.
«Криптография» с древнегреческого означает «тайнопись».
Как раньше прятали слова?
Своеобразный метод передачи тайного письма существовал во времена правления династии египетских фараонов:
выбирали раба. Брили его голову наголо и наносили на неё текст сообщения водостойкой растительной краской. Когда волосы отрастали, его отправляли к адресату.
Шифр — это какая-либо система преобразования текста с секретом (ключом) для обеспечения секретности передаваемой информации.
АиФ.ru сделал подборку интересных фактов из истории шифрования.
Все тайнописи имеют системы
1. Акростих — осмысленный текст (слово, словосочетание или предложение), сложенный из начальных букв каждой строки стихотворения.
Вот, например, стихотворение-загадка с разгадкой в первых буквах:
Д овольно именем известна я своим;
Р авно клянётся плут и непорочный им,
У техой в бедствиях всего бываю боле,
Ж изнь сладостней при мне и в самой лучшей доле.
Б лаженству чистых душ могу служить одна,
А меж злодеями — не быть я создана.
Юрий Нелединский-Мелецкий
Сергей Есенин, Анна Ахматова, Валентин Загорянский часто пользовались акростихами.
2. Литорея — род шифрованного письма, употреблявшегося в древнерусской рукописной литературе. Бывает простая и мудрая. Простую называют тарабарской грамотой, она заключается в следующем: поставив согласные буквы в два ряда в порядке:
употребляют в письме верхние буквы вместо нижних и наоборот, причём гласные остаются без перемены; так, например, токепот = котёнок и т. п.
Мудрая литорея предполагает более сложные правила подстановки.
3. «ROT1» — шифр для детишек?
Возможно, в детстве вы тоже его использовали. Ключ к шифру очень прост: каждая буква алфавита заменяется на последующую букву.
А заменяется на Б, Б заменяется на В и так далее. «ROT1» буквально означает «вращать на 1 букву вперёд по алфавиту». Фраза «Я люблю борщ» превратится в секретную фразу «А мявмя впсъ» . Этот шифр предназначен для развлечения, его легко понять и расшифровать, даже если ключ используется в обратном направлении.
4. От перестановки слагаемых…
Во время Первой мировой войны конфиденциальные сообщения отправляли с помощью так называемых перестановочных шрифтов. В них буквы переставляются с использованием некоторых заданных правил или ключей.
Например, слова могут быть записаны в обратном направлении, так что фраза «мама мыла раму» превращается во фразу «амам алым умар» . Другой перестановочный ключ заключается в перестановке каждой пары букв, так что предыдущее сообщение становится «ам ам ым ал ар ум» .
Возможно, покажется, что сложные правила перестановки могут сделать эти шифры очень трудными. Однако многие зашифрованные сообщения могут быть расшифрованы с использованием анаграмм или современных компьютерных алгоритмов.
5. Сдвижной шифр Цезаря
Он состоит из 33 различных шифров, по одному на каждую букву алфавита (количество шифров меняется в зависимости от алфавита используемого языка). Человек должен был знать, какой шифр Юлия Цезаря использовать для того, чтобы расшифровать сообщение. Например, если используется шифр Ё, то А становится Ё, Б становится Ж, В становится З и так далее по алфавиту. Если используется шифр Ю, то А становится Ю, Б становится Я, В становится А и так далее. Данный алгоритм является основой для многих более сложных шифров, но сам по себе не обеспечивает надёжную защиту тайны сообщений, поскольку проверка 33-х различных ключей шифра займёт относительно небольшое время.
Никто не смог. Попробуйте вы
Зашифрованные публичные послания дразнят нас своей интригой. Некоторые из них до сих пор остаются неразгаданными. Вот они:
Криптос . Скульптура, созданная художником Джимом Санборном, которая расположена перед штаб-квартирой Центрального разведывательного управления в Лэнгли, Вирджиния. Скульптура содержит в себе четыре шифровки, вскрыть код четвёртой не удаётся до сих пор. В 2010 году было раскрыто, что символы 64-69 NYPVTT в четвёртой части означают слово БЕРЛИН.
Теперь, когда вы прочитали статью, то наверняка сможете разгадать три простых шифра.
Свои варианты оставляйте в комментариях к этой статье. Ответ появится в 13:00 13 мая 2014 года.
Ответ:
1) Блюдечко
2) Слоненку все надоело
3) Хорошая погода
Воспользоваться старой и малоизвестной системой записи. Даже римские цифры не всегда бывает легко прочитать, особенно с первого взгляда и без справочника. Мало кто сможет «с лёта» определить, что в длинной строчке MMMCDLXXXIX скрывается число 3489.
С римской системой счисления знакомы многие, поэтому ее нельзя назвать надежной для шифрования. Гораздо лучше прибегнуть, например, к греческой системе, где цифры также обозначаются буквами, но букв используется намного больше. В надписи ОМГ, которую легко принять за распространенное в интернете выражение эмоций, может быть спрятано записанное по-гречески число 443. Буква «О микрон» соответствует числу 400, буквой «Мю» обозначается 40, ну а «Гамма» заменяет тройку.
Недостаток подобных буквенных систем в том, что они зачастую требуют экзотических букв и знаков. Это не составляет особого труда, если ваш шифр записан ручкой на бумаге, но превращается в проблему, если вы хотите отправить его, скажем, по электронной почте. Компьютерные шрифты включают в себя греческие символы, но их бывает сложно набирать. А если вы выбрали что-то еще более необычное, вроде старой кириллической записи или египетских числовых , то компьютер просто не сможет их передать.
Для таких случаев можно рекомендовать простой способ, которым в России в старые времена пользовались все те же бродячие торговцы — коробейники и офени. Для успешной торговли им было жизненно необходимо согласовывать между собой цены, но так, чтобы об этом не узнал никто посторонний. Поэтому коробейники и разработали множество хитроумных способов шифровки.
С цифрами они обходились следующим образом. Вначале нужно взять слово в котором есть десять различных букв, например «правосудие». Затем буквы нумеруются от единицы до нуля. «П» становится знаком для единицы, «в» — для четверки, и так далее. После этого любое число можно записывать буквами вместо цифр по обычной десятичной системе. Например, год 2011 записывается по системе офеней как «реепп». Попробуйте сами , спрятано в строчке «а,пвпоирс».
«Правосудие» — не единственное слово русского языка, подходящее для этого метода. «Трудолюбие» годится ничуть не хуже: в нем также десять неповторяющихся букв. Вы вполне можете и самостоятельно поискать другие возможные основы.
Не зря историю Египта считают одной из самых таинственных, а культуру одной из высокоразвитых. Древние египтяне, не в пример многим народам, не только умели возводить пирамиды и мумифицировать тела, но владели грамотой, вели счет, вычисляли небесные светила, фиксируя их координаты.
Десятичная система Египта
Современная десятичная появилась чуть более 2000 лет назад, однако египтяне владели ее аналогом еще во времена фараонов. Вместо громоздких индивидуальных буквенно-знаковых обозначений числа они использовали унифицированные знаки – графические изображения, цифры. Цифры они делили на единицы, десятки, сотни и т.д., обозначая каждую категорию специальным иероглифом.
Как такового правила цифр не было, то есть их могли в любом порядке, например, справа налево, слева направо. Иногда их даже составляли в вертикальную строку, при этом направление чтения цифрового ряда задавалось видом первой цифры – вытянутая (для вертикального чтения) или сплюснутая (для горизонтального).
Найденные при раскопках древние папирусы с цифрами свидетельствуют, что египтяне уже в то время рассматривали различные арифметические , проводили исчисления и при помощи цифр фиксировали результат, применяли цифровые обозначения в области геометрии. Это значит, что цифровая запись была распространенной и общепринятой.
Цифры нередко наделялись магическим и знаковым значением, о чем свидетельствует их изображение не только на папирусах, но и на саркофагах, стенах усыпальниц.
Вид цифры
Цифровые иероглифы были геометричны и состояли только из прямых. Иероглифы выглядели достаточно просто, например цифра «1» у египтян обозначалась одной вертикальной полоской, «2» — двумя, «3» — тремя. А вот некоторые цифры, написанные , не поддаются современной логике, примером служит цифра «4», которая изображалась как одна горизонтальная полоска, а цифра «8» в виде двух горизонтальных полосок. Самыми сложными в написании считались цифры девять и шесть, они состояли из характерных черт под разным наклоном.
Долгие годы египтологи не могли расшифровать эти иероглифы, полагая, что перед ними буквы или слова.
Одними из последних были расшифрованы и переведены иероглифы, обозначающих массу, совокупность. Сложность была объективной, ведь некоторые цифры изображались символично, к примеру, на папирусах человек, изображенный с поднятыми , обозначал миллион. Иероглиф с изображением жабы означал тысячу, а личинки — . Однако вся система написания цифр была систематизированной, очевидно – утверждают египтологи – что иероглифы упрощались. Вероятно, их написанию и обозначению обучали даже простой народ, потому как обнаруженные многочисленные торговые грамоты мелких лавочников были составлены грамотно.
Базовый 26 шифр (число ⬌ слов)
Поиск инструмента
Базовый 26 шифр
Инструмент для дешифрования / шифрования в Base 26. Base 26 использует 26 символов, используя букву алфавита, шифр Base 26 может шифровать слова с числами и наоборот.
Результаты
Базовый 26 шифр — dCode
Тэги: Криптография, Арифметика
Поделиться
dCode и другие
dCode является бесплатным, а его инструменты являются ценным подспорьем в играх, математике, геокешинге, головоломках и задачах, которые нужно решать каждый день!
Предложение? обратная связь? Жук ? идея ? Запись в dCode !
Base 26 Декодер / преобразователь
Base 26 Энкодер
Ответы на вопросы (FAQ)
Как зашифровать с помощью шифра Base 26
Кодирование с шестнадцатеричным числом (, основание 26, имя ) использует арифметическое изменение основания с на основе 26, на основание 10.0 = 1415626 $
Этот метод является наиболее строгим с математической точки зрения, но может вызвать проблемы при шифровании слов, начинающихся с A (что соответствует символу 0 в базе 10), и поэтому обычно игнорируется в начале числа (001 = 1). Иногда считается, что для некоторых приложений в криптографии используется «A = 1».
Как расшифровать шифр Base 26
Расшифровкав шестнадцатеричной системе счисления ( base26 ) состоит из преобразования из базы 10 в основание 26 (с использованием слов как шестнадцатеричных чисел с 26 буквами алфавита в качестве основных символов).0 $, поэтому [3,2,14,3,4] в base 26 и 3 = D, 2 = C, 14 = O, 3 = D, 4 = E. Простое сообщение — DCODE.
Как распознать шифротекст Base 26?
Зашифрованное сообщение состоит из чисел, относительно больших (для длинных слов)
Обычные слова могут появляться несколько раз с одним и тем же значением в длинном тексте. 4 = 18
$ (это эквивалентно к кодированию EDOCD).0 = 1 и 1 = BДобавьте ноль в начало числа, чтобы указать букву A в начале слова.
Задайте новый вопросИсходный код
dCode сохраняет за собой право собственности на исходный код онлайн-инструмента Base 26 Cipher. За исключением явной лицензии с открытым исходным кодом (обозначенной CC / Creative Commons / free), любой алгоритм, апплет или фрагмент кода Base 26 Cipher (конвертер, решатель, шифрование / дешифрование, кодирование / декодирование, шифрование / дешифрование, переводчик) или любой другой алгоритм Base 26 Cipher. 26 Cipher ‘(вычислить, преобразовать, решить, расшифровать / зашифровать, расшифровать / зашифровать, декодировать / закодировать, перевести), написанную на любом информационном языке (Python, Java, PHP, C #, Javascript, Matlab и т. Д.)) и никакая загрузка данных, скрипт, копипаст или доступ к API для Base 26 Cipher не будут бесплатными, то же самое для автономного использования на ПК, планшете, iPhone или Android! dCode распространяется бесплатно и онлайн.
Нужна помощь?
Пожалуйста, посетите наше сообщество dCode Discord для получения помощи!
NB: для зашифрованных сообщений проверьте наш автоматический идентификатор шифра!
Вопросы / комментарии
Сводка
Похожие страницы
Поддержка
Форум / Справка
Ключевые слова
основание, основание26,26, шестнадцатеричное, алфавит, число, слово
Ссылки
Источник: https: // www.dcode.fr/base-26-cipher
© 2021 dCode — Идеальный «инструментарий» для решения любых игр / загадок / геокэшинга / CTF.Шифры на основе чисел | Обучение вычислительной технике в Лондоне: РЕСУРСНЫЙ ХАБ от CAS LONDON и CS4FN
Шифры — отличный способ поиграть с числами и арифметикой. Они также являются способом изучения данных , , , представлением и важной частью вычислительного мышления.
Самые ранние шифры были простыми шифрами замещения , в которых буквы менялись местами на разные буквы или символы.Если мы представим буквы как числа, мы сможем использовать математику для создания шифров. Они намного более гибкие. Мы можем легко превратить буквы в числа, например, используя следующую таблицу. Это просто простая версия того, что делают кодировки символов, такие как ASCII и UNICODE.
Мы можем зашифровать целые сообщения, используя математический шифр, основанный на этом. Вот простой математический шифр. Чтобы зашифровать письмо:
ШАГ 1. Замените его эквивалентным номером.
ШАГ 2. Добавьте 10 к числу.
ШАГ 3. Если результат больше или равен 26, вычтите 26.
На последнем шаге используется арифметика тактовой частоты . Он работает как стрелки на больших часах, у которых здесь 26 часов, а не только 12. Когда мы дойдем до 26, мы вернемся к 0, как часы. Он маскирует узоры.
Давайте зашифруем пример слова:
ШИФР
Он шифруется на каждом шаге следующим образом:
ШАГ 1: 2-8-15-7-4-17
ШАГ 2: 12-18-25-17-14-27
ШАГ 3: 12-18-25-17-14-1
Представление букв в виде чисел позволяет нам создавать сложные шифры, которые трудно взломать.
Что попробовать
- Зашифруйте следующее сообщение, используя этот шифр.
Я ЗАКЛЮЧЕННЫЙ
- Напишите собственное сообщение, а затем зашифруйте его с помощью шифра
- Разработайте шаги, чтобы расшифровать сообщение с помощью шифра. Убедитесь, что он работает, расшифровав зашифрованные сообщения.
- Придумайте свой собственный числовой шифр. Используйте арифметику часов, чтобы всегда получать число от 0 до 25. Вам также нужен способ расшифровки сообщений.
Таблицы работ
Другие головоломки для взлома кода
Нравится:
Нравится Загрузка …
Нигилистический шифр | Полиалфавитные подстановочные шифры
Нигилистический шифр
Полиалфавитный шифр замещенияВпервые использовался в восьмидесятых годах девятнадцатого века в России нигилистическими организациями.
Использование
Шифр назван в честь нигилистского движения, которое боролось против царизма в России и нападало на его чиновников в девятнадцатом веке.Они убили царя Александра II в ходе успешного покушения в 1881 году.
Исходный алгоритм был не очень сильным, но есть некоторые модификации, которые обеспечивают гораздо лучшую безопасность. Одним из шифров, который принадлежит к семейству шифров нигилизма, является шифр VIC.
Алгоритм
Алгоритм шифра Нигилиста использует матрицу, называемую квадратом Полибия. Он имеет 5 строк и 5 столбцов и заполнен всеми латинскими буквами (всего 26 латинских букв, поэтому обычно буквы i и j рассматриваются как один символ).
Порядок букв в таблице зависит от секретного слова, которое используется двумя общающимися сторонами. Чтобы определить порядок букв, нужно удалить повторяющиеся буквы секретного слова, а затем ввести остальные буквы в таблицу. Обычно буквы пишутся, начиная с самой верхней левой ячейки и идя вправо, строка за строкой. Однако стороны могут договориться и о другом порядке. Остальные пустые ячейки заполняются остальными буквами, которых не содержит секретное слово.Обычно стороны используют алфавитный порядок.
И строки, и столбцы таблицы пронумерованы от 1 до 5.
Например, если в качестве секретного слова использовать полное имя убитого нигилистами царя Александра II (Александр II Николаевич), то таблица может быть записана следующим образом:
1 | 2 | 3 | 4 | 5 | |
1 | a | л | e | к | с |
2 | n | д | r | и | или |
3 | v | с | ч | б | f |
4 | г | м | п. | q | т |
5 | u | Вт | х | y | z |
Каждая буква секретного ключа и каждая буква данного сообщения заменяются двузначным числом, определяемым цифрами в строках и столбцах.Секретный ключ обычно отличается от секретного слова, использованного для создания таблицы на предыдущем шаге. Секретный ключ используется во время шифрования всего сообщения. Как секретный ключ (используемый для создания таблицы), так и секретный ключ (используемый для шифрования всех сообщений) должны быть общими для взаимодействующих сторон.
При шифровании следует поочередно прибавлять все числа, созданные из букв открытого текста, к числам, созданным из букв секретного ключа.Результаты могут быть двузначными или трехзначными числами. Созданный зашифрованный текст может содержать последовательность чисел или полученные числа могут быть преобразованы в буквы с использованием той же таблицы и обратного преобразования.
Например, этапы шифрования предложения Acta est fabula с использованием секретного ключевого слова Vivere и квадрата Полибия, определенного выше, представлены ниже.
Открытый текст и секретный ключ шифрования должны быть записаны в две строки одна под другой:
a | c | t | a | e | s | t | f | a | b | u | l | и | v | e | r | e | v | и | v | e | r | e | v |
После замены букв на числа строки имеют следующий вид:
11 | 32 | 45 | 11 | 13 | 15 | 45 | 35 | 11 | 34 | 51 | 12 | 11 |
31 | 24 | 31 | 13 | 23 | 13 | 31 | 24 | 31 | 13 | 23 | 13 | 31 |
Зашифрованный текст создается путем добавления чисел открытого текста к номерам секретных ключей:
42 | 56 | 76 | 24 | 36 | 28 | 76 | 59 | 42 | 47 | 74 | 25 | 52 |
Получатель, которому известен секретный ключ, вычитает номера секретных ключей из номеров зашифрованного текста.Он получает числа в виде открытого текста, которые можно преобразовать в буквы, используя ту же таблицу, что и отправитель, использованный для шифрования.
Безопасность шифра нигилиста
Шифр Нигилиста очень похож на шифр Виженера. Вместо букв используются цифры. Поэтому для его анализа и взлома можно использовать аналогичные методы. При анализе частотности символов в зашифрованном тексте следует проверять двузначные числа.
При шифровании с использованием алгоритма Nihilist используется обычное сложение (без операции по модулю), поэтому зашифрованный текст может содержать трехзначные числа.Это происходит, когда соответствующие буквы открытого текста и секретного ключа расположены в последней (пятой) строке таблицы (поэтому слагаемые больше 50). Это значительно упрощает анализ зашифрованного текста.
Взлом шифра нигилизма
Первый шаг при взломе шифра Нигилиста — это определение длины секретного ключа. Этого можно достичь, попробовав некоторые возможные длины ключей для возможных значений (например, от 4 до 15 символов).Для каждого из чисел следует написать зашифрованный текст, разбивая строки после количества символов, равного этому числу. Созданные таблицы имеют количество столбцов, равное анализируемой в данный момент длине секретного ключа.
Затем для каждой полученной таблицы нужно проверить числа во всех ее столбцах. Числа в каждом столбце должны состоять как из разряда десятков, так и из разряда единиц, которые отличаются друг от друга не более чем на 5. Это вызвано тем, что в каждом столбце все символы были закодированы с использованием одной и той же буквы секретного ключа, поэтому каждый Номер открытого текста в столбце был добавлен к тому же номеру секретного ключа.Значение номера секретного ключа не влияет на разницу между номерами открытого текста, которые были закодированы с использованием этого номера.
При сложении любых чисел из квадрата Полибия к другому числу, которое также принадлежит квадрату Полибия, всегда получаются числа, состоящие из десятков и единиц, которые не отличаются друг от друга более чем на 5 (поэтому разница между наибольшим числом и наименьшие разряды десятков в столбце не могут быть больше 5; такая же ситуация применяется к разрядам единиц).На следующих этапах следует использовать только таблицы (только такие потенциальные длины секретного ключа), которые удовлетворяют этому условию.
Второй шаг — определить возможные номера ключей, которые могут быть использованы для шифрования. Для каждого столбца нужно найти все возможные числа, которые после вычитания из всех номеров зашифрованного текста в столбце дают номера значений от 11 до 55. Все остальные числа, не удовлетворяющие условию, следует отбросить. На практике таким образом можно исключить множество потенциальных секретных номеров ключей.
Дальнейший анализ зашифрованного текста может основываться на преобразовании чисел в буквы с использованием метода проб и ошибок, ищущего решения, раскрывающие фрагменты исходного открытого текста. Для каждого правильного решения необходимо создать все возможные ключи шифрования и вычесть их из зашифрованного текста, получив потенциальные буквы открытого текста.
Шифрование Виженера было изобретением французского дипломата Блеза. де Виженера, 1523-1596 гг.Как Цезарь и все криптографы, После этого он не представлял себе шифр в модульных арифметических терминах. Скорее он рассматривал шифр как шифр подстановки, где другой алфавит использовался для следующей буквы сообщения, с алфавитами периодически повторяется — в зависимости от ключа. Вместо того, чтобы устанавливать несколько разных алфавитов, криптограф использовал бы Виженера квадратный. Вот идея.Для данного ключевого слова «ПЕРВЫЙ», зашифровать каждую букву сообщения, взятого в крайнем левом столбце, чтобы буква в столбце «ключевое слово-буква». Таким образом, первые пять букв сообщения используйте алфавиты, соответствующие букве «F», Столбцы «I», «R», «S» и «T». Итак, код Виженера с этим ключевым словом — это действительно пять смен Цезаря. используется циклически. Описание ведется в обратном направлении от столбцов ключевых слов до самого левого столбца.Потому что мы действительно используя пять алфавитов, шифрование Виженера иногда называют полиалфавитный (много + алфавитный) код. Это шифрование так и не прижилось, отчасти потому, что оно было трудным. использовать для шифрования и дешифрования сотен сообщений ежедневно как того требуют военные. Его впервые сломал прусский майор Касиски. в 1863 году. Он предложил метод взлома шифра Виженера, который состоял из найти длину ключевого слова и затем разделить сообщение на что много простых криптограмм подстановки.Применить частотный анализ для декодирования нескольких криптограмм. Другой способ взломать код — это вычисление пионер двигателей Чарльз Бэббидж более трехсот лет спустя. Бэббидж провел очень тщательный анализ структуры групп письма и много тяжелой работы. Сегодняшний шифр Виженера просто в меру хорошо. Ни один серьезный криптолог не стал бы использовать его для безопасного передача информации. |
Простой алгоритм шифрования / дешифрования для чисел
Одна из важнейших задач любого ИТ-отдела — убедиться, что информация, хранящаяся в файлах базы данных, недоступна неавторизованным пользователям.Программа RPG CCED01 обеспечивает простой способ шифрования и дешифрования чисел длиной до 16 цифр.
Алгоритм основан на массиве числовых цифр из 16 элементов, который я реализую как массив времени компиляции в CCED01. Каждый элемент должен содержать десять цифровых символов от 0 до 9. Каждая цифра должна появляться только один раз в каждом элементе массива. Цифры могут появляться в любом порядке.Вот пример:
0123456789 1234567890 2345678901 3456789012 45678 56784 67845 78456 84567 45678 0123456789 1234567890 2345678901 3456789012 45678 56784
Программа CCED01 имеет только один параметр: 17-байтовое символьное значение. Первые 16 байтов содержат число, выровненное по левому краю. Последний байт должен содержать E для шифрования или D для дешифрования.
Рассмотрим пример.Предположим, номер социального страхования 328827109 необходимо сохранить в файле базы данных. Этот номер передается программе с выравниванием по правому краю буквой «E» для шифрования:
ВЫЗОВ PGM (CCED01) PARM ('328827109 E')
Шифрование — это двухэтапный процесс. На первом этапе программа заменяет каждую цифру числа на ее позицию в элементе массива, как показано здесь.
Входное число | Элемент массива | Выходной номер |
3 | 0 1 2 3 4 5 6 7 8 9 | 4 |
2 | 1 2 3 4 5 6 7 8 9 0 | 2 |
8 | 2 3 4 5 6 7 8 9 0 1 | 7 |
8 | 3 4 5 6 7 8 9 0 1 2 | 6 |
2 | 4 5 6 7 8 9 0 1 2 3 | 9 |
7 | 5 6 7 8 9 0 1 2 3 4 | 3 |
1 | 6 7 8 9 0 1 2 3 4 5 | 6 |
0 | 7 8 9 0 1 2 3 4 5 6 | 4 |
9 | 8 9 0 1 2 3 4 5 6 7 | 2 |
9 0 1 2 3 4 5 6 7 8 | ||
0 1 2 3 4 5 6 7 8 9 | ||
1 2 3 4 5 6 7 8 9 0 | ||
2 3 4 5 6 7 8 9 0 1 | ||
3 4 5 6 7 8 9 0 1 2 | ||
4 5 6 7 8 9 0 1 2 3 | ||
5 6 7 8 9 0 1 2 3 4 |
Второй шаг — преобразовать получившийся цифровой символ в «мусорные» символы.В своей реализации я перевожу цифры от 0 до 9 в значения! @ # $% & * (), Которые представляют собой символы, получаемые при удерживании клавиши Shift и нажатии цифровых клавиш в верхней части клавиатуры.
Оригинальный номер социального страхования: 3 2 8 8 2 7 1 0 9
Числовое шифрование: 4 2 7 6 9 3 6 4 2
«Мусорные» символы Зашифрованное число:% # * &) $ &% #
Возвращенное значение % # * &) $ &% # будет сохранено в файле базы данных.
Чтобы расшифровать значение, например, чтобы отобразить его на экране, я вызываю ту же программу, передавая зашифрованное значение как выровненную по левому краю часть параметра и выровненную по правому краю букву «D» для дешифрования:
ВЫЗОВ PGM (CCED01) PARM ('% # * &) $ &% # D')
Возвращенное значение 328827109 будет отображаться на экране.
Две организации могут использовать один и тот же алгоритм, используя программу CCED01 с разными массивами времени компиляции, имеющими разные комбинации цифр от 0 до 9 в соответствующих строках таблицы. Эта разница в таблицах перевода делает алгоритм шифрования / дешифрования уникальным для каждой организации.
–Виктор Писман
|
Спасибо Виктору за этот интересный маленький алгоритм.Позвольте мне добавить несколько комментариев.
Во-первых, это не промышленное шифрование. Одна из проблем этого алгоритма заключается в том, что невозможно изменить ключ шифрования / дешифрования без дешифрования всех зашифрованных данных с помощью старого массива и повторного шифрования их с помощью нового массива времени компиляции. Однако этого должно хватить для любопытных глаз в офисе, особенно тех, у кого есть доступ к инструментам запросов и отчетов.
Во-вторых, Виктор позволил использовать 16 цифр.Эту программу можно легко изменить для обработки больших чисел.
Наконец, Виктор использует один параметр, но любой, кто решит реализовать эту программу, может счесть целесообразным использовать вместо этого два или три параметра. Я бы предпочел, чтобы опция D или E имела свой собственный параметр. Также может быть полезно иметь отдельные параметры для зашифрованных и расшифрованных значений.
-Тед
Примечание: второе издание этой книги доступно под названием Коды взлома с Python
В этой главе рассматриваются темы:
· Что такое криптография?
· Коды и шифры
· Шифр Цезаря
· Шифровальные колеса
· Санкт-ПетербургШлепанцы Cyr
· Шифрование с бумагой и карандашом
· Шифрование «двойной силы»
«Я не мог не подслушать, наверное, потому что Я подслушивал ».
Аноним
Посмотрите на следующие два фрагмента текста:
“Zsijwxyfsi niqjsjxx gjyyjw. Ny nx jnymjw ktqqd tw bnxitr; Ny NX Anwyzj NS Bjfqym FSI Anhj NS Utajwyd.Ns ymj bnsyjw tk tzw qnkj, bj hfs jsotd ns ujfhj ymj kwznyx bmnhm ns nyx xuwnsl tzw nsizxywd uqfsyji. Htzwynjwx tk lqtwd, bwnyjwx tw bfwwntwx, xqzrgjw nx ujwrnyyji dtz, gzy tsqd zuts qfzwjqx ». | “Flwyt tsytbbnz jqtw yjxndwri iyn fqq knqrqt xj mh ndyn jxwqswbj. Dyi jjkxxx sg ttwt gdhz js jwsn; wnjyiyb aijnn snagdqt nnjwww, xstsxsu jdnxzz xkw znfs uwwh xni xjzw jzwyjy jwnmns mnyfjx.Stjj wwzj ти фну, qt uyko qqsbay jmwskj. Sxitwru nwnqn nxfzfbl yy hnwydsj mhnxytb myysyt ». |
Текст слева является секретным сообщением. Сообщение был зашифрован, или превратился в секретный код. Это будет совершенно нечитаемо для тех, кто не знает, как его расшифровать (то есть превратить обратно в простое сообщение на английском языке.) Эта книга научит вас, как зашифровать и расшифровать Сообщения.
Сообщение справа — просто случайная тарабарщина без скрытый смысл вообще.Шифрование ваших письменных сообщений — один из способов сохранить их секрет от других людей, даже если они получат зашифрованные само сообщение. Это будет похоже на случайную чушь.
Криптография — это наука об использовании секретов коды. Криптограф это тот, кто использует и изучает секретные коды. Эта книга научит вас тому, что вы нужно знать, чтобы стать криптографом.
Конечно, эти секретные сообщения не всегда оставаться в секрете.Криптоаналитик — это тот, кто может взломать секреты коды и читать зашифрованные сообщения других людей. Криптоаналитиков также называют код взломщики или хакеры. Эта книга также научит вас тому, что вы нужно знать, чтобы стать криптоаналитиком. К сожалению, тип взлома выучить из этой книги не настолько опасно, чтобы вызвать у вас проблемы с законом. (Я значит, к счастью.)
Шпионы, солдаты, хакеры, пираты, члены королевской семьи, торговцы, тираны, политические активисты, интернет-покупатели и все, кому когда-либо приходилось делиться секреты с верными друзьями полагались на криптографию, чтобы убедиться, что их секреты остаются в секрете.
Развитие электрического телеграфа в начале 19 -го столетие позволило практически мгновенно передавать данные по проводам между континентами. Это было намного быстрее, чем послать всадника с мешком писем. Однако телеграф не мог напрямую отправлять письменные письма, нарисованные на бумаге. Вместо этого он мог посылать электрические импульсы. Короткий импульс называется «точкой», а длинный импульс называется «тире».
Рисунок 1-1.Сэмюэл Морс 27 апреля 1791 — 2 апреля 1872 | Рисунок 1-2. Альфред Вейл 25 сентября 1807 — 18 января 1859 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Для преобразования этих точек и тире в английский язык буквы алфавита, система кодирования (или код) необходима для переводить с английского языка на электрический импульсный код (называемый кодировкой) и на Другой конец переводит электрические импульсы на английский язык (это называется декодированием).Код для этого по телеграфу (а позже и по радио) назывался азбукой Морзе, и был разработан Сэмюэлем Морсом и Альфредом Вейлом. Нажимая точки и тире с помощью однокнопочного телеграфа, телеграфист мог передать Сообщение на английском языке кому-то на другом конце света почти мгновенно! (Если Если вы хотите выучить азбуку Морзе, посетите http://invpy.com/morse .) |
Рисунок 1-3.Международная азбука Морзе с иероглифами представлены в виде точек и тире. |
Коды сделаны понятными и общедоступными имеется в наличии. Кто угодно должен иметь возможность узнать, что означают символы кода. для декодирования закодированного сообщения.
Прежде чем мы научимся программировать компьютеры для шифрования и расшифровку, давайте научимся делать это сами на простой бумаге инструменты. Легко превратить понятный английский текст (который называется открытым текстом) в бессмысленный текст, скрывающий секретный код (называемый зашифрованным текстом).Шифр представляет собой набор правил преобразования между открытым текстом и зашифрованным текстом. Эти правила часто используют секретный ключ. В этой книге мы узнаем несколько разных шифров.
Давайте изучим шифр, называемый шифром Цезаря. Этот шифр использовался Юлием Цезарем две тысячи лет назад. Хорошая новость в том, что это простой и легкий в освоении. Плохая новость в том, что, поскольку это так просто, криптоаналитику легко взломать. Но мы можем использовать его как простой обучающее упражнение.Больше информации о шифре Цезаря можно найти в Википедии: http://en.wikipedia.org/wiki/Caesar_cipher .
Чтобы преобразовать открытый текст в зашифрованный с использованием шифра Цезаря, мы создадим что-то, что называется шифровальным колесом (также называется шифром диск). Вы можете сделать фотокопию колеса шифрования, которое появляется в эту книгу или распечатайте книгу из http://invpy.com/cipherwheel . Вырежьте два круга и положите их друг на друга, как показано на рисунке 1-8.
Рисунок 1-4. Внутренний круг выреза шифровального колеса.
Рисунок 1-5. Внешний круг выреза шифровального колеса.
Не вырезайте страница из этой книги!
Просто сделайте ксерокопию
этой страницы или распечатайте ее с http://invpy.com/cipherwheel .
Рисунок 1-6.Вырезание кругов колеса шифра. | Рисунок 1-7. Вырезанные круги. | Рисунок 1-8. Завершенное колесо шифрования. |
После того, как вы вырежете круги, поместите меньший середина большего. Проденьте булавку или штифт через центр обоих кругов. так что вы можете вращать их на месте.Теперь у вас есть инструмент для создания секретов сообщения с шифром Цезаря.
Существует также виртуальное колесо шифрования в Интернете, если вы не иметь под рукой ножницы и копировальный аппарат. Откройте в веб-браузере http://invpy.com/cipherwheel использовать версию программного обеспечения шифровального колеса. Чтобы крутить колесо, щелкните по нему мышью и затем перемещайте курсор мыши, пока нужная клавиша не окажется на месте.потом щелкните мышью еще раз, чтобы колесо не вращалось. | Рисунок 1-9. Шифровальное колесо онлайн. |
Сначала напишите ваше сообщение на английском языке на бумаге. За это Например, мы зашифруем сообщение «Секретный пароль — Rosebud». Следующий, вращайте внутреннее колесо, пока его буквы не совпадут с буквами в внешнее колесо. Обратите внимание на то, что на внешнем колесе есть точка рядом с буквой A.Посмотрите число на внутреннем колесе рядом с точкой на внешнем колесе. Этот номер известен ключом шифрования.
Ключ шифрования — это секрет шифрования или дешифрования. сообщение. Любой, кто прочитает эту книгу, может узнать о шифре Цезаря, просто как любой, кто читает книгу о замках, может узнать, как работает дверной замок. Но как обычный замок и ключ, если у них нет ключа шифрования, они не будут иметь возможность разблокировать (то есть расшифровать) секретное зашифрованное сообщение.На рисунке 1-9, A внешнего круга находится над числом 8 внутреннего круга. Это означает, что мы будем используя ключ 8, чтобы зашифровать наше сообщение. Шифр Цезаря использует ключи от 0 до 25. В нашем примере воспользуемся клавишей 8. Держите ключ шифрования в секрете; зашифрованный текст может прочитать любой, кто знает, что сообщение было зашифровано с ключом 8.
т | H | E | S | E | С | R | E | т | -П | А | S | S | Вт | O | R | D | ||
↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ||
В | -П | м | А | м | К | Z | м | В | Х | Я | А | А | E | Вт | Z | л |
Я | S | R | O | S | E | В | U | D | . | |
↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ||
квартал | А | Z | Вт | А | м | Дж | С | л | . |
Для каждой буквы в нашем сообщении мы найдем, где она находится внешний круг и замените его лицевой буквой во внутреннем круге. Первая буква в нашем сообщении — Т (первая буква «Т» в слове «Секрет…»), поэтому мы найдите букву T во внешнем круге, а затем найдите выстроенную букву в внутренний круг. Это буква B, поэтому в нашем секретном сообщении мы всегда будем заменять Т с Б. (Если бы мы использовали другой ключ шифрования, кроме 8, тогда T в нашем открытом тексте будет заменена другой буквой.)
Следующая буква в нашем сообщении — H, которая превращается в P. буква E превращается в M. Когда мы зашифровали все сообщение, сообщение превратился из «Секретный пароль — бутон розы». к «Bpm amkzmb xiaaewzl qa Zwamjcl ». Теперь вы можете отправить кому-нибудь это сообщение (или оставить его записанным для себя), и никто не сможет его прочитать, если вы не скажете им секретный ключ шифрования (цифра 8).
Рисунок 1-10. Сообщение, зашифрованное с помощью колеса шифра.
Каждая буква на внешнем колесе всегда будет зашифрована такая же буква на внутреннем колесе. Чтобы сэкономить время, после просмотра первой буквы T в «Секрете…» и убедитесь, что он шифруется до B, вы можете заменить каждый T в сообщение с Б. Таким образом, вам нужно найти письмо только один раз.
Чтобы расшифровать зашифрованный текст, перейдите от внутреннего круга к внешний круг. Допустим, вы получили этот зашифрованный текст от друга: «Iwt ctl ephhldgs xh Hldgsuxhw ». Вы и все остальные не сможете его расшифровать если вы не знаете ключ (или если вы не умный хакер).Но твой друг решила использовать ключ 15 для каждого сообщения, которое она отправляет вам.
Выровняйте букву A на внешнем круге (на том, что точка под ней) над буквой во внутреннем круге с числом 15 (которое это буква P). Первая буква секретного сообщения — это я, поэтому мы находим я на внутренний круг и посмотрите на букву рядом с ним на внешнем круге, которая является T. Буква W в зашифрованном тексте будет расшифровывать до буквы H. Один за другим мы можем расшифровать каждую букву зашифрованного текста до открытого текста: «Новый пароль это Swordfish.”
Я | Вт | т | С | т | л | E | -П | H | H | л | D | G | S | ||
↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ||
т | H | E | N | E | Вт | -П | А | S | S | Вт | O | R | D |
Х | H | H | л | D | G | S | U | Х | H | Вт | . | |
↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ↓ | ||
Я | S | S | Вт | O | R | D | Ф | Я | S | H | . |
Если мы используем неправильный ключ, например 16, вместо правильного ключ 15, расшифрованное сообщение — «Sgd mdv ozrrvnqc hr Rvnqcehrg.» Этот открытый текст вообще не выглядит простым. Если не используется правильный ключ, расшифрованное сообщение никогда не будет понятным английским языком.
Рисунок 1-11. Сделайте копии этих полосок, чтобы сделать Сен-Сир. Горка. | Есть еще один бумажный инструмент, который можно использовать для шифрование и дешифрование, называемое St.Cyr слайд. Это похоже на шифр колесо, кроме как по прямой. Сделайте ксерокопию изображения слайда Сен-Сир на следующем страницу (или распечатайте ее с http://invpy.com/stcyrslide ) и вырезаем три полоски. Склейте две полосы с алфавитом вместе с черным ящиком. A рядом с белым квадратом Z на другой полосе. Вырежьте прорези на любом сторона основной выдвижной коробки, чтобы скрепленная полоса могла проходить через Это.Должно получиться так: Рисунок 1-12. Завершенный слайд St. Cyr Когда черный ящик A находится под буквой H (и цифрой 7), то для шифрования вы должны найти букву открытого текста на длинном полосы и замените ее буквой над ней. Чтобы расшифровать, найдите букву зашифрованного текста в верхнем ряду букв и замените ее буквой на длинная полоса под ним. Две прорези на большей коробке скроют любые лишние буквы, так что вы видите только одну букву каждой буквы на слайде для любой клавиши. Преимущество горки Сен-Сир в том, что она может быть легче найти буквы, которые вы ищете, так как все они находятся в прямая линия и никогда не будет перевернутой, как иногда бывает на шифре колесо. Виртуальный слайд St. Cyr для печати можно найти по адресу http://invpy.com/stcyrslide . |
Практические упражнения можно найти по адресу http: // invpy.com / hackingpractice1A .
Не игнорируйте практические упражнения!
В этой книге недостаточно места, чтобы выполняйте все практические упражнения, но они по-прежнему важны.
Вы не становитесь хакером, просто читая о взломе и программировании. У тебя есть чтобы на самом деле это сделать!
Шифровальное колесо и слайд St. Cyr — отличные инструменты. шифрование и дешифрование с помощью шифра Цезаря. Но мы можем реализовать Шифр Цезаря простым карандашом и бумагой.
Запишите буквы алфавита от A до Z с цифры от 0 до 25 под каждой буквой. 0 идет под A, 1 идет под буква B и так далее, пока 25 не окажется под Z. (В алфавите 26 букв, но наши числа увеличиваются только до 25, потому что мы начали с 0, а не с 1.) Это закончится выглядит примерно так:
0 | 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 |
С вышеуказанным буквенно-цифровым кодом мы можем использовать числа для представления букв. Это очень мощная концепция, потому что математика использует числа. Теперь у нас есть способ вычислять буквы.
Теперь для шифрования находим число под буквой, которую хотим зашифровать и добавить к нему номер ключа. Эта сумма будет числом под зашифрованное письмо. Например, мы шифруем «Здравствуйте. Как дела?» с ключом 13. Сначала мы находим число под буквой H, то есть 7. Затем мы добавляем ключ к этот номер. 7 + 13 = 20. Число 20 находится под буквой U, что означает буква H шифруется до буквы U.Чтобы зашифровать букву E, мы добавляем 4 под E на 13, чтобы получить 17. Число выше 17 — R, поэтому E зашифровывается в R. на.
Это отлично работает, пока мы не дойдем до буквы О. Число под O равно 14. Но когда мы складываем 14 + 13, мы получаем 27. Но наш список только чисел увеличивается до 25. Если сумма номера буквы и ключа равна 26 или более, мы следует вычесть из него 26. Итак, 27-26 равно 1. Буква над цифрой 1 — B. Таким образом, буква O шифруется до буквы B, когда мы используем ключ 13.Один за во-первых, мы можем затем зашифровать буквы «Привет. Как дела?» в «Урыб. Ubj ner lbh? »
Итак, шаги для шифрования письма:
1. Выберите ключ от 1 до 25. Держите этот ключ в секрете!
2. Найдите текст письма с открытым текстом номер.
3. Добавьте ключ к тексту письма номер.
4. Если это число больше 26, вычесть 26.
5. Найдите букву числа. вы подсчитали.Это буква зашифрованного текста.
6. Повторите шаги 2–5 для каждого письмо в текстовом сообщении.
Посмотрите на следующую таблицу, чтобы увидеть, как это делается с каждое письмо в «Привет. Как дела?» клавишей 13. В каждом столбце показаны шаги для превращения буквы открытого текста слева в букву зашифрованного текста на верно.
Таблица 1-1. Шаги по шифрованию «Hello. Как дела?» с участием бумага и карандаш.
H | 7 | + | 13 | = 20 | = 20 | 20 = U | |
E | 4 | + | 13 | = 17 | = 17 | 17 = рэндов | |
л | 11 | + | 13 | = 24 | = 24 | 24 = Y | |
л | 11 | + | 13 | = 24 | = 24 | 24 = Y | |
O | 14 | + | 13 | = 27 | –26 | = 1 | 1 = В |
H | 7 | + | 13 | = 20 | = 20 | 20 = U | |
O | 14 | + | 13 | = 27 | –26 | = 1 | 1 = В |
Вт | 22 | + | 13 | = 35 | –26 | = 9 | 9 = Дж |
А | 0 | + | 13 | = 13 | = 13 | 13 = N | |
R | 17 | + | 13 | = 30 | –26 | = 4 | 4 = E |
E | 4 | + | 13 | = 17 | = 17 | 17 = рэндов | |
Я | 24 | + | 13 | = 37 | –26 | = 11 | 11 = L |
O | 14 | + | 13 | = 27 | –26 | = 1 | 1 = В |
U | 20 | + | 13 | = 33 | –26 | = 7 | 7 = H |
Чтобы расшифровать, вам нужно будет понять, что такое отрицательный числа есть.Если вы не умеете складывать и вычитать отрицательные числа, здесь есть учебное пособие: http://invpy.com/neg .
Чтобы расшифровать, вычтите ключ, а не добавляйте его. Для буквы зашифрованного текста B это число 1. Вычтите 1-13, чтобы получить -12. Нравиться наше правило «вычесть 26» для шифрования, когда мы расшифровываем, и результат меньше 0, у нас есть правило «добавить 26». -12 + 26 равно 14. Буква зашифрованного текста B расшифровывает обратно до буквы O.
Таблица 1-2. Шаги по расшифровке зашифрованного текста с помощью бумаги и карандаш.
U | 20 | – | 13 | = 7 | = 7 | 7 = H | |
R | 17 | – | 13 | = 4 | = 4 | 4 = E | |
Я | 24 | – | 13 | = 11 | = 11 | 11 = L | |
Я | 24 | – | 13 | = 11 | = 11 | 11 = L | |
В | 1 | – | 13 | = -12 | + 26 | = 14 | 14 = O |
U | 20 | – | 13 | = 7 | = 7 | 7 = H | |
В | 1 | – | 13 | = -12 | + 26 | = 14 | 14 = O |
Дж | 9 | – | 13 | = -4 | + 26 | = 22 | 22 = W |
N | 13 | – | 13 | = 0 | = 0 | 0 = А | |
E | 4 | – | 13 | = -9 | + 26 | = 17 | 17 = рэндов |
R | 17 | – | 13 | = 4 | = 4 | 4 = E | |
л | 11 | – | 13 | = -2 | + 26 | = 24 | 24 = Y |
В | 1 | – | 13 | = -12 | + 26 | = 14 | 14 = O |
H | 7 | – | 13 | = -6 | + 26 | = 20 | 20 = U |
Как видите, нам не нужно собственно колесо шифрования, чтобы Шифр Цезаря.Если вы запомните цифры и буквы, вы даже не сможете нужно написать алфавит с цифрами под ними. Вы могли бы просто сделать какую-нибудь простую математику в голове и напишите секретные сообщения.
Практические упражнения можно найти по адресу http://invpy.com/hackingpractice1B .
Вы можете подумать, что шифрование сообщения дважды с помощью двух разные ключи удвоили бы силу нашего шифрования. Но оказывается, что это не так как в случае с шифром Цезаря (и большинством других шифров).Давай попробуем двойное шифрование сообщения, чтобы понять, почему.
Если мы зашифруем слово «КОТЕНОК» ключом 3, результирующий зашифрованный текст будет «NLWWHQ». Если мы зашифруем слово «NLWWHQ» с помощью ключ 4, результирующий зашифрованный текст будет «RPAALU». Но это точно так же, как если бы мы однажды зашифровали слово «КОТЯТ» ключом 7. Наше «двойное» шифрование аналогично обычному шифрованию, поэтому в нем нет сильнее.
Причина в том, что при шифровании ключом 3 мы добавление 3 к номеру буквы открытого текста.Затем, когда мы шифруем ключом 4, мы прибавляют 4 к номеру буквы открытого текста. Но добавив 3, а затем прибавив 4 то же самое, что и прибавление 7. Двойное шифрование с ключами 3 и 4 — это То же, что и однократное шифрование с ключом 7.
Для большинства шифров, шифрование более Once не придает шифру дополнительной прочности. На самом деле, если вы шифруете некоторый открытый текст двумя ключами, которые в сумме составляют 26, зашифрованный текст, который вы в конечном итоге будет таким же, как и исходный открытый текст!
Шифр Цезаря или подобные ему шифры использовались для шифрования секретная информация на протяжении нескольких веков.Вот шифровальный диск с дизайном изобретен Альбертом Майером и использовался во время Гражданской войны в США в 1863 году.
Рисунок 1-13. Шифровальный диск Союза Гражданской войны в США на Национальный криптологический музей.
Если у вас было очень длинное сообщение, которое вы хотели зашифровать (скажем, целую книгу) вам потребуются дни или недели, чтобы зашифровать все это рука. Вот как может помочь программирование. Компьютер мог бы сделать эту работу за большой объем текста менее чем за секунду! Но нам нужно научиться проинструктировать (то есть запрограммировать) компьютер на выполнение тех же действий, что и мы.
Мы должны уметь говорить на языке, на котором может говорить компьютер. понимать. К счастью, выучить язык программирования не так сложно. как изучение иностранного языка, например, японского или испанского. Вам даже не нужно помимо сложения, вычитания и умножения хорошо разбираюсь в математике. Тебе просто нужно чтобы загрузить бесплатное программное обеспечение под названием Python, о котором мы расскажем в следующих глава.
Dragon Crypto: День 1
День 1: Симметричные шифры
Что это значит, когда вы видите ключ в своем веб-браузере?Замещающий шифр
Моноалфавитный шифр замены заменяет каждую букву в текстовое сообщение с замещающей буквой в зашифрованном тексте.Ключ — это соответствие между буквами открытого текста и замещающей буквой. Для Например, ключ может быть:Алфавит: | 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 |
Шифр: | u r d t g o n i p v f h w x m q l b s k j c z e а г |
Пример: Чтобы зашифровать «ДРАКОН», мы заменяем каждую букву соответствующей зашифрованное письмо: «tbunmx».
Вопросы
1. Расшифруйте сообщение kmq sgdbgk, используя моноалфавитный шифр подстановки с ключом, указанным выше.
2. Сколько разных возможных ключей существует для одноалфавитного
подстановочные шифры? (Подсказка: вы можете начать с сопоставления A с
любое письмо.)
3. Вот сообщение, зашифрованное моноалфавитной заменой.
шифр с неизвестным ключом. Попробуйте его расшифровать. (Подсказка: что больше всего
обычное письмо на английском языке? Угадайте, что самый распространенный
буква в зашифрованном тексте соответствует этой букве.)
NQWOO DGU BOOE G KOSWON, RY NIL LY NQOD GWO POGP. (AOVCGDRV YWGVBHRV)
Лучшие шифры
Если вам удалось взломать шифр в вопросе 3, вы знаете, что моноалфавитный шифр подстановки не очень безопасен. Вы можете быть в состоянии использовать его, чтобы сохранить секрет от младшего брата или сестры, но не хранить в секрете от вражеской армии. Для этого нам нужно использовать математику, чтобы сделать более безопасные шифры.Во-первых, нам понадобится способ конвертировать сообщения, состоящие из букв, в числа.Простой способ — просто пронумеровать буквы, начинающиеся с А как 0:
Письмо: | A B C D E F G H I J K L M N |
Номер: | 0 1 2 3 4 5 6 7 8 9 10 11 12 13 |
Letter: | O P Q R S T U V W X Y Z |
Номер: | 14 15 16 17 18 19 20 21 22 23 24 25 |
Тогда мы могли бы написать «ПРИВЕТ» как «7 4 11 11 14».
Мы будем использовать модульную арифметику , чтобы улучшить шифр. Модульный арифметика похожа на обычную арифметику, за исключением того, что линии, вы делаете это по кругу. Сложение идет по часовой стрелке, вычитание — против часовой стрелки:
Мы пишем мод 26, чтобы обозначить, что мы выполняем арифметические действия по кругу с 26 числами, от 0 до 25. Вот несколько примеров:
20 + 4 мод 26 = 24 20 + 5 мод 26 = 25 20 + 6 мод 26 = 0 21 + 6 мод 26 = 1 2-3 мод 26 = 25Вопросы
4. Что такое 2 + 2 mod 5?
5. Что такое 2 + 3 mod 5?
6. Что такое 22 + 7 mod 26?
Шифр Цезаря (использовался римским императором Юлием
Цезарь) шифрует сообщение, преобразовывая буквы в числа с помощью
нумерация выше, затем добавление числа к каждому числовому модулю 26 и
преобразование результата обратно в букву. Вот пример:
Сообщение: J U L I U S Номера: 9 20 11 8 20 18 Ключ = 7 Добавьте 7 к каждому числу по модулю 26: 9 + 7 мод 26 = 16 20 + 7 мод 26 = 1 11 + 7 мод 26 = 18 8 + 7 мод 26 = 15 20 + 7 мод 26 = 1 18 + 7 мод 26 = 25 Преобразуйте числа обратно в буквы: Номера: 16 1 18 15 1 25 Шифрованный текст: Q B S P B Z7. Расшифровать этот зашифрованный текст, который был зашифрован с помощью Цезаря. шифр с ключом = 12: NQIMDQUPQEARYMDOT
Vigenere Cipher
Шифр Виженера похож на Шифр Цезаря, но вместо использования один и тот же ключ для каждой буквы, он использует слово в качестве ключа и циклически переключает разные буквы в ключевом слове. Вот пример:Ключ = P A S S W O R D = 15 0 18 18 22 14 17 3Чтобы зашифровать сообщение, используйте первую букву ключа, чтобы зашифровать первая буква в сообщении и вторая буква в ключе для шифрования вторая буква в сообщении и т. д.После того, как вы использовали все ключевые буквы, начните заново с первой буквы:
Сообщение: A T T A C K A T D A W N Номера: 0 19 19 0 2 10 0 19 3 0 22 13 Обозначения: P A S S W O R D P A S S 15 0 18 18 22 14 17 3 15 0 18 18 Шифрование = Сообщение + Ключ мод 26 15 19 11 18 24 24 17 22 18 0 14 5 CipherText: P T L S Y Y R W S A O FОбратите внимание, что разные буквы T в сообщении шифруются разными буквы в зашифрованном тексте в зависимости от того, где они находятся в сообщении! Этот намного сложнее разбить, чем моноалфавитный подстановочный шифр.