Квадрат Полибия (Тюремная азбука)

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

Очень часто данный вид шифрования применяется при проведении городских квестов.

Латинский алфавит

В современном латинском алфавите 26 букв, следовательно таблица должна состоять из 5 строк и 5 столбцов, так как 25=5*5 наиболее близкое к 26 число. При этом буквы I, J не различаются (J отождествляется с буквой I), так как не хватает 1 ячейки:

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

Русский алфавит

Идею формирования таблицы шифрования проиллюстрируем для русского языка. Число букв в русском алфавите отличается от числа букв в греческом алфавите, поэтому размер таблицы выбран другой (квадрат 6*6=36, поскольку 36 наиболее близкое число к 33):

1 2 3 4 5 6
1 А Б В Г Д Е
2 Ё Ж З И Й К
3 Л М Н О П Р
4 С Т У Ф Х Ц
5 Ч Ш Щ Ъ Ы Ь
6 Э Ю Я

Возможен также другой вариант составления, предусматривающий объединение букв Е и Ё, И и Й, Ъ и Ь. В данном случае получаем следующий результат:

1 2 3 4 5 6
1 А Б В Г Д Е/Ё
2 Ж З И/Й К Л М
3 Н О П Р С Т
4 У Ф Х Ц Ч Ш
5 Щ Ы Ь/Ъ Э Ю Я

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

Или есть такой вариант: Шифр «Квадрат Полибия».

«Квадрат Полибия» представляет собой квадрат 5×5, столбцы и строки которого нумеруются цифрами от 1 до 5. В каждую клетку этого квадрата записывается одна буква (в нашем алфавите 31 буква, Ъ и Ё исключены, кроме того в одну клетку поместите буквы е-э, и-й, ж-з, р-с, ф-х, ш-щ). Буквы расположены в алфавитном порядке. В результате каждой букве соответствует пара чисел, и шифрованное сообщение превращается в последовательность пар чисел. Расшифровывается путём нахождения буквы, стоящей на пересечении строки и столбца.

1    2   3    4   5
1  А    Б   В    Г   Д
2 Е/Э   Ж   З   И/Й  К
3  Л    М   Н    О   П
4 Р/С   Т   У   Ф/Х  Ц
5  Ч   Ш/Щ  Ы    Ю   Я

Принцип шифрования

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

Метод 1

Зашифруем слово «SOMETEXT»:

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

Таблица координат
Буква текста: S O M E T E X T
Буква шифротекста : X T R K Y K C Y

Таким образом после шифрования получаем:

Результат
До шифрования: SOMETEXT
После шифрования: XTRKYKCY

Метод 2

Сообщение преобразуется в координаты по квадрату Полибия, координаты записываются вертикально:

Таблица координат
Буква: S O M E T E X T
Координата горизонтальная: 3 4 2 5 4 5 3 4
Координата вертикальная: 4 3 3 1 4 1 5 4

Затем координаты считывают по строкам:

34  25  45  34  43  31  41  54                                                                                                                   (*)

Далее координаты преобразуются в буквы по этому же квадрату:

Таблица координат
Координата горизонтальная: 3 2 4 3 4 3 4 5
Координата вертикальная: 4 5 5 4 3 1 1 4
Буква: S W Y S O C D U

Таким образом после шифрования получаем:

Результат
До шифрования: SOMETEXT
После шифрования: SWYSOCDU

Метод 3

Усложнённый вариант, который заключается в следующем: полученный первичный шифротекст (*) шифруется вторично. При этом он выписывается без разбиения на пары:

3425453443314154   

Полученная последовательность цифр сдвигается циклически влево на один шаг(нечетное количество шагов):

4254534433141543

Эта последовательность вновь разбивается в группы по два:

42 54 53 44 33 14 15 43

и по таблице заменяется на окончательный шифротекст:

Таблица координат
Координата горизонтальная: 4 5 5 4 3 1 1 4
Координата вертикальная: 2 4 3 4 3 4 5 3
Буква: I U P T N Q V O

Таким образом после шифрования получаем:

Результат
До шифрования: SOMETEXT
После шифрования: IUPTNQVO

Добавление ключа

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

  1. возможность заполнить квадрат Полибия буквами произвольно, а не только строго по алфавиту;
  2. возможность периодически заменять квадраты.

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

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

{\displaystyle N=25*24*23*…*2*1=25!}N = 25*24*23*...*2*1 = 25!

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

Пример

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

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

Преобразуем сообщение в координаты по квадрату Полибия:

Таблица координат
Буква: S O M E T E X T
Координата горизонтальная: 4 1 4 3 5 3 3 5
Координата вертикальная: 4 4 3 2 1 2 5 1

Считаем координаты по строкам:

41 43 53 35 44 32 12 51

Преобразуем координаты в буквы по этому же квадрату:

Таблица координат
Координата горизонтальная: 4 4 5 3 4 3 1 5
Координата вертикальная: 1 3 3 5 4 2 2 1
Буква: F M N X S E B T

Таким образом после шифрования получаем:

Результат
До шифрования: SOMETEXT
После шифрования: FMNXSEBT

поиск по сборнику решалок