IP Library › Granted Patent US 11,120,654
Granted Patent B2
US 11,120,654 · App. 16/780,805 · Granted Sep 14, 2021

Method and apparatus for implementing multi-vendor rolling code keyless entry systems

Inventors: Daniel Charles Johnson (Crestwood, KY); Daniel Patrick Bowen (Mountain View, CA); Michael Calvin McCoy (Palo Alto, CA)
Assignee: IKEYLESS, LLC
G07C9/00857B60R25/24G07C2009/00492
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,120,654
App. No.
16/780,805
Granted
Sep 14, 2021
Kind
B2
Abstract

The present invention relates generally a system and method for providing rolling code remote device functions to provide keyless entry to multiple makes and models of cars. The present invention is adapted to produce the radio signal type and transmitted data of an original manufacturer's keyless entry remote device system by implementing multiple modulation schema and data encoding techniques.

Claims (57)

1. A method for selectively programming a radio frequency (“RF”) remote access device comprising a processor, a first memory, and a second memory, the method comprising:

receiving a user input via a set of user inputs on the remote access device, the user input identifying an identifier associated with a vehicle make and model;

translating, by the remote access device, the identifier to a set of memory addresses for the first memory;

reading, by the remote access device, data at each memory address in the first memory from the set of memory addresses;

assembling, by the remote access device, the data read from the set of memory addresses from the first memory into a set of unsorted encrypted blocks;

decrypting, by the remote access device, the set of unsorted encrypted blocks using a protected encryption key to generate a set of decrypted configuration information; and

writing the set of decrypted configuration information to the second memory.

2. The method of claim 1 , wherein the method further comprises:

receiving an unprocessed set of configuration information;

processing the unprocessed set of configuration information into a set of plaintext blocks;

encrypting the set of plaintext blocks using the protected encryption key;

assembling the encrypted set of plaintext blocks into a set of unsorted sub-blocks;

obfuscating a set of storage locations in the first memory for the set of unsorted sub-blocks; and

storing the set of unsorted sub-blocks in the first memory at the set of obfuscated storage locations.

3. The method of claim 1 , wherein the set of memory addresses are derived at least in part by applying a pseudorandom sequence algorithm to a set of obfuscated memory addresses.

4. The method of claim 1 , wherein the data at each memory address in the first memory from the set of memory addresses comprises a sub-block of a set of configuration information.

5. The method of claim 1 , wherein the set of unsorted encrypted blocks represent a set of encrypted configuration information for the remote access device.

6. The method of claim 1 , wherein the set of decrypted configuration information is in an unsorted state.

7. The method of claim 6 , wherein the method further comprises sorting, by the remote access device, the set of decrypted configuration information into a sorted set of configuration information.

8. The method of claim 7 , wherein the sorted set of configuration information comprises a set of configuration information for controlling operation of the remote access device.

9. The method of claim 8 , wherein the method further comprises writing the sorted set of configuration information to the second memory.

10. The method of claim 1 , wherein the second memory is an active configuration memory adapted to determine operation of the remote access device.

11. The method of claim 1 , wherein the set of decrypted configuration information comprises a set of vendor specific properties.

12. The method of claim 1 , wherein method further comprises:

generating an RF signal based on the set of decrypted configuration information in the active configuration memory; and

transmitting the RF signal to an external device to cause the external device to perform a predefined operation.

13. The method of claim 12 , wherein the generated RF signal comprises a rolling code packet payload.

14. The method of claim 1 , wherein the method further comprises reading, by the remote access device, the protected encryption key associated with the set of unsorted encrypted blocks.

15. A selectively programmable radio frequency (“RF”) remote access device comprising:

a processor;

a first memory;

a second memory; and

a set of user inputs;

the remote access device comprising a set of code when executed by the processor configured to:

receive a user input via the set of user inputs on the remote access device, the user input identifying an identifier associated with a vehicle make and model;

translate the identifier to a set of memory addresses for the first memory;

read data at each memory address in the first memory from the set of memory addresses;

assemble the data read from the set of memory addresses from the first memory into a set of unsorted encrypted blocks;

decrypt the set of unsorted encrypted blocks using a protected encryption key to generate a set of decrypted configuration information; and

write the set of decrypted configuration information to the second memory.

16. The remote access device of claim 15 , wherein the set of code when executed by the processor is further configured to:

receive an unprocessed set of configuration information;

process the unprocessed set of configuration information into a set of plaintext blocks;

encrypt the set of plaintext blocks using the protected encryption key;

assemble the encrypted set of plaintext blocks into a set of unsorted sub-blocks;

obfuscate a set of storage locations in the first memory for the set of unsorted sub-blocks; and

store the set of unsorted sub-blocks in the first memory at the set of obfuscated storage locations.

17. The remote access device of claim 15 , wherein the set of memory addresses are derived at least in part by applying a pseudorandom sequence algorithm to a set of obfuscated memory addresses.

18. The remote access device of claim 15 , further comprising:

wherein the data at each memory address in the first memory from the set of memory addresses comprises a sub-block of a set of configuration information; and

wherein the set of unsorted encrypted blocks represent a set of encrypted configuration information for the remote access device.

19. The remote access device of claim 15 , wherein the set of code when executed by the processor is further configured to:

sort the set of decrypted configuration information into a sorted set of configuration information, wherein the sorted set of configuration information comprises a set of configuration information for controlling operation of the remote access device; and

write the sorted set of configuration information to the second memory, wherein the second memory is an active configuration memory adapted to determine operation of the remote access device.

20. The remote access device of claim 15 , wherein the set of code when executed by the processor is further configured to:

generate an RF signal based on the set of decrypted configuration information in the active configuration memory; and

transmit the RF signal to an external device to cause the external device to perform a predefined operation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2020
From: BOWEN, DANIEL PATRICK; MCCOY, MICHAEL CALVIN; JOHNSON, DANIEL CHARLES
To: IKEYLESS, LLC
Reel/Frame 052004/0695 →
Continuity (4)
Continuation 16153573 · Oct 5, 2018
Continuation 14165922 · Jan 28, 2014
Provisional Application 61850014 · Feb 7, 2013
Related Publication 20200175794A1 · Jun 4, 2020
Cited By (1)
US 12,277,818