Скитала (Vtnmglg)
Скита́ла или сцита́ла (от греч. σκυτάλη «жезл») — инструмент, используемый для перестановочного шифрования, в криптографии известный также как шифр Древней Спарты. Представляет собой цилиндр и узкую полоску пергамента, на которой писалось сообщение, обматывавшуюся вокруг него по спирали. Античные греки и спартанцы, предположительно, использовали этот шифр для обмена сообщениями во время военных кампаний.
Скитала является официальным символом Американской ассоциации криптограмм[1].
Шифрование
[править | править код]Для шифрования сообщения использовались пергаментная лента и палочка цилиндрической формы с фиксированными длиной и диаметром[К 1]. Пергаментная лента наматывалась на палочку так, чтобы не было ни просветов, ни нахлёстов. Написание сообщения производилось по намотанной пергаментной ленте по длинной стороне цилиндра. После того, как достигался конец намотанной ленты, палочка поворачивалась на часть оборота и написание сообщения продолжалось[2][3]. После разматывания ленты на ней оказывалось зашифрованное сообщение. Расшифрование выполнялась с использованием палочки таких же типоразмеров.
Сам процесс шифрования заключался в перестановке символов исходного текста в соответствии с длиной окружности палочки[2][3][К 2].
Например, используется палочка, по длине окружности которой помещается 4 символа (число строк в таблице), а длина самой палочки позволяет записать 5 символов (число столбцов в таблице), исходный текст: «это шифр древней спарты». Схематически это можно изобразить так[К 3]:
_________________________________________ | | | | | | | | | Э | Т | О | Ш | И | |__| Ф | Р | Д | Р | Е |__ | В | Н | Е | Й | С | | | П | А | Р | Т | Ы | | | | | | | | | _________________________________________
После разматывания ленты, шифротекст будет следующим «ЭФВПТРНАОДЕРШРЙТИЕСЫ»[К 4][3][4]. Как видно из примера, получается таблица, у которой есть два параметра: — количество столбцов, — количество строк. Поскольку при регулярном обмене данными сообщения часто имеют разную длину, то оба этих параметра за неизменяющийся ключ взять неудобно. Поэтому обычно в качестве известного каждой стороне ключа выбирается один из них (часто это [К 5]), а второй вычисляется на основе известного и длины сообщения[3][4]: , где — целая часть числа , а — длина сообщения.
Алгоритм шифрования
[править | править код]Более подробно, алгоритм шифрования в данных обозначениях выглядит следующим образом:
1) первые символов выписываются в первую строку слева направо (в примере выше: «ЭТОШИ»); 2) следующие символов выписываем во вторую строчку пока её не заполним и т.д.; 3) если все символы выписаны, а остались незаполненные ячейки, заполняем их пробелами или любыми другими символами по договоренности (например, для сообщения «НАС АТАКУЮТ» мы получаем таблицу (см. ниже), где , и звездочка стоит на месте недостающего символа); 4) если выписаны не все символы, а таблица заполнена, значит, при выборе размеров допущена ошибка; 5) теперь разворачиваем текст по столбцам («НАУАТЮСАТ_К»* — в примере ниже)[3][4]. _________________________________________ | | | | | | |__| Н | А | С |__ |__ | А | Т | А | К | | | У | Ю | Т | * | | _________________________________________
Расшифрование и дешифрование
[править | править код]Для расшифрования сообщения адресат использовал палочку, аналогичную по размерам палочки отправителя, на которую он наматывал пергамент.
Преимущество данного шифра в простоте и отсутствии ошибок. Однако, он может быть легко дешифрован. Способ дешифрования алгоритма, например, был предложен Эдгаром Алланом По в работе «A Few Words on Secret Writing»[5]. Суть метода в том, что не зная точного диаметра палочки, можно использовать конус, имеющий переменный диаметр и перемещать пергамент с сообщением по его длине до тех пор, пока текст не начнёт читаться — таким образом дешифруется ключ — диаметр скиталы.
Алгоритм расшифрования
[править | править код]Пусть имеется зашифрованный текст:
- «РНОАЫЙКЕСЕ_КТВА»
Применялся шифр скитала с количеством строк: 3, столбцов: 5 (то есть , ). При шифровании считывание велось по столбцам, а в каждом столбце было по 3 символа[3][6].
1. Разобьём наш зашифрованный текст по букв, учитывая пробелы («РНО АЫЙ КЕС Е_К ТВА»).
2. Сначала восстановим первый столбец, для этого первую группу букв запишем в первый столбец сверху вниз.
_________________________________________
| | Р | * | * | * | * |
|__| Н | * | * | * | * |__
| О | * | * | * | * | |
_________________________________________
3.По следующим m символам восстановим второй столбец. _________________________________________ | | Р | А | * | * | * | |__| Н | Ы | * | * | * |__ | О | Й | * | * | * | | _________________________________________
4. После восстановления всех столбцов, можно будет прочитать текст — «РАКЕТНЫЕ ВОЙСКА». _________________________________________ | | Р | А | К | Е | Т | |__| Н | Ы | Е | _ | В |__ | О | Й | С | К | А | | _________________________________________
История
[править | править код]Скитала как инструмент для шифрования сообщений был изобретён спартанцами в III веке до н. э.[3]. Однако более ранние исторические документы свидетельствуют, что само это понятие долгое время имело другое значение и даже, возможно, другое происхождение (этимологию). На русском языке могло иметь смысл: «инструмент для считывания».
Согласно Томасу Келли, самое первое известное упоминание этого слова в письменном источнике датируется 650 гг до н. э. и принадлежит греческому поэту Архилоху[7]. Сохранилось всего несколько строк, в которых слово «скитала» употребляется либо в значении письменного сообщения, обмотанного вокруг палки для удобства транспортировки, либо вообще не имеет отношения к рукописному посланию[8]. Следующее упоминание встречается 175 лет спустя у Пиндара[9]. В нём скитала используется для передачи поэмы одним человеком другому, для которого она была написана. Текст был, вероятнее всего, незашифрованным, поскольку для этого нет видимых причин:
«…скитала — надежный способ передать мысли светловолосых муз…»
Дальнейшие упоминания термина датированы концом V—IV веков до н. э.[3][10]. Он используется в пьесах, написанных Аристофаном («Птицы» — 414 г. до н. э. и «Лисистрата» — 411 г. до н.э) и Никофоном («Рождение Афродиты»). В это время Афины и Спарта враждовали между собой (Пелопоннесская война (431—404 гг. до н. э.), однако достоверных свидетельств использования скиталы во время войны для целей обмена шифрованными сообщениями нет. В пьесе «Птицы» автор упоминает, что жители Афин стали подражать спартанцам в использовании скитал, от Никифона же остался лишь небольшой фрагмент его произведения, по которому трудно определить точное значение термина, но оно точно не имеет никакого отношения к криптографии[11].
Современники Аристофана и Никофона греческие историки Ксенофонт и Фукидид описали период времени в 70 лет с Пелопоннесской войны до 362 года до н. э. — период, в течение которого Спарта принимала участие едва ли не во всех военных конфликтах от Сицилии до Малой Азии. В этот промежуток времени как никогда раньше требовалось средство связи между командующими войсками, находящимися за пределами государства, и их родиной. Оба историка приводят многочисленные примеры использования скиталы в качестве средства связи, но нет ни одного упоминания об использовании этого устройства как средства защиты информации. В «Истории Пелопоннесской войны» Фукидида можно найти 10 отсылок к коммуникациям такого рода. В четырёх случаях приказы передавались посредством писем, а ещё в пяти — в устной форме. В десятом примере говорится, что скитала была отправлена из Спарты члену совета Павзанию, который находился за границей с неофициальным визитом. Известно также, что Павзаний ответил на это послание. Но, тем не менее, даже в этом случае, оснований рассматривать скиталу как средство криптозащиты, данным полвека спустя, нет. Для самого Фукидида «скитала» означала просто открытый текст без какого-либо кодирования[10].
В «Истории Греции» Ксенофонта упоминается восемнадцать случаев коммуникаций между командирами, находящимися вне города, и правителями Спарты. В 11-ти из них невозможно определить, как были переданы сообщения, ещё в 6-ти явно указано, что приказы доставлялись устно. В 18-м примере говорится, что сообщение было написано и содержало следующие строки[12]:
«Корыта погибли. Миндар преставился. Экипаж голодает. Как быть, не знаем»
Известно, что это сообщение не достигло Спарты, его перехватили афиняне и смогли прочитать. Однако прямого указания на то, как оно было передано — открытым текстом или зашифрованным, также нет.
Впервые Ксенофонт использует термин «скитала» в отношении событий 397 года до н. э., когда спартанским чиновникам стало известно, что некто Кинадон решил устроить переворот и захватить власть. Дабы схватить его за городом не привлекая внимания, они послали его в Авлон под предлогом привезти оттуда людей, чьи имена были написаны на скитале, переданной ему[13]. Ещё в двух случаях Ксенофонт использует этот термин в значении «сообщение»[14].
Термин «скитала» косвенно также упоминается в трудах византийского учёного Фотия (примерно 810—893 гг.), в которых говорится, что Аристотель упоминал скиталу в «Политии Итаки». Она использовалась ростовщиками в древней Спарте. Ростовщик держал одну скиталу с условиями договора у себя, а вторая оставалась у другого участника сделки. Ещё скитала как некое устройство встречается в работах самого известного ученика Аристотеля — Теофраста. В его трактовке она использовалась в судебных процессах, чтобы избежать несправедливого отношения к подсудимым. Однако это упоминание настолько мимолётно, что степень значимости скиталы оценить сложно[15].
Первым античным писателем, который полагал, что скитала использовалась в древней Спарте в качестве средства защиты информации стал глава Александрийской библиотеки Аполлоний Родосский (середина III-го века до н. э.). Достоверно не известно, на основе чего он сделал такой вывод, но именно его определение получило всеобщее признание[16]. Несколько позже был написан ещё один трактат — «О пресловутой палке для посланий», грамматика Аристофана Византийского (примерно 257—180 гг. до н. э.), который также был директором Александрийской библиотеки, и на тот момент являлся одним из самых учёных людей своего времени[17], однако его определение не получило широкого распространения, и дальнейшие упоминания скиталы уже подразумевали её как устройство для зашифрования информации.
Описание работы скиталы у Плутарха (50—120 н. э.):
А скитала вот что такое. Отправляя к месту службы начальника флота или сухопутного войска, эфоры берут две круглые палки совершенно одинаковой длины и толщины. Одну они оставляют себе, другую передают отъезжающему. Эти палки и называют скиталами. Когда эфорам нужно сообщить какую-нибудь важную тайну, они вырезают длинную и узкую, вроде ремня, полосу папируса, наматывают её на свою скиталу, не оставляя на ней ни одного промежутка, так чтобы вся поверхность палки была охвачена этой полосой. Затем, оставляя папирус на скитале в том виде, как он есть, они пишут на нём то, что нужно, а написав, снимают полосу и без палки отправляют её военачальнику. Так как буквы на ней стоят без всякой связи, но разбросаны в беспорядке, прочитать написанное он может, только взяв свою скиталу и намотав на неё вырезанную полосу, располагая её извивы в прежнем порядке, чтобы, водя глазами вокруг палки и переходя от предыдущего к последующему, иметь перед собой связное сообщение. Полоса папируса называется, как и деревянная палка, «скиталой», подобно тому как измеряемый предмет называется по мере.
Комментарии
[править | править код]- ↑ Диаметр палочки обычно принимался в качестве ключа шифрования и был известен обеим сторонам
- ↑ На схеме после данного абзаца представлена таблица. Число букв в строке таблицы определяется длиной палочки
- ↑ Написание сообщения производится слева направо. После достижения правого конца палочки, она поворачивается вокруг своей оси, и написание продолжается в том же направлении — от левого конца палочки к правому
- ↑ Чтение производится по столбцам сверху вниз, начиная с самого левого столбца полученной таблицы
- ↑ Определяемый диаметром палочки
Примечания
[править | править код]- ↑ History . American Cryptogram Association. Дата обращения: 3 ноября 2016. Архивировано 4 ноября 2016 года.
- ↑ 1 2 Семененко, 2010, с. 180
- ↑ 1 2 3 4 5 6 7 8 Дориченко, 1994, с. 15-19
- ↑ 1 2 3 Семененко, 2010, с. 191—200
- ↑ Edgar Allan Po. A Few Words on Secret Writing. — С. first two paragrafe.
- ↑ Семененко, 2010, с. 199
- ↑ Дильс, 1934, с. 69
- ↑ The translation is that of John M. Edmonds. Greek Elegy and Iambus 2 / William Heinemann Ltd and Cambridge, Mass.. — London: Harvard University Press, 1961. — С. 145.
- ↑ The translation is that of John E. Sandays. Pindar / William Heinemann Ltd and Cambridge, Mass. — London: Harvard University Press, 1961. — С. 64-65.
- ↑ 1 2 Фукидид. История I. 131. 1.
- ↑ Kelly, 1998, pp. 244-260.
- ↑ Ксенофонт, Греческая история I. 1. 15-27.
- ↑ Ксенофонт, Греческая история III. 3. 7.
- ↑ Ксенофонт, Греческая история V. 2. 37-40.
- ↑ The translationb is that of J.J.Keaney. Theophrastus on Greek Judical Procedure / American Philological Association. — 1974. — С. pp. 179-194.
- ↑ Школьная энциклопедия «Руссика». История Древнего мира, с.502 — 520
- ↑ Kelly, 1998, p. 254.
Литература
[править | править код]- Александр Семененко. Информационная безопасность: Учебное пособие. 4-е изд., стереотип.. — М.: МГИУ, 2010. — 277 p. — ISBN 978-5-2760-1876-8.
- Дориченко С. А., Ященко В. В. 25 этюдов о шифрах: Популярно о современной криптографии. — Теис, 1994. — ISBN 5-7218-0014-3.
- Edgar Allan Po. A Few Words on Secret Writing.. — М.: МГИУ, 1841. — ISBN 978-1500565459.
Ссылки
[править | править код]- Secret Language in Graeco-Roman antiquity. Thesis by Brigitte Collard that includes quotations of many ancient references to the scytale. (In French)
- Ксенофонт. Греческая история (Перевод с древнегреческого и комментарии С. Я. Лурье).. — СПб.: «Алетейя», 2000.
- Фукудид. История (Перевод и примечания Г. А. Стратановского)..
- Kelly T. The Myth of the Skytale (англ.) // Cryptologia — United States of America: Taylor & Francis, 1998. — Vol. 22, Iss. 3. — P. 244—260. — ISSN 0161-1194; 1558-1586 — doi:10.1080/0161-119891886902
Эта статья входит в число добротных статей русскоязычного раздела Википедии. |