Système de programmation et de gestion sécurisées pour serrures comportant des moyens de communication sans contact et commandables par un téléphone portable NFC Secure programming and management system for locks comprising contactless communication means and controllable by an NFC mobile phone
L'invention concerne les serrures commandées au moyen d'un objet portatif formant clef, coopérant avec la serrure par un couplage mutuel non- galvanique de type NFC (communication en champ proche). Cet objet portatif peut être une carte ou un badge sans contact, mais il peut être également un téléphone portable équipé d'une puce NFC et d'une antenne NFC, la carte SIM du téléphone étant utilisée comme élément de sécurité.The invention relates to locks controlled by means of a portable key-forming object cooperating with the lock by a non-galvanic mutual coupling of the NFC type (near-field communication). This portable object can be a card or a contactless badge, but it can also be a mobile phone equipped with an NFC chip and an NFC antenna, the SIM card of the phone being used as a security element.
La technologie NFC consiste à coupler l'objet portatif et la serrure en faisant varier un champ magnétique produit par une bobine (technique dite "procédé par induction"). La serrure comporte à cet effet un circuit inductif excité par un signal alternatif qui produit un champ magnétique variable, détectable sur une portée de quelques centimètres tout au plus. L'objet portatif se trouvant dans cet espace reçoit l'énergie du champ (qui permet notamment de téléalimenter l'objet portatif, généralement dépourvu de source d'alimentation propre) et module une charge interne. Cette modulation, codée par diverses données issues de l'objet portatif (identifiant, clef de cryptage, etc.) est détectée à son tour par la serrure, établissant ainsi la communication bidirectionnelle recherchée. Il existe diverses techniques de codage et de cryptage pour sécuriser la communication sans contact entre l'objet portatif et la serrure, et protéger cette dernière contre tout risque de fraude.The NFC technology consists in coupling the portable object and the lock by varying a magnetic field produced by a coil (so-called "induction method" technique). The lock comprises for this purpose an inductive circuit excited by an alternating signal which produces a variable magnetic field, detectable over a range of a few centimeters at most. The portable object in this space receives the energy of the field (which makes it possible in particular to remote power the portable object, generally devoid of own power source) and modulates an internal load. This modulation, encoded by various data from the portable object (identifier, encryption key, etc.) is detected in turn by the lock, establishing the bidirectional communication sought. There are various coding and encryption techniques to secure contactless communication between the portable object and the lock, and protect the lock against any risk of fraud.
Ces techniques de protection mettent en oeuvre des algorithmes et clefs implémentés dans la serrure et dans les cartes ou badges destinés à être utilisés avec cette dernière. Lorsqu'un téléphone portable équipé de moyens de communication NFC est utilisé comme clef, les risques peuvent se trouver accrus, dans la mesure où ce téléphone est un objet banalisé, au surplus relié au réseau public de l'opérateur mobile, et non un objet spécifique, individualisé comme dans le cas de la carte ou du badge. Le but de l'invention est de proposer une technique de programmation et de gestion de serrures sans contact de type NFC, qui présente un niveau
de sécurité accru, adapté notamment à l'utilisation d'un téléphone portable muni de circuits NFC comme clef de commande de cette serrure. Le principe de l'invention consiste à prévoir un algorithme unique, généré de manière aléatoire pour chaque serrure au moment de la fabrication de celle-ci, et conservé par un site sécurisé, non public. Lors de la programmation initiale de la serrure, cet algorithme pourra être téléchargé par un téléphone portable depuis ce site sécurisé, après vérification de toutes les conditions requises pour authentifier l'utilisateur et la serrure. Outre cet algorithme unique, le téléphone pourra télécharger du site sécurisé d'autres éléments de sécurité tels que des clefs cryptographiques, identifiants, ... propres à assurer lors de la programmation de la serrure l'intégration de tous les éléments de sécurité procurant le niveau maximal de protection recherché.These protection techniques implement algorithms and keys implemented in the lock and in the cards or badges intended to be used with the latter. When a mobile phone equipped with NFC communication means is used as a key, the risks can be increased, insofar as this phone is a trivial object, moreover connected to the public network of the mobile operator, and not an object specific, individualized as in the case of the card or badge. The object of the invention is to propose a technique for programming and managing contactless locks of the NFC type, which has a level of increased security, particularly adapted to the use of a mobile phone with NFC circuits as the key to control this lock. The principle of the invention is to provide a unique algorithm generated randomly for each lock at the time of manufacture thereof, and kept by a secure, non-public site. During the initial programming of the lock, this algorithm can be downloaded by a mobile phone from this secure site, after checking all the conditions required to authenticate the user and the lock. In addition to this unique algorithm, the phone will be able to download from the secure site other security elements such as cryptographic keys, identifiers, etc. that can be used to ensure, when programming the lock, the integration of all the security elements providing the security. maximum level of protection sought.
00
Un exemple de mise en œuvre de l'invention est donné en référence à la Figure 1.An exemplary implementation of the invention is given with reference to FIG.
Le principe de gestion sécurisé de l'invention repose sur la division entre deux groupes d'entités 10, 12 ne pouvant communiquer entre elles que de façon restreinte et sécurisée comme cela est symbolisé par l'écran 14.The principle of secure management of the invention is based on the division between two groups of entities 10, 12 that can communicate with each other only in a restricted and secure manner as is symbolized by the screen 14.
Le groupe 10 rassemble des entités spécifiques sécurisées, comprenant le fabricant de serrures 16 et un site 18 propre au gestionnaire de serrures.Group 10 gathers specific secure entities, including the lock manufacturer 16 and a site 18 specific to the lock manager.
Le groupe 12, à l'opposé, rassemble un certain nombre d'entités non spé- cifiques côté utilisateur, avec notamment un opérateur de réseau mobile 20. Cet opérateur comprend un module de fournisseur de services (bloc 22) qui communique d'une part (interface 24) avec le site sécurisé 18 et d'autre part (interface 26) avec un utilisateur 28 via un moyen de communication banalisé 30 tel que web, WAP, "hotline", etc. Le téléphone 32 de l'utilisateur 28 est, quant à lui, interface avec le fournisseur de services 22 de l'opérateur de réseau mobile via un fournisseur de services de confiance (TSM) 34, propre à assurer de manière efficace et sûre les diverses procédures de téléchargement de données entre le site gestionnaire distant 18 et le téléphone portable 32 via le fournisseur de services 22 de l'opérateur de réseau mobile.
En effet, dans le cas d'une carte ou d'un badge, une part importante de la sécurité est assurée par la remise physique de cet objet à l'utilisateur légitime, de la même façon que la remise d'un jeu de clefs. En revanche, si l'objet portatif est un téléphone portable, il s'agit d'un objet banalisé, qui n'est a priori pas associé à une serrure donnée. Il comporte certes une carte SIM qui identifie l'utilisateur, et un identifiant IMEI qui identifie le téléphone de manière unique, mais au départ la serrure ne connaît pas ces identifiants et ne saura pas les reconnaître lorsqu'un téléphone sera approché de la serrure. II est donc nécessaire, une fois la serrure posée, de procéder à une opération dite "programmation" consistant à apprendre à celle-ci à identifier tel téléphone qui lui est présenté comme étant bien celui de l'utilisateur habilité, puis à basculer ensuite dans un mode où seul ce téléphone pourra commander la serrure (cette opération pouvant bien entendu être répé- tée pour d'autres téléphones, si l'on souhaite habiliter plusieurs personnes).Group 12, on the other hand, includes a number of non-user-specific entities, including a mobile network operator 20. This operator includes a service provider module (block 22) which communicates a number of non-user-specific entities. part (interface 24) with the secure site 18 and secondly (interface 26) with a user 28 via an ordinary communication means 30 such as web, WAP, "hotline", etc. The telephone 32 of the user 28 is, in turn, interfaced with the service provider 22 of the mobile network operator via a trusted service provider (TSM) 34, able to ensure efficiently and safely the various data downloading procedures between the remote management site 18 and the mobile phone 32 via the service provider 22 of the mobile network operator. Indeed, in the case of a card or a badge, an important part of the security is ensured by the physical delivery of this object to the legitimate user, in the same way as the delivery of a set of keys . On the other hand, if the portable object is a mobile phone, it is an unmarked object, which is not a priori associated with a given lock. It includes a SIM card that identifies the user, and an IMEI identifier that uniquely identifies the phone, but initially the lock does not know these identifiers and will not recognize them when a phone is approached the lock. It is therefore necessary, once the lock is placed, to carry out a so-called "programming" operation consisting in teaching the latter to identify a telephone that is presented to it as being that of the authorized user, and then to switch to a mode where only this phone can control the lock (this operation can of course be repeated for other phones, if you want to empower several people).
On va maintenant décrire le déroulement des diverses étapes du procédé selon l'invention.The course of the various steps of the process according to the invention will now be described.
Le site gestionnaire sécurisé 18 contient un moteur cryptographique ca- pable de générer pour chaque serrure à fabriquer un algorithme unique, aléatoire, ainsi qu'un identifiant unique et des clefs de transport. L'algorithme aléatoire unique vient s'ajouter au mécanisme cryptographique conventionnel, et ajoute un niveau de sécurité supplémentaire aux techniques cryptographiques existantes. L'identifiant unique, désigné PUID (Public Unique IDentifier) est un identifiant non modifiable permettant de reconnaître la serrure entre toutes de manière unique et définitive.The secure management site 18 contains a cryptographic engine capable of generating for each lock to manufacture a unique, random algorithm, as well as a unique identifier and transport keys. The unique random algorithm adds to the conventional cryptographic mechanism, and adds an extra level of security to existing cryptographic techniques. The unique identifier, designated PUID (Public Unique IDentifier) is a non-modifiable identifier allowing to recognize the lock between all in a unique and definitive way.
Lorsque le fabricant 16 fabrique une serrure, il reçoit du site gestionnaire 18, par l'intermédiaire d'une communication cryptée sécurisée, l'identifiant PUID correspondant et les clefs de transport associées (ces informations pouvant éventuellement être globalement acquises sous forme de lots). On notera que l'algorithme unique n'est pas transmis au fabricant 16 par le site gestionnaire 18, qui le conserve en interne, en sachant toutefois à quel identifiant PUID il correspond.
Le fabricant 16 programme ensuite chaque serrure 36 avec son identifiant unique et sa clef de transport correspondante. I! programme également des cartes dites "cartes d'urgence" 38 avec la même clef de transport. Ces cartes permettront de manœuvrer la serrure pendant son installation, en ne faisant intervenir que des algorithmes simplifiés basés sur la clef de transport provisoire, ceci jusqu'à la programmation définitive où cette clef sera neutralisée et remplacée par une clef cryptographique définitive. Les serrures peuvent être alors expédiées afin d'être installées par l'utilisateur 28 à leur emplacement définitif 40. Une fois cette pose effectuée, la serrure doit faire l'objet d'une "programmation" pour y implémenter les algorithmes, les éléments de cryptographie avancés et les clefs définitives permettant d'obtenir le haut degré de sécurité recherché.When the manufacturer 16 manufactures a lock, it receives from the management site 18, via a secure encrypted communication, the corresponding PUID identifier and the associated transport keys (this information can possibly be generally acquired in the form of batches) . It will be noted that the unique algorithm is not transmitted to the manufacturer 16 by the management site 18, which stores it internally, knowing however which identifier PUID it corresponds to. The manufacturer 16 then programs each lock 36 with its unique identifier and its corresponding transport key. I! program also cards called "emergency cards" 38 with the same key transport. These cards will make it possible to maneuver the lock during its installation, by involving only simplified algorithms based on the temporary transport key, this until the definitive programming where this key will be neutralized and replaced by a definitive cryptographic key. The locks can then be shipped in order to be installed by the user 28 at their final location 40. Once this has been done, the lock must be "programmed" to implement the algorithms, the elements of the lock. advanced cryptography and the definitive keys to obtain the high degree of security sought.
Cette programmation peut être effectuée au moyen d'un téléphone porta- ble 32 pourvu de circuits NFC, pouvant être couplé par une communication bidirectionnelle NFC avec la serrure 40, comme cela est schématisé en par la liaison sans fil 42.This programming can be carried out by means of a portable telephone 32 provided with NFC circuits, which can be coupled by bidirectional NFC communication with the lock 40, as shown schematically by the wireless link 42.
Pour procéder à la programmation, l'utilisateur doit s'identifier et s'enregistrer auprès du site gestionnaire 18, qu'il contacte par tout moyen appro- prié via l'interface 26 de l'opérateur de réseau mobile. L'utilisateur fournit à l'opérateur 22 l'identifiant unique PUID de la serrure 40, information qui est transmise au site gestionnaire 18 par l'interface sécurisée 24. Le site gestionnaire 18 reconnaît l'identifiant PUID dans sa base de données et envoie en retour à l'opérateur de réseau mobile, via l'interface sécurisée 24 : l'algorithme unique de la serrure, les clefs cryptographiques correspondant à cette serrure, ainsi que la clef de transport correspondante. Le site vérifie également que le téléphone 32 utilisé est bien un téléphone pourvu de fonctionnalités NFCTo proceed with the programming, the user must identify himself and register with the management site 18, which he contacts by any appropriate means via the interface 26 of the mobile network operator. The user provides the operator 22 with the unique identifier PUID of the lock 40, which information is transmitted to the management site 18 by the secure interface 24. The manager site 18 recognizes the identifier PUID in its database and sends in return to the mobile network operator, via the secure interface 24: the unique algorithm of the lock, the cryptographic keys corresponding to this lock, and the corresponding transport key. The site also verifies that the telephone 32 used is a telephone equipped with NFC functionalities.
Les échanges entre le téléphone et le site gestionnaire, ainsi qu'entre le téléphone et la serrure, peuvent être gérés au moyen d'une application spécifique de type "applet" (appliquette) téléchargée au préalable par le téléphone. Cette applet, une fois chargée et activée, mettra en œuvre automatiquement les différentes étapes nécessaires à l'échange de données avec le site gestionnaire 18 et à la programmation de la serrure 40, et ce de manière parfaitement sécurisée.
Une fois toutes les données requises chargées dans le téléphone 32, il suffit à l'utilisateur de simplement présenter le téléphone devant la serrure 40 à programmer de manière à établir le couplage bidirectionnel 42 par voie NFC. Le téléphone remet tout d'abord à zéro la serrure en désactivant la clef de transport, rendant donc inopérantes les cartes d'urgence livrées avec la serrure. Il charge ensuite dans la serrure les éléments nécessaires à la mise en œuvre des procédures de sécurité, notamment l'algorithme aléatoire unique, la clef cryptographique définitive et la clef utilisateur. La pro- cédure cryptographique sécurisée peut alors être activée, et la phase de programmation est achevée.The exchanges between the telephone and the managing site, as well as between the telephone and the lock, can be managed by means of a specific application of the "applet" type (applet) previously downloaded by the telephone. This applet, once loaded and activated, will automatically implement the various steps necessary for the exchange of data with the management site 18 and the programming of the lock 40, in a perfectly secure manner. Once all the required data loaded into the phone 32, it is sufficient for the user to simply present the phone in front of the lock 40 to be programmed so as to establish the bidirectional coupling 42 by NFC. The phone first clears the lock by disabling the transport key, thus rendering inoperative the emergency cards delivered with the lock. It then loads into the lock the necessary elements to implement the security procedures, including the unique random algorithm, the final cryptographic key and the user key. The secure cryptographic procedure can then be activated, and the programming phase is completed.
Avantageusement, il est en outre proposé à l'utilisateur, après que celui-ci ait accepté la clef cryptographique définitive et chargé celle-ci ainsi que la clef utilisateur dans son téléphone, de dupliquer ces clefs sur une des car- tes d'urgence 34.Advantageously, it is also proposed to the user, after the latter has accepted the final cryptographic key and loaded it and the user key in his phone, to duplicate these keys on one of the emergency cards 34.
Pour ce faire, il suffit à l'utilisateur de prendre l'une des cartes d'urgence se trouvant dans l'emballage de la serrure et d'appliquer celle-ci contre son téléphone de manière à coupler ces deux éléments par voie NFC. L'applet du téléphone pourra alors lire le contenu de la carte, reconnaître dans celle-ci la clef de transport (chargée au moment de la fabrication de la serrure) et vérifier que cette clef correspond bien à celle transmise par le gestionnaire 18 en même temps que la clef cryptographique définitive. Si tel est le cas, l'applet neutralise la clef de transport et la remplace par la clef cryptographique et une copie de la clef utilisateur.
To do this, it is sufficient for the user to take one of the emergency cards in the lock package and apply it against his phone so as to couple these two elements NFC. The applet of the phone can then read the contents of the card, recognize in it the transport key (loaded at the time of manufacture of the lock) and check that this key corresponds to that transmitted by the manager 18 at the same time. time as the definitive cryptographic key. If this is the case, the applet disables the transport key and replaces it with the cryptographic key and a copy of the user key.