Kod zmienny - Rolling code

Rolling Code (lub czasami nazywany Hopping kod ) używany jest w centralny zamek z pilotem systemów zapobiegania atakom przez powtórzenie , gdzie eavesdropper Records przesył i powtórki w późniejszym czasie, aby wywołać słuchawkę do „odblokowania”. Takie systemy są typowe dla otwierania drzwi garażowych i bezkluczykowych systemów domofonowych .

Techniki

  • Wspólny PRNG ( generator liczb pseudolosowych ) - najlepiej zabezpieczony kryptograficznie - zarówno w nadajniku, jak i odbiorniku
  • Nadajnik wysyła „następny” kod w kolejności
  • Odbiornik porównuje „następny” z wyliczonym kodem „następny”.
  • Typowa implementacja porównuje w następnych 256 kodach w przypadku, gdy odbiornik pominął niektóre transmitowane naciśnięcia klawiszy.

Zastosowanie w pilocie RF

Nadajnik z zmiennym kodem jest użyteczny w systemie bezpieczeństwa do zapewniania bezpiecznej szyfrowanej transmisji na częstotliwości radiowej (RF) zawierającej przeplatany trinarny bit stały kod i zmienny kod. Odbiornik demoduluje zaszyfrowaną transmisję RF i odzyskuje stały kod i zmienny kod. Po porównaniu kodów stałych i ruchomych z zapisanymi kodami i ustaleniu, że sygnał pochodzi z autoryzowanego nadajnika, generowany jest sygnał do uruchomienia silnika elektrycznego w celu otwarcia lub zamknięcia części ruchomej.

Rolling code vs. pilot RF o stałym kodzie

Piloty wysyłają cyfrowe słowo kodowe do odbiornika. Jeśli odbiornik stwierdzi, że hasło kodowe jest dopuszczalne, to odbiornik uruchomi przekaźnik, otworzy drzwi lub otworzy szlaban. Proste systemy zdalnego sterowania używają stałego słowa kodowego; hasło, które dziś otwiera bramę, otworzy ją również jutro. Osoba atakująca z odpowiednim odbiornikiem może później odkryć słowo kodowe i użyć go, aby uzyskać dostęp. Bardziej wyrafinowane systemy zdalnego sterowania używają kodu zmiennego (lub kodu przeskakującego), który zmienia się przy każdym użyciu. Osoba atakująca może być w stanie nauczyć się hasła, które otworzyło drzwi właśnie teraz, ale odbiorca nie zaakceptuje tego słowa kodowego w dającej się przewidzieć przyszłości. System z kodem zmiennym wykorzystuje metody szyfrowania, które umożliwiają pilotowi i odbiornikowi współdzielenie słów kodowych, ale utrudniają atakującemu złamanie szyfrowania.

KeeLoq

Układ HCS301 z pilota bezkluczykowego Audi A6 , który wykorzystuje system kodu zmiennego

Microchip HCS301 był niegdyś najczęściej używanym systemem w pilotach i odbiornikach do bram garażowych i bramowych. Chip wykorzystuje algorytm KeeLoq. System HCS301 KeeLoq przesyła 66 bitów danych.

  • 34 bity nie są szyfrowane: 28-bitowy numer seryjny, 4 bity informacji o przycisku i 2 bity stanu (wskaźniki powtarzania i niskiego poziomu baterii).
  • 32 bity są szyfrowane (kod zmienny): 4 bity informacji o przycisku, 2 bity OVR (używane do rozszerzenia wartości licznika), 10 bitów DISC (wartość dyskryminacji; często niskie 10 bitów numeru seryjnego) i 16 -bitowy licznik. W sytuacji ponownej synchronizacji zaszyfrowane 32 bity są zastępowane 32-bitową wartością początkową.

Luka w zabezpieczeniach Rolljam

Zmienny kod przesyłany przez sygnał radiowy, który można przechwycić, może być podatny na fałszowanie. W 2015 roku doniesiono, że Samy Kamkar zbudował niedrogie urządzenie elektroniczne wielkości portfela, które można było schować na zamkniętym pojeździe lub w jego pobliżu, aby przechwycić pojedynczy kod dostępu bezkluczykowego, którego można użyć później do odblokowania pojazdu. Urządzenie wysyła sygnał zagłuszający, aby zablokować odbiór przez pojazd sygnałów zmiennego kodu z pilota właściciela, jednocześnie rejestrując te sygnały z obu jego dwóch prób odblokowania pojazdu. Zarejestrowany pierwszy kod jest przekazywany do pojazdu tylko wtedy, gdy właściciel podejmie drugą próbę, natomiast zarejestrowany drugi kod jest zachowany do wykorzystania w przyszłości. Kamkar stwierdził, że luka ta była powszechnie znana od lat w wielu typach pojazdów, ale wcześniej nie została wykazana. Demonstracja odbyła się podczas DEF CON 23.

Bibliografia

Zewnętrzne linki