Brevet FR3123742A1 — publié le 20221209

PROCEDES d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité ou de vérification de l’authenticité d’une donnée de sécurité L’invention propose un procédé d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité, le procédé étant caractérisé en ce qu’il comprend la mise en œuvre par des moyens de traitement de données (21) d’un serveur (2) d’étapes de : Obtention d’une donnée de sécurité de référence ; Génération d’une première donnée encodée par application à la donnée de sécurité de référence d’une procédure d’encodage de type obfuscation floue à distance de Hamming ; Détermination à partir de la donnée de sécurité de référence d’une première et d’une deuxième données dérivées de la donnée de sécurité de référence ; Génération d’une première donnée d’aléa, et détermination d’une deuxième donnée encodée telle qu’un prédicat de type comparaison à point variable paramétré par la deuxième donnée encodée et la première donnée d’aléa est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées ; Stockage sur des moyens de stockage de données (22) du serveur (2) d’au moins lesdites première et deuxième données encodées. L’invention concerne également un procédé de vérification et un serveur à cet effet. Figure pour l’abrégé : Fig. 1 PROCEDES d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité ou de vérification de l’authenticité d’une donnée de sécurité DOMAINE DE L’INVENTION L’invention concerne des procédés d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité et de vérification de l’authenticité d’une donnée de sécurité. ETAT DE LA TECHNIQUE La détention d'un document d'identité (carte d’identité, passeport, permis de conduire, carte de sécurité sociale, etc.) en cours de validité justifie de l'identité d'un individu. Les documents d’identité consistent en un support généralement en papier ou en plastique sur lequel sont imprimées une photo ainsi que des informations alphanumériques personnelles (nom, prénom, date de naissance, etc.) de son détenteur. On trouve également une bande appelée MRZ (Machine-Readable Zone, Zone de lecture optique), qui contient un code (généralement deux lignes de 36 caractères) résumant les informations alphanumériques du document. Alternativement à la MRZ, on peut trouver un code-barre de type PDF-417 contenant les mêmes informations. Généralement, les documents d’identité présentent un grand nombre d’éléments de sécurité de haut niveau tels des filigranes ou des hologrammes pour prévenir la falsification. La durée de vie d’un tel document est généralement limitée (10 ou 15 ans), car l’apparence de son possesseur change progressivement, et les éléments de sécurité évoluent. Lors d’un contrôle d’un individu par une entité, par exemple à l’entrée d’un bâtiment, on lui demande de présenter son document d’identité pour authentification. Il est souhaitable que cette procédure soit la plus rapide possible, tout en étant la plus sécurisée. En effet, le risque est par exemple que des individus recherchés présentent un document d’identité falsifié dans lequel des informations ont été modifiée, par exemple la photographie. On connaît des demandes FR3047688 puis FR1759292 des procédés d’enrôlement de données destinées à être utilisées pour contrôler automatiquement l’identité d’un individu, et des procédés associés de contrôle d’identité, basées sur un mécanisme très astucieux de génération à partir d’un élément visuel d’un document d’identité (en particulier la photo) d’une donnée de sécurité appelée « Digital Photo Seal ». Cette donnée de sécurité constitue une sorte de signature de l’élément visuel : des images acquises d’un même élément visuel, quelles que soient les conditions d’acquisition (i.e. y compris suite à scan ou photocopie), conduisent à l’obtention de données de sécurité sensiblement identiques. Au contraire, la moindre modification de l’élément visuel entraîne une forte variation de cet élément de sécurité. Ainsi, il suffit de stocker sur une base de données d’un serveur la donnée de sécurité de référence « attendue » pour un document donné, et de la comparer avec celle « candidate » générée à partir d’une copie de ce document, pour savoir si l’élément visuel de ce document est intègre ou non. En particulier, pour garantir la sécurité de la donnée de référence sur le serveur, celle-ci est « masquée » par application d’une procédure d’encodage (typiquement une procédure d’esquisse de type secure sketch) à la donnée de référence et à une donnée d’aléa, et la donnée de référence masquée est stockée dans la base de données avec une empreinte cryptographique, i.e. un haché, d’une concaténation de la MRZ avec ledit aléa. On peut alors authentifier un document d’identité présenté par un individu sur la base de sa MRZ (ou toute autre donnée alphanumérique) et de la photographie : une donnée de sécurité candidate est obtenue à partir de la photographie du document présenté, et il est alors possible par application d’une procédure de décodage de retrouver la donnée d’aléa si la photographie du document présenté est identique à celle sur la base de laquelle la donnée de sécurité de référence a été générée, et de vérifier que le haché d’une concaténation de la MRZ (ou la donnée alphanumérique) avec ledit aléa correspond à celui stocké. Cette solution apporte satisfaction, mais on constate des rares cas de « fausse acceptance » dans lequel la procédure de décodage de Secure Sketch permet de retrouver la donnée d’aléa malgré une donnée de sécurité candidate qui ne coïncide pas à la donnée de sécurité de référence (la photographie présentée est différente de celle du document), ce qui pourrait être exploiter par un attaquant pour s’authentifier frauduleusement. Et, même sans fausse acceptance, en cas d’attaque par force brute, l’attaquant va pouvoir apprendre du secure sketch, via le nombre d’erreurs corrigées par le code correcteur et ainsi converger vers la solution. Il serait ainsi souhaitable de disposer d’une nouvelle solution simple, fiable, et totalement sécurisée, d’encodage/décodage d’une donnée de sécurité en vue de pouvoir vérifier automatiquement l’authenticité d’une donnée personnelle cible. PRESENTATION DE L’INVENTION Selon un premier aspect, l’invention concerne un procédé d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité, le procédé étant caractérisé en ce qu’il comprend la mise en œuvre par des moyens de traitement de données d’un serveur d’étapes de : Obtention d’une donnée de sécurité de référence ; Génération d’une première donnée encodée par application à la donnée de sécurité de référence d’une procédure d’encodage de type obfuscation floue à distance de Hamming ; Détermination à partir de la donnée de sécurité de référence d’une première et d’une deuxième données dérivées de la donnée de sécurité de référence ; Génération d’une première donnée d’aléa, et détermination d’une deuxième donnée encodée telle qu’un prédicat de type comparaison à point variable paramétré par la deuxième donnée encodée et la première donnée d’aléa est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées ; Stockage sur des moyens de stockage de données du serveur d’au moins lesdites première et deuxième données encodées. Selon des caractéristiques avantageuses et non-limitatives : L’étape (D) comprend en outre la génération d’une deuxième donnée d’aléa et d’une troisième donnée d’aléa ; l’étape (E) comprenant le stockage sur les moyens de stockage de données du serveur de : Une empreinte cryptographique d’une concaténation des deuxième et troisième données d’aléa ; Une somme des première et deuxième données d’aléa ; La troisième donnée d’aléa. La donnée de sécurité de référence présente n coordonnées binaires notées w i , la procédure d’encodage de type obfuscation à distance de Hamming comprenant le tirage de n+1 nombres premiers notés p1, p2 …pn, et q, et le calcul d’un produit Πp i wi mod q. Lesdits paramètres du prédicat définissent une droite et le prédicat de type comparaison à point variable est vrai si et seulement si ledit point variable se trouve sur cette droite. Ledit prédicat de type comparaison à point variable est exprimé par la formule « aW1+b==W2 », où a est la deuxième donnée encodée, b la première donnée d’aléa, et W1 et W2 respectivement les première et deuxième données dérivées. La donnée de sécurité de référence est une information représentative d’une apparence attendue d’un donnée personnelle cible. Soit la donnée personnelle cible est un élément visuel et ladite donnée de sécurité est de type Digital Photo Seal ; soit la donnée personnelle cible est un trait biométrique et ladite donnée de sécurité est un modèle biométrique. La donnée personnelle cible provient d’un document d’identité d’un individu. Selon un deuxième aspect, l’invention propose un procédé de vérification de l’authenticité d’une donnée de sécurité, caractérisé en ce qu’il comprend la mise en œuvre par des moyens de traitement de données d’un serveur d’étapes de ; Obtention d’une donnée de sécurité candidate ; Calcul d’une première donnée décodée par application d’une procédure de décodage de type obfuscation floue à distance de Hamming à la donnée de sécurité candidate et à une première donnée encodée stockée sur des moyens de stockage de données du serveur ; Détermination à partir de la première donnée décodée d’une première et d’une deuxième données dérivées de la première donnée décodée ; Calcul d’une deuxième donnée décodée, correspondant à une première donnée d’aléa, telle qu’un prédicat de type comparaison à point variable paramétré par une deuxième donnée encodée stockée sur les moyens de stockage de données du serveur et la deuxième donnée décodée est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées. Selon des caractéristiques avantageuses et non-limitatives : Le procédé comprend en outre une étape (e) de vérification qu’une empreinte cryptographique d’une concaténation d’une deuxième donnée d’aléa calculée et d’une troisième donnée d’aléa stockée sur les moyens de stockage de données du serveur coïncide avec une empreinte cryptographique attendue stockée sur les moyens de stockage de données du serveur, la deuxième donnée d’aléa étant calculée à partir de la deuxième donnée décodée et d’une somme des première et deuxième données d’aléa stockée sur les moyens de stockage de données du serveur. La donnée de sécurité candidate est une information représentative d’une apparence visible d’un donnée personnelle cible dans une image, l’étape (a) comprenant l’extraction de ladite donnée candidate à partir de l’image. L’étape (a) comprend l’acquisition préalable de ladite image par des moyens d’acquisition optique d’un équipement client et la transmission au serveur. Selon un troisième aspect, l’invention propose un serveur d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité, caractérisé en ce qu’il comprend des moyens de stockage de données et des moyens de traitement de données configurés pour : Obtenir une donnée de sécurité de référence ; Générer une première donnée encodée par application à la donnée de sécurité de référence d’une procédure d’encodage de type obfuscation floue à distance de Hamming ; Déterminer à partir de la donnée de sécurité de référence une première et une deuxième données dérivées de la donnée de sécurité de référence ; Générer une première donnée d’aléa, et déterminer une deuxième donnée encodée telle qu’un prédicat de type comparaison à point variable paramétré par la deuxième donnée encodée et la première donnée d’aléa est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées ; Stocker sur les moyens de stockage de données au moins lesdites première et deuxième données encodées. Selon un quatrième aspect, l’invention propose un serveur de vérification d’authenticité d’une donnée de sécurité, caractérisé en ce qu’il comprend des moyens de stockage de données et des moyens de traitement de données configurés pour : Obtenir une donnée de sécurité candidate ; Calculer une première donnée décodée par application d’une procédure de décodage de type obfuscation floue à distance de Hamming à la donnée de sécurité candidate et à une première donnée encodée stockée sur les moyens de stockage de données ; Déterminer à partir de la première donnée décodée une première et une deuxième données dérivées de la première donnée décodée ; Calculer une deuxième donnée décodée, correspondant à une première donnée d’aléa, telle qu’un prédicat de type comparaison à point variable paramétré par une deuxième donnée encodée stockée sur les moyens de stockage de données et la deuxième donnée décodée est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées. Selon un cinquième et un sixième aspects, l’invention propose un produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé selon le premier ou le deuxième aspect d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité ou de vérification de l’authenticité d’une donnée de sécurité ; et un moyen de stockage lisible par un équipement informatique sur lequel un produit programme d’ordinateur comprend des instructions de code pour l’exécution d’un procédé selon le premier ou le deuxième aspect d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité ou de vérification de l’authenticité d’une donnée de sécurité. DESCRIPTION DES FIGURES D’autres caractéristiques, buts et avantages de la présente invention apparaîtront à la lecture de la description détaillée qui va suivre, au regard des figures annexées, données à titre d’exemples non limitatifs et sur lesquelles : La représente schématiquement un système pour la mise en œuvre des procédés selon l’invention : La représente les étapes d’un mode de réalisation d’un procédé d’enrôlement selon l’invention ; La représente les étapes d’un mode de réalisation d’un procédé de vérification selon l’invention. Procédé d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité, le procédé étant caractérisé en ce qu’il comprend la mise en œuvre par des moyens de traitement de données (21) d’un serveur (2) d’étapes de : Obtention d’une donnée de sécurité de référence ; Génération d’une première donnée encodée par application à la donnée de sécurité de référence d’une procédure d’encodage de type obfuscation floue à distance de Hamming ; Détermination à partir de la donnée de sécurité de référence d’une première et d’une deuxième données dérivées de la donnée de sécurité de référence ; Génération d’une première donnée d’aléa, et détermination d’une deuxième donnée encodée telle qu’un prédicat de type comparaison à point variable paramétré par la deuxième donnée encodée et la première donnée d’aléa est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées ; Stockage sur des moyens de stockage de données (22) du serveur (2) d’au moins lesdites première et deuxième données encodées. Procédé selon la revendication 1, dans lequel l’étape (D) comprend en outre la génération d’une deuxième donnée d’aléa et d’une troisième donnée d’aléa ; l’étape (E) comprenant le stockage sur les moyens de stockage de données (22) du serveur (2) de : Une empreinte cryptographique d’une concaténation des deuxième et troisième données d’aléa ; Une somme des première et deuxième données d’aléa ; La troisième donnée d’aléa. Procédé selon l’une des revendications 1 et 2, dans lequel la donnée de sécurité de référence présente n coordonnées binaires notées w i , la procédure d’encodage de type obfuscation à distance de Hamming comprenant le tirage de n+1 nombres premiers notés p1, p2 …pn, et q, et le calcul d’un produit Πp i wi mod q. Procédé selon l’une des revendications 1 à 3, dans lequel lesdits paramètres du prédicat définissent une droite et le prédicat de type comparaison à point variable est vrai si et seulement si ledit point variable se trouve sur cette droite. Procédé selon la revendication 4, dans lequel ledit prédicat de type comparaison à point variable est exprimé par la formule « aW1+b==W2 », où a est la deuxième donnée encodée, b la première donnée d’aléa, et W1 et W2 respectivement les première et deuxième données dérivées. Procédé selon l’une des revendications 1 à 5, dans lequel la donnée de sécurité de référence est une information représentative d’une apparence attendue d’un donnée personnelle cible. Procédé selon la revendication 6, dans laquelle soit la donnée personnelle cible est un élément visuel et ladite donnée de sécurité est de type Digital Photo Seal ; soit la donnée personnelle cible est un trait biométrique et ladite donnée de sécurité est un modèle biométrique. Procédé selon l’une des revendications 6 et 7, dans lequel la donnée personnelle cible provient d’un document d’identité (1) d’un individu. Procédé de vérification de l’authenticité d’une donnée de sécurité, caractérisé en ce qu’il comprend la mise en œuvre par des moyens de traitement de données (21) d’un serveur (2) d’étapes de ; Obtention d’une donnée de sécurité candidate ; Calcul d’une première donnée décodée par application d’une procédure de décodage de type obfuscation floue à distance de Hamming à la donnée de sécurité candidate et à une première donnée encodée stockée sur des moyens de stockage de données (22) du serveur (2) ; Détermination à partir de la première donnée décodée d’une première et d’une deuxième données dérivées de la première donnée décodée ; Calcul d’une deuxième donnée décodée, correspondant à une première donnée d’aléa, telle qu’un prédicat de type comparaison à point variable paramétré par une deuxième donnée encodée stockée sur les moyens de stockage de données (22) du serveur (2) et la deuxième donnée décodée est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées. Procédé selon la revendication 9, comprenant en outre une étape (e) de vérification qu’une empreinte cryptographique d’une concaténation d’une deuxième donnée d’aléa calculée et d’une troisième donnée d’aléa stockée sur les moyens de stockage de données (22) du serveur (2) coïncide avec une empreinte cryptographique attendue stockée sur les moyens de stockage de données (22) du serveur (2), la deuxième donnée d’aléa étant calculée à partir de la deuxième donnée décodée et d’une somme des première et deuxième données d’aléa stockée sur les moyens de stockage de données (22) du serveur (2). Procédé selon l’une des revendications 9 et 10, dans lequel la donnée de sécurité candidate est une information représentative d’une apparence visible d’un donnée personnelle cible dans une image, l’étape (a) comprenant l’extraction de ladite donnée candidate à partir de l’image. Procédé selon la revendication 11, dans lequel l’étape (a) comprend l’acquisition préalable de ladite image par des moyens d’acquisition optique (30) d’un équipement client (3) et la transmission au serveur (2). Serveur (2) d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité, caractérisé en ce qu’il comprend des moyens de stockage de données (22) et des moyens de traitement de données (21) configurés pour : Obtenir une donnée de sécurité de référence ; Générer une première donnée encodée par application à la donnée de sécurité de référence d’une procédure d’encodage de type obfuscation floue à distance de Hamming ; Déterminer à partir de la donnée de sécurité de référence une première et une deuxième données dérivées de la donnée de sécurité de référence ; Générer une première donnée d’aléa, et déterminer une deuxième donnée encodée telle qu’un prédicat de type comparaison à point variable paramétré par la deuxième donnée encodée et la première donnée d’aléa est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées ; Stocker sur les moyens de stockage de données (22) au moins lesdites première et deuxième données encodées. Serveur de vérification de l’authenticité d’une donnée de sécurité, caractérisé en ce qu’il comprend des moyens de stockage de données (22) et des moyens de traitement de données (21) configurés pour : Obtenir une donnée de sécurité candidate ; Calculer une première donnée décodée par application d’une procédure de décodage de type obfuscation floue à distance de Hamming à la donnée de sécurité candidate et à une première donnée encodée stockée sur les moyens de stockage de données (22) ; Déterminer à partir de la première donnée décodée une première et une deuxième données dérivées de la première donnée décodée ; Calculer une deuxième donnée décodée, correspondant à une première donnée d’aléa, telle qu’un prédicat de type comparaison à point variable paramétré par une deuxième donnée encodée stockée sur les moyens de stockage de données (22) et la deuxième donnée décodée est vrai lorsque ledit point variable a pour coordonnées lesdites première et deuxième données dérivées. Produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé selon l’une des revendications 1 à 12 d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité ou de vérification de l’authenticité d’une donnée de sécurité, lorsque ledit procédé est exécuté sur un ordinateur. Moyen de stockage lisible par un équipement informatique sur lequel un produit programme d’ordinateur comprend des instructions de code pour l’exécution d’un procédé selon l’une des revendications 1 à 12 d’enrôlement de données pour vérifier l’authenticité d’une donnée de sécurité ou de vérification de l’authenticité d’une donnée de sécurité.