Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

KeeLoq - это запатентованный аппаратно-выделенный блочный шифр, который использует регистр сдвига с нелинейной обратной связью (NLFSR). Протокол однонаправленной передачи команд был разработан Фредериком Брювером из Nanoteq (Pty) Ltd., криптографический алгоритм был создан Гидеоном Куном из Университета Претории, а реализация кремния была выполнена Виллемом Смитом из Nanoteq Pty Ltd ( Южная Африка ). в середине 1980-х гг. KeeLoq был продан Microchip Technology Inc в 1995 году за 10 миллионов долларов. [1] Он используется в кодерах и декодерах со скачкообразной перестройкой кода, таких как NTQ105 / 106/115 / 125D / 129D, HCS101 / 2XX / 3XX / 4XX / 5XX и MCS31X2. KeeLoq используется или использовался во многих системах удаленного доступа без ключатакими компаниями, как Chrysler , Daewoo , Fiat , GM , Honda , Toyota , Volvo , Volkswagen Group , Clifford, Shurlok и Jaguar . [2]

Описание [ править ]

Шифрование KeeLoq

Кодеры KeeLoq с «скачкообразной перестройкой кода» шифруют заполненный 0 32-битный блок с помощью шифра KeeLoq для создания 32-битного « скачкообразного кода ». 32-битный вектор инициализации линейно добавлен ( операция XOR ) в 32 наименее значимых бит в ключевой до шифрования и после расшифровки .

Шифр KeeLoq принимает 64-битные ключи и шифрует 32-битные блоки, выполняя свой однобитовый NLFSR для 528 раундов. Функция обратной связи NLFSR - это 0x3A5C742Eили

KeeLoq использует биты 1, 9, 20, 26 и 31 состояния NLFSR в качестве входных данных во время шифрования и биты 0, 8, 19, 25 и 30 во время дешифрования. Его выходные данные линейно комбинируются (XORed) с двумя битами состояния NLFSR (биты 0 и 16 при шифровании и биты 31 и 15 при дешифровании) и с битом ключа (бит 0 состояния ключа при шифровании и бит 15 из состояние ключа при расшифровке) и передается обратно в состояние NLFSR на каждом этапе.

Версии [ править ]

В этой статье описывается протокол Classic KeyLoq, но были разработаны более новые версии. Система Dual KeeLoq [3] - это алгоритм на основе таймера , улучшающий систему Classic KeeLoq. Цель этой новой версии состоит в том, чтобы иметь счетчик, управляемый таймером, который непрерывно увеличивается, что является противоположностью Classic KeeLoq, где счетчик увеличивается в зависимости от полученных событий. Это обеспечивает защиту от атаки захвата и воспроизведения , известной как RollJam по работе Сами Камкара.

Атаки [ править ]

Повтор атаки [ править ]

Для простоты отдельные реализации «скачкообразного изменения кода» обычно не используют криптографические одноразовые номера или временные метки . Это делает протокол уязвимым для атак повторного воспроизведения : например, заглушив канал во время перехвата кода, вор может получить код, который может быть использован на более позднем этапе. [4] Этот вид «взломщика кода» [5], хотя и интересен с теоретической точки зрения, по-видимому, не так широко используется угонщиками. [6]

Подробное описание недорогого прототипа устройства, разработанного и построенного Сами Камкаром для использования этой техники, появилось в 2015 году. Устройство размером с кошелек можно было спрятать на запертом автомобиле или рядом с ним, чтобы записать единый код доступа без ключа, который будет использоваться в позднее время, чтобы разблокировать автомобиль. Устройство передает сигнал глушения, чтобы заблокировать прием автомобилем сигналов скользящего кода от брелка владельца, одновременно записывая эти сигналы от обеих его двух попыток, необходимых для разблокировки автомобиля. Записанный первый код передается транспортному средству только тогда, когда владелец делает вторую попытку, а записанный второй код сохраняется для использования в будущем. [7] Была объявлена ​​демонстрация DEF CON 23. [8]

Криптоанализ [ править ]

Расшифровка KeeLoq

KeeLoq был впервые подвергнут криптоанализу Андреем Богдановым с использованием техники скольжения и эффективных линейных приближений . Николас Куртуа атаковал KeeLoq, используя скользящие и алгебраические методы. Нападения Богданова и Куртуы не представляют никакой угрозы для фактической реализации , которые , кажется, гораздо более уязвимы для простой грубой силы из ключевого пространства , которое восстанавливается во всех кодовом прыгании реализаций на шифр известного на сегодняшний день. Некоторые «средства захвата кода» KeeLoq используют устройства на базе FPGA для взлома ключей на основе KeeLoq грубой силой в течение примерно двух недель из-за уменьшения длины ключа в реальных реализациях. [ цитата необходима]

В 2007 году исследователи группы COSIC в университете Лёвена , Бельгия (KULeuven) в сотрудничестве с коллегами из Израиля обнаружили новую атаку на систему. [9] Используя детали алгоритма, которые просочились в 2006 году, исследователи начали анализировать слабые места. После определения части ключа, общей для автомобилей определенной модели, уникальные биты ключа могут быть взломаны с помощью только перехваченной связи между ключом и автомобилем.

Microchip представила в 1996 году [10] версию микросхем KeeLoq, в которых используется 60-битное начальное число. Если используется 60-битное начальное число, злоумышленнику потребуется примерно 100 дней обработки на выделенной машине для параллельной атаки методом грубой силы, прежде чем система будет взломана. [11]

Атаки по побочным каналам [ править ]

В марте 2008 года исследователи из кафедры встроенной безопасности Рурского университета в Бохуме , Германия, представили полный прорыв систем удаленного доступа без ключа, основанных на технологии KeeLoq RFID. [12] [13] Их атака работает на все известные системы контроля доступа в автомобили и здания, которые полагаются на шифр KeeLoq.

Атака команды Bochum позволяет восстановить секретные криптографические ключи, встроенные как в приемник, так и в пульт дистанционного управления. Он основан на измерении потребления электроэнергии устройством во время шифрования. Применяя так называемые методы анализа побочного канала к трассам питания, исследователи могут извлечь ключ производителя из приемников, который можно рассматривать как главный ключ для создания действительных ключей для пультов дистанционного управления одного конкретного производителя. В отличии от криптоаналитической атаки , описанной выше , который требует около 65536 выбранных пар открытого текста-зашифрованного текста и дней расчета на ПК для восстановления ключа, атака бокового канала также может быть применена к так называемому режиму KeeLoq код Hopping операции ( так называемый прокатки код), который широко используется для систем доступа без ключа (автомобили, гаражи, здания и т. д.).

Наиболее разрушительным практическим последствием анализа побочного канала является атака, при которой злоумышленник, предварительно узнав главный ключ системы, может клонировать любой легитимный кодировщик, перехватив только два сообщения от этого кодировщика с расстояния до 100 метров (330 футов). Другая атака позволяет сбросить внутренний счетчик приемника (дверь гаража, дверь автомобиля и т. Д.), Что делает невозможным открытие двери легитимным пользователем. [14]

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

  1. ^ Патент США 5517187 , Bruwer, Frederick J .; Смит, Виллем и Кун, Гидеон Дж., «Микрочипы и устройства дистанционного управления, состоящие из них», выпущенный 14 мая 1996 г., передан Microchip Technology Inc. 
  2. ^ Некоторые доказательства того, что Chrysler действительно использует KeeLoq, можно найти в (этом видео) .
  3. ^ MicroChip - MCS3142 - Безопасность - Устройства кодирования KeeLoq
  4. ^ Анализ удаленной безопасности RF с использованием программно определяемого радио
  5. ^ http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2075¶m=en001022#P108_5361, в котором говорится: «Создать схему для записи таких передач для ответа в более позднее время - несложное дело. Такая система известен как средство захвата кода или ключа ".
  6. ^ http://www.snopes.com/autos/techno/lockcode.asp
  7. ^ Томпсон, Кэди (2015-08-06). «Хакер сделал устройство за 30 долларов, которое может разблокировать многие автомобили, в которые можно войти без ключа» . Tech Insider . Проверено 11 августа 2015 .
  8. ^ Kamkar, Samy (2015-08-07). «Управляйте им, как будто вы взломали его: новые атаки и инструменты для беспроводной кражи автомобилей» . DEF CON 23 . Проверено 11 августа 2015 .
  9. ^ Как угонять машины - Практическая атака на KeeLoq
  10. ^ (Будет в резервной копии веб-архива позже): пресс-релиз Microchip от 11 декабря 1996 г. Цитата: "... Транспондер и кодировщик переключения кода HCS410 KEELOQ ..."
  11. ^ Мартин Новотны; Тимо Каспер. «Криптоанализ KeeLoq с помощью COPACOBANA» (PDF) . Конференция SHARCS 2009: 159–164. Цитировать журнал требует |journal=( помощь )
  12. ^ Полный прорыв системы контроля доступа KeeLoq
  13. Томас Эйзенбарт; Тимо Каспер; Амир Моради; Кристоф Паар; Махмуд Салмасизаде; Мохаммад Т. Манзури Шалмани (29 февраля 2008 г.). «Физический криптоанализ приложений KeeLoq с переключением кода» (PDF) . Рурский университет Бохума, Германия . Проверено 22 марта 2009 . Цитировать журнал требует |journal=( помощь )
  14. Каспер, Тимо (ноябрь 2012 г.). Анализ безопасности распространенных беспроводных устройств - физические атаки и атаки протоколов на практике (PDF) (доктор философии). Рурский университет Бохума , Германия . Проверено 11 августа 2015 .

Внешние ссылки [ править ]

  • Сайт Microchip KeeLoq
  • Введение в технологию Ultimate KeeLoq
  • Семейство энкодеров HCSXXX - Информация о продукте
  • Ultimate KeeLoq Technology, новое поколение безопасности - с двойным кодировщиком KeeLoq MCS3142
  • «Спецификация алгоритма дешифрования KeeLoq» (PDF) . Архивировано (PDF) из оригинала 23 апреля 2007 г.
  • Исходный код C от Ruptor
  • Богданов Андрей (31 августа - 5 сентября 2007 г.), Криптоанализ блочного шифра KeeLoq , Синин, Китай [1] .
  • Н. Т. Куртуа и Г. В. Бард, «Алгебраические и скользящие атаки на KeeLoq»
  • «Пресс-релиз Университета Бохума / HGI о полном отказе от систем входа на основе KeeLoq» (PDF) .[ постоянная мертвая ссылка ]
  • Физический криптоанализ приложений KeeLoq с переключением кода
  • Открывалка двери гаража