Rolling code, zwany również hopping code, to specjalny rodzaj systemu szyfrowania używany w bezprzewodowych urządzeniach dostępu bezkluczykowego, takich jak piloty samochodowe i otwieracze drzwi garażowych. W przeszłości dana osoba naciskała przycisk, aby odblokować swój samochód, a pilot przesyłał kod odblokowujący do odbiornika samochodu, który z kolei odblokowywał samochód. Ta metoda miała poważną wadę, ponieważ każdy mógł odebrać sygnał podczas jego transmisji i później mógł użyć kodu do odblokowania garażu lub samochodu właściciela bez jego zgody. Z tego powodu wymyślono Rolling Code, aby po każdym użyciu pilot i odbiornik tworzyły jednocześnie nowy kod, a stary kod już nie będzie działał.
Aby Rolling Code działał, zarówno nadajnik znajdujący się w pilocie, jak i odbiornik znajdujący się w samochodzie lub urządzeniu współpracującym z nadajnikiem muszą być zaprojektowane tak, aby reagowały ze sobą i mieć ten sam generator kodów, więc po użyciu jednego kodu oba urządzenia wygenerują ten sam nowy kod i będą nadal współpracować. Nadajnik zazwyczaj odnosi się do urządzenia dostępu bezkluczykowego, takiego jak pilot samochodowy do otwierania drzwi samochodu bez fizycznego wkładania kluczyka do samochodu. Odbiornik odnosi się do urządzenia, takiego jak sam samochód, do którego pilot wysyła sygnał.
Gdy właściciel naciśnie przycisk odblokowania, pilot przesyła kod do samochodu, który następnie sprawdza poprawność kodu i odblokowuje drzwi. Zarówno pilot, jak i samochód generują wtedy nowy kod, a gdy właściciel ponownie naciśnie przycisk, wysyła ten nowy kod w celu odblokowania samochodu i tworzy kolejny nowy kod. Gdyby złodziej podniósł kod w trakcie jego transmisji, zostałby już wykorzystany i nie działałby ponownie.
Jeśli właściciel naciśnie przycisk, a pilot jest zbyt daleko, aby odbiornik mógł przechwycić sygnał, pilot tworzy nowy kod zmienny, ale odbiornik nie. Aby właściciel nie zamknął się we własnym samochodzie lub garażu, jeśli przypadkowo naciśnie przycisk ze zbyt dużej odległości, zarówno pilot, jak i odbiornik są zaprojektowane tak, aby generować 256 losowych nowych kodów za każdym razem, gdy kod jest używany. Jeśli pilot wyśle jeden z tych 256 kodów ruchomych do odbiornika, nadal odblokuje samochód, a oba urządzenia zsynchronizują się i wygenerują te same losowe kody, ponieważ oba zawierają ten sam generator liczb zaprojektowany do tworzenia następnego zestawu kodów. 256 kodów.
Chociaż 256 kodów może wydawać się niezbyt dużo, praktycznie niemożliwe jest odblokowanie samochodu innej osoby, nawet jeśli dana osoba ma pilota zaprojektowanego do współpracy z tym samym typem odbiornika, który znajduje się w tym konkretnym samochodzie. Szanse posiadania kompatybilnego pilota i tego pilota generującego jeden z 256 kodów, które samochód danej osoby zaakceptuje, są wciąż mniejsze niż jeden na miliard. Złodziej potrzebowałby lat, aby znaleźć odpowiedni kod zmienny, co czyni go dość prostą, ale niezawodną metodą bezpiecznego blokowania i odblokowywania przedmiotów za pomocą urządzeń bezkluczykowych.