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

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

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

Особенности диалогового кода, реализованного в сигнализациях и иммобилайзерах StarLine, гарантируют абсолютную защиту от взлома с помощью любых известных кодграбберов. В каждой системе используется индивидуальный ключ шифрования, передаваемый единственный раз при регистрации брелка в системе. Длина ключа - 128 бит, что даёт 3,4*1038 комбинаций. Даже если перебирать миллиарды вариантов в секунду, чтобы разгадать задачу, потребуется больше времени, чем существует Вселенная. При существующих сегодня вычислительных средствах решить эту задачу «в лоб» невозможно.

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

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

Все специалисты и работники сервисов сходятся во мнении по следующим вопросам:
1. Желательно в дополнение к автосигнализации использовать иммобилайзер или реле, управляемое по штатной проводке, что в принципе, на данном этапе развития отрасли - одно и тоже.
2. Почти необходим замок капота (механический или электромеханический)
3. Степень угонустойчивости чуть ли не на половину зависит от подхода к установке и профессионализма мастера. С этим трудно не согласиться!

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

Окунемся немного в историю и посмотрим, - какже появились на свет все эти Килоги, и прочие алгоритмы шифрования

В устаревших сигнализациях применялись коды с числом комбинаций до 512, Подбор такого кода занимает менее 1 минуты. Количество комбинаций кодов в современных сигнализациях может достигать нескольких тысяч миллиардов. Первая структура динамического кода была предложена итальянской компанией Autotechnica еще в 1995 году. Но подлинная революция в применении этой технологии произошла, когда компания Microchip изготовила наборы кодирующих и декодирующих устройств, сопроводив их своими руководствами по внедрению. Эта "техническая интервенция" способствовала появлению у разных изготовителей своих собственных оригинальных алгоритмов. Однако, до сих пор продукция фирмы Microrochip пользуется большим спросом, а технология "Keeloq" известна всем, кто не остановил свое знакомство с автомобилем на замке зажигания, двери и "балоннике".

Именно здесь, я сделаю отступление и расскажу автолюбителям о таком понятии, как антисканирование, - практически стандартная опция для современной автосигнализации. Под этим термином понимают то, что злоумышленник не сможет снять сигнализацию с охраны с помощью сканера. Сканер – это относительно несложное устройство, которое последовательно воспроизводит коды в формате взламываемой сигнализации. Систему с антисканированием нельзя выключить перебором кодов брелока, так как при приеме неверного кода она, на некоторое время блокируется, увеличивая время, необходимое для сканирования. Блокировка снимается многократной передачей правильного кода. При достаточно большом числе возможных кодов перебор займет нереально много времени. Технология антисканирования применяется уже несколько лет и не является новинкой. Системы с антисканированием не защищены от перехвата кодов из эфира с помощью специальных устройств (грабберов или перехватчиков кодов). Антисканирующая пауза является необходимым атрибутом и в системах с динамическим кодом.

Что же такое динамический код...

Технология плавающих кодов делает невозможным, как перехват кодов из эфира, так и их подбор. Действительный код шифруется таким образом, что при каждой передаче излучается внешне совершенно другая кодовая посылка. В приемнике действительный код восстанавливается путем математической обработки. Перехват кодов становится бессмысленным, так как невозможно предсказать какая следующая кодовая комбинация снимет сигнализацию с охраны. Простое повторение предыдущей посылки не приведет к выключению сигнализации, так как бывшие в прошлом посылки считаются недействительными. Предсказать же будущую посылку теоретически можно, только зная алгоритм шифрования кода, который держится фирмой-изготовителем в секрете и достаточное количество выборок кода для анализа. Кодовые комбинации повторяются с очень большим интервалом. Исследования модели MICROCAR 052.1 показали, что для данной модели этот период составляет более 65000 нажатий. Можно сказать что, в процессе эксплуатации, передаваемые кодовые комбинации не разу не повторяются – машина не служит 20 лет. Коды-идентификаторы брелоков автосигнализаций с плавающими кодами записываются в заводских условиях и являются уникальными не подлежащими замене в процессе эксплуатации. Технология плавающих кодов очень эффективно защищает сигнализацию от взлома с помощью электронных средств. Степень защиты от расшифровки зависит от применяемого алгоритма кодирования. Именно здесь и кроется одно большое "НО" (см. далее "Двойной динамический код")

Рассмотрим немного подробнее, что же представляет из себя динамический код на основе все того же Keeloq

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

Однако к кодирующему ключу разработчикам пришлось добавить еще несколько структур данных специального назначения. Кратко рассмотрим их.

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

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

Дискриминатор 12-битовая произвольная комбинация, передаваемая кодером в закодированном виде в составе переменной части посылки. Он используется для проверки целостности процесса декодирования.

Серийный номер уникальный номер каждого кодера (брелока-передатчика) из 28 или 32 бит. Формируется при изготовлении кодера и передается в некодированном виде в постоянной части посылки.

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

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

Ключ изготовителя 64-битовая комбинация, используемая для образования кодирующего ключа и обеспечивающая разделения всего кодового пространства посылок между разными изготовителями. Ключ изготовителя также записывается в память декодирующего устройства. Естественно, для работы со всеми кодерами системы, произведенными одним изготовителем, достаточно запоминания одного ключа изготовителя.

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

Для того, чтобы код-идентификатор нельзя было перехватить из эфира, все (точнее практически все) уже передававшиеся коды нужно отсеивать, как недействительные. Кроме того, код-идентификатор и служебную информацию нельзя передавать в явном виде. Это возможно сделать, если до передачи налагать на код различные неповторяющиеся маски. Чтобы иметь возможность удалить маску при приеме, ее необходимо пронумеровать. В кодер и декодер включен т.н. счетчик синхронизации. Счетчик синхронизации содержит текущий номер маски. Каждое нажатие кнопки брелка приводит к увеличению состояния счетчика синхронизации брелка и изменению налагаемой маски. Типичная емкость счетчика синхронизации - 16 двоичных разрядов. Таким образом, брелок генерирует 65000 неповторяющихся масок.

Кодовые брелоки

Кодовый брелок сигнализации – это миниатюрный передатчик, работающий в диапазоне дециметровых волн (200...450 МГц). Реже встречаются модели, работающие на инфракрасных лучах, они отличаются малым радиусом действия.
Для сигнализаций оснащенных брелоками на ИК – лучах перехват кодов весьма затруднен из-за малого радиуса действия и направленности брелоков-передатчиков (при пользовании их приходится направлять в определенное место салона автомобиля с расстояния не более нескольких метров). Эта особенность может создавать неудобства при пользовании. Сигнализации с ИК-брелоками: BOSH Blocktronic IR-US, BOSH Blocktronic IM-US

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

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

Двойной динамический код

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

Начнём как обычно с предыстории! Часто на форумах встречаются такие интересные фразы "Берите сигнализацию ХХХ. У меня работает год всё нормально" и с другой стороны "У меня такая же сигнализация ХХХ, взломали на стоянке, вытащили деньги и навигатор и поставили обратно на охрану". Так в чем же проблема? И что такое диалоговый код, о котором говорят последние годы так много? Почему установщики порой так неохотно желают ставить, а держаться за привычные для них сигнализации? Мы даже выделили для диалоговых сигнализаций отдельный раздел в нашем магазине и казалось бы - всё просто, диалоговые сигнализации на данный момент самые криптоустойчивые... но на практике не так всё просто, многие не верят, многие говорят, что это рекламный трюк, а некоторые вообще не слышали про диалоговые сигнализации! Итак, идея статьи появилась, он (директор) сказал поехали, он махнул рукой...

Начнём с теории! Что такое автомобильная диалоговая сигнализация?

Автомобильная диалоговая сигнализация - это сигнализация, в которой постановка на охрану производится с помощью динамического диалога между брелоком и основным блоком сигнализации, блок сигнализации выдаёт брелоку случайно число и они только по им двоим известному алгоритму преобразовывают это случайное число и сравнивают ответ, такая процедура может повторятся несколько раз. Как же, по-простому говоря, это на самом деле работает?

Статья написана нами в 2011-м году.
Подобрать Вам актуальную диалоговую сигнализацию или охранный комплекс?

Попробуем объяснить, начиная с объяснение "на пальцах"! Брелок выдаёт запрос на выполнение команды (например, снятие с охраны), блок сигнализации в ответ генерирует случайное число, в зависимости от битности шифрования оно может отличаться количеством цифр, затем передает это число брелку. Мы не будем доводить до фанатизма битность используемых чисел, возьмём трехзначное число. Например, 536 (назовём это число X). И создадим некий несложный алгоритм по которому преобразуем данное число, например:

(A + X*B + X 2 *C + X 3 *D)*E = Y

A, B, C, D, E - это произвольные числа, которые уникальны для каждой сигнализации, более того, сам метод шифрования (то есть вид самого уравнения) может отличаться для одинаковых моделей сигнализации, назовём эти числа неизвестными и попытаемся математически прояснить - как можно выяснить эти числа? То есть как можно взломать код и узнать следующее число? Начнём с ответа - какое число будет правильным ответом брелка? Вот Y и будет правильным ответом. Что же мы имеем на практике? Возьмём вместо наших неизвестных обычные произвольные числа, положительные и отрицательные. Например,

A = 2; B = -17; C = 85; D = 59; E = -44

Подставляем наши неизвестные и получаем:

(2 + 536*(-17) + 536^2*85 + 536^3* 59) * (-44) = -400833829176

То есть наш правильный ответ, Y = -400833829176

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

Естественно, мы слегка упростили ситуацию с кодированием, начав объяснять на пальцах как это работает, как работает диалоговая сигнализация. На самом деле ситуация гораздо сложнее - существуют так называемые хеш-функции. Хеш-функция - это алгоритм, который из строки произвольной длины получает некое значение, в зависимости от битности шифрования и самого алгоритма ответ может содержать до 32 цифр и букв. Подобным образом хранятся пароли на форумах. Когда при авторизации Вам высылают письмо с просьбой не потерять его, поскольку пароль восстановить не удастся это и означает, что система управления сайтом или форумом сама не знает Вашего пароля. Она сравнивает не пароль, а только результат хеш-функции введенного Вами пароля и такого же результата хранящегося на сервере. Как работает такая система?

Берём наше случайное число 536 и пытаемся выяснить какая связь у ответа будет с некоторыми соседними по цифрам числами! Наиболее популярным алгоритмом хеширования является MD5:

MD5 (536) =

MD5 (535) =

MD5 (636) =

MD5 (546) =

Согласитесь мало общего в результатах, учитывая схожесть в исходных числах. Вот не обязательно таким, но подобным образом будет шифроваться то самое первоначальное случайное число, выданное блоком диалоговой сигнализации. Доказано, что для обратной процедуры декодирования нынешним суперкомпьютерам необходимо будет порядка 100 лет. Отходя от темы Вы спросите - а как же тогда взламываются аккаунты на почте, форуме и в других местах? Зачастую взламываются пароли путем подбора, само собой проще подобрать по возрасту, интересам, кличке, имени жены за день-два гораздо проще, чем взламывать один из сложнейших алгоритмов. Порой даже проще использовать уязвимости сервера, чтобы выяснить пароль, но вся суть заключается в том, что пароль величина известная, а вот нам в нашем случае как раз нужно найти путь обратного преобразования, поскольку каждый раз будет не постоянный пароль, а новое случайное число.

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

Учитывая всё выше сказанное можно смело утверждать, что те, кто утверждают, что диалоговая сигнализация это шушера, рекламный ход или то, что они взломаются в ближайший год-два, либо лукавят, либо даже близко не понимают того, как работает диалоговая сигнализация. Что заставляет так утверждать людей? Причин может быть несколько:

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

Само собой криптостойкость диалогового кода у автосигнализаций пользуются популярностью и производители диалоговых сигнализаций (к основным из них относятся Pandora , Magic Systems , StarLine , BLACK BUG) прилагают значительные усилия для продвижения. Дошло до того, что одна из известных компаний, специализирующихся на производстве диалоговых сигнализаций даже утвердила грант в 1 000 000 рублей (или переводя в общепонятную валюту 280 000 гривен) тому, кто сможет взломать код автосигнализации Пандора, что опять таки подтверждает, что диалоговый код для кодграберов это недостижимая цель.

Это специальный способ кодозащищённости автомобильной сигнализации. Если говорить научным языком, то с целью идентификации брелка система, которая обладает диалоговым кодом, применяет технологию аутентификации по незащищённому каналу.

Проще говоря, системе с брелка посылается определённый сигнал, при получении которого она посылает на брелок запрос, который представлен в виде обычных чисел.

Внимание! При использовании специального алгоритма брелок обрабатывает запрос и отсылает его обратно, а сигнализация, действуя всё по тому же алгоритму, его обрабатывает и сравнивает полученные данные с имеющейся у неё информацией.

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

Какие автосигнализации имеют диалоговый код

Самыми популярными среди автосигнализаций с диалоговым входом являются , Pandora 3000, StarLine B9 Dialog, MS 600 Light и другие. Разница между сигнализациями, безусловно, есть, однако, она не такая уж и существенная.

StarLine B6 Dialog - это недорогая автомобильная сигнализация с диалоговым кодом . Среди всех конкурентов именно этот показатель выделяет её больше всего.

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

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

Сталкер MS 600 Light отличается от всех прочих высокой дальностью действия. Данный показатель характеризует устройство только с хорошей стороны. Чем больше окажется дальность действия каждой охранной системы, тем выше будут показатели её угоностойкости, таким образом, находясь даже на достаточно большом расстоянии от своей машины, владелец всегда будет находиться в курсе того, что происходит с его автомобилем.