EP1179244B1

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.

EP1179244B1, drawing sheet 1
Sheet 1 of 8

Term

Term ended

Expired 22 May 2020, 6.3 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

15 claims: 15 independent, 0 dependent

  1. 1
    A method for initializing secure communications between a first device (1003) and a second device (1001), said first and second devices each having a public key of a Certificate Authority (1005) and a device certificate (1050), each said device certificate having a unique hardware identifier (1015) associated with said respective device, and a public key (1040) associated with said respective device, said method comprising the steps of:establishing (1010) 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;each of said first and said second devices creating a challenge and sending it to the other one of said first and second devices;each of said first and said second devices responding (1070) to said respective challenges by signing said received challenge, using the receiving device's private key, said private keys residing in a respective protected storage in each said device;each of said first and said second devices returning said signed challenges;cryptographically verifying that the received signed challenge signature corresponds to 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. Procédé destiné à initialiser des communications sécurisées entre un premier dispositif (1003) et un second dispositif (1001), lesdits premier et second dispositifs comportant chacun une clé publique d'une autorité de certification (1005) et un certificat de dispositif (1050), chaque dit certificat de dispositif ayant un identificateur de matériel unique (1015) associé audit dispositif respectif, et une unité publique (1040) associée audit dispositif respectif, ledit procédé comprenant les étapes consistant à : établir (1010) une session entre ledit premier dispositif et ledit second dispositif,négocier des exigences de cryptage de session dans les deux sens et d'authentification mutuelle entre ledit premier et ledit second dispositifs,échanger des certificats de dispositif dudit premier dispositif et dudit second dispositif,vérifier de façon cryptographique le certificat reçu en utilisant la clé publique de ladite autorité de certification,chacun desdits premier et second dispositifs créant une demande d'accès et l'envoyant à l'autre desdits premier et second dispositifs,chacun desdits premier et second dispositifs répondant (1070) auxdites demandes d'accès respectives en signant ladite demande d'accès reçue, en utilisant la clé privée du dispositif récepteur, lesdites clés privées résidant dans une mémoire protégée respective dans chaque dit dispositif,chacun desdits premier et second dispositifs renvoyant lesdites demandes d'accès signées,vérifier de façon cryptographique que la signature de demande d'accès signée reçue correspond à la demande d'accès précédemment envoyée par ledit dispositif récepteur,établir l'accord de clé entre lesdits premier et second dispositifs, etétablir les communications sécurisées si toutes lesdites étapes de vérification antérieures réussissent. Verfahren zur Initialisierung von sicheren Verbindungen zwischen einer ersten Einheit (1003) und einer zweiten Einheit (1001), wobei die erste Einheit und die zweite Einheit jeweils über einen öffentlichen Schlüssel einer Zertifizierungsstelle (1005) und ein Einheitenzertifikat (1050) verfügen, wobei jedes Einheitenzertifikat eine eindeutige Hardware-Kennung (1015), die zu der jeweiligen Einheit gehört, und einen öffentlichen Schlüssel (1040), der zu der jeweiligen Einheit gehört, hat, wobei das Verfahren die folgenden Schritte umfasst: Aufbauen (1010) einer Sitzung zwischen der ersten Einheit und der zweiten Einheit;Aushandeln einer Zwei-Wege-Sitzungsverschlüsselung und der Anforderungen an eine gegenseitige Berechtigungsprüfung zwischen der ersten Einheit und der zweiten Einheit;Austauschen von Einheitenzertifikaten der ersten Einheit und der zweiten Einheit;kryptographisches Prüfen der Echtheit des empfangenen Zertifikats unter Verwendung des öffentlichen Schlüssels der Zertifizierungsstelle;Erzeugen einer Zufallszahl (challenge) durch die erste Einheit und die zweite Einheit und Senden der Zufallszahl an die jeweils andere der ersten und der zweiten Einheiten;Antworten (1070) auf die jeweiligen Zufallszahlen durch die erste und die zweite Einheit, indem die empfangene Zufallszahl unter Verwendung des privaten Schlüssels der Empfangseinheit signiert wird, wobei sich die privaten Schlüssel in einem entsprechenden geschützten Speicher in einer jeden Einheit befinden;Zurücksenden der signierten Zufallszahlen durch die erste und die zweite Einheit;kryptographisches Prüfen, ob die empfangene Zufallszahlen-Signatur der Zufallszahl entspricht, die zuvor von der Empfangseinheit gesendet wurde;Treffen einer Schlüsselvereinbarung zwischen der ersten Einheit und der zweiten Einheit;undHerstellen von sicheren Verbindungen, wenn alle vorhergehenden Prüfschritte erfolgreich sind.
  2. 2
    A method as claimed in claim 1 wherein said first established session is non-secure. Procédé selon la revendication 1, dans lequel ladite première session établie est non sécurisée. Verfahren nach Anspruch 1, wobei die erste aufgebaute Sitzung nicht sicher ist.
  3. 3
    A method as claimed in claim 1 wherein said first established session is an authenticated connection. Procédé selon la revendication 1, dans lequel ladite première session établie est une connexion authentifiée. Verfahren nach Anspruch 1, wobei die erste aufgebaute Sitzung eine nach einer Berechtigungsprüfung freigegebene Verbindung ist.
  4. 4
    A method as claimed in claim 1 wherein said first established session is an encrypted connection. Procédé selon la revendication 1, dans lequel ladite première session établie est une connexion cryptée. Verfahren nach Anspruch 1, wobei die erste aufgebaute Sitzung eine verschlüsselte Verbindung ist.
  5. 5
    A method as claimed in claim 1 wherein said unique hardware identifier (1015) is a machine (MAC) address for said associated device. Procédé selon la revendication 1, dans lequel ledit identificateur de matériel unique (1015) est une adresse de machine (MAC) pour ledit dispositif associé. Verfahren nach Anspruch 1, wobei die eindeutige Hardware-Kennung (1015) eine Maschinen-(MAC-)Adresse für die zugehörige Einheit ist.
  6. 6
    A method as claimed in 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. Procédé selon la revendication 1, dans lequel ladite mémoire protégée est une mémoire à lecture et écriture où la capacité de lecture de ladite mémoire est accessible uniquement au moyen d'un secret partagé. Verfahren nach Anspruch 1, wobei der geschützte Speicher ein Schreib-Lese-Speicher ist, wobei auf die Lesefunktion des Speichers nur mittels eines gemeinsam genutzten Geheimnisses zugegriffen werden kann.
  7. 7
    A method as claimed in claim 1 wherein said public key of a Certificate Authority (1005) is a public key of a root Certificate Authority. Procédé selon la revendication 1, dans lequel ladite clé publique d'une autorité de certification (1005) est une clé publique d'une autorité de certification de racine. Verfahren nach Anspruch 1, wobei der öffentliche Schlüssel einer Zertifizierungsstelle (1005) ein öffentlicher Schlüssel einer Stammzertifizierungsstelle ist.
  8. 8
    A computer program directly loadable into the internal memory of a digital computer, comprising software code portions for performing the steps of any one of claim 1 to claim 7 when said computer program is run on a computer. Programme informatique pouvant être chargé directement dans la mémoire interne d'un ordinateur numérique, comprenant des parties de codes logiciels destinées à exécuter les étapes selon l'une quelconque des revendications 1 à 7, lorsque ledit programme informatique est exécuté sur l'ordinateur. Rechnerprogramm, das direkt in den internen Speicher eines digitalen Rechners geladen werden kann und Softwarecode-Teile zur Durchführung der Schritte nach einem der Ansprüche 1 bis 7 umfasst, wenn das Rechnerprogramm auf einem Rechner ausgeführt wird.
  9. 9
    A system for initializing secure communications between a first device (1003) and a second device (1001), said first and second devices each having a public key of a Certificate Authority (1005) and a device certificate (1050), said device certificate having a unique hardware identifier (1015) associated with said respective device, and a public key (1040) associated with said respective device, said system comprising:means 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;means for cryptographically verifying the received certificate using the public key of said Certificate Authority;means 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 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. System zur Initialisierung von sicheren Verbindungen zwischen einer ersten Einheit (1003) und einer zweiten Einheit (1001), wobei die erste Einheit und die zweite Einheit jeweils über einen öffentlichen Schlüssel einer Zertifizierungsstelle (1005) und ein Einheitenzertifikat (1050) verfügen, wobei das Einheitenzertifikat eine eindeutige Hardware-Kennung (1015), die zu der jeweiligen Einheit gehört, und einen öffentlichen Schlüssel (1040), der zu der jeweiligen Einheit gehört, hat, wobei das System Folgendes umfasst: ein Mittel, um eine Sitzung zwischen der ersten Einheit und der zweiten Einheit aufzubauen, eine Zwei-Wege-Sitzungsverschlüsselung und Anforderungen an eine gegenseitige Berechtigungsprüfung zwischen der ersten Einheit und der zweiten Einheit auszuhandeln und Einheitenzertifikate der ersten Einheit und der zweiten Einheit auszutauschen;ein Mittel, um die Echtheit des empfangenen Zertifikats unter Verwendung des öffentlichen Schlüssels der Zertifizierungsstelle kryptographisch zu prüfen;ein Mittel, um Zufallszahlen, die von der ersten Einheit und der zweiten Einheit erzeugt werden, auszutauschen, auf die jeweiligen Zufallszahlen zu reagieren, indem die empfangene Zufallszahl unter Verwendung des privaten Schlüssels der Empfangseinheit signiert wird, wobei sich die privaten Schlüssel in dem entsprechenden geschützten Speicher in einer jeden Einheit befinden, und um die signierten Zufallszahlen zurückzusenden;kryptographisches Überprüfen, ob die empfangene Zufallszahlen-Signatur der Zufallszahl entspricht, die zuvor von der Empfangseinheit gesendet wurde, Erstellen einer Schlüsselvereinbarung zwischen der ersten Einheit und der zweiten Einheit;und Herstellen sicherer Verbindungen, wenn alle vorhergehenden Prüfschritte erfolgreich sind. Système destiné à initialiser des communications sécurisées entre un premier dispositif (1003) et un second dispositif (1001), lesdits premier et second dispositifs comportant chacun une clé publique d'une autorité de certification (1005) et un certificat de dispositif (1050), ledit certificat de dispositif ayant un identificateur de matériel unique (1015) associé audit dispositif respectif, et une clé publique (1040) associée audit dispositif respectif, ledit système comprenant : un moyen destiné à établir une session entre ledit premier dispositif et ledit second dispositif, négocier des exigences de cryptage de session dans les deux sens et d'authentification mutuelle entre ledit premier dispositif et ledit second dispositif, et échanger les certificats de dispositif dudit premier dispositif et dudit second dispositif,un moyen destiné à vérifier de façon cryptographique le certificat reçu en utilisant la clé publique de ladite autorité de certification,un moyen destiné à échanger des demandes d'accès créées par chacun desdits premier et second dispositifs, répondre auxdites demandes d'accès respectives en signant ladite demande d'accès reçue, utiliser la clé privée du dispositif récepteur, lesdites clés privées résidant dans la mémoire protégée respective dans chaque dit dispositif, renvoyer ladite demande d'accès signée,vérifier de façon cryptographique que ladite signature de demande d'accès reçue correspond à la demande d'accès envoyée précédemment par ledit dispositif récepteur, établir un accord de clé entre ledit premier dispositif et ledit second dispositif et établir des communications sécurisées si la totalité desdites étapes de vérification antérieures réussissent.
  10. 10
    A system as claimed in claim 9 wherein said first established session is non-secure. System nach Anspruch 9, wobei die erste aufgebaute Sitzung nicht sicher ist. Système selon la revendication 9, dans lequel ladite première session établie est non sécurisée.
  11. 11
    A system as claimed in claim 9 wherein said first established session is an authenticated connection. System nach Anspruch 9, wobei die erste aufgebaute Sitzung eine nach einer Berechtigungsprüfung freigegebene Verbindung ist. Système selon la revendication 9, dans lequel ladite première session établie est une connexion authentifiée.
  12. 12
    A system as claimed in claim 9 wherein said first established session is an encrypted connection. System nach Anspruch 9, wobei die erste aufgebaute Sitzung eine verschlüsselte Verbindung ist. Système selon la revendication 9, dans lequel ladite première session établie est une connexion cryptée.
  13. 13
    A system as claimed in claim 9 wherein said unique hardware identifier (1015) is a machine (MAC) address for said associated device. System nach Anspruch 9, wobei die eindeutige Hardware-Kennung (1015) eine Maschinen-(MAC-)Adresse für die zugehörige Einheit ist. Système selon la revendication 9, dans lequel ledit identificateur de matériel unique (1015) est une adresse de machine (MAC) pour ledit dispositif associé.
  14. 14
    A system as claimed in claim 9 wherein said protected storage is read-write storage wherein the read capacity of said storage is accessible only by means of a shared secret. System nach Anspruch 9, wobei der geschützte Speicher ein Schreib-Lese-Speicher ist, wobei auf die Lesefunktion des Speichers nur mittels eines gemeinsam genutzten Geheimnisses zugegriffen werden kann. Système selon la revendication 9, dans lequel ladite mémoire protégée est une mémoire à lecture et écriture dans laquelle la capacité de lecture de ladite mémoire est accessible uniquement au moyen d'un secret partagé.
  15. 15
    A system as claimed in claim 9 wherein said public key of a Certificate Authority (1005) is a public key of a root Certificate Authority. System nach Anspruch 9, wobei der öffentliche Schlüssel einer Zertifizierungsstelle (1005) ein öffentlicher Schlüssel einer Stammzertifizierungsstelle ist. Système selon la revendication 9, dans lequel ladite clé publique d'une autorité de certification (1005) est une clé publique d'une autorité de certification de racine.