Brevet FR3076152A1 (20190628)

REVENDICATIONS1. Procédé de validation mis en oeuvre par un premier terminal de validation (VI) appartenant à un réseau (R) de terminaux de validation (V), le procédé comprenant les étapes suivantes ; obtention (510) de données de transaction (DT) comprenant des données personnelles (DP) qualifiant au moins un utilisateur ; 10 - tirage au sort aléatoire (514) au cours duquel le premier terminal de validation coopère avec d'autres terminaux de validation (\fi) participants pour sélectionner collectivement, parmi les terminaux de validation participants, un terminal de validation, dit terminal de mise à jour, le tirage au sort aléatoire comprenant: - envoi (516), aux autres terminaux de validation participants, de données 15 de transaction (131) validées par le premier terminal de validation et d'une valeur aléatoire chiffrée (E1.) par le premier terminal de validation à partir d'un algorithme de chiffrement ; - réception (518) de données de transaction (Bi) validées par les autres terminaux de validation participants (Vi) et de valeurs aléatoires chiffrées 20 (U obtenues par les autres terminaux de validation participants à partir dudit algorithme de chiffrement ; - calcul (520) d'un produit C desdites valeurs aléatoires chiffrées (El, Ei) ; - échange (S22), avec les autres terminaux de validation participants, de déchiffrements partiels (ci, du produit C; 25 - déchiffrement (524) du produit C à partir d'un nombre prédéterminé (s) de déchiffrements perdais (c1, ci) obtenus ; et - détermination (526), à partir d'un déchUrernen., (p) du produit C, d'un terminai de validation participant sélectionné en tant que terminal de mise à jour (Vx) par le tirage au sort aléatoire ; et 30 mise à jour (528) d'une base de données à partir des données de transaction validées par le terminal de validation sélectionné en tant que terminal de mise à jour.\n<CLM>\1\tProcédé selon la revendication 1, dans lequel, lors de l'étape d'obtention, le 35 premier terminal de validation - reçoit les données de transaction (DT) depuis un autre terminal de validation (V) du réseau ; ou 26 - reçoit les données de transaction (DT) directement d'un terminal (Ti) externe au réseau sans qu'un autre terminal de validation (V) du réseau serve d'intermédiaire, puis transmet !es données de transaction aux autres terminaux de validation (V) du réseau.\n<CLM>\1\tProcédé selon la revendication 1 ou 2, dans lequel l'algorithme de chiffrement est un algorithme de chiffrement hornomorphe additif à seuil exécuté, lors du chiffrement de la valeur ,E-Iléatoire, à partir d'une dé cryptographique publique dudit algorithme de chiffrement. 10\n<CLM>\1\tProcédé selon la revendication 3, dans lequel l'étape de tirage au sort aléatoire comprend les étapes suivantes : - génération (540) de la valeur aléatoire (ai) du premier terminal ; - chiffrement (542), par l'algorithme de chiffrement, de ladite valeur aléatoire pour 15 obtenir la valeur aléatoire chiffrée (Ei) ; - génération d'une preuve (Pi) à divulgation nulle de connaissance de la valeur aléatoire ; envoi (546), aux autres terminaux de validation participants, de r-gemières données de validation comprenant les données de transaction ,aisér par le 20 premier terminal de validation, la vaeur aléatoire chiffrée et l preuve à divulgation nulle de connaissance de ladite valeur aléatoire ; réception (548), en provenance de chaque autre terminal de validation participant, de deuxièmes données de validation (Mi) comprenant les données de transaction validées par ledit autre terminal de validation participant, la valeur 25 aléatoire chiffrée obtenue par ledit autre terminal de validation participant à partir dudit algorithme de chiffrement, et une preuve à divulgation nulle de connaissance de ladite valeur aléatoire respective ; vérification (550), pour chacune des deuxièmes données de validation reçues, de la validité des données de transaction respectives et de la validité de la preuve à 30 divulgation nulle de connaissance de la valeur aléatoire respective ; sélection (552), à partir des résultats de l'étape de vérification pour chacune des deuxièmes données de validation reçues, de données de validation valides (MM) ; - calcul (354) du produit C des valeurs aléatoires chiffrées respectives de chacune des données de validation valides ; 35 déchiffrement paddel (556) du produit C à partir d'une clé cryptographique privée de l'algorithme de chiffrement ; diffusion (S58), aux autres terminaux de validation participants, du déchiffrement partiel du produit C et réception de déchiffrement-, - - d- produit C calculés 27 par d'autres terminaux de validation participants à partir d'une clé cryptographique privée respective de l'algorithme de chiffrement ; obtention (S62) d'au moins un nombre prédéterminé (s) de déchiffrements partiels du produit C et combinaison desdits déchiffrements partiels de sorte à déterminer la somme des valeurs aléatoires respectives de chacune des données de validation valides ; et détermination (564, 566), à partir de ladite somme, d'un terminal de validation participant sélectionné en tant que terminal de mise à jour lors du tirage au sort aléatoire.. 10\n<CLM>\1\tProcédé selon la revendication 4, dans lequel, lors de l'étape de sélection, le premier te:Tminal de validation forme une liste (L') des données de validation valides comprenant les deuxièmes données de validation reçues pour lesquelles les données de transaction respectives et la preuve de divulgation nulle de connaissance de la valeur 15 aléatoire respective sont valides, ladite liste étant diffusée par le premier terminal de validation, lors de l'étape de diffusion, aux autres terminaux de validation participants.\n<CLM>\1\tProcédé selon la revendication 4 ou 5, dans lequel le produit C est égal au 20 chiffrement, selon l'algorithme de chiffrement, de la somme des valeurs aléatoires de chacune des données de validation (Mi) valides, et dans lequel, lors de l'étape de détermination, le terminal de mise à jour est déterminé à partir de !a somme des valeurs aléatoires de chacune des données de validation valides et du modulo du nombre de terminaux de validation participants ayant participé au tirage 25 au sort aléatoire.\n<CLM>\1\tProcédé selon l'une quelconque des revendications 4 à 6, dans lequel les premières données de validation comprennent en outre une signature des données de validation déterminée à partir d'une clé cryptographique secrète (skVi) du premier 30 terminal de validation.\n<CLM>\1\tProcédé selon l'une quelconque des revendications 1 à 7, dans lequel le réseau de terminaux de validation est un réseau pair à pair. 35\n<CLM>\1\tProgramme d'ordinateur (PG3) comportant des instructions pour l'exécution des étapes d'un procédé selon l'une quelconque des revendications 1 à 8 lorsque ledit programme est exécuté par un ordinateur. 28\n<CLM>\1\tSnppoit d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur (PG3) comprenant des instructions pour l'exécution des étapes d'un procédé selon l'une quelconque des revendications 1 à\n<CLM>\1\t11. Terminal de validation (Vi) appartenant à un réseau (R) de terminaux de validation (V) en tant que premier terminal de validation, comprenant : un module d'obtention (MD2) de données de transaction (DT) comprenant des données personnelles (DP) qualifiant au moins un utilisateur ; - un module de traitement (MD6) configure pour réaliser un tirage au sort aléatoire en coopérant avec d'autres terminaux de validation (V;) participants pour sélectionner collectivement, parmi les terminaux de validation participants, un terminal de validation, dit terminal de mise à jour, dans lequel le module de traitement est configure, lors du tirage au sort aléatoire, pour : envoyer, aux autres terminaux de validation participants, des données de transaction (Bi) validées par le terminal de validation et une valeur aléatoire chiffrée (Ei) par le module de traitement à partir d'un algorithme de chiffrement ; - recevoir des données de transaction (Bi) validées par les autres terminaux de validation participants (\Li) et de valeurs aléatoires chiffrées (E;) obtenues par les autres terminaux de validation participants à partir dudit algorithme de chiffrement ; - calculer un produit C desdites valeurs aléatoires chiffrées (Ei, Ei) ; - échanger, avec les autres terminaux de validation participants, des déchiffrements partiels (ci, c;) du produit C; - déchiffrer le produit C à partir d'un nombre prédéterminé (s) de déchiffrements partiels (ci, ci) obtenus ; et - déterminer, à partir du déchiffrement (a) du produit C, un terminal de validation participant (Vx) sélectionné en tant que terminai de mise à jour par le tirage au sort aléatoire ; et un module de mise à jour (MD8) configure pour mettre à jour la base de données à partir des données de transaction validées par le module de vérification si le module de traitement détecte que ledit premier terminal de validation a été sélectionné en tant que termina de mise à jour lors du tirage au sort aléatoire.\n<CLM>\1\tSystème (SY) comprenant, dans un 7,,--SC:aLf, une pluralité de terminaux de validatbn (V) conformes à la revendication 11 esdits terminaux étant configurés pour 29 coopérer ensemble lors d'un tirage au :;o:-Ltoire pour sélectionner collectivement en tant que terminal de mise à jour l'un parmii-_':dïte pluralité de terminaux dc validation.