ДИАЛОГОВЫЙ КОД И ЕГО КОПИРОВАНИЕ.

Главная   >   ДИАЛОГОВЫЙ КОД И ЕГО КОПИРОВАНИЕ.

Posted by superuser on July 17, 2019 in Без рубрики

Мы часто слышим, что команду, которую посылает радиобрелок, можно перехватить специальным прибором — так называемым код-граббером или сканером.

Наглядным примером нам послужит автомобильная сигнализация.

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

Данные по радиоканалу передают в виде небольших последовательностей — пакетов. Каждый пакет можно представить как команду например, «Открой замок», ответ на команду например, «Замок открыт».

Самые первые сигнализации с радиоканалом имели статический код — каждой команде соответствовал свой командный пакет. Формат пакета выбирал сам пользователь (или установщик), переключая движки внутри брелока, или запаивая перемычки.

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

Наверное, именно тогда появились первые кодграбберы — технические устройства, предназначенные для перехвата, декодирования и повтора кода. Конечной целью злоумышленника, который пользуется кодграббером, является снятие с охраны «приглянувшегося» автомобиля, а затем кража из салона или угон.

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

Динамический код отличается от статического тем, что при каждом нажатии на кнопку формат пакета меняется.

Пакет меняется по определенному закону, который известен только сигнализации и запрограммированному в нее брелоку. Это означает, что просто повторить записанный пакет нельзя — старые пакеты сигнализация отбрасывает.

Рисунок 1. Динамический код

На первых порах казалось, что этого будет достаточно, и что проблема кодгабберов решена — но не тут то было! Динамическое кодирование тоже не устояло перед новыми кодграбберами.

Самым известным алгоритмом динамического кодирования является Keeloq.

В Интернете давно гуляют слухи в взломе Keeloq, однако это не соответствует действительности. Аналитически алгоритм Keeloq до сих пор не взломан — взломаны его неудачные реализации. Например, многие производители автомобилей «грешат» тем, что используют один и тот же ключ для всех систем, что позволяет создать так называемые «мануфактурные» кодграбберы.

Взламывают динамическое кодирование несколькими способами.

Первый способ: аналитический. В основе этого способа лежат «дыры», которые случайно или сознательно оставили в алгоритме разработчики системы. Пример приведен выше — одинаковые ключи у штатных охранных систем некоторых автомобилей.

 Второй способ: замена кода, метод, который в свое время наделал много шума и заставил производителей сигнализаций разнести команды постановки и снятия с охраны на разные кнопки брелока. При использовании этого способа кодграббер записывает несколько посылок брелока пользователя, а потом использует одну из них для снятия автомобиля с охраны.

Многие производители автомобильных систем охраны разрабатывали свои собственные динамические коды, внося различные улучшения. Некоторые из них так до сих пор и не вскрыты, и вроде бы могут использоваться в охранных системах. Однако необходимо понимать, что ни один динамический код не гарантирует защиту от взлома.

 Самым криптостойким и надежным считается диалоговое кодирование, которое требует двустороннего канала связи, то есть наличия приемника и передатчика, как в основном модуле, так и в брелоке.

 Алгоритм работы диалогового кодирования удобно объяснять, используя семью: мужа и жену.

 Представьте, что «муж» находится в доме и кроме «жены» никого пускать не хочет. В двери нет глазка, а в доме нет окон. После того как «муж» услышал стук в дверь, ему нужно определить, действительно ли за дверью стоит «свой», т.е. «жена». Самый лучший способ — это задать вопрос, правильный ответ на который может дать только «жена». Если человек за дверью ответит верно — смело открывать дверь это «свой».

Точно так же работает и сигнализация с диалоговым кодом:

1. При нажатии на кнопку брелок посылает пакет с запросом на авторизацию («стучит в дверь»).

2. Основной модуль, приняв этот пакет, придумывает «загадку», ответ на которую может быть только один. «Загадка» передается брелоку по радиоканалу.

3. Брелок, разгадав «загадку», отвечает пакетом подтверждения.

4. Основной модуль проверяет ответ и, если он верен, выполняет команду брелока («открывает дверь»).

 Рисунок 2. Структура диалогового кода

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

В диалоговом кодировании роль загадки играет случайное число, которое сгенерировано по специальному алгоритму. «Случайность» этого числа очень высока. При этом ответ на загадку болжен поступить за строго отведенный интервал времени — за доли секунд. 

 Представим, что вопросы, которые задает «муж» — даты исторических событий. Что будет делать «чужой», если узнает об этом? Подготовит ответ и сможет пробраться в дом? 

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

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

Рисунок 3. Обобщенный вид диалогового кода

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

А знаете, как устроены системы опознавания в военной авиации? Там стоит система запроса «Свой — чужой», т.е. диалоговое кодирование. Если на запрос с земли самолет правильно не отвечает, его сбивают!

В электронных замках применяется диалоговое кодирование — система опознавания, как в самолете.

Tags: ,

2 comments for “ДИАЛОГОВЫЙ КОД И ЕГО КОПИРОВАНИЕ.”

  1. Илья:

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

    Почему ваш брелок выглядит как китайский за 3 доллара?
    В какой момент вы поменяли ему начинку, где её произвели?
    Что выступает приёмником сигнала?
    Как управляющий сигнал поступает на исполнительное устройство (электронный замок)?

    P.S. Модуль для интеграции с умным домом — это такой же брелок, где вместо кнопок просто торчат провода?

    1. Admin Desi.by:

      Более детальную информацию вы можете получить по телефону или написав на электронную почту.
      Брелок лишь имеет популярный корпус, начинка полностью разработка и изготовление компании DESi Alarm & Security Systems (Турция).
      Электронный цилиндр имеет сообщение с контроллерами по средствам защищенной радиосвязи ISM 434 МГц(защита динамического кода KeeLoq) и Bluetooth Low Energy для управления со смартфоном(защита передачи данных стандарта AES-128 bit).
      Модуль для подключения сторонних контроллеров является схожим по назначению с брелком, где вместо кнопок провода для любого механического реле.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *