WO2012085214A1 - Procede de reconstruction d'une mesure de reference d'une donnee confidentielle a partir d'une mesure bruitee de cette donnee - Google Patents

Procede de reconstruction d'une mesure de reference d'une donnee confidentielle a partir d'une mesure bruitee de cette donnee Download PDF

Info

Publication number
WO2012085214A1
WO2012085214A1 PCT/EP2011/073809 EP2011073809W WO2012085214A1 WO 2012085214 A1 WO2012085214 A1 WO 2012085214A1 EP 2011073809 W EP2011073809 W EP 2011073809W WO 2012085214 A1 WO2012085214 A1 WO 2012085214A1
Authority
WO
WIPO (PCT)
Prior art keywords
function
data
extend
pos
val
Prior art date
Application number
PCT/EP2011/073809
Other languages
English (en)
Inventor
François CAPMAN
Gaëtan DELORME-GUILLON
Sandra Marcello
Eric Saliba
Original Assignee
Thales
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thales filed Critical Thales
Publication of WO2012085214A1 publication Critical patent/WO2012085214A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys

Definitions

  • the present invention relates to a secure method and an associated device for reconstructing a reference measurement of a confidential data from a noisy measurement of this data. It applies in particular to the generation of cryptographic keys.
  • Cryptographic applications typically require the storage of a key in an electronic device, for example.
  • it is recommended to use cryptographic keys of increasing size to ensure the security of information systems some devices have only a small memory space for the registration of a key .
  • RSA algorithm ascronym constructed from the names of the three inventors of the Rivest algorithm, Shamir and Adleman.
  • the key to be used is secret, its storage can constitute a security breach against an attacker.
  • the need in this field is to manage the constraints imposed by the error correction codes while generating a cryptographic key depending only on the noisy data not stored in the devices.
  • the prior art describes several methods for avoiding the storage of a secret key. These methods generally show the following two problems: a non-uniform character in the measured data and the presence of noise at the level of these data.
  • the enrollment phase can only be executed once; it produces, from a reference datum, denoted w, resulting from a measurement of a confidential data W supplied as input, a public datum, denoted s and sometimes referred to as a "sketch".
  • the reference data w can be obtained by a first measurement resulting from a processing of confidential data W received by a sensor. Only the public data is recorded, the reference data w being confidential.
  • the correction phase is executed each time that one wishes to find the data resulting from a processing of the confidential data W. For this purpose, a noisy data w 'coming from a measurement resulting from a processing of the confidential data W - for example a second measurement of the same fingerprint - is combined with the public data s.
  • the public data plays a role in reconstructing the confidential reference datum w from a noisy data item w '. If the noisy data is too far from the reference datum w, the latter can not be reconstructed. This is the case, for example, when the noisy data w 'is obtained by a measurement of processing a data X different from the confidential data.
  • the reconstruction of the reference data w implies the use of an error correction code.
  • XP007905964 there is described a method of enrolling a reference datum w in a device intended to retrieve a measurement of reference of a confidential datum from a noisy measurement of said datum, by performing a reference measurement of said confidential datum.
  • a correction code is characterized by three parameters: its length "n", its dimension "k” and its minimum distance "d".
  • the correction capacity "t" of the code is proportional to the minimum distance.
  • the noise level experienced by the data w 'therefore imposes a first constraint on the code, namely a lower bound for d.
  • a second constraint is to choose a dimension "k” for the code big enough because the security of the code is an exponential function in k.
  • the length n of the code is increased by the length of the reference datum w and the Singleton bound gives us nk ⁇ d-1 from which we deduce the inequality k ⁇ length (w) -d + 1.
  • the parameter k thus has two antagonistic constraints, which makes it sometimes difficult or impossible to find a corrector code appropriate to the data, that is to say that allows both to denoise correctly the data w 'while keeping a good level of security.
  • One of the objectives of the generalized secure sketch as described in the Applicant's patent application FR 09/03699 is to overcome these constraints by selecting a correction code of length n + k greater than the size n of the data item w. Then, thanks to a "key" S k , the data w is extended to w e of size n + k: the function that carries out this "elongation" or extension of size is called Extend. From there, the method described implements a secure sketch classic known to those skilled in the art and all form the generalized secure sketch.
  • One of the objectives of the present invention is to correct the problems related to the constraints on error correction codes by proposing a generalized secure sketch.
  • Another objective of the present invention is to provide a "generalized secure sketch refocused" when the "Extends k " function is invertible to find all the properties of standard secure sketches without constraints related to codes.
  • the "generalized secure sketch refocused” can be defined only when the function “Extendsk” is invertible, its inverse will be noted Extendsk "1
  • the principle implemented is to create a generalized secure sketch refocused which consists of a generalized secure sketch followed by the Extends k "1 function -
  • the Extends k " 1 function allows the data at the output of the system to recover its size. origin and lose its dependence on the key S k .
  • the subject of the invention relates to a method for enrolling a reference datum w in a device intended to retrieve a reference measurement of a confidential datum from a noisy measurement of said datum, characterized in that it includes at least the following steps:
  • the method comprises an additional step of reconstructing the extended reference datum we comprising at least the following steps:
  • step b2) use the data s found in step a4) and apply a secure sketch function in its correction phase by taking as input the extended noise data w'e and the data s to generate a denoise value we,
  • the Extend function is defined in a Hamming space and the method comprises at least the following steps:
  • Step b1) takes as input w'e F " ' , Sk and F *, and applies ExtendH to w' and Sk to deduce w e 'e F".
  • step b2) then applies Rec * to w e 'and s.
  • Extend h takes as input we F " ' and S k of the form
  • and the Extend A function consists in adding in the set w specific elements z in the following manner
  • the implemented Extend function is defined according to the editing distance that corresponds between two character strings to the minimum number of deletions and insertions necessary to switch from one string to another ,
  • the method may comprise an additional step in which the inverse function of the function Extends k is used , taking as input the extended data we and the key Sk in order to find the data item w.
  • the inverse function is the function (Extend "1 ⁇ sk, H ⁇ ) defined, for example, as follows:
  • the invention also relates to an electronic authentication system comprising a biometric sensor or a PUF characterized in that it comprises a recording medium storing a secret key Sk, a calculation unit implementing the steps of the method having one or several of the aforementioned characteristics, said unit being adapted to receive the secret key and a measurement of noisy or noiseless data of the sensor or the PUF.
  • FIG. 1A a diagram representing the steps of an enrollment procedure according to the invention using a generalized secure sketch and FIG. 1B a correction phase,
  • FIG. 2A a diagram representing the steps of an enrollment procedure and FIG. 2B, a correction phase implementing the refocused generalized secure sketches according to the invention
  • FIG. 3 an example of a device enabling implementation of the method according to the invention.
  • FIG. 1A represents the steps of an enrollment phase implementing the method according to the invention in the case of the use of a generalized secure sketch.
  • a generalized secure sketch is defined as a pair of enrollment and correction procedures that use a function called Extend as well as a classic secure sketch.
  • a secret key Sk is created and can for example be represented as two lists V and P.
  • the first list V ⁇ v ; v 2 , ... v k ⁇ defines k values to be inserted into the reference data w to increase its size and the second list, P2, - - -Pk ⁇ defines for each of the values of the list V, the position at which this value must be inserted.
  • This example is non-limiting, but this definition mode of the secret key Sk includes the advantage of being able to separately store the two lists V and P to increase the level of security of the process.
  • the k values of the list V are inserted 1 02 in the reference data w (of size n), so as to obtain an extended data of length n + k. Then, a function 104 of "secure sketch" classic in its enrollment phase is performed on the extended data we to produce the public data s size n + k.
  • An example of a secure sketch is the so-called code-offset construct described below.
  • the data s is a public non-sensitive data, therefore stored, for example in the electronic device executing the secure sketch.
  • FIG. 1B is a block diagram illustrating the steps of a correction phase with a first implementation of the method according to the invention.
  • the correction phase makes it possible, from a noisy measurement w 'of confidential data and the public data s of reconstruction generated during the enrollment phase executing the secure sketch, to reconstruct said confidential data item.
  • the noisy data item w 'to be processed is modified in a manner analogous to that of which the reference datum w has been modified during the enrollment phase, by using the secret key Sk.
  • the values of the list V is inserted 1 12 in the noisy data w 'at the positions specified by the list P.
  • An extended noise data w'e of size n + k is thus obtained and a decoding function with a conventional "secure sketch" can be applied to the extended noise data w'e.
  • a secret key Sk is much shorter in size than the cryptographic key to be produced, which makes it recordable in an electronic device with low storage capacity.
  • a secret key Sk defined by a list section (V, P) mobilizes k bits for storing the value bits of the first list V and less than k * log 2 (n + k) bits for the storing the insertion positions belonging to the second list P.
  • the correction phase consists of extending the new measure w 'with Extend and, using the sketch s, treat it with a secure sketch to get w e if w' is close enough to w.
  • the data w e is then the extended data w thanks to the Extend function.
  • one of the objectives of the present invention is to present different Extend functions adapted to increase the size of the data.
  • Another objective is to propose a "generalized secure sketch refocused" allowing to find all the properties of the standard secure sketches without the constraints related to the codes.
  • the principle implemented is to create a generalized secure sketch refocused which consists of a generalized secure sketch followed by the Extends function k "1 obtained from the Extend function
  • the Extends k " 1 function allows in particular the data output of the system to regain its original size and lose its dependence on the key S k .
  • Extend function is described below, according to several examples depending in particular on the space in which one works (set of fixed size bit strings, set of points, set of bit strings of variable size) and the distance used on this space (Hamming distance, symmetric difference and editing distance for which secure sketches are defined).
  • the construction of the generalized refocused generalized skits when the Extends k function is invertible will also be detailed later in the present description.
  • SSgr refocused generalized secure sketches
  • Extend function will be defined for three distances: Hamming distance (du), symmetrical difference (d A ) and editing distance (d E ). These distances correspond to existing secure sketches.
  • Extendn Extend A
  • the Extend function is given for the Hamming distance known to those skilled in the art.
  • the Extend function is defined according to the symmetrical difference.
  • the symmetrical distance d A is:
  • M P (U) be the set of parts of a set U. Then, for w, w ' ⁇ M, wu w ', xg wnw' ⁇
  • the Extend A function consists in adding in the set w specific elements z.
  • Extend A is defined as follows:
  • Non-invertibility the Extend ⁇ sk, A ⁇ function is not always invertible, for example when z has common elements with w or w '. In this case, when inverting the Extend ⁇ sk, A ⁇ > function, we will delete these common elements of w and w 'whereas we should not do this. According to a third mode of implementation, the Extend function will be given according to the editing distance.
  • the editing distance between two character strings is the minimum number of deletions and insertions needed to go from one string to another.
  • Sk [(pos-i, ..., poSk), (va, ..., valk)].
  • n be the length of the shortest M string.
  • valie F valie F.
  • the description of the method according to the invention described above involves a notion of generalized secure sketch for reconstructing a reference datum w from a noise measurement w 'of this data w while preserving the inaccessibility to this data w if the noise measurement w 'is not performed on said reference datum w.
  • a generalized secure sketch refocused which consists of a generalized secure sketch followed by the Extends k "1 function and allows in particular the data output of the system to regain its original size and lose its dependence on the Sk key.
  • FIGS. 2A and 2B schematize respectively the enrollment phase and the correction phase when using a refocused generalized secure sketch.
  • the Extend function used in the definition of generalized secure sketches is used to define the Extends k function, this function may not be invertible.
  • the Extends k function is invertible for Hamming and editing distances. It is then possible to apply the reverse Extendsk "1 to the system output to reverse the elongation of the data and lose the dependency on the key S k. Then we get what we call a generalized Secure Sketch refocused (SSGR ).
  • SSGR generalized Secure Sketch refocused
  • the output data of a refocused generalized secure sketch is independent of the key S k and has the same size as the input data which is not the case for a generalized secure sketch.
  • Extends k (w) Extend (S k , w) and Extend "1 s k (w) is the inverse of Extends k (w).
  • a refocused generalized secure sketch is a generalized secure sketch to which we have added the function Extends k "1 to the output.
  • the output data is exactly w (if w 'close enough to w) and this independently of the key S k .
  • FIG. 3 presents an electronic system implementing one or more variants of authentication methods according to the invention.
  • the system 301 comprises, for example, a biometric sensor or a device for extracting noisy data from the physical characteristics of a device (known by the Anglo-Saxon name PUF), a recording medium 305 memorizing a secret key Sk and a computing unit 307 implementing the method according to the invention.
  • the computing unit is adapted to receive the secret key Sk from the recording medium 305 and noisy data w 'from the sensor module 303.
  • an individual or a device to be identified generates, via the sensor 303, a datum w 'which is specific to it.
  • the recording medium 305 (for example a memory or a USB key, a network disk) is connected to the computing unit and supplies the secret key Sk.
  • the computing unit 307 attempts from these two data w ' and Sk, to reconstruct the reference datum w produced during a prior enrollment phase.
  • One of the advantages of the method according to the invention is to reconstruct a reference datum w from a noise measurement w 'of this datum w while preserving the inaccessibility to this datum w if the noise measurement w' n ' is not performed on said reference datum w.
  • Another advantage is to find the properties of a secure sketch (standard). This makes it possible to put a generalized secure sketch refocused (SSgr) in any system that uses remote secure sketches Hamming or distance editing and this seamlessly. All while fulfilling the problems related to the constraints of the codes.
  • An advantage of the refocused generalized secure sketch is to output a datum of the same size as the measurement and that this output is independent of the key S k .
  • Another advantage is to be able to control the security of the output data by perfectly mastering the key S k .
  • the generalized secure sketch makes it possible, in the case of a space provided with the distance called the symmetric difference, to overcome the constraints related to the correction code, even if it is true that the size of the output data is greater than that of the input data.
  • the refocused generalized secure sketch can not be defined for the symmetric difference.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Collating Specific Patterns (AREA)

Abstract

L'invention concerne un procédé d'enrôlement d'une donnée de référence w dans un dispositif destiné à retrouver une mesure de référence d'une donnée confidentielle à partir d'une mesure bruitée de ladite donnée, caractérisé en ce qu'il comporte au moins les étapes suivantes : a1) sélectionner une clé secrète Sk, a2) effectuer une mesure de référence de ladite donnée confidentielle, a3) appliquer une fonction Extend adaptée à augmenter la taille de la donnée mesurée en utilisant la clé secrète et la fonction Extend afin de générer une donnée étendue we, a4) appliquer une fonction secure sketch dans sa phase d'enrôlement afin de trouver la donnée s. Le procédé comporte une étape supplémentaire de reconstruction de la donnée de référence étendue we. Le procédé comporte une étape supplémentaire dans laquelle on utilise la fonction inverse de la fonction Extendsk, en prenant en entrée la donnée étendue we ainsi que la clé Sk afin de retrouver la donnée w.

Description

PROCEDE DE RECONSTRUCTION D'UNE MESURE DE REFERENCE D'UNE DONNEE CONFIDENTIELLE A PARTIR D'UNE MESURE
BRUITEE DE CETTE DONNEE La présente invention concerne un procédé sécurisé et un dispositif associé permettant de reconstruire une mesure de référence d'une donnée confidentielle à partir d'une mesure bruitée de cette donnée. Elle s'applique notamment à la génération de clés cryptographiques. Les applications faisant appel à la cryptographie nécessitent généralement le stockage d'une clé dans un appareil électronique, par exemple. Cependant, bien qu'il soit recommandé d'employer des clés cryptographiques de taille de plus en plus grande pour garantir la sécurité des systèmes d'information, certains appareils ne disposent que d'un faible espace mémoire pour l'enregistrement d'une clé. A titre illustratif, il est courant d'utiliser une clé cryptographique d'au moins 2048 bits pour l'algorithme RSA à clé publique (acronyme construit à partir du nom des trois inventeurs de l'algorithme Rivest, Shamir et Adleman). Par ailleurs, lorsque la clé à utiliser est secrète, son stockage peut constituer une faille de sécurité face à un attaquant.
Le besoin dans ce domaine consiste à gérer les contraintes imposées par les codes correcteurs d'erreurs tout en générant une clé cryptographique ne dépendant que de la donnée bruitée non stockée dans les appareils.
L'art antérieur décrit plusieurs méthodes permettant d'éviter le stockage d'une clé secrète. Ces méthodes montrent en général les deux problèmes suivants : un caractère non uniforme dans les données mesurées et la présence de bruit au niveau de ces données.
Ces deux problèmes ont été traités notamment par Dodis et al. dans l'article intitulé :"Fuzzy extractors : How to generate strong keys from biométries and other noisy data" publié dans les comptes-rendus de la conférence Eurocrypt 2004, LCNS, vol. 3027, pp 523-540. Pour rendre les données stables malgré la présence de bruit, les auteurs de cet article proposent l'utilisation d'un extracteur flou composé de deux primitives. Un premier module, désigné par l'expression anglo-saxonne « secure sketch >> permet la conciliation de l'information, c'est-à-dire le rétablissement d'une valeur systématiquement identique en sortie pour une donnée d'entrée bruitée et un second module permet de rendre uniforme la sortie de l'extracteur flou par application d'une fonction d'extraction d'aléa sur ladite sortie préalablement stabilisée. Le module « secure sketch >> va fonctionner en deux phases : l'enrôlement et la correction. La phase d'enrôlement peut n'être exécutée qu'une seule fois ; elle produit, à partir d'une donnée de référence, notée w, issue d'une mesure d'une donnée confidentielle W fournie en entrée, une donnée publique, notée s et parfois qualifiée de « sketch ». Classiquement, la donnée de référence w peut être obtenue par une première mesure issue d'un traitement d'une donnée confidentielle W reçue par un capteur. Seule la donnée publique s est enregistrée, la donnée de référence w étant confidentielle. Par la suite, la phase de correction est exécutée à chaque fois que l'on souhaite retrouver la donnée issue d'un traitement de la donnée confidentielle W. A cette fin, une donnée bruitée w' provenant d'une mesure issue d'un traitement de la donnée confidentielle W - par exemple une seconde mesure d'une même empreinte digitale - est combinée à la donnée publique s. La donnée publique s joue un rôle de reconstruction de la donnée confidentielle de référence w à partir d'une donnée bruitée w'. Si la donnée bruitée est trop éloignée de la donnée de référence w, cette dernière ne peut être reconstruite. C'est le cas, par exemple, lorsque la donnée bruitée w ' est obtenue par une mesure de traitement d'une donnée X différente de la donnée confidentielle. La reconstruction de la donnée de référence w implique l'utilisation d'un code correcteur d'erreur.
Dans le document de Dodis, internet citation du 1 janvier 2008,
XP007905964, il est décrit un procédé d'enrôlement d'une donnée de référence w dans un dispositif destiné à retrouver une mesure de référence d'une donnée confidentielle à partir d'une mesure bruitée de ladite donnée, en effectuant une mesure w de référence de ladite donnée confidentielle.
Le document de Krawczyk intitulé « On Extract-then-Expand Key Dérivation functions and an HMAC-based KDF >> 20080310, pages 1 - 37, XP007919541 , décrit l'utilisation d'un salage dans une fonction de dérivation de clé à partir d'une source partiellement aléatoire. La solution proposée consiste tout d'abord à extraire puis à étendre en fonction d'une clé la donnée mesurée.
Le document de Yevgeniy Dodis et al « Robust Fuzzy
Extractors and Authentificated Key Agreement from Close Secrets », 1 janvier 2006, pages 232-250, XP019041954, traite du problème de la robustesse des extracteurs flous.
La demande de brevet US2002/154769 divulgue une méthode d'augmentation de la clé par « padding ».
L'utilisation de secure sketches implique l'utilisation de codes correcteurs qui entraînent certaines contraintes. Par exemple pour le secure sketch appelé code offset, dans la phase d'enrôlement, un code correcteur est sélectionné puis on choisit aléatoirement un mot c de ce code. Ce mot de code est ensuite combiné avec la donnée de référence w pour obtenir la donnée publique de sketch s. Dans la phase de correction, cette donnée s est combinée à la mesure w' pour obtenir un mot c', qui n'appartient pas forcément au code, que l'on peut corriger à condition de w' soit assez proche de w. Il ne reste plus qu'à combiner c avec s pour retrouver la donnée de référence w. Cependant, certaines contraintes sont imposées par les codes correcteurs.
Un code correcteur est caractérisé par trois paramètres : sa longueur « n », sa dimension « k » et sa distance minimale « d ». La capacité de correction « t >> du code, nombre d'erreurs que le code peut corriger, est proportionnelle à la distance minimale. Le niveau de bruit subi par la donnée w' impose donc une première contrainte sur le code, à savoir une borne inférieure pour d. Une deuxième contrainte est de choisir une dimension « k >> pour le code assez grande car la sécurité du code est une fonction exponentielle en k. De plus, la longueur n du code est majorée par la longueur de la donnée de référence w et la borne de Singleton nous donne que n-k≥d-1 dont on déduit l'inégalité k≤longueur(w)-d+1 .
Le paramètre k possède donc deux contraintes antagonistes, ce qui fait qu'il est parfois difficile voire impossible de trouver un code correcteur approprié aux données, c'est-à-dire qui permette à la fois de débruiter correctement la donnée w' tout en gardant un bon niveau de sécurité.
L'un des objectifs du secure sketch généralisé tel que décrit dans la demande de brevet FR 09 /03699 du Demandeur est de palier à ces contraintes en sélectionnant un code correcteur de longueur n+k supérieure à la taille n de la donnée w. Ensuite, grâce à une « clé >> Sk, la donnée w est étendu en we de taille n+k : la fonction qui réalise cette « élongation >> ou extension de taille est appelée Extend. A partir de là, le procédé décrit met en œuvre un secure sketch classique connu de l'Homme du métier et le tout forme le secure sketch généralisé.
Il y a donc en sortie du système, après correction de la donnée w', la donnée we qui correspond à la donnée w étendue avec Sk : we=Extend(w,Sk) où Extend est une fonction qui sera définie plus loin et qui peut être vue comme une fonction de Sk et de la variable w : elle sera notée Extend(w,Sk). La donnée we est de taille n+k>n donc tant que Sk est secret la sécurité sur we est augmentée par rapport à w. Lorsque l'on a besoin que ce soit une fonction de w paramétrée par Sk, nous la noterons Extendsk(w). Lorsque l'on souhaite retrouver la donnée d'origine à partir de la donnée étendue, nous noterons w=Extendsk "1 (we).
Cette manière de procéder permet de résoudre notamment les problèmes liés aux contraintes sur les codes correcteurs d'erreurs.
Un autre problème subsiste, à savoir le fait que les secure sketches généralisés tels que définis n'ont pas exactement les mêmes propriétés que les secure sketches standards notamment parce que la taille de la donnée en sortie est plus grande avec un secure sketch généralisé qu'avec un secure sketch standard et elle dépend de Sk.
L'un des objectifs de la présente invention est de corriger les problèmes liés aux contraintes sur les codes correcteurs d'erreur en proposant un secure sketch généralisé.
Un autre objectif de la présente invention est de proposer un « secure sketch généralisé recentré» lorsque la fonction « Extendsk» est inversible permettant de retrouver toutes les propriétés des secure sketches standards sans les contraintes liées aux codes. Le « secure sketch généralisé recentré» ne peut être défini que lorsque la fonction « Extendsk» est inversible, son inverse sera noté Extendsk"1
Le principe mis en œuvre est de créer un secure sketch généralisé recentré qui consiste en un secure sketch généralisé suivi de la fonction Extendsk "1 - La fonction Extendsk "1 permet notamment à la donnée en sortie du système de retrouver sa taille d'origine et de perdre sa dépendance en la clé Sk.
L'objet de l'invention concerne un procédé d'enrôlement d'une donnée de référence w dans un dispositif destiné à retrouver une mesure de référence d'une donnée confidentielle à partir d'une mesure bruitée de ladite donnée, caractérisé en ce qu'il comporte au moins les étapes suivantes :
a1 ) sélectionner une clé secrète Sk,
a2) effectuer une mesure w de référence de ladite donnée confidentielle, a3) appliquer une fonction Extend adaptée à augmenter la taille de la donnée mesurée en utilisant la clé secrète Sk et la fonction Extend afin de générer une donnée étendue we, de longueur n+k où n est la longueur de la donnée de référence w et k le nombre de valeurs à insérer dans la donnée de référence w pour augmenter sa taille,
a4) appliquer une fonction secure sketch sur la donnée we étendue dans sa phase d'enrôlement afin de trouver une donnée publique s. Selon un mode de réalisation, le procédé comporte une étape supplémentaire de reconstruction de la donnée de référence étendue we comportant au moins les étapes suivantes :
b1 ) mesurer une donnée bruitée étendu w' et appliquer une fonction Extend à ladite donnée bruitée afin de générer une donnée bruitée étendue w'e, en utilisant une clé Sk,
b2) utiliser la donnée s trouvée à l'étape a4) et appliquer une fonction secure sketch dans sa phase de correction en prenant en entrée la donnée bruitée étendue w'e et la donnée s afin de générer une valeur débruitée we,
b3) si distance (w'e, we) est inférieure à un seuil donné, alors la donnée we est reconstruite,
b4) sinon la donnée n'est pas reconstruite.
Selon un mode de réalisation, la fonction Extend est définie dans un espace de Hamming et le procédé comporte au moins les étapes suivantes :
le secure sketch généralisé dans un espace de Hamming (SSgH) de paramètres (( ,n),m,m,t, Sk ) défini ci-après :
- On travaille dans un espace de Hamming avec M = F"' où F est un alphabet, n' un entier non-nul.
- Soit (SS*, Rec*) un secure sketch classique de paramètres (F" ,m,m,t) avec n>n', poser k=n-n'.
- L'étape d'exécution du secure sketch prend en entrée we F"' et Sk, leur applique ExtendH pour obtenir we puis applique SS* à we. En sortie on a s e F * .
- L'étape b1 ) prend en entrée w'e F"' , Sk et s e F * . Elle applique ExtendH à w' et Sk pour en déduire we'e F" . l'étape b2) applique ensuite Rec* à we' et s. Où la fonction Extendh prend en entrée w e F"' et Sk de la forme
Sk = [(posl ,..., posk ), (vall ,..., valk )] , en sortie on a we <≡ F" où n=n'+k, qui a les propriétés suivantes :
- /(i, j)e l; k]]2 ,l≤posi < posj≤n où [[l;£]] représente l'ensemble des entiers compris entre 1 et k.
- Vz e [[l : e F
- we est une suite de n éléments de F construite comme suit :
o Pour i=1 à k, placer en position pos, la valeur val,, o Compléter les positions libres avec les éléments de w dans l'ordre.
Selon une autre variante de réalisation, la fonction Extend est définie pour la distance appelée différence symétrique avec M=P(U) l'ensemble des parties d'un ensemble U, w,w'e M,
Figure imgf000009_0001
wu w', xi wnw'}| et la fonction ExtendA consiste à ajouter dans l'ensemble w des éléments déterminés z de la manière suivante
Soit M l'espace métrique (ensemble des parties d'un ensemble U) muni de la différence symétrique dA et Sk=z un ensemble de k éléments de U.
Définir ExtendA de la façon suivante :
ExtendA (w,Sk) = Extend {sk,A}(w) = w u z.
Fabrication d'un SSg avec cette fonction ExtendA : choisir un ensemble z et poser we=wu z., appliquer un secure sketch fonctionnant avec la différence symétrique avec we.
Selon une autre variante de réalisation, la fonction Extend mise en œuvre est définie en fonction de la distance d'édition qui correspond entre deux chaînes de caractères au nombre minimum de suppressions et d'insertions nécessaires pour passer d'une chaîne à l'autre,
La fonction Extend étant définie de la manière suivante : Soit M un espace métrique muni de la distance d'édition dE sur l'alphabet F, soit Sk = [(posi ,...,poSk), (va ,...,valk)] et soit n la longueur de la chaîne de caractères de M la plus courte. - V ie {1 ,...,k}, valie F.
- V i,j, 1 < posi < posj < n+k.
On définit ensuite, pour we M, we=ExtendE(w,Sk) = Extend {sk,E}(w) comme suit :
- Pour i=1 à k, placer val, en position pos,.
- Compléter les positions libres avec les éléments de w dans l'ordre
Le procédé peut comporter une étape supplémentaire dans laquelle on utilise la fonction inverse de la fonction Extendsk, en prenant en entrée la donnée étendue we ainsi que la clé Sk afin de retrouver la donnée w.
Pour la distance de Hamming, la fonction inverse est la fonction (Extend "1{sk,H}) définie, par exemple, de la manière suivante :
la fonction Extend "1{sk,H} qui prend en entrée we e F" et un paramètre Sk de la forme Sk = [(posl ,..., posk ), {vall ,...,valk )] , en sortie on a w e F"' où n=n'+k, qui a les propriétés suivantes :
- Pour i=1 à k, supprimer les bits en position pos,.
- Concaténer les bits restants dans leur ordre d'apparition.
La fonction Extend "1{sk,E} prend en entrée we e Fn+k et Sk un paramètre de la forme Sk = [{posl ,..., posk ), {vall ,..., valk )] , et en sortie génère we F" où n est la taille de la plus petite chaîne de caractères, qui a les propriétés suivantes :
- Pour i=1 à k, supprimer les bits en position pos,.
- Concaténer les bits restants dans leur ordre d'apparition.
L'invention concerne aussi un système électronique d'authentification comportant un capteur biométrique ou un PUF caractérisé en ce qu'il comporte un support d'enregistrement mémorisant une clé secrète Sk, une unité de calcul mettant en œuvre les étapes du procédé présentant une ou plusieurs des caractéristiques précités, ladite unité étant adaptée à recevoir la clé secrète et une mesure d'une donnée bruitée ou non bruitée du capteur ou du PUF. D'autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description qui suit annexée des figures qui représentent :
• La figure 1 A, un schéma représentant les étapes d'une procédure d'enrôlement selon l'invention utilisant un secure sketch généralisé et la figure 1 B une phase de correction,
• La figure 2A, un schéma représentant les étapes d'une procédure d'enrôlement et la figure 2B, une phase de correction mettant en œuvre les secure sketches généralisés recentrés selon l'invention, · La figure 3, un exemple de dispositif permettant la mise en œuvre du procédé selon l'invention.
La figure 1 A représente les étapes d'une phase d'enrôlement mettant en œuvre le procédé selon l'invention dans le cas de l'utilisation d'un secure sketch généralisé. Un secure sketch généralisé est défini comme une paire de procédures enrôlement et correction qui font appel à une fonction que l'on appelle Extend ainsi qu'à un secure sketch classique.
Lors de l'enrôlement, la donnée w en entrée du système est étendue grâce à la fonction Extend puis traitée avec un secure sketch dans sa phase d'enrôlement pour en déduire un sketch s. Une clé secrète Sk est créée et peut par exemple être représentée sous forme de deux listes V et P. La première liste V={v ; v2, ...vk} définit k valeurs à insérer dans la donnée de référence w pour augmenter sa taille et la seconde liste , P2, - - -Pk} définit pour chacune des valeurs de la liste V, la position à laquelle cette valeur doit être insérée. Cet exemple est non limitatif, mais ce mode de définition de la clé secrète Sk comporte notamment l'avantage de pouvoir stocker séparément les deux listes V et P afin d'accroître le niveau de sécurité du procédé.
Les k valeurs de la liste V sont insérées 1 02 dans la donnée de référence w (de taille n), de sorte à obtenir une donnée we étendue de longueur n+k. Ensuite, une fonction 104 de « secure sketch >> classique dans sa phase d'enrôlement est exécutée sur la donnée étendue we pour produire la donnée publique s de taille n+k.
Un exemple de secure sketch est la construction dite code- offset décrite ci-après. Un mot de code c dans le code C est choisi aléatoirement puis l'opération s = we Θ c est effectuée, le symbole Θ désignant l'opérateur « ou >> exclusif, les opérandes we et c étant considérées, dans l'exemple, comme des données binaires. La donnée s est une donnée publique non sensible, donc stockée, par exemple dans l'appareil électronique exécutant le secure sketch.
La figure 1 B est un synoptique illustrant les étapes d'une phase de correction avec une première mise en œuvre du procédé selon l'invention. La phase de correction permet, à partir d'une mesure bruitée w' d'une donnée confidentielle et de la donnée publique s de reconstruction générée lors de la phase d'enrôlement exécutant le secure sketch, de reconstruire ladite donnée confidentielle.
Dans un premier temps, la donnée bruitée w' à traiter est modifiée de manière analogue à celle dont la donnée de référence w a été modifiée lors de la phase d'enrôlement, en utilisant la clé secrète Sk. Dans l'exemple, les valeurs de la liste V sont insérées 1 12 dans la donnée bruitée w' aux positions précisées par la liste P. Une donnée bruitée étendue w'e de taille n+k est ainsi obtenue et une fonction de décodage par « secure sketch >> classique peut être appliquée sur la donnée bruitée étendue w'e.
Dans l'exemple, un mot c' de taille n+k est déterminé 1 14 comme suit : c'=we' Θ s. Puis, la fonction de décodage 1 16 du code correcteur C est utilisée pour retrouver le mot de code c choisi lors de la phase d'enrôlement : c"=Decode(c'). Le mot code c n'est pas retrouvé si le mot c' lui est trop éloigné selon un critère de distance, autrement dit si la donnée bruitée étendue était trop éloignée de la donnée de référence étendue we. En d'autres termes, le mot c" issu du décodage 1 16 appartient au code correcteur C sélectionné mais n'est pas identique au mot c initialement choisi lors de la phase d'enrôlement. Enfin, dans le cas contraire où le mot code c a été retrouvé, la donnée étendue we est rétablie avec l'opération 1 18 suivante ws=s Θ c, ws étant une donnée stabilisée égale à we. Dans le cas où le mot c" issu du décodage n'est pas le même que le mot initial c, l'opération 1 18 de combinaison avec la donnée de reconstruction s produit une donnée ws différente de la donnée étendue we.
L'utilisation d'un secure sketch généralisé permet donc d'allonger la donnée bruitée w' sans augmenter le bruit subi par la donnée, puisque les valeurs de V insérées dans la donnée bruitée w' sont identiques et aux mêmes positions dans la phase d'enrôlement et dans la phase de correction. Aussi, la valeur du paramètre d peut être laissée inchangée tandis que la valeur maximale atteignable par le paramètre k du code correcteur d'erreur, égale à longueur(we)-d+1 , c'est-à-dire n+k- d+1 est augmentée de la valeur k. Par conséquent, l'ensemble des codes correcteurs répondant à la fois aux exigences de correction de bruit et de sécurité est élargi.
En outre la clé secrète Sk est beaucoup plus courte en taille que la clé cryptographique à produire, ce qui la rend enregistrable dans un appareil électronique à faible capacité de mémorisation. Pour une donnée binaire, une clé secrète Sk définie par un coupe de listes (V, P) mobilise k bits pour la mémorisation des bits de valeurs de la première liste V et moins de k*log2(n+k) bits pour la mémorisation des positions d'insertion appartenant à la seconde liste P.
La phase de correction consiste à étendre la nouvelle mesure w' avec Extend puis, en se servant du sketch s, la traiter avec un secure sketch pour obtenir we si w' est assez proche de w. La donnée we est alors la donnée w étendue grâce à la fonction Extend.
Comme indiqué précédemment, un des objectifs de la présente invention est de présenter différentes fonctions Extend adaptées à augmenter la taille des données. Un autre objectif est de proposer un « secure sketch généralisé recentré» permettant de retrouver toutes les propriétés des secure sketches standards sans les contraintes liées aux codes. Le principe mis en œuvre est de créer un secure sketch généralisé recentré qui consiste en un secure sketch généralisé suivi de la fonction Extendsk "1 obtenue à partir de la fonction Extend. La fonction Extendsk "1 permet notamment à la donnée en sortie du système de retrouver sa taille d'origine et de perdre sa dépendance en la clé Sk.
La construction de la fonction Extend est décrite ci-après, suivant plusieurs exemples dépendant notamment de l'espace dans lequel on travaille (ensemble de chaînes binaires de taille fixe, ensemble de points, ensemble de chaînes binaires de taille variable) et de la distance utilisée sur cet espace (distance de Hamming, différence symétrique et distance d'édition pour lesquelles sont définis des secure sketches). La construction des secure sketches généralisés recentrés lorsque la fonction Extendsk est inversible sera aussi détaillée plus loin dans la présente description.
Une des applications possibles des secure sketches généralisés recentrés (abrégés SSgr dans la suite) est l'utilisation dans un système qui requiert un renouvellement régulier de la clé Sk car, étant donné que la sortie du système est indépendante de Sk, le renouvellement est possible sans modifier la donnée en sortie du système. Cette application a un avantage certain lorsque la donnée en sortie sert à générer une clé cryptographique : il est alors possible de modifier Sk sans modifier la clé cryptographique.
Propriétés de la fonction Extend :
- Enrôlement : Extend(w,Sk)=we
- Correction : soit d la distance, on veut que d(we,we') = d(Extend(w,Sk), Extend(w',Sk)) = d(w,w').
Si d(Extend(w,Sk), Extend(w',Sk)) = d(w,w') < t (capacité de correction du code) alors SS(s, Extend(w',Sk)) = we Dans les exemples qui suivent, la fonction Extend va être définie pour trois distances : distance de Hamming (du), différence symétrique (dA) et distance d'édition (dE). Ces distances correspondent aux secure sketches classiques existants.
Les fonctions Extend associées à ces distances seront respectivement notées Extendn, ExtendA et ExtendE-
Selon une première variante de réalisation, la fonction Extend est donnée pour la distance de Hamming connue de l'Homme du métier.
La définition suivante est celle du secure sketch généralisé dans le cas d'un espace de Hamming avec l'alphabet F.
Définition : (Secure sketch généralisé dans un espace de Hamming, abrégé SSgH)
Un SSgH de paramètres {{M , n), m, ih,t, Sk ) est un secure sketch classique auquel on a apporté les modifications suivantes :
- On travaille dans un espace de Hamming avec M = F"' où F est un alphabet, n' un entier non-nul.
- Soit (SS*, Rec*) un secure sketch classique de paramètres (F" , m,m,t) avec n>n' et on pose k=n-n'.
- La procédure SS prend en entrée w e F"' et Sk, leur applique Extendn pour obtenir we puis applique SS* à we. En sortie on a
S F * .
- La procédure Rec prend en entrée w'e F"' , Sk et s e F * . Elle applique Extendn à w' et Sk pour en déduire we 'e F" . Elle applique ensuite Rec* à we' et s.
La fonction Extendn qui correspond à cette définition est la suivante :
Définition :
On définit la fonction Extendn qui prend en entrée w e F"' et Sk de la forme Sk = [(posl ,..., posk ), {vall ,...,valk )] , en sortie on a we e F" où n=n'+k, qui a les propriétés suivantes : -
Figure imgf000016_0001
,l≤posi < posj≤n où [[1 ,k]]représente l'ensemble des entiers compris entre 1 et k.
- Vz e [[l : e F
- we est une suite de n éléments de F construite comme suit :
o Pour i=1 à k, placer en position pos, la valeur val,. o Compléter les positions libres avec les éléments de w dans l'ordre.
Exemple chiffré:
Prenons n'=5, n=8 ce qui nous donne k=n-n'=3. Supposons F={a,b,c}, w=acbcc et S3=[(1 ,3,6),(a,b,a)]. On a alors ExtendH(w,S3)=aabcbacc.
La fonction associée paramétrée par Sk est inversible car Extend_1{sk,H} est simplement la suppression des bits situés aux emplacements val, pour i=1 à k grâce à Sk. (voir description de Extend"1 {Sk,H} dans la partie sur les SSgr).
Selon un autre mode de réalisation de l'invention, la fonction Extend est définie en fonction de la différence symétrique.
Rappel :
La distance symétrique dA est :
Soit M=P(U) l'ensemble des parties d'un ensemble U. Alors, pour w,w'<≡ M,
Figure imgf000016_0002
wu w', xg wnw'}|
Définition :
La fonction ExtendA consiste à ajouter dans l'ensemble w des éléments déterminés z.
Soit M l'espace métrique (ensemble des parties d'un ensemble U) muni de la différence symétrique dA et Sk=z un ensemble de k éléments de U.
On définit ExtendA de la façon suivante :
ExtendA (w,Sk) = Extend {sk,A}(w) = w u z.
Cette fonction remplit bien les conditions souhaitées pour la fonction
Extend : - elle étend les données de façon déterministe
- dA(we,we')= dA(w,w') car les éléments ajoutés le sont dans w et dans w' donc n'apparaissent pas dans la différence symétrique.
Fabrication d'un SSq avec cette fonction ExtendA : choisir un ensemble z et poser we=w u z., appliquer un secure sketch de différence symétrique avec we.
La fonction Extend <sk,A} proposée dans le cas de la différence symétrique respecte les propriétés souhaitées énoncées dans la définition du SSg mais n'est pas inversible.
Non-inversibilité : la fonction Extend <sk,A} n'est pas toujours inversible, par exemple lorsque z possède des éléments communs avec w ou w'. Dans ce cas, au moment d'inverser la fonction Extend {sk,A} > on supprimera ces éléments communs de w et de w' alors qu'on ne devrait pas le faire. Selon un troisième mode de mise en œuvre, la fonction Extend va être donnée en fonction de la distance d'édition.
Rappel : la distance d'édition entre deux chaînes de caractères est le nombre minimum de suppressions et d'insertions nécessaires pour passer d'une chaîne à l'autre.
Cette distance peut être vue comme une généralisation de la distance de Hamming. On serait donc tenté d'y appliquer la même fonction Extend mais le problème est que les chaînes de caractères à comparer ne font pas nécessairement la même taille. Dans la suite, on notera n et n' la taille des deux chaînes de caractères à comparer en supposant sans perte de généralité que n<n'.
L'idée à la base de la construction proposée pour la fonction Extend est la suivante : soit u et v les deux chaînes de caractères de longueurs n et n'avec n<n', si on ajoute un caractère « a >> à la même place dans u et dans v, on note u' et v' ces chaînes, alors d(u',v')=d(u,v). Notons que la position du caractère « a >> ajouté est au maximum en position n+1 car au delà il n'est pas possible de l'ajouter dans u. Par récurrence, il est possible d'ajouter à chacune des chaînes k bits dont la position maximale et n+k, le tout sans changer la distance d'édition entre les deux chaînes.
Définition :
Soit M un espace métrique muni de la distance d'édition dE sur l'alphabet F, soit Sk = [(pos-i , .. . ,poSk), (va ,...,valk)]. Soit n la longueur de la chaîne de caractères de M la plus courte.
- V ie {1 ,...,k}, valie F.
- V i,j, 1 < posi < posj < n+k.
On définit ensuite, pour we M, we=ExtendE(w,Sk) = Extend <sk,E}(w) comme suit :
- Pour i=1 à k, placer val, en position pos,.
- Compléter les positions libres avec les éléments de w dans l'ordre.
Cette fonction Extend{sk,E} est inversible pour les mêmes raisons que dans le cas de la distance de Hamming. Il faut noter que cette fonction se base sur la chaîne de caractères la plus courte dans l'ensemble des chaînes possibles. Il est donc préférable que la chaîne la plus courte ait quand même une certaine longueur sinon on ne peut pas beaucoup jouer sur les pos,. Dans le pire des cas, celui où n=0, les pos, sont tous prédéterminés (pos,=i ; il n'y a pas d'autre possibilité) mais il reste encore |F|k façons de réaliser l'élongation sur les 0+k=k premiers bits.
La description du procédé selon l'invention décrite précédemment fait intervenir une notion de secure sketch généralisé permettant de reconstruire une donnée de référence w à partir d'une mesure bruitée w' de cette donnée w tout en préservant l'inaccessibilité à cette donnée w si la mesure bruitée w' n'est pas effectuée sur ladite donnée de référence w.
La suite de la description concerne une variante de mise en œuvre utilisant en lieu et place d'un secure sketch généralisé, un secure sketch généralisé recentré qui consiste en un secure sketch généralisé suivit de la fonction Extendsk "1 et permet notamment à la donnée en sortie du système de retrouver sa taille d'origine et de perdre sa dépendance en la clé Sk.
Les figures 2A et 2B schématisent respectivement la phase d'enrôlement et la phase de correction lors de l'utilisation d'un secure sketch généralisé recentré.
Définition : secure sketch généralisé recentré (SSgr) :
Comme il a été vu précédemment, la fonction Extend utilisée dans la définition des secure sketches généralisés est utilisée pour définir la fonction Extendsk, cette fonction peut ne pas être inversible. La fonction Extendsk est inversible pour les distances de Hamming et d'édition. Il est alors possible d'appliquer son inverse Extendsk"1 à la sortie du système pour inverser l'élongation de la donnée et perdre ainsi la dépendance en la clé Sk. Nous obtenons alors ce que nous appelons un Secure Sketch généralisé recentré (SSgr).
La donnée en sortie d'un secure sketch généralisé recentré est indépendante de la clé Sk et possède la même taille que la donnée en entrée ce qui n'est pas le cas pour un secure sketch généralisé.
Rappel : Extendsk(w)=Extend(Sk,w) et Extend"1sk(w) est l'inverse de Extendsk(w).
Un secure sketch généralisé recentré est un secure sketch généralisé auquel on a ajouté la fonction Extendsk "1 à la sortie. La donnée en sortie est exactement w (si w' assez proche de w) et ce indépendamment de la clé Sk.
Remarques :
Un SSg auquel on applique Extend "1sk sera appelé un SSgr
(secure sketch généralisé recentré).
Un SSg dont la fonction Extendsk est non inversible pourra être noté SSg ou SSgni (ni pour non-inversible).
Dans le cas du secure sketch généralisé recentré, deux possibilités peuvent se présenter: - Sk publique : il n'est dans ce cas pas nécessaire d'avoir une clé Sk de bonne qualité du point de vue de la sécurité (elle sert juste à s'affranchir des contraintes liées aux codes correcteurs) et on peut la stocker sans se soucier de sa protection.
- Sk privée : le sortie du système reste indépendante de Sk mais il n'est pas possible de corriger w' en w pour un attaquant qui ignore sk.
De plus, la sécurité du secure sketch généralisé recentré est la même que celle d'un secure sketch, laquelle est maîtrisée.
Construction du secure sketch généralisé recentré dans le cas d'un espace muni de la Distance de Hamming
D'un secure sketch généralisé ayant une fonction
Extend {sk,H} inversible, il est possible de dériver un secure sketch généralisé recentré SSgr.
Pour inverser cette fonction Extend {sk,H}, il suffit de supprimer les bits qui ont été rajoutés aux positions que l'on connaît grâce à Sk.
Définition : (Extend 1{sk,H})
On définit la fonction Extend "1{sk,H} qui prend en entrée we <≡ F" et un paramètre Sk de la forme Sk = [{posl ,..., posk ), {vall ,...,valk )] , en sortie on a w e F"' où n=n'+k, qui a les propriétés suivantes :
- Pour i=1 à k, supprimer les bits en position pos,.
- Concaténer les bits restants dans leur ordre d'apparition.
Construction du secure sketch généralisé recentré dans le cas où l'espace est muni de la distance d'édition
La fonction Extend{sk,E} est parfaitement inversible pour les mêmes raisons que dans le cas de la distance de Hamming. Il est donc possible de fabriquer un SSgr avec la distance d'édition. Il faut noter que cette fonction se base sur la chaîne de caractères la plus courte dans l'ensemble des chaînes possibles. Il est donc préférable que la chaîne la plus courte ait quand même une certaine longueur sinon on ne peut pas beaucoup jouer sur les pos,. Dans le pire des cas, celui où la chaîne de caractères la plus courte est de taille nulle, les pos, sont tous prédéterminés (pos,=i ; il n'y a pas d'autre possibilité) mais il reste encore |A|k façons de réaliser l'élongation sur les 0+k=k premiers bits.
Définition : (Extend 1{sk,E})
On définit la fonction Extend "1{sk,E} qui prend en entrée we <≡ Fn+k et Sk un paramètre de la forme Sk = [{posl ,..., posk ), {vall ,..., valk )] , en sortie on a w e F" , qui a les propriétés suivantes :
- Pour i=1 à k, supprimer les bits en position pos,.
- Concaténer les bits restants dans leur ordre d'apparition.
Système électronique de mise en œuvre de la présente invention
La figure 3 présente un système électronique mettant en œuvre une ou plusieurs variantes de procédés d'authentification selon l'invention.
Le système 301 comprend par exemple un capteur biométrique ou un dispositif d'extraction d'une donnée bruitée à partir de caractéristiques physiques d'un dispositif (connu sous la dénomination anglo-saxonne PUF), un support d'enregistrement 305 mémorisant une clé secrète Sk et une unité de calcul 307 mettant en œuvre le procédé selon l'invention. L'unité de calcul est adaptée à recevoir la clé secrète Sk issue du support d'enregistrement 305 et une donnée bruitée w' issue du module capteur 303.
A titre d'illustration, un individu ou un dispositif à identifier génère, via le capteur 303, une donnée w' qui lui est propre. Le support d'enregistrement 305 (par exemple une mémoire ou une clé USB, un disque réseau) est connecté à l'unité de calcul et fournit la clé secrète Sk. L'unité de calcul 307 tente à partir de ces deux données w' et Sk, de reconstruire la donnée de référence w produite lors d'une phase d'enrôlement préalable.
L'un des avantages du procédé selon l'invention est de reconstruire une donnée de référence w à partir d'une mesure bruitée w' de cette donnée w tout en préservant l'inaccessibilité à cette donnée w si la mesure bruitée w' n'est pas effectuée sur ladite donnée de référence w. Un autre avantage est de retrouver les propriétés d'un secure sketch (standard). Ceci permet de mettre un secure sketch généralisé recentré (SSgr) dans tout système qui utilise des secure sketches à distance de Hamming ou distance d'édition et ce de façon transparente. Le tout en s'acquittant des problèmes liés aux contraintes des codes. Un avantage du secure sketch généralisé recentré est d'offrir en sortie une donnée de la même taille que la mesure et que cette sortie est indépendante de la clé Sk. Un autre avantage est de pouvoir maîtriser la sécurité de la donnée en sortie en maîtrisant parfaitement la clé Sk.
Le secure sketch généralisé permet dans le cas d'un espace muni de la distance appelée différence symétrique de s'affranchir des contraintes liées au code correcteur, même s'il est vrai que la taille de la donnée en sortie est supérieure à celle de la donnée d'entrée.
Le secure sketch généralisé recentré ne peut pas être défini pour la différence symétrique.

Claims

Revendications
1 - Procédé d'enrôlement d'une donnée de référence w dans un dispositif destiné à retrouver une mesure de référence d'une donnée confidentielle à partir d'une mesure bruitée de ladite donnée, caractérisé en ce qu'il comporte au moins les étapes suivantes :
a1 ) sélectionner une clé secrète Sk,
a2) effectuer une mesure w de référence de ladite donnée confidentielle, a3) appliquer une fonction Extend adaptée à augmenter la taille de la donnée mesurée en utilisant la clé secrète Sk et la fonction Extend afin de générer une donnée étendue we de longueur n+k où n est la longueur de la donnée de référence w et k le nombre de valeurs à insérer dans la donnée de référence w pour augmenter sa taille,
a4) appliquer une fonction secure sketch (104) sur la donnée étendue dans sa phase d'enrôlement afin de trouver une donnée publique s.
2 - Procédé selon la revendication 1 caractérisé en ce qu'il comporte une étape supplémentaire de reconstruction de la donnée de référence étendue we comportant au moins les étapes suivantes :
b1 ) mesurer une donnée bruitée w' et appliquer une fonction Extend (1 12) à ladite donnée bruitée afin de générer une donnée bruitée étendue w'e, en utilisant une clé Sk,
b2) utiliser la donnée s trouvée à l'étape a4) et appliquer une fonction secure sketch dans sa phase de correction (1 14) en prenant en entrée la donnée bruitée étendue w'e et la donnée s afin de générer une valeur débruitée we,
b 3) si distance (w'e, we) est inférieure à un seuil donné, alors la donnée we est reconstruite,
b4) sinon la donnée n'est pas reconstruite. 3 - Procédé selon l'une des revendications 1 et 2 caractérisé en ce que la fonction Extend est définie dans un espace de Hamming et en ce que le procédé comporte au moins les étapes suivantes :
le secure sketch généralisé dans un espace de Hamming SSgH de paramètres (( ,n),m,m,t,Sk) est défini ci-après :
- travailler dans un espace de Hamming avec M =Fn' où F est un alphabet, n' un entier non-nul.
- Soit (SS*, Rec*) un secure sketch classique de paramètres (F",m,m,t) avec n>n', poser k=n-n'.
- L'étape d'exécution du secure sketch prend en entrée we F"' et Sk, leur applique ExtendH pour obtenir we puis applique SS* à we. En sortie on a se F*.
- L'étape b1) prend en entrée w'e F"' , Sk et se F*. Elle applique ExtendH à w' et Sk pour en déduire we'e F" , l'étape b2) applique ensuite Rec* à we' et s.
Où la fonction ExtendH prend en entrée we F"' et Sk de la forme
Sk =
Figure imgf000024_0001
,...,posk),(vall,...,valk[ , en sortie on a we e F" où n=n'+k, qui a les propriétés suivantes :
- /{i,j)e]l;k]]2,l≤posi<posj≤n où [[1 ,k]] représente l'ensemble des entiers compris entre 1 et k.
- Vz e [[l : e F
- we est une suite de n éléments de F construite comme suit :
o Pour i=1 à k, placer en position pos, la valeur val,, o Compléter les positions libres avec les éléments de w dans l'ordre.
4 - Procédé selon l'une des revendications 1 et 2 caractérisé en ce que la fonction Extend est définie par la distance symétrique avec M=P(U) l'ensemble des parties d'un ensemble U, w,w'e M,
Figure imgf000024_0002
wuw', xg wn w'}| et en ce que la fonction ExtendA consiste à ajouter dans l'ensemble w des éléments déterminés z de la manière suivante :
soit M l'espace métrique (ensemble des parties d'un ensemble U) muni de la différence symétrique dA et Sk=z un ensemble de k éléments de U.
On définit ExtendA de la façon suivante :
ExtendA (w,Sk) = Extend {sk,A}(w) = w u z,
Fabrication d'un SSg avec cette fonction ExtendA : choisir un ensemble z et poser we=wu z., appliquer un secure sketch de différence symétrique avec we.
5 - Procédé selon l'une des revendications 1 et 2 caractérisé en ce que la fonction Extend mise en œuvre est définie en fonction de la distance d'édition qui correspond entre deux chaînes de caractères au nombre minimum de suppressions et d'insertions nécessaires pour passer d'une chaîne à l'autre, la fonction Extend étant définie de la manière suivante : Soit M un espace métrique muni de la distance d'édition dE sur l'alphabet F, soit Sk = [(pos-i , .. . ,poSk), (va ,...,valk)] et soit n la longueur de la chaîne de caractères de M la plus courte.
- V ie {1 ,...,k}, valie F,
- V i,j, 1 < poSi < posj < n+k,
On définit ensuite, pour we M, we=ExtendE(w,Sk) = Extend {sk,E}(w) comme suit :
- Pour i=1 à k, placer val, en position pos,,
- Compléter les positions libres avec les éléments de w dans l'ordre
6 - Procédé selon l'une des revendications 1 et 2 caractérisé en ce qu'il comporte une étape supplémentaire dans laquelle on utilise la fonction inverse de la fonction Extendsk, en prenant en entrée la donnée étendue we et en paramètre la clé Sk afin de retrouver la donnée w. 7 - Procédé selon les revendications 6 et 3 caractérisé en ce que la fonction inverse est la fonction (Extend "1{sk,H}) définie de la manière suivante :
la fonction Extend "1{sk,H} prend en entrée we <≡ F" et un paramètre Sk de la forme Sk = [(posl ,..., posk ), {vall ,..., valk )] , en sortie on a w<≡ F"' où n=n'+k, qui a les propriétés suivantes :
- Pour i=1 à k, supprimer les bits en position pos,,
- Concaténer les bits restants dans leur ordre d'apparition. 8 - Procédé selon les revendications 6 et 5 caractérisé en ce que la fonction Extend "1{sk,E} prend en entrée we <≡ Fn+k et Sk un paramètre de la forme Sk = ^posl ,..., posk ), (vall ,..., valk ^ , et en sortie génère w<≡ F" , qui a les propriétés suivantes :
- Pour i=1 à k, supprimer les bits en position pos,,
- Concaténer les bits restants dans leur ordre d'apparition.
9 - système électronique d'authentification comportant un capteur biométrique ou un dispositif d'extraction de données bruitée à partir de caractéristiques physiques, caractérisé en ce qu'il comporte un support d'enregistrement mémorisant une clé secrète Sk, une unité de calcul mettant en œuvre les étapes du procédé selon l'une des revendications 1 à 8, ladite unité étant adaptée à recevoir la clé secrète et une mesure d'une donnée bruitée ou non bruitée du capteur.
PCT/EP2011/073809 2010-12-23 2011-12-22 Procede de reconstruction d'une mesure de reference d'une donnee confidentielle a partir d'une mesure bruitee de cette donnee WO2012085214A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1005115A FR2969874B1 (fr) 2010-12-23 2010-12-23 Procede de reconstruction d'une mesure de reference d'une donnee confidentielle a partir d'une mesure bruitee de cette donnee
FR1005115 2010-12-23

Publications (1)

Publication Number Publication Date
WO2012085214A1 true WO2012085214A1 (fr) 2012-06-28

Family

ID=45401086

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2011/073809 WO2012085214A1 (fr) 2010-12-23 2011-12-22 Procede de reconstruction d'une mesure de reference d'une donnee confidentielle a partir d'une mesure bruitee de cette donnee

Country Status (2)

Country Link
FR (1) FR2969874B1 (fr)
WO (1) WO2012085214A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3000332B1 (fr) * 2012-12-21 2018-09-14 Thales Procede de reconstruction d'une mesure de reference d'une donnee confidentielle a partir d'une mesure bruitee de cette donnee

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR903699A (fr) 1943-11-16 1945-10-11 Jeu
US20020154769A1 (en) 2000-12-07 2002-10-24 Petersen Mette Vesterager Method of generating pseudo-random numbers in an electronic device, and a method of encrypting and decrypting electronic data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR903699A (fr) 1943-11-16 1945-10-11 Jeu
US20020154769A1 (en) 2000-12-07 2002-10-24 Petersen Mette Vesterager Method of generating pseudo-random numbers in an electronic device, and a method of encrypting and decrypting electronic data

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
DODIS ET AL.: "les comptes-rendus de la conférence Eurocrypt", vol. 3027, 2004, article "Fuzzy extractors : How to generate strong keys from biometrics and other noisy data", pages: 523 - 540
DODIS, INTERNET CITATION, 1 January 2008 (2008-01-01)
KRAWCZYK H: "On Extract-then-Expand Key Derivation Functions and an HMAC-based KDF", 10 March 2008 (2008-03-10), pages 1 - 37, XP007919541, Retrieved from the Internet <URL:http://webee.technion.ac.il/~hugo/kdf/kdf.pdf> *
KRAWCZYK, ON EXTRACT-THEN-EXPAND KEY DERIVATION FUNCTIONS AND AN HMAC-BASED KDF, 10 March 2008 (2008-03-10), pages 1 - 37
YEVGENIY DODIS ET AL., ROBUST FUZZY EXTRACTORS AND AUTHENTIFICATED KEY AGREEMENT FROM CLOSE SECRETS, 1 January 2006 (2006-01-01), pages 232 - 250
YEVGENIY DODIS ET AL: "Fuzzy Extractors: How to Generate Strong Keys from Biometrics and Other Noisy Data", INTERNET CITATION, 1 January 2008 (2008-01-01), XP007905694, Retrieved from the Internet <URL:http://www.cs.bu.edu/~reyzin/papers/fuzzy.pdf> [retrieved on 20080918] *
YEVGENIY DODIS ET AL: "Robust Fuzzy Extractors and Authenticated Key Agreement from Close Secrets", 1 January 2006, ADVANCES IN CRYPTOLOGY - CRYPTO 2006 LECTURE NOTES IN COMPUTER SCIENCE;;LNCS, SPRINGER, BERLIN, DE, PAGE(S) 232 - 250, ISBN: 978-3-540-37432-9, XP019041954 *
ZIMMER S: "Mecanismes cryptographiques pour la generation de clefs et l authentification", THÈSE,, 22 September 2008 (2008-09-22), pages 1 - 174, XP007919542 *

Also Published As

Publication number Publication date
FR2969874B1 (fr) 2013-01-04
FR2969874A1 (fr) 2012-06-29

Similar Documents

Publication Publication Date Title
EP2282441A1 (fr) Procédé sécurisé de reconstruction d&#39;une mesure de référence d&#39;une donnée confidentielle à partir d&#39;une mesure bruitée de cette donnée, notamment pour la génération de clés cryptographiques
EP2415199B1 (fr) Procede pour effectuer une tache cryptographique dans un composant electronique
FR2871910A1 (fr) Procede de codage de donnees biometriques, procede de controle d&#39;identite et dispositifs pour la mise en oeuvre des procedes
WO1999057816A1 (fr) Decodage iteratif de codes produits
EP2005290B1 (fr) Procede et dispositif pour engendrer une suite pseudo-aleatoire
FR2793366A1 (fr) Protocole de signature numerique a largeur de bande reduite
EP3731116A1 (fr) Procédé d&#39;authentification d&#39;un document d&#39;identité d&#39;un individu et d&#39;authentification dudit individu
WO2012085214A1 (fr) Procede de reconstruction d&#39;une mesure de reference d&#39;une donnee confidentielle a partir d&#39;une mesure bruitee de cette donnee
EP1387519A2 (fr) Procédé de sécurisation d&#39;un ensemble électronique contre des attaques par introduction d&#39;erreurs
EP2530867B1 (fr) Procédé de traitement cryptographique de données
EP2826200B1 (fr) Procede de cryptage d&#39;une pluralite de donnees en un ensemble securise
EP2656534B1 (fr) Procédé d&#39;authentification multimodale et génération de clé cryptographique utilisant les secure sketches généralises
WO2012085215A1 (fr) Procede et systeme pour l&#39;authentification multi-modale multi-seuil utilisant le partage de secret
EP1989820B1 (fr) Dispositif et procédé de hachage cryptographique
EP2297896B1 (fr) Procede de distribution quantique de cles a variables continues
EP3857810B1 (fr) Procédé cryptographique de comparaison sécurisée de deux données secrètes x et y
WO2012085047A1 (fr) Procede d&#39;authentification multimodale a seuil et generation de cle unimodale
FR3000332A1 (fr) Procede de reconstruction d&#39;une mesure de reference d&#39;une donnee confidentielle a partir d&#39;une mesure bruitee de cette donnee
WO2006134302A2 (fr) Procede et dispositif pour engendrer une suite pseudo-aleatoire
EP3614617A1 (fr) Procédé et dispositif de génération de paramètre(s) d&#39;un protocole cryptographique asymétrique à partir d&#39;une blockchain, procédé et appareil de cryptage ou de décryptage et programme d&#39;ordinateur associés
FR2877788A1 (fr) Procede de generation de signature avec preuve de securite &#34;tight&#34;, procede de verification et schema de signature associes bases sur le modele de diffie-hellman
FR3105490A1 (fr) Procede de traitement cryptographique de donnees et entite electronique associes
FR3112003A1 (fr) Procede de traitement cryptographique, dispositif electronique et programme d&#39;ordinateur associes
FR3082333A1 (fr) Procede de determination d’inverse modulaire et dispositif de traitement cryptographique associe
FR2911021A1 (fr) Procede d&#39;extraction d&#39;un secret a partir de donnees biometriques

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11799723

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11799723

Country of ref document: EP

Kind code of ref document: A1