Electronic Key Authentication Using Cryptographic Counter Matching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Remote keyless entry systems are vulnerable to security exploits such as replay attacks, where unauthorized access is gained by capturing and re-transmitting valid signals, and rolling codes are also susceptible to such exploits.
Innovation Solution
The system authenticates a key device using a security protocol where a coordinator verifies that a first cryptographically-encoded counter value received from the key device corresponds to a second cryptographically-encoded counter value received from an access control unit, ensuring that only authorized devices can access protected functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If traditional remote keyless entry systems use radio signals with encoded data for vehicle access control, then ease of operation is improved, but security is worsened due to vulnerability to replay attacks
Solution Approach 1:
The system uses dynamic counter values that change with each authentication attempt. The counter is incremented sequentially and cryptographically encoded, ensuring that each authentication signal is unique and cannot be replayed. This dynamic approach transforms static access codes into evolving credentials that maintain security while enabling convenient operation.
Solution Approach 2:
The system changes the parameter of the access code from a fixed encoded value to a dynamically generated cryptographically-encoded counter value. This parameter change ensures that each authentication attempt uses a unique value, preventing replay attacks while maintaining the ease of wireless operation.
2Reliability
If the system implements cryptographic encoding of counter values to prevent replay attacks, then security is improved, but device complexity is worsened
Solution Approach 1:
The authentication system is segmented into distinct components: a counter management module that generates and increments counter values, a cryptographic encoding module that encodes the counter using stored secret keys, and a verification module that decodes and validates received counter values. This segmentation allows each component to perform its function independently, managing complexity through modular design.
Solution Approach 2:
The cryptographically-encoded counter value serves as an intermediary between the key device and the vehicle system. Instead of directly comparing raw counter values or complex authentication data, the system uses the encoded counter as a secure intermediate representation that can be verified without exposing secret keys or complex authentication logic.
3Reliability
If the system uses rolling codes to prevent replay attacks, then security is improved, but vulnerability to replay exploits is worsened as rolling codes remain susceptible to capture and re-transmission
Solution Approach 1:
The system performs preliminary cryptographic encoding of the counter value using secret keys stored in both the key device and the vehicle system before transmission. This preliminary action ensures that even if the transmitted signal is captured, the captured data cannot be reused without the secret keys, fundamentally preventing replay attacks that rolling codes cannot stop.
Solution Approach 2:
The authentication mechanism combines multiple security elements: a sequentially incrementing counter, secret keys stored in secure memory, and cryptographic encoding functions. This composite approach creates a multi-layered security system where the interaction of these elements produces security properties that none of the individual components could achieve alone, particularly resistance to replay attacks.
Data Source
AI summary
An example method may include receiving, from a key device, a first counter value and a first encoded counter value, identifying, among one or more mapping table entries in an access control unit mapping table, an access control unit mapping table entry specifying a second counter value that corresponds to the received first counter value, determining whether a second encoded counter value specified by the identified access control unit mapping table entry corresponds to the received first encoded counter value, and responsive to determining that the second encoded counter value corresponds to the received first encoded counter value, sending, to a control unit, an indication that permission is granted. The first encoded counter value may include a cryptographic encoding of the first counter value generated in view of a secret key.


