Abstract:
Key fob and vehicle control unit identifiers (IDs) are used for entity authentication or trust transfer to achieve a secured initial pairing. The key fob is capable of transmitting only (not receiving) and is paired with a control unit in a vehicle or with any other control device. Use of the key fob and control unit IDs prevents unauthorized pairing and access to the operation key (OpKey) that is later used for communications between the devices. Elliptical curve cryptography (ECC) is used for strong security and efficient implementation. In the pairing process, device IDs are used for entity authentication and public key cryptography is used for easy key management. Symmetric encryption is used for fast normal operation and to accommodate key fob addition or revocation after key fob loss.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation of and claims priority to U.S. patent application Ser. No. 13/969,154, filed Aug. 16, 2013, which claims the benefit of the filing date of U.S. Provisional Patent Application No. 61/695,145, which is titled “One-Way Keyfob-Car Pairing,” filed on Aug. 30, 2012, the disclosures of which is hereby incorporated by reference herein in their entireties. 
     
    
     TECHNICAL FIELD 
       [0002]    Embodiments of the invention are directed, in general, to vehicle security and, more specifically, to pairing a key fob that is capable of transmitting to, but not receiving from, a vehicle control unit with the unit. 
       BACKGROUND 
       [0003]    Identifiers are assigned to a wireless key fob and a vehicle control unit by their respective manufacturers or by a vehicle manufacturer. The identifiers are used for authentication and/or trust transfer to achieve a secured initial pairing. For the key fob and the vehicle control unit to be able to communicate, the devices must be paired at some point in either the manufacturing or the sales process. The pairing of wireless key fobs and their respective vehicles conventionally requires the vehicle manufacturer to deliver a secret key associated with each key fob to the various vehicle dealers. The secret key is a cryptographic key that is used to associate or pair the key fob with a vehicle. Multiple key fobs are typically paired with each vehicle. To simplify design and reduce cost, a key fob may be capable of secured pairing by performing wireless transmission, to but not receiving from, the vehicle. 
       SUMMARY OF THE INVENTION 
       [0004]    Embodiments of the invention provide methods for vehicle and key fob pairing using the identifiers of the key fob and a vehicle control unit. The identifiers are assigned by their respective manufacturers or by a vehicle manufacturer. The identifiers may be used for entity authentication and trust transfer to achieve secured initial pairing. Embodiments use device identifiers (IDs) to reduce message communications among the vehicle manufacturer, vehicle dealer, vehicle control unit, and key fob before, during, and after the vehicle-key fob pairing. This substantially decreases security vulnerabilities that could be otherwise exploited by hackers. 
         [0005]    The key fob and vehicle control unit IDs are assigned by their respective manufacturers, or by a vehicle manufacturer, and are used for entity authentication or trust transfer to achieve secured initial pairing. The key fob is capable of transmitting only (not receiving) and is paired with a control unit in a vehicle or with any other control device. Use of the key fob and control unit IDs prevents unauthorized pairing and access to the operation key (OpKey) that is later used for communications between the devices. The embodiment described herein minimizes vulnerabilities before, during, and after pairing and reduces communication requirements and human involvement during pairing. 
         [0006]    In the example described herein, elliptical curve cryptography (ECC) is used for strong security and efficient implementation; however, other encryption techniques may also be used. In the pairing process, device IDs are used for entity authentication and public key cryptography is used for easy key management. Symmetric encryption is used for fast normal operation and to accommodate key fob addition or revocation after key fob loss. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0007]    Having thus described the invention in general terms, reference will now be made to the accompanying drawings, wherein: 
           [0008]      FIG. 1  is a block diagram illustrating an initial configuration and exchange of information in a system for pairing a vehicle to one or more key fobs. 
           [0009]      FIGS. 2A-E  illustrate steps for an initial pairing between a control unit and a selected key fob using a pairing device. 
           [0010]      FIG. 3  is a flowchart illustrating steps performed by a pairing device according to one embodiment. 
           [0011]      FIG. 4  is a flowchart illustrating steps performed by a key fob according to one embodiment. 
           [0012]      FIG. 5  is a flowchart illustrating steps performed by a control unit according to one embodiment. 
           [0013]      FIG. 6  is a block diagram of an example pairing device in accordance with one embodiment. 
           [0014]      FIG. 7  is a block diagram of an example key fob in accordance with one embodiment. 
           [0015]      FIG. 8  is a block diagram of an example control unit in accordance with one embodiment. 
       
    
    
     DETAILED DESCRIPTION 
       [0016]    The invention now will be described more fully hereinafter with reference to the accompanying drawings. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. One skilled in the art may be able to use the various embodiments of the invention. 
         [0017]    In one embodiments, a key fob that is capable of transmitting but not receiving is paired with a control unit in a vehicle. The control unit allows a user to perform certain operations, such as opening/closing or locking/unlocking vehicle doors through remotely using the key fob. 
         [0018]      FIG. 1  is a block diagram illustrating an initial configuration and exchange of information in a system for pairing a vehicle to one or more key fobs. A vehicle manufacturer  101  provides a unique, secret control unit identifier (ID)  102  to a control unit  103 . The control unit  103  may be any control device located inside or outside a vehicle, such as a control unit that locks/unlocks vehicle doors, opens/closes vehicle windows, turns on/off vehicle lights, etc. 
         [0019]    Vehicle manufacturer  101  also provides the control unit ID  104  to a dealer  105 . The control unit ID exchange  104  is performed in a secure or non-public manner. The dealer  105  should also maintain the secrecy of the control unit ID for system security. 
         [0020]    Although the example used herein refers to a vehicle manufacturer  101  and a vehicle control unit, it will be understood that the control unit  103  may be used to control non-vehicle operations, such as opening/closing a garage door, gate, hotel entrance, remote home entry, etc. Similarly, other parties, such as a third party manufacturers, dealers, or resellers, may provide the control unit ID in place of vehicle manufacturer  101 . 
         [0021]    A key fob manufacturer  106  provides, loads, or installs a unique key fob ID  107  to a key fob  108 . The key fob ID does not need to be kept secret, which allows users, such as dealer  105 , to easily determine the key fob ID for a particular key fob  108 , while completely eliminating the procedure and cost that would otherwise incur for maintaining the secrecy and authenticity. The dealer may obtain the key fob ID directly from the key fob manufacturer  106  in transaction  109 . Alternatively, dealer  105  may obtain the key fob ID directly from the key fob  108  in transaction  110 . For example, the key fob  108  may be marked with the key fob ID. 
         [0022]    Using the process illustrated in  FIG. 1  or some other process, the dealer  105  obtains both the secret control unit ID and the non-secret key fob ID. For example, dealer  105  may be a franchisee or licensee that sells, services, or repairs vehicles provided by manufacturer  101 . Manufacturer  101  has a trusted relationship with dealer  105  that allows for exchange of the control unit ID while maintaining it as a secret. Dealer  105  may obtain key fobs and key fob IDs from any third-party manufacturer  106  without needing to maintain secrecy of the key fob ID. 
         [0023]    In one embodiment, the key fob ID and control unit ID may be eight character hexadecimal words. 
         [0024]      FIG. 2  illustrates an initial pairing between a control unit  201  and a selected key fob  202  using a pairing device  203 , which may communicate with control unit  201  and/or key fob  202  wirelessly. Alternatively, pairing unit  203  may be capable of directly connecting to one or both of control unit  201  and key fob  202 , such as by connecting using a USB cable or other link, during a pairing process. Additionally, control unit  201  and key fob  202  may communicate wirelessly or directly. 
         [0025]    In addition to the key fob ID, key fob  202  has a public key and a private key that can be used for a password scrambled key agreement protocol, with the key fob ID serving as the password. The key agreement protocol may be based on elliptical curve cryptography (ECC). 
         [0026]    In  FIG. 2A , during the pairing process, the dealer may select key fob  202  out of many available unused key fobs, which renders the actual key fob ID being used for pairing secret to others. The dealer also determines the control unit ID for control unit  201 , which is maintained as a secret. The dealer then enters the control unit ID ( 204 ) and key fob ID ( 205 ) in pairing device  203 . 
         [0027]    In  FIG. 2B , key fob  202  sends its public key scrambled with the key fob ID ( 206 ) to pairing device  203 . Using the key fob ID, which has already been provided, the pairing device  203  recovers the key fob&#39;s public key by unscrambling message  206 . 
         [0028]    An unauthorized, fraudulent, or malevolent party may attempt to introduce a fake key fob  212  into the pairing process by transmitting message  216  to pairing device  203 . This attempt will be futile because that party does not know the ID of the key fob  202  selected by the dealer for pairing and hence will need to use a different ID to scramble the public key of the fake key fob  212 . As a result, even if pairing device  203  did receive message  216  from fake key fob  212 , pairing device  203  would not be able to unscramble the fake key fob&#39;s public key. Accordingly, a fake key fob  212  would not be able to inject itself into the pairing process. 
         [0029]    In  FIG. 2C , pairing device  203  and control unit  201  execute an ECC-based key agreement protocol, such as a Diffie-Hellman key exchange ( 207 ), authenticated by a password taken or derived from the control unit ID. The pairing device  203  and control unit  201  authenticate each other with the control unit ID and generate an encryption key (DHkey) through the authenticated exchange  207 . Pairing device  203  encrypts the key fob&#39;s public key recovered earlier from message  206  with the DHkey generated in exchange  207 . Pairing device  203  then sends the encrypted key fob public key ( 208 ) to control unit  201 , which recovers the key fob&#39;s public key using the DHkey that is shared with pairing device  203 . 
         [0030]    An unauthorized, fraudulent, or malevolent party may attempt to use a fake pairing device  213 . However, because fake pairing device  213  does not know the secret control unit ID for control unit  201 , its authentication with the control unit  201  will fail, thus generating no shared DHKey. Accordingly, a fake pairing device cannot be used to pair a key fob to the control unit  201 . 
         [0031]    In  FIG. 2D , key fob  202  selects an OpKey for use with control unit  201 . Key fob  202  encrypts the OpKey with its private key. Key fob  202  also creates an AES-128 OpKey-encrypted value of OpKey. Key fob  202  extracts a number of bits (verification bits), such as the 8, 16, or 32 lowest-order bits, from the AES-128 OpKey-encrypted value of OpKey for use in verifying exchanges with the control unit. Key fob  202  sends ( 209 ) the private-key-encrypted OpKey and the AES-128 verification bits to control unit  201 . 
         [0032]    Control unit  201  decrypts the OpKey using the key fob&#39;s public key, which was provided by pairing device  203  in message  208 . Control unit  201  computes an AES-128 OpKey-encrypted value of the extracted OpKey and extracts a number of bits from the AES-128 OpKey-encrypted value of OpKey. These bits created by control unit  201  are compared to the verification bits received from key fob  202  to verify that the decrypted value of OpKey was correct. 
         [0033]    An unauthorized, fraudulent, or malevolent party may attempt to use fake key fob  212  to pair with control unit  201 . However, because fake key fob  212  did not get its public key transferred to pairing device  203 , fake key fob  212  never had its public key sent to control unit  201 . As a result, when fake key fob  212  sends a fake OpKey encrypted with its private key, control unit  201  is not able to decrypt the fake OpKey without the proper corresponding public key. Accordingly, a fake key fob is not able to pair with the control unit  201 . 
         [0034]    As illustrated in  FIG. 2E , the key fob  202  may delete its key fob ID and private key after the initial pairing with control unit  201 . This prevents unauthorized third-parties from accessing those values and using them to attempt to pair an unauthorized key fob with control unit  201 . Additionally, this prevents the key fob  202  from pairing with other devices. 
         [0035]      FIG. 3  is a flowchart illustrating steps performed by a pairing device according to one embodiment. In step  301 , the pairing device receives a control unit ID. The control unit ID should be kept secret to the maximum extent practicable so that unauthorized users cannot pair key fobs to the control unit. In one embodiment, the control unit ID is available from a manufacturer or vendor, but cannot be determined directly from the control unit itself. In step  302 , the pairing device receives a key fob ID. The key fob ID may be provided by the key fob device itself or by a key fob manufacturer or vendor. 
         [0036]    In step  303 , the pairing device receives the key fob&#39;s public key, which has been scrambled with the key fob ID. In step  304 , the pairing device recovers the key fob&#39;s public key by unscrambling the information received in step  303  using the key fob ID received in step  302 . Only a device that has the key fob&#39;s ID can recover scrambled public key. If the pairing device selects the key fob at random and/or selects the key fob from a large group of key fobs, then unauthorized receivers of the scrambled public key will not know which key fob ID to use to recover the public key. 
         [0037]    In step  305 , the pairing device generates a shared key with the control unit using the control unit ID for authentication. In one embodiment, the shared key is generated using the Diffie-Hellman key exchange. In step  306 , the pairing device encrypts the key fob&#39;s public key with the shared key and sends it to the control unit. Because the key fob only sends its public key to the pairing device, the control unit can only get the public key via the pairing device. Additionally, because the key fob&#39;s public key is scrambled with the key fob ID when sent to the pairing device and encrypted with the shared key when sent to the control unit, an outside observer is not able to obtain the key fob&#39;s public key without knowing this additional information. 
         [0038]      FIG. 4  is a flowchart illustrating steps performed by a key fob according to one embodiment. In step  401 , the key fob scrambles its public key with the key fob ID. In step  402 , the key fob sends the scrambled public key to the pairing device. The pairing device then unscrambles the public key and passes it to the control unit as described herein. 
         [0039]    In step  403 , the key fob selects an OpKey and, in step  404 , encrypts the OpKey with the key fob&#39;s private key. In step  405 , the key fob generates an AES-128 OpKey encrypted value of the OpKey. In step  406 , the key fob sends the encrypted OpKey and selected bits of the AES-128 OpKey encrypted value of the OpKey to the control unit. 
         [0040]      FIG. 5  is a flowchart illustrating steps performed by a control unit according to one embodiment. In step  501 , the control unit executes an ECC-based key agreement with the pairing device using the control unit ID for authentication. In step  502 , the control unit receives the key fob&#39;s public key from the pairing device, where the public key is encrypted with the shared key. 
         [0041]    In step  503 , the control unit receives the OpKey from the key fob, where the OpKey is encrypted using the key fob&#39;s private key. In step  504 , the control unit receives selected bits of an AES-128 OpKey-encrypted value of OpKey from the key fob. 
         [0042]    In step  505 , the control unit decrypts the OpKey using the key fob&#39;s public key, which was received from the pairing device in step  502 . In step  506 , using the decrypted OpKey, the control unit creates an AES-128 OpKey-encrypted value of Opkey. Finally, in step  507 , the control unit compares bits from the AES-128 OpKey-encrypted value of Opkey to the selected bits received from the key fob in step  504 . 
         [0043]    Following the processes outlined in  FIGS. 4 and 5 , both the key fob and the control unit have the value of OpKey, which can be used for operations between the key fob and the control unit. One example of the operations between the key fob and the control unit is disclosed in pending U.S. patent application Ser. No. 13,969/133, titled “One-Way Key Fob and Vehicle Pairing Verification, Retention, and Revocation,” filed on Aug. 16, 2013, the disclosure of which is hereby incorporated by reference herein in its entirety. 
         [0044]      FIGS. 6, 7, and 8  show block diagrams of an example pairing device  600 , key fob  700 , and control unit  800 , respectively, in accordance with various examples discussed herein. The three devices—pairing device  600 , key fob  700 , and control unit  800 —may each comprise a processor ( 601 ,  701 ,  801 ), a memory ( 602 ,  702 ,  802 ), and a transceiver or transmitter ( 603 ,  703 ,  803 ). The processors of the devices may be used to perform the public key scrambling or descrambling computations, authentication computations, common secret key generation computations, public key or OpKey encryption or decryption computation, and OpKey verification value computations that take place during the pairing process. The processors may be a standard CPU, a microcontroller, a low-power digital signal processor, etc. and may be capable of performing complex calculations in a short time. 
         [0045]    The memories of the devices may be used to store the public and private key pairs associated with their respective. Alternatively or additionally, the memories of the three devices may be used to store the IDs of their own or the other devices. For example, the pairing device  600  may store both the key fob ID and control unit ID before initiating a paring sequence. The memories may be a non-volatile storage device such as a flash memory or an EEPROM. 
         [0046]    The transceivers for the three devices may be wired (not shown), wireless, or capable of both. The transceivers may be used by the devices to communicate the device IDs, public keys, and/or scrambled or encrypted data during the initial configuration steps and the initial pairing steps. The key fob allows for remote entry and control of vehicles or other devices and may use wireless technology, such as Bluetooth, LF, or UHF, for those transmissions. The devices may also be able to communicate via a wire during the initial pairing process. The key fob transmitter  703  is capable of transmitting only and does not receive signals from the pairing device  600  or control unit  800 . 
         [0047]    Many modifications and other embodiments of the invention will come to mind to one skilled in the art to which this invention pertains having the benefit of the teachings presented in the foregoing descriptions, and the associated drawings. Therefore, it is to be understood that the invention is not to be limited to the specific embodiments disclosed. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.