Эта статья требует дополнительных ссылок для проверки . ( апрель 2014 г. ) ( Узнайте, как и когда удалить это сообщение-шаблон ) |
Этап линейного смешивания Serpent | |
Общий | |
---|---|
Дизайнеров | Росс Андерсон , Эли Бихам , Ларс Кнудсен |
Впервые опубликовано | 1998-08-21 |
Происходит от | Квадрат |
Сертификация | Финалист AES |
Деталь шифра | |
Ключевые размеры | 128, 192 или 256 бит |
Размеры блоков | 128 бит |
Структура | Сеть подстановки-перестановки |
Раундов | 32 |
Лучший публичный криптоанализ | |
Все общеизвестные атаки вычислительно невозможны, и ни одна из них не влияет на Змея с 32 раундами. Атака 2011 года разрывает 11 раундов Serpent (все размеры ключей) с 2 116 известными открытыми текстами, 2 107,5 временем и 2 104 памятью (как описано в [1] ). В той же статье описаны две атаки, которые разбивают 12 раундов Serpent-256. Первый требует 2 118 известных открытых текстов, 2 228,8 раз и 2 228 памяти. Другая атака требует 2 116 известных открытых текстов и 2 121 памяти, но также требует 2 237,5 времени. |
Serpent - это блочный шифр с симметричным ключом, который был финалистом конкурса Advanced Encryption Standard (AES) , где он занял второе место после Rijndael . Serpent был разработан Россом Андерсоном , Эли Бихамом и Ларсом Кнудсеном .
Как и другие материалы AES , Serpent имеет размер блока 128 бит и поддерживает размер ключа 128, 192 или 256 бит. [2] шифр представляет собой 32-круглая заместительную-подстановку сеть операционный на блок из четырех 32-битовых слов . В каждом цикле 32 раза параллельно применяется один из восьми 4-битных S-блоков . Serpent был разработан таким образом, что все операции могут выполняться параллельно с использованием 32- битных срезов . Это максимизирует параллелизм, но также позволяет использовать обширную работу по криптоанализу, выполняемую в DES .
Serpent придерживается консервативного подхода к безопасности, отдавая предпочтение большому запасу безопасности: разработчики считали, что 16 раундов достаточно против известных типов атак, но указали 32 раунда как страховку от будущих открытий в криптоанализе. Официальный отчет NIST о конкуренции AES классифицировал Serpent как имеющий высокий запас безопасности наряду с MARS и Twofish , в отличие от адекватного запаса безопасности RC6 и Rijndael (в настоящее время AES). [3] В финальном голосовании Serpent набрал наименьшее количество отрицательных голосов среди финалистов, но занял второе место в целом, потому что у Rijndael было значительно больше положительных голосов, решающим фактором было то, что Rijndael позволил гораздо более эффективную реализацию программного обеспечения. [ необходима цитата]
Алгоритм шифрования Serpent является общественным достоянием и не запатентован . [4] Эталонный код является общественным достоянием, а оптимизированный код находится под лицензией GPL . [5] Нет никаких ограничений или обременений относительно его использования. В результате любой может свободно включать Serpent в свое программное обеспечение (или аппаратные реализации) без уплаты лицензионных сборов.
Rijndael vs. Serpent [ править ]
Rijndaelпредставляет собой сеть линейного преобразования замещения с десятью, двенадцатью или четырнадцатью раундами, в зависимости от размера ключа, и с размерами ключа 128 бит, 192 бит или 256 бит, определяемых независимо. Serpent - это сеть замещения-перестановки, которая имеет тридцать два раунда, а также начальную и конечную перестановки для упрощения оптимизированной реализации. Функция раунда в Rijndael состоит из трех частей: нелинейного слоя, слоя линейного смешивания и слоя XOR с ключевым смешиванием. Функция раунда в Serpent состоит из смешивания ключей XOR, тридцати двух параллельных приложений одного и того же S-блока 4 × 4 и линейного преобразования, за исключением последнего раунда, в котором другое смешивание ключей XOR заменяет линейное преобразование. Нелинейный слой в Rijndael использует S-блок 8 × 8, тогда как Serpent использует восемь различных S-блоков 4 × 4.32 раунда означают, что у Serpent более высокий запас прочности, чем у Rijndael; однако Rijndael с 10 раундами быстрее и проще реализовать для небольших блоков.[6] Таким образом, Rijndael был выбран победителем в конкурсе AES.
Змей-0 против Змея-1 [ править ]
Первоначальный Serpent, Serpent-0, был представлен на 5-м семинаре по быстрому программному шифрованию , но несколько измененная версия Serpent-1 была представлена на конкурс AES. В документе о представлении AES обсуждаются изменения, в том числе различия в расписании ключей.
Безопасность [ править ]
Нападение XSL , если эффективный, ослабит Serpent (хотя и не так сильно , как это ослабит Rijndael , который стал AES ). Однако многие криптоаналитики считают, что, если принять во внимание соображения реализации, XSL-атака будет дороже, чем атака грубой силы . [ необходима цитата ]
В 2000 году в статье Kohno et al. представляет атаку встречей посередине против 6 из 32 раундов Змеи и усиленную атаку бумерангом против 9 из 32 раундов Змеи. [7]
Атака 2001 года Эли Бихамом , Орром Дункельманом и Натаном Келлером представляет собой атаку линейного криптоанализа, которая разбивает 10 из 32 раундов Serpent-128 с 2 118 известными открытыми текстами и 2 89 временем, и 11 раундов Serpent-192/256 с 2 118 известным открытых текстов и 2 187 раз. [8]
В статье 2009 года было отмечено, что нелинейный порядок S-боксов Serpent был не 3, как утверждали дизайнеры. [9]
Атака 2011 года, проведенная Хунцзюном Ву, Хуаксюн Вангом и Фуонг Ха Нгуеном, также использующая линейный криптоанализ, разбивает 11 раундов Serpent-128 с 2 116 известными открытыми текстами, 2 107,5 временем и 2 104 памятью. [1]
В той же статье описаны две атаки, которые разбивают 12 раундов Serpent-256. Первый требует 2 118 известных открытых текстов, 2 228,8 раз и 2 228 памяти. Другая атака требует 2 116 известных открытых текстов и 2 121 памяти, но также требует 2 237,5 времени.
См. Также [ править ]
- Tiger - хеш-функция тех же авторов
Сноски [ править ]
- ^ a b Хуасюн Ван, Хунджун Ву и Фуонг Ха Нгуен (2011). «Улучшение алгоритма 2 в многомерном линейном криптоанализе» (PDF) . Информационная безопасность и конфиденциальность . Конспект лекций по информатике. 6812 . ACISP 2011. С. 61–74. DOI : 10.1007 / 978-3-642-22497-3_5 . ISBN 978-3-642-22496-6.
- ↑ Росс Дж. Андерсон (23 октября 2006 г.). «Змей: кандидатный блочный шифр для усовершенствованного стандарта шифрования» . Компьютерная лаборатория Кембриджского университета . Проверено 14 января 2013 года .
- ^ NIST (2000), Отчет о разработке усовершенствованного стандарта шифрования (AES) (PDF) , NIST
- ^ Змея держит ключ к интернет-безопасности - объявлены финалисты всемирного конкурса на шифрование (1999)
- ^ SERPENT - Кандидатный блочный шифр для усовершенствованного стандарта шифрования «Змей теперь полностью находится в открытом доступе, и мы не налагаем ограничений на его использование. Об этом было объявлено 21 августа на Первой конференции кандидатов на AES. Оптимизированные реализации в пакет для отправки сейчас находится под Стандартной общественной лицензией (GPL), хотя некоторые комментарии в коде все еще говорят об обратном. Вы можете использовать Serpent для любого приложения. Если вы все же используете его, мы будем признательны, если вы сообщите нам об этом! " (1999)
- ^ Брюс Шнайер; Джон Келси; Дуг Уайтинг; Давид Вагнер; Крис Холл. Нильс Фергюсонк; Тадаёши Коно; Майк Стей (2000). «Заключительные комментарии команды Twofish по выбору AES» (PDF) . Цитировать журнал требует
|journal=
( помощь ) - ^ Тадаёши Коно; Джон Келси и Брюс Шнайер (2000). «Предварительный криптоанализ редуцированной змеи» . Цитировать журнал требует
|journal=
( помощь ) - ↑ Эли Бихам, Орр Дункельман и Натан Келлер (2001). «Линейный криптоанализ редуцированного круглого змея». FSE 2001. CiteSeerX 10.1.1.78.6148 . Цитировать журнал требует
|journal=
( помощь ) - ^ Бхупендра Сингх; Лекси Александр; Санджай Бурман (2009). "Об алгебраических связях S-блоков Змеи" (PDF) . Цитировать журнал требует
|journal=
( помощь )
Дальнейшее чтение [ править ]
- Андерсон, Росс; Бихам, Эли; Кнудсен, Ларс (1998). «Криптография - 256-битные шифры: эталонная реализация (представление AES)» .
- Бихам, Эли. «Змей - новое предложение блочного шифра для AES» .
- Halbfinger, Дэвид М. (5 мая 2008 г.). «В случае Пелликано, уроки навыков прослушивания телефонных разговоров» . Нью-Йорк Таймс .
- Стаджано, Франк (10 февраля 2006 г.). "Реализация ссылки на змею" . Компьютерная лаборатория Кембриджского университета.
Внешние ссылки [ править ]
- Официальный веб-сайт
- 256-битные шифры - Эталонная реализация SERPENT и производный код