Jump to content

Слабый ключ

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

происхождение Историческое

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

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

Британцы впервые обнаружили трафик Т52 летом и осенью 1942 года. Одно соединение было между Сицилией и Ливией под кодовым названием « Осетр », а другое — от Эгейского моря до Сицилии под кодовым названием « Скумбрия ». Операторы обоих каналов имели обыкновение шифровать несколько сообщений с одинаковыми настройками машины, получая при этом большую глубину .

Существовало несколько (в основном несовместимых) версий Т52: Т52а и Т52b (отличавшиеся только электрическим шумоподавлением), Т52с, Т52d и Т52е. Хотя T52a/b и T52c были криптографически слабыми, последние два были более совершенными устройствами; Движение колес было прерывистым, решение о том, продвигать их вперед или нет, принималось логическими схемами, которые принимали в качестве входных данных данные от самих колес.

Кроме того, был устранен ряд концептуальных недостатков (в том числе очень тонких). Одним из таких недостатков была возможность сбрасывать поток ключей в фиксированную точку, что приводило к повторному использованию ключей недисциплинированными операторами станков.

Слабые ключи в DES [ править ]

Блочный шифр DES имеет несколько конкретных ключей, называемых «слабыми ключами» и «полуслабыми ключами». Это ключи, которые заставляют режим шифрования DES действовать идентично режиму дешифрования DES (хотя потенциально и с другим ключом).

В процессе работы секретный 56-битный ключ разбивается на 16 подключей в соответствии с расписанием ключей DES ; один подраздел используется в каждом из шестнадцати раундов DES. DES Слабые ключи создают шестнадцать идентичных подразделов. Это происходит, когда ключ (выраженный в шестнадцатеричном формате ): [1]

  • Чередование единиц + нули (0x0101010101010101)
  • Чередование «F» + «E» (0xFEFEFEFEFEFEFEFE)
  • '0xE0E0E0E0F1F1F1F1'
  • '0x1F1F1F1F0E0E0E0E'

Если реализация не учитывает биты четности, соответствующие ключи с инвертированными битами четности также могут работать как слабые ключи:

  • все нули (0x0000000000000000)
  • все 'F' (0xFFFFFFFFFFFFFFFFFF)
  • '0xE1E1E1E1F0F0F0F0'
  • '0x1E1E1E1E0F0F0F0F'

При использовании слабых ключей результат перестановочного выбора 1 (PC-1) DES в расписании ключей приводит к тому, что раундовые ключи представляют собой либо все нули, все единицы, либо чередующиеся шаблоны ноль-единица.

Поскольку все подразделы идентичны, а DES представляет собой сеть Фейстеля , функция шифрования является самоинвертирующей; то есть, несмотря на то, что однократное шифрование дает безопасный зашифрованный текст, двойное шифрование дает исходный открытый текст.

В DES также есть полуслабые ключи , которые создают только два разных подключа, каждый из которых используется в алгоритме восемь раз: это означает, что они входят в пары K 1 и K 2 и обладают следующим свойством:

где E K (M) — алгоритм шифрования, шифрующий M с помощью ключа K. сообщение Существует шесть полуслабых пар ключей:

  • 0x011F011F010E010E и 0x1F011F010E010E01
  • 0x01E001E001F101F1 и 0xE001E001F101F101
  • 0x01FE01FE01FE01FE и 0xFE01FE01FE01FE01
  • 0x1FE01FE00EF10EF1 и 0xE01FE01FF10EF10E
  • 0x1FFE1FFE0EFE0EFE и 0xFE1FFE1FFE0EFE0E
  • 0xE0FEE0FEF1FEF1FE и 0xFEE0FEE0FEF1FEF1

Есть также 48 потенциально слабых ключей, которые создают только четыре отдельных подраздела (вместо 16). Их можно найти в публикации NIST. [2]

Эти слабые и полуслабые ключи не считаются «фатальными недостатками» DES. Есть 2 56 (7.21 × 10 16 , около 72 квадриллионов) возможных ключей для DES, из которых четыре слабых и двенадцать полуслабых. Это настолько малая часть возможного пространства ключей, что пользователям не о чем беспокоиться. При желании они могут проверить наличие слабых или полуслабых ключей при их генерации. Их очень мало, и их легко узнать. Однако обратите внимание, что в настоящее время DES больше не рекомендуется для общего использования, поскольку все ключи DES могут быть взломаны методом перебора. Прошли десятилетия с тех пор, как машина Deep Crack взламывала их в порядке дней, и, как это обычно делают компьютеры, более поздние решения значительно дешевле в этом временном масштабе. Примеры прогресса — в статье Deep Crack.

Список алгоритмов со слабыми ключами [ править ]

  • DES, как подробно описано выше.
  • RC4 . Слабые векторы инициализации RC4 позволяют злоумышленнику организовать атаку с использованием известного открытого текста и широко используются для компрометации безопасности WEP. [3] и ARC4 DMRA DMR .
  • ИДЕЯ . Слабые ключи IDEA можно идентифицировать при атаке с использованием выбранного открытого текста . Они делают взаимосвязь между суммой XOR битов открытого текста и битов зашифрованного текста предсказуемой. Перечня этих ключей нет, но их можно идентифицировать по их «структуре».
  • Иглобрюхая рыба . Слабые ключи Blowfish создают плохие S-блоки , поскольку S-блоки Blowfish зависят от ключей. Существует атака по выбранному открытому тексту против варианта Blowfish с сокращенным числом раундов, которая упрощается за счет использования слабых ключей. Это не проблема для полного 16-раундового Blowfish.
  • ГМАК . Часто используется в конструкции AES-GCM. Слабые ключи можно определить по групповому порядку ключа аутентификации H (для AES-GCM H получается из ключа шифрования путем шифрования нулевого блока).
  • РСА и ДСА . Август 2012 г. Надя Хенингер, Закир Дурумерик, Эрик Вустроу, Дж. Алекс Халдерман обнаружили, что сертификаты TLS, которые они оценивали, разделяют ключи из-за недостаточной энтропии во время генерации ключей, и смогли получить частные ключи DSA и RSA хостов TLS и SSH, зная только общедоступные ключи. ключ. [4]

Никаких слабых клавиш как цель дизайна [ править ]

Целью создания «плоского» пространства ключей (т. е. обеспечения одинаковой стойкости всех ключей) всегда является цель разработки шифра. Как и в случае с DES, иногда допустимо небольшое количество слабых ключей при условии, что все они идентифицированы или идентифицируемы. Алгоритм, имеющий неизвестные слабые ключи, не вызывает особого доверия. [ нужна ссылка ]

Две основные меры противодействия непреднамеренному использованию слабого ключа:

  • Проверка сгенерированных ключей по списку известных слабых ключей или включение отклонения слабых ключей в планирование ключей.
  • Когда известно, что количество слабых ключей очень мало (по сравнению с размером пространства ключей), равномерное случайное генерирование ключа гарантирует, что вероятность того, что он окажется слабым, будет (известным) очень небольшим числом.

Большое количество слабых ключей является серьезным недостатком в любой конструкции шифра, поскольку тогда будет (возможно, слишком) большая вероятность того, что случайно сгенерированный ключ окажется слабым, что поставит под угрозу безопасность сообщений, зашифрованных с его помощью. В таких случаях также потребуется больше времени для проверки случайно сгенерированных ключей на наличие уязвимостей, что приведет к искушению использовать ярлыки в интересах «эффективности».

Однако слабые ключи гораздо чаще представляют собой проблему, когда злоумышленник имеет некоторый контроль над тем, какие ключи используются, например, когда блочный шифр используется в режиме работы, предназначенном для создания безопасной криптографической хэш-функции (например, Дэвиса-Мейера ).

См. также [ править ]

Ссылки [ править ]

  1. ^ FIPS, Рекомендации по внедрению и использованию стандарта шифрования данных NBS , FIPS-PUB 74, http://www.itl.nist.gov/fipspubs/fip74.htm
  2. ^ NIST, Рекомендации по блочному шифру тройного алгоритма шифрования данных (TDEA), специальная публикация 800-67 , стр. 14
  3. ^ Флюрер С., Мантин И., Шамир А. Слабые стороны алгоритма планирования ключей восьмого ежегодного семинара RC4 по избранным областям криптографии (август 2001 г.), http://citeseer.ist.psu.edu/fluhrer01weaknesses. HTML
  4. ^ «Исследовательская работа — Factorable.net» . Factorable.net . Проверено 26 июня 2020 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 52dc3b7f3556318a12b4217278d48830__1705309560
URL1:https://arc.ask3.ru/arc/aa/52/30/52dc3b7f3556318a12b4217278d48830.html
Заголовок, (Title) документа по адресу, URL1:
Weak key - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)