Діалоговий брелок vs. Кодграббер

Чи можливо зломати кодграббером діалоговий код з індивідуальними ключами шифрування?
Діалоговий брелок vs. Кодграббер
Чи можливо зломати кодграббером діалоговий код з індивідуальними ключами шифрування?

Діалоговий код проти кодграбберів
Чому ви стверджуєте, що радіоканал це безпечно, адже навіть
автосигналізацію можна зломати сканером або кодграббером?
Ми часто чуємо, що команду, яку посилає радіобрелок, можна перехопити спеціальним приладом  - так званим кодграбером або сканером, як у випадку з автомобільною сигналізацією.

Радіоканал, по якому передаються дані між сигналізацією і брелоком володіє одним великим недоліком  - радіохвилі поширюються не направлено і обмін можна прослухати, перебуваючи далеко від власника автомобіля. Такі канали зв'язку називають незахищеними і дані, які по ним передаються, шифрують.

Дані по радіоканалу передають в вигляді невеликих послідовностей  - пакетів. Кожен пакет можна уявити як команду наприклад, «Відкрити замок», відповідь на команду наприклад, «Замок відкритий».

Найперші сигналізації з радіоканалом мали статичний код  - кожній команді відповідав свій командний пакет. Формат пакета вибирав сам користувач (або установник), перемикаючи движки всередині брелока, або запаюючи перемички.

Так як варіантів коду було небагато, то іноді своїм брелоком можна було відкрити чужу машину з такою ж сигналізацією  - формати пакетів збігалися. Звичайно, таке кодування ніякого захисту не забезпечувало  - досить було один раз «прослухати» пакет, відповідний команді «Зняти з охорони», щоб потім, просто повторивши його, отримати доступ до автомобілю.

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

Навіть для самих перших кодграбберів статичний код не представляв ніякої проблеми, тому незабаром всі виробники сигналізацій перейшли на динамічне кодування.
Чим статичний код відрізняється від динамічного?
Динамічний код відрізняється від статичного тим, що при кожному натисканні на кнопку формат пакета змінюється.

Пакет змінюється по певному закону, який відомий тільки сигналізації і запрограмованому в неї брелоку. Це означає, що просто повторити записаний пакет можна  - старі пакети сигналізація відкидає.
Малюнок 1. Динамічний код
На перший час здавалося, що цього буде достатньо, і що проблема кодгабберів вирішена  - але не тут то було! Динамічне кодування теж не встояло перед новими кодграбберами.

Найвідомішим алгоритмом динамічного кодування є Keeloq.
Чи був зломаний найвідоміший алгоритм динамічного кодування Keeloq?
В Інтернеті давно гуляють чутки про злом Keeloq, однак це не відповідає дійсності. Аналітично алгоритм Keeloq досі не зломаний  - зломані його невдалі реалізації. Наприклад, багато виробників автомобілів «грішать» тим, що використовують один і той самий ключ для всіх систем, що дозволяє створити так звані «мануфактурні» кодграббери.

Зламують динамічне кодування декількома способами.

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

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

Багато виробників автомобільних систем охорони розробляли свої власні динамічні коди, вносячи різні поліпшення. Деякі з них так до сих пір і не розкриті, і на кшталт можуть використовуватися в охоронних системах. Однак необхідно розуміти, що ні один динамічний код не гарантує захист від злому.
Як працює діалоговий код з двохстороннім каналом зв'язку?
Самим крипостійким і надійним вважається діалогове кодування, яке вимагає двостороннього каналу зв'язку, тобто# nbsp;є наявність приймача і передавача, як в основному модулі, так і в брелоку.

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

Уявіть, що «чоловік» знаходиться в будинку і окрім «дружини» нікого пускати не хоче. В двері немає вічка, а в будинку немає вікон. Після того як «чоловік» почув стукіт у двері, йому потрібно визначити, чи дійсно за дверима стоїть «свій», тобто «Дружина». Найкращий спосіб  - це задати питання, правильну відповідь на яке може дати тільки «дружина». Якщо людина за дверима відповість вірно  - сміливо відкривати двері це «свій».

Точно так працює і сигналізація з діалоговим кодом:

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

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

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

4. Основний модуль перевіряє відповідь і, якщо вона вірна, виконує команду брелока («відкриває двері»).
Малюнок 2. Структура діалогового кода
Тепер давайте додамо в нашу історію ще одного персонажа «чужий», який дуже хоче потрапити в будинок до нашої родини. При певних умовах «чужий» може підслухати розмову між чоловіком і дружиною, і дізнатися відповідь на загадку «чоловіка». Тому загадки кожен раз повинні бути різні.

В діалоговому кодуванні роль загадки грає випадкове число, яке створене за спеціальним алгоритмом. «Випадковість» цього числа дуже висока. При цьому відповідь на загадку має надійти за строго відведений інтервал часу  - за частки секунди.

Уявімо, що питання, які задає «чоловік»  - дати історичних подій. Що буде робити «чужий», якщо дізнається про це? Підготує відповідь і зможе пробратися в будинок?

В діалоговому кодуванні процес розгадування «загадки» унікальний для кожної системи «сигналізація»  - «брелок». Це реалізовано  - унікальним ключем шифрування, який створюється при прив'язці брелока до системи.

Система, прийнявши динамічно кодовану команду («пароль»), не виконує її одразу, а надсилає запит на підтвердження  - якесь випадкове число, також динамічно кодоване. Брелок його приймає і за допомогою секретного ключа та складного алгоритму формує «відгук», знову динамічно перекодовує і шле системі. Якщо відгук вірний, то система виконує команду, причому процес займає частки секунди. На відміну від брелока кодграбер в руках навіть найзапеклішого злодія не знає алгоритму зміни коду, ключа шифрування і#nbsp, не здатний сформувати відгук за відведений на це час.
В підсумку, на сьогоднішній день (і надовго вперед) повноцінний захист від електронного злому забезпечує тільки діалоговий код з індивідуальними ключами шифрування.

А знаєте, як влаштовані системи розпізнавання в військової авіації? Там стоїть система запиту «Свій  - чужий», тобто діалогове кодування. Якщо на запит з землі літак правильно НЕ відповідає, його збивають!

В електронних замках StrongLock ми використовуємо виключно діалогове кодування  - систему розпізнавання, як в літаку. Найнадійнішої системи на сьогодні не існує!
Залишились питання?
Отримайте безкоштовну консультацію
нашого спеціаліста
ЗАЯВКА НА БЕЗКОШТОВНУ
КОНСУЛЬТАЦІЮ МАЙСТРА

Залиште заявку — і вже через 15 хвилин
ми відповімо на всі Ваші супутні питання
STRONGLOCK — на крок попереду злодія
Close
Close
Николай (старший мастер)

Помогу подобрать замок
для Вашего типа дверей
Оставьте свой телефон — и мы перезвоним Вам
+38 (068) 207-02-02
Close
Напишите нам — мы оперативно ответим на любой Ваш вопрос
Telegram
WhatsApp
Viber
Messenger
Skype