What is the difference between fixed code and rolling code?

Fixed code learning solutions broadcast the same packet on every press; in a typical example a 20-bit identity and 4 bits of data are sent, that is roughly a million combinations and no cryptographic protection. This structure is open to a replay attack. Rolling code, on the other hand, advances a counter on every press, so it prevents a previously transmitted packet from being used again.

The logic of fixed code is simple: the transmitter broadcasts its unique identity and the button information, and when the receiver recognises the identity it has learned it drives the output. It is cheap to produce and easy to teach; but the transmission is exactly the same every time. Someone who records the transmission and repeats it exactly can operate the system without any need to break the code. The number of combinations being roughly a million provides no protection against this attack, because the code is not guessed, it is copied.

Rolling code closes this gap:

More advanced solutions move authentication into an encrypted session: bidirectional acknowledgement, a unique pairing identity per device and session authentication. AXI's XRF protocol uses an end-to-end encrypted data channel, bidirectional acknowledgement and a unique pairing identity per device. The correct approach in security is to trust not a single mechanism but the sum of these layers.

Knowledge Center