Шифр
Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( Март 2009 г. ) |
В криптографии шифр алгоритм (или cypher ) — это выполнения шифрования или дешифрования — серия четко определенных шагов, которым можно следовать как процедура. Альтернативный, менее распространенный термин — шифрование . Зашифровать или закодировать — значит преобразовать информацию в шифр или код. В просторечии «шифр» является синонимом « кода », поскольку оба они представляют собой набор шагов, которые шифруют сообщение; , эти понятия различны однако в криптографии, особенно в классической криптографии .
Коды обычно заменяют на выходе строки символов разной длины, тогда как шифры обычно заменяют то же количество символов, что и на входе. Код сопоставляет одно значение с другим. Слова и фразы могут быть закодированы буквами или цифрами. Коды обычно имеют прямое значение от ввода до клавиши. Коды в первую очередь предназначены для экономии времени. Шифры являются алгоритмическими. Данный ввод должен следовать процессу шифрования, который необходимо решить. Шифры обычно используются для шифрования письменной информации.
Коды работают путем замены в соответствии с большой кодовой книгой , которая связывает случайную строку символов или цифр со словом или фразой. Например, «UQJHSE» может быть кодом «Перейти к следующим координатам». При использовании шифра исходная информация называется открытым текстом , а зашифрованная форма — зашифрованным текстом . Зашифрованное текстовое сообщение содержит всю информацию открытого текстового сообщения, но оно не имеет формата, читаемого человеком или компьютером без надлежащего механизма для его расшифровки.
Работа шифра обычно зависит от части вспомогательной информации, называемой ключом (или, на традиционном языке АНБ , криптопеременной ). Процедура шифрования варьируется в зависимости от ключа, что меняет детали работы алгоритма. Прежде чем использовать шифр для шифрования сообщения, необходимо выбрать ключ. Без знания ключа будет чрезвычайно сложно, если не невозможно, расшифровать полученный зашифрованный текст в читаемый открытый текст.
Большинство современных шифров можно разделить на несколько категорий:
- По тому, работают ли они с блоками символов обычно фиксированного размера ( блочные шифры ) или с непрерывным потоком символов ( потоковые шифры ).
- По тому, используется ли один и тот же ключ для шифрования и дешифрования ( алгоритмы с симметричным ключом ) или для каждого используется другой ключ ( алгоритмы с асимметричным ключом ). Если алгоритм симметричен, ключ должен быть известен получателю и отправителю и никому другому. Если алгоритм является асимметричным, ключ шифрования отличается от ключа дешифрования, но тесно связан с ним. Если один ключ невозможно вывести из другого, алгоритм асимметричного ключа имеет свойство открытого/закрытого ключа, и один из ключей может быть обнародован без потери конфиденциальности.
Этимология
[ редактировать ]Слово «шифр», происходящее от арабского слова «ноль» صفر (сифр), распространилось в Европу как часть арабской системы счисления в средние века. В римской системе счисления отсутствовало понятие нуля , и это ограничивало прогресс в математике. В ходе этого перехода это слово было принято в средневековой латыни как cifra, а затем в среднефранцузском языке как cifre. В конечном итоге это привело к появлению английского слова cipher (шифр правописания меньшинства). Одна из теорий того, как этот термин стал относиться к кодированию, заключается в том, что концепция нуля сбивала с толку европейцев, и поэтому этот термин стал относиться к сообщению или сообщению, которое было нелегко понять. [1]
Термин «шифр» позже также использовался для обозначения любой арабской цифры или для вычислений с ее использованием, поэтому кодирование текста в форме арабских цифр буквально преобразует текст в «шифры».
В сравнении с кодами
[ редактировать ]В повседневном контексте «код» и «шифр» обычно могут использоваться как синонимы; однако техническое использование этих слов относится к разным понятиям. Коды содержат смысл; слова и фразы присваиваются цифрам или символам, создавая более короткое сообщение.
Примером этого является код коммерческого телеграфа , который использовался для сокращения длинных телеграфных сообщений, возникших в результате заключения коммерческих контрактов с использованием обмена телеграммами .
Другим примером являются шифры целых слов, которые позволяют пользователю заменять целое слово символом или символом, во многом аналогично тому, как в письменном японском языке используются символы кандзи (что означает китайские иероглифы на японском языке) в дополнение к родным японским символам, представляющим слоги. Примером использования английского языка с кандзи может быть замена «Быстрая коричневая лиса прыгает через ленивую собаку» на «Быстрая коричневая 狐 прыгает 上 ленивая 犬». Стенографистки иногда используют специальные символы для сокращения целых слов.
Шифры же работают на более низком уровне: уровне отдельных букв, небольших групп букв или, в современных схемах, отдельных битов и блоков битов. Некоторые системы использовали как коды, так и шифры в одной системе, используя супершифрование для повышения безопасности. В некоторых случаях термины коды и шифры используются как синонимы замены и транспозиции соответственно.
Исторически криптография была разделена на дихотомию кодов и шифров, при этом кодирование имело свою терминологию, аналогичную терминологии шифров: « кодирование , кодовый текст , декодирование » и так далее.
Однако коды имеют ряд недостатков, включая восприимчивость к криптоанализу и сложность управления громоздкой кодовой книгой . Из-за этого коды вышли из употребления в современной криптографии, а шифры стали доминирующим методом.
Типы
[ редактировать ]Существует множество различных типов шифрования. Алгоритмы, использовавшиеся ранее в истории криптографии, существенно отличаются от современных методов, и современные шифры можно классифицировать в зависимости от того, как они работают и используют ли они один или два ключа.
Исторический
[ редактировать ]— Шифр Цезаря одна из самых ранних известных криптографических систем. Юлий Цезарь использовал шифр, который сдвигал буквы алфавита на три места и переносил оставшиеся буквы вперед, чтобы написать Марку Туллию Цицерону примерно в 50 г. до н.э. [ нужна ссылка ]
Исторические шифры, используемые в прошлом, иногда называют классическими шифрами . Они включают в себя простые шифры замены (например, ROT13 ) и шифры транспонирования (например, шифр рельсового ограждения ). Например, «GOOD DOG» можно зашифровать как «PLLX XLP», где «L» заменяет «O», «P» вместо «G» и «X» вместо «D» в сообщении. Транспонирование букв «GOOD DOG» может привести к образованию «DGOGDOO». Эти простые шифры и примеры легко взломать даже без пар «открытый текст-зашифрованный текст». [2] [3]
В 1640-х годах командующий парламентариями Эдвард Монтегю, 2-й граф Манчестерский , разработал шифры для отправки закодированных сообщений своим союзникам во время гражданской войны в Англии . [4]
Простые шифры были заменены полиалфавитными шифрами замены (такими как шифры Виженера ), которые меняли алфавит замены для каждой буквы. Например, «GOOD DOG» можно зашифровать как «PLSX TWF», где «L», «S» и «W» заменяют «O». Даже при небольшом количестве известного или предполагаемого открытого текста простые шифры многоалфавитной замены и шифры перестановки букв, предназначенные для шифрования с помощью ручки и бумаги, легко взломать. [5] Можно создать безопасный шифр для ручки и бумаги на основе одноразового блокнота , но у него есть и другие недостатки.
В начале двадцатого века были изобретены электромеханические машины для шифрования и дешифрования с использованием транспозиции, полиалфавитной замены и своего рода «аддитивной» замены. В роторных машинах несколько роторных дисков обеспечивали многоалфавитную замену, а штекерные платы обеспечивали другую замену. Ключи легко менялись путем замены роторных дисков и проводов коммутационной панели. другие машины, такие как британская бомба Хотя эти методы шифрования были более сложными, чем предыдущие схемы, и требовали машин для шифрования и дешифрования, для взлома этих методов шифрования были изобретены .
Современный
[ редактировать ]Современные методы шифрования можно разделить по двум критериям: по типу используемого ключа и по типу входных данных.
По типу ключа используемые шифры делятся на:
- алгоритмы симметричного ключа ( криптография с закрытым ключом ), где один и тот же ключ используется для шифрования и дешифрования, и
- Алгоритмы с асимметричным ключом ( криптография с открытым ключом ), где для шифрования и дешифрования используются два разных ключа.
В алгоритме симметричного ключа (например, DES и AES) отправитель и получатель должны иметь общий ключ, установленный заранее и хранящийся в секрете от всех других сторон; отправитель использует этот ключ для шифрования, а получатель использует тот же ключ для расшифровки. Разработка AES (усовершенствованной системы шифрования) была выгодна, поскольку она была направлена на преодоление недостатков конструкции DES (стандарта шифрования данных). Заявление разработчика AES о том, что обычные средства современных шифровальных криптоаналитических атак неэффективны против AES из-за его структуры.
По типу входных данных шифры можно разделить на два типа:
- блочные шифры , которые шифруют блок данных фиксированного размера, и
- потоковые шифры , которые шифруют непрерывные потоки данных.
Размер ключа и уязвимость
[ редактировать ]При чисто математической атаке (т. е. при отсутствии какой-либо другой информации, которая помогла бы взломать шифр) прежде всего учитываются два фактора:
- Доступная вычислительная мощность, т. е. вычислительная мощность, которую можно использовать для решения проблемы. Важно отметить, что средняя производительность/мощность одного компьютера — не единственный фактор, который следует учитывать. Злоумышленник может использовать несколько компьютеров одновременно, например, чтобы существенно увеличить скорость полного поиска ключа (т. е. атаки методом «грубой силы»).
- Размер ключа , т. е. размер ключа, используемого для шифрования сообщения. По мере увеличения размера ключа увеличивается и сложность исчерпывающего поиска до такой степени, что становится непрактично взломать шифрование напрямую.
Поскольку желаемым эффектом является вычислительная сложность, теоретически можно было бы выбрать алгоритм и желаемый уровень сложности и соответствующим образом определить длину ключа.
Пример этого процесса можно найти в разделе «Длина ключа» , который использует несколько отчетов, чтобы предположить, что симметричный шифр с 128 битами , асимметричный шифр с 3072-битными ключами и шифр с эллиптической кривой с 256 битами в настоящее время имеют одинаковые трудности.
Клод Шеннон доказал, используя соображения теории информации, что любой теоретически невзламываемый шифр должен иметь ключи, длина которых не меньше длины открытого текста, и которые используются только один раз: одноразовый блокнот . [6]
См. также
[ редактировать ]- Шифр с автоключом
- Кодирование покрытия
- Программное обеспечение для шифрования
- Список зашифрованных текстов
- стеганография
- Телеграфный код
Примечания
[ редактировать ]- ^ Али-Карамали, Сумбул (2008). Мусульманин по соседству: Коран, средства массовой информации и эта штука с покрывалом . Белое Облако Пресс. стр. 240–241. ISBN 978-0974524566 .
- ^ Зальцман, Бенджамин А. (2018). «Vt hkskdkxt: раннесредневековая криптография, текстовые ошибки и деятельность переписчиков (Speculum, готовится к печати)» . Зеркало . 93 (4): 975. дои : 10.1086/698861 . JSTOR 26584834 . S2CID 165362817 .
- ^ Янечко, Пол Б. (2004). Совершенно секретно .
- ^ «Шифр времен Гражданской войны в Англии, принадлежащий союзнику Кромвеля, демонстрируется» . Прошлое . 12 июля 2023 г. Проверено 4 августа 2023 г.
- ^ Стинсон, Дуглас Р. (1995), Криптогтафия/Теория и практика , CRC Press, стр. 45, ISBN 0-8493-8521-0
- ^ «Теория связи секретных систем» (PDF) . Архивировано из оригинала (PDF) 5 июня 2007 года . Проверено 3 февраля 2019 г.
Ссылки
[ редактировать ]- Аль-Кади, Ибрагим А. (1992). «Истоки криптологии: арабский вклад». Криптология . 16 (2): 97–126. дои : 10.1080/0161-119291866801 . S2CID 62601575 .
- Олдрич, Ричард Джеймс (2010). GCHQ: История самого секретного разведывательного управления Великобритании без цензуры . Лондон: HarperCollins UK . ISBN 978-0-00-727847-3 . OCLC 503638180 .
- Колдуэлл, Уильям Кейси (2022). Шекспира « Генрих V и шифры истории». SEL: Исследования английской литературы 1500–1900 гг . 61 (2): 241–268. дои : 10.1353/sel.2022.0003 . ISSN 1522-9270 .
- Гейнс, Хелен Фуше (1956) [1939]. Криптоанализ (Исправленная ред.). Нью-Йорк: Dover Publications . ISBN 0-486-20097-3 . ОЛ 7634764М .
- Хо, Ян Ли; Самсудин, Азман; Белатон, Бахари (2005). Эвристический криптоанализ классических и современных шифров . 2005 г. 13-я Международная конференция IEEE по сетям, проводимая совместно с 7-й Малайзийской международной конференцией IEEE по коммуникациям 2005 г. Том. 2. Куала-Лумпур: IEEE . стр. 710–715. дои : 10.1109/ICON.2005.1635595 . Проверено 30 июня 2024 г.
- Кан, Дэвид (1996) [1967]. Взломщики кодов - История тайного письма (пересмотренная редакция). Нью-Йорк. ISBN 0-684-83130-9 . ОСЛК 35159231 .
{{cite book}}
: CS1 maint: отсутствует местоположение издателя ( ссылка ) - «Шифры против кодов» . Ханская академия . Архивировано из оригинала 17 января 2024 г. Проверено 30 июня 2024 г.
- Кинг, Дэвид А. (2001). Шифры монахов: забытая цифровая запись средневековья . Штутгарт: Франц Штайнер Верлаг . ISBN 3-515-07640-9 .
- Лучано, Деннис; Причетт, Гордон (1987). «Криптология: от шифров Цезаря к криптосистемам с открытым ключом» . Математический журнал колледжа . 18 (1): 2–17. дои : 10.1080/07468342.1987.11973000 . JSTOR 2686311 . S2CID 14686417 . Проверено 19 февраля 2023 г.
- Синьков, Авраам (1968). Элементарный криптоанализ: математический подход . Нью-Йорк: Математическая ассоциация Америки Press . ISBN 0-88385-622-0 . ОЛ 149668W .
- Столлингс, Уильям (3 января 2020 г.). Криптография и сетевая безопасность: принципы и практика (8-е изд.). Пирсон . ISBN 978-0-13-670722-6 . Проверено 30 июня 2024 г.
- Стинсон, Дуглас Роберт ; Патерсон, Маура (9 января 2023 г.). Криптография: теория и практика (6-е изд.). ЦРК Пресс . ISBN 978-1-032-47604-9 .