EP1179244A1

Method and apparatus for initializing secure communications among, and for exclusively pairing wireless devices

Abstract

A method and system for efficiently establishing secure communications between mobile devices in a radio network. The present invention utilizes public key cryptography and unique hardware identifiers to enable authorizations for access to wireless networks, such as picocells. The present invention prevents the mobile user from maintaining a plurality of secrets such as user identifier/password pairs, PINs, or encryption keys, for access to each device to which he might require access. Wireless devices distributed throughout an enterprise are enabled to be efficiently initialized for secure communications. Well-known public key cryptography and machine unique identifiers are utilised to establish a secure channel and initialize the wireless devices. Wireless devices are enabled to be paired or permanently associated by a user or a network administrator. Well known public key cryptography and machine unique identifiers are utilised to establish a secure channel and associate the devices with each other. This is extremely useful for associating a wireless headset with a telephone or associating a wireless mouse with a computer.

Term

Term ended

Projected expiry passed 22 May 2020, 6.3 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

76 claims: 17 independent, 59 dependent

  1. 1
    Claims of equivalent WO 0072506 A1 CLAIMS 1. A method for initializing secure communications between a first device and a second device, said first and second devices each having a public key of a Certificate Authority and a device certificate, said device certificate having a unique hardware identifier associated with said respective device, and a public key associated with said respective device, said method comprising the steps of:establishing a session between said first device and said second device;negotiating two-way session encryption and mutual authentication requirements between said first and said second device;exchanging device certificates of said first device and said second device;cryptographically verifying the received certificate using the public key of said Certificate Authority;exchanging challenges created by each of said first and second devices;responding to said respective challenges by signing said received challenge, using the receiving device's private key, said private keys residing in the respective protected storage in each said device;returning said signed challenges;cryptographically verifying that said received challenge signature is of the challenge previously sent by said receiving device;establishing a key agreement between said first and said second devices;and, establishing secure communications if all of said prior verifying steps succeed.
  2. 6
    A method as claimed m claim 1 wherein said protected storage is read-write storage wherein the read capacity of said storage is accessible only by means of a shared secret .
  3. 7
    A method as claimed claim 1 wherein said public key of a Certificate Authority is a public key of a root Certificate Authority.
  4. 8
    A method for initializing a first device distributed with an embedded radio module using a server, said server having an embedded radio module, said method comprising the steps of sending an inquiry from said server to said first αevice using said embedded radio modules;returning, from said first device, a unique device identifier of said first device, to said server;creating, at said server, a public key, private key pair for said first device;creating, at sa d server, a device certificate for said first device, said device certificate having a unique hardware identifier associated with said first device and a public key associated with said first device;transmitting said private key, and said device certificate, and a public key of a Certificate Authority which signed said device certificate, to said first device;and, storing said private key m non-removable protected storage at said first device.
  5. 9
    A method as claimed claim 8 wherein a copy of said certificate s stored m an enterprise database.
  6. 11
    A method for initializing a first device distributed with an embedded radio module using a server, said server having an embedded radio module, said method comprising the steps of:sending an inquiry from said server to said first device using said embedded radio modules;creating, at said first device, a public key, private key pair for said first device;storing, at said first device, said private key in non-removable protected storage ;returning, from said first device, a unique device identifier and said public key of said first device, to said server;creating, at said server, a device certificate for said first device, said device certificate having said device identifier and said public key;and transmitting said device certificate and a public key of a Certificate Authority which signed said device certificate to said first device.
  7. 13
    A method for establishing a security relationship between a first device and a second device, said first and second devices each having an associated device certificate, each of said device certificates having a unique device identifier for said corresponding device, said method comprising the steps of:initiating a pairing request one of said devices to the other of said devices;sending, from said first device, the device certificate of said first device to said second device;cryptographically verifying, by said second device, said received device certificate of said first device;outputting, at said second device, the device identifier of said first device contained in said first device certificate;verifying, by said user, that said output device identifier matches the unique identifier of said first device, said unique identifier being known to said user;and, accepting, by said user, the association of said first device and said second device if said displayed device identifier is verified.
  8. 26
    A program for initializing secure communications between a first device and a second device, said first and second devices each having a public key of a Certificate Autnoπty and a device certificate, said device certificate having a unique hardware identifier associated with said respective device, and a public key associated with said respective device, sa d program code comprising:program code means for establishing a session between said first device and said second device, computer program code means for negotiating two-way session encryption and mutual authentication requirements between said first and said second device;computer program code means for exchanging device certificates of said first device and said second device, computer program code means for cryptographically verifying the received certificate using the public key of said Certificate Authority, computer program code means for exchanging challenges created by each of said first and second devices, computer program code means for responding to said respective challenges by signing said received challenge, using the receiving device's private key, said private keys residing n the respective protected storage in each said device;computer program code means for returning said signed challenges, computer program code means for cryptographically verifying that said received challenge signature is of the challenge previously sent by said receiving device;computer program code means for establishing a key agreement between said first and said second devices;and, computer program code means for establishing secure communications if all of said prior verifying steps succeed
  9. 34
    A program for initializing a first device distributed with an embedded radio module using a server, said server having an embedded radio module, said method comprising:computer program code means of sending an inquiry from said server to said first device using said embedded radio modules;computer program code means of returning, from said first device, a unique device identifier of said first device, to said server;computer program code means of creating, at said server, a public key, private key pair for said first device;computer program code means of creating, at said server, a device certificate for said first device, said device certificate having a unique hardware identifier associated with said first device and a public key associated with said first device;computer program code means of transmitting said private key, and said device certificate, and a public key of a Certificate Authority which signed said device certificate, to said first device;and, computer program code means of storing said private key in non-removable protected storage at said first device.
  10. 37
    A program for initializing a first device distributed with an embedded radio module using a server, said server having an embedded radio module, said method comprising:computer program code means of sending an inquiry from said server to said first device using said embedded radio modules;computer program code means of creating, at said first device, a public key, private key pair for said first device;computer program code means of storing, at said first device, said private key in non-removable protected storage;computer program code means of returning, from said first device, a unique device identifier and said public key of said first device, to said server;computer program code means of creating, at said server, a device certificate for said first device, said device certificate having said device identifier and said public key;and transmitting said device certificate and a public key of a Certificate Authority which signed said device certificate to said first device.
  11. 39
    A computer program product for establishing a security relationship between a first device and a second device, said first and second devices each having an associated device certificate, each of said device certificates having a unique device identifier for said corresponding device, said program product comprising:computer readable program code means of initiating a pairing request one of said devices to the other of said devices;computer readable program code means of sending, from said first device, the device certificate of said first device to said second device;computer readable program code means of cryptographically verifying, by said second device, said received device certificate of said first device;computer readable program code means of outputting, at said second device, the device identifier of said first device contained in said first device certificate;computer readable program code means of verifying, by said user, that said output device identifier matches the unique identifier of said first device, said unique identifier being known to said user;and, computer readable program code means of accepting, by said user, the association of said first device and said second device if said displayed device identifier is verified.
  12. 44
    A computer program as claimed in any one of claims 39 to 42 wherein the initiating of said pairing request is accomplished by making an input selection on one of said devices.
  13. 45
    A computer program as claimed in any one of claims 39 to 42 wherein the initiating of said pairing request is accomplished by one of said devices automatically detecting the other of said devices.
  14. 52
    A system for initializing secure communications between a first device and a second device, said first and second devices each having a public key of a Certificate Authority and a device certificate, said device certificate having a unique hardware identifier associated with said respective device, and a public key associated with said respective device, said system comprising:a communications mechanism for establishing a session between said first device and said second device, negotiating two-way session encryption and mutual authentication requirements between said first and said second device, and exchanging device certificates of said first device and said second device;a verifier for cryptographically verifying the received certificate using the public key of said Certificate Authority;a negotiation mechanism for exchanging challenges created by each of said first and second devices, responding to said respective challenges by signing said received challenge, using the receiving device's private key, said private keys residing m the respective protected storage in each said device, returning said signed challenges, cryptographically verifying that said received challenge signature is of the challenge previously sent by said receiving device, establishing a key agreement between said first and said second devices;and, establishing secure communications if all of said prior verifying steps succeed.
  15. 59
    A system for initializing a first device distributed with an embedded radio module using a server, said server having an embedded radio module, said system comprising:a communications mechanism for sending an inquiry from said server to said first device using said embedded radio modules, and returning, from said first device, a unique device identifier of said first device, to said server;a processor at said server for creating a public key, private key pair for said first device;a device certificate, created at said server, for said first device, said device certificate having a unique hardware identifier associated with said first device and a public key associated with said first device;wherein said communications mechanism transmits said private key, and said device certificate, and a public key of a Certificate Authority which signed said device certificate, to said first device;and, said processor stores said private key in non-removable protected storage at said first device.
  16. 62
    An initialization system, said system comprising:a first device, said first device having an embedded radio module;a server, said server having an embedded radio module;a communications mechanism, said communications mechanism sending an inquiry from said server to said first device using said embedded radio modules ;wherein said first device creates a public key, private key pair for said first device, stores said private key in non-removable protected storage, and returns a unique device identifier and said public key of said first device, to said server;said server creates a device certificate for said first device, said device certificate having said device identifier and said public key;and transmits said device certificate and a public key of a Certificate Authority which signed said device certificate to said first device.
  17. 64
    A system for a user to establish a security relationship, said system comprising:a first device;a second device;a device certificate with each of said first and second devices, each of said device certificates having a unique device identifier for said corresponding device, wherein one of said first and second devices initiates a pairing request to the other of said devices, sends said device certificate of said first device from said first device to said second device, wherein said second device cryptographically verifies said received device certificate of said first device, outputs the device identifier of said first device contained in said first device certificate;wherein said user verifies that said output device identifier matches the unique identifier of said first device, said unique identifier being known to said user;and accepts the association of said first device and said second device if said displayed device identifier is verified.
Independent claims17