Принцип роботи систем контролю доступу з радіоканалом
Сигнали радіоканал по якому передаються дані між сигналізацією і брелоком поширюються на всі боки і з цього обмін інформацією, можна "прослухати". В межах міста знаходяться багато інших сигналізацій які не повинні реагувати на чужий пульт. Щоб захистити канал обміну від випадкового або навмисного впливу, сигнал обміну між брелоком і блоком сигналізацій кодується.
Дані по радіоканалу передають у вигляді послідовностей - пакетів. Кожен пакет сигналів можна уявити як команду (наприклад, "Поставити на охорону і Закрити замки" або "Зняти з охорони і відкрити замки").
Найперші сигналізації з радіоканалом мали статичний код - кожній команді відповідав свій командний пакет. Формат пакета вибирався користувачем або монтажником за допомогою перемикачів всередині брелока, або Запевняю перемичок. Варіантів коду було не багато і своїм брелоком можна було відкрити чужу машину якщо збігалися коди команд.
Таке кодування не забезпечувало належного захисту, досить було записати команду "зняти з охорони", а потім відтворити її і машина знімається з охорони як з рідного брелка. Тоді і з'явилися перші кодграббери призначені для перехоплення, декодування і повтору коду, щоб зняти автомобіль з охорони з метою викрадення.
Види чіпів мають статичний код і приємним в пультах управління сигналізацій
- [6010] HT-6010, HT6014, SH-312E - 3-х статусний код
- [H600] HT-600, НТ-680, HT6187, HT6270, TT-13, ПК-10Т - 3-х статусний код
- [5026] AX5026, CT5026 - 3-х статусний код
- [5326] AX5326, AX5326S - 3-х статусний код
- [2262] PT-2262, M3E, CT5062 - 3-х статусний код
- [8092] TT8092 - 3-х статусний код
- [4134] MC41342, MC145026, SC41342 - 3-х статусний код
На прикладі чіпів HT6010, HT6012, HT6014 розглянемо принцип кодування 3 12 (3-х статусний код) і обміну між пультом і сигналізацією.
До складу сімейства входить 3 мікросхеми кодерів (HT6010, HT6012, HT6014) і три мікросхеми декодерів (HT6030, HT6032, HT6034).
Короткі технічні характеристики і сумісність мікросхем цього сімейства 3 12 дивіться в таблиці
Із зростанням попиту на охоронні системи автомобілів і впорядкування частоти радіоканалу на 433.92 Мгц, виробники сигналізацій перейшли на новий вид кодування, ось тоді і з'явилося поняття динамічний код. Даний варіант має на увазі те, що при кожному натисканні на кнопку брелка в ефір надсилається унікальний код команди, ймовірність повторення якого дуже мала. Тепер записану в пам'яті граббера посилку можна було просто викинути, адже блок сигналізації вже з нею відпрацював і викинув зі списку правильних пакетів. У разі якщо коди були не великими за кількістю бітів в команді, ще можна було користуватися методом підбору кодів за допомогою сканера, але ці випадки були одиничними, і тривало це не довго, з'явився революційний метод кодування під назвою KEELOQ.
MICROCHIP розробив новий ряд компактних мікросхем кодеров і декодерів на основі алгоритму Keeloq з динамічним (стрибаючим) кодом. Низька вартість і високий ступінь захисту, а також мініатюрні розміри зробили революцію в індустрії автомобільних сигналізацій. Дуже багато систем і зараз використовують в пультах сигналізацій готові кодери, такі як HCS200, HCS300, HCS301, HCS320.
алгоритм Keeloq
В основу алгоритму покладено псевдовипадковий "стрибучий" код, так що ніхто, крім "свого" приймача, не може передбачити, який код повинен бути переданий в наступний раз. "Стрибки" код генерується кодером за ліцензованим алгоритму на основі 64-бітного коду "ключа шифрування", 28-бітного серійного номера і 16-бітного лічильника синхронізації.
Розглянемо детальніше реалізацію алгоритму Keeloq на основі кодеров сімейства HCS компанії MICROCHIP.
Перш ніж використовувати мікрочіп в пультах сигналізацій він повинен бути запрограмований виробником сигналізації в процесі виробництва. Вся запрограмована інформації зберігається у вмонтованому EEPROM (незалежна пам'ять), і це:
- 16-бітове значення слова конфігурації (визначає режим роботи кодера);
- 28-бітний серійний номер, який повинен бути унікальним для кожного кодера;
- 64-х бітний унікальний ключ шифрування, який згенерований під час виготовлення (ключ шифрування генерується по нелінійному закону з 28-бітного серійного номера і 64-х бітного ключа виробника);
- 16-бітове значення лічильника синхронізації
Всі запрограмовані ключі шифрування і кодові комбінації EEPROM захищені від читання, що ефективно захищає проти спроб отримати доступ до ключів і управляти значеннями синхронізації. EEPROM може бути перепрограмований після стирання.
Ключ виробника - це унікальний 64-х бітний ключ,
який використовується при генерації унікального ключа шифрування для кожного кодера.
Код виробника - це основна частина повного захисту системи.
При натисканні будь-якої кнопки пульта, кодер читає кнопку і модифікує лічильник синхронізацій. Потім значення лічильника синхронізації об'єднується з ключем шифрування в алгоритмі шифрування, і в результаті виходить 32-біт зашифрованої інформації. Ці дані змінюються кожного разу після натискання кнопки, тому ця частина кодової комбінації називається динамічним кодом. Приймачі і передавачі Keeloq працюють в послідовному коді з посилкою довжиною 66 біт (рис.5), що складається з кодованої "стрибає" частини в 32 біта, 28 біт серійного номера, 4 біт користувача (стан кнопок), 1 біта індикації розряду батареї і 1 фіксованого біта (біт повтору).
В ефірі пакет Keeloq розділений на умовну складову TE (Базова тактова тривалість) і складається з Преамбули (Tp), Хедера (Th), Даних (Thop + Tfix) і Паузи (Tg) (рис.6) У різних брелках з різним рівнем заряду батарейки тривалість TE може відрізнятися і за специфікацією складати від 260 мкс до 660 мкс, але в межах одного пакета тривалість TE відносно стабільна.
Передача пакета Keeloq кодером HCS. в ефір починається з преамбули і вона складається з 23-х TE які чергуються високим і низьким рівнем. Преамбула потрібна для "розгойдування" приймача і настройки TE для декодера. Далі йде Хедер тривалістю 10 TE низького рівня. За хедер йде передача даних. Дані складаються з 66 інформаційних біт, кожен біт має періуд тривалістю 3-и ТІ (Рис.7)
На (Рис.7) видно, що логічна одиниця складається з одного ТЕ високого рівня і двох ТЕ низького рівня, логічний нуль складається з двох ТЕ високого рівня і одного ТЕ низького рівня. Треба зауважити, що дані передаються в ефір від молодшого байта (LSb) до старшого (MSb) (рис.5). Після передачі даних йде Пауза довгої 39 ТІ і якщо кнопка утримується після Паузи сного піде чергова преамбула.
Типова схема підключення кодера HCS2ХХ - HCS3ХХ представлена на (Рис. 8) фактично це схема чотирьох кнопкового пульта сигналізації.
Декодери Microchip за технологією Keeloq
Декодери Keeloq призначені для дешефраціі команд надходять від кодера по каналу зв'язку. Після перевірки прийнятого в кодової послідовності серійного номера і "стрибаючого коду", декодер на підставі функціонального коду активізує виходи відповідні входів кнопок в кодере. Виходи будуть утримуватися в активному стані до тих пір, поки натиснута кнопка на кодере. У таблиці представлені короткі характеристики кодереров HCS500, HCS512, HCS515 і з якими кодерами вони працюють.
Для виконання команд декодоров, йому необхідно вказати 28/32-бітний серійний номер і 64-бітний секретний ключ кодера, а також однією з умов є синхронізація з кодером. У декодерах Keeloq використовується незалежна ключова система: для кожного пульта (передавача) в декодере зберігатися свій серійний номер, секретний ключ і поточна синхронізація.