Brevet FR2925245A1 — publié le 20090619

CONTROLE D'UNE ENTITE A CONTROLER PAR UNE ENTITE DE CONTROLE La présente invention concerne un contrôle d'une entité à contrôler, cette entité pouvant être une entité à puce électronique, et plus particulièrement une entité à puce électronique opérant sans contact. Dans le présent contexte, on entend par le terme `contrôle', une opération de type authentification de la puce électronique ou encore identification de la puce électronique. De manière générale, un contrôle d'une puce électronique correspond à toute opération qui permet à une entité de contrôle de vérifier que la puce électronique est en mesure de prouver la connaissance d'un secret. Un tel contrôle peut être fait relativement à un passeport électronique ou encore à une étiquette de type RFID (pour `Radio Frequency IDentification'). Certains de ces contrôles sont basés sur des schémas de contrôle cryptographique asymétrique utilisant un couple de clé publique et clé privée. On connait notamment le système d'identification décrit dans le document 'About machine-readable travel documents' de Vaudenay, S.; Vuagnoux, M. publié au Journal of Physics: Conference Series, Volume 77, Issue 1, pp. 012006 (2007), en juillet 2007, pour lequel il est proposé d'utiliser des protocoles de type 'zero-knowledge', c'est-à-dire ne révélant aucune information sur le secret de l'utilisateur et ainsi ne permettant pas a priori à un attaquant potentiel de suivre l'utilisateur. Toutefois, l'utilisation de tels protocoles peut révéler des informations sur la clé publique associée à l'utilisateur à ce potentiel attaquant même si ce dernier n'a aucune information préalable à ce sujet. Ainsi, un attaquant peut obtenir des informations sur l'utilisateur d'une telle puce électronique en écoutant les échanges d'informations entre cette puce électronique et une entité de contrôle. L'accès à certaines de ces informations peut permettre à une personne mal intentionnée de porter atteinte à la vie privée de l'utilisateur d'une telle puce électronique, par exemple en lui permettant de retracer les mouvements de cette puce électronique. La figure 1 illustre un mode de réalisation de l'art antérieur. De manière plus précise, dans le document cité ci-dessus, il est prévu que le système de contrôle comprenne une entité à contrôler 12 d'un côté et une entité de contrôle 11 de l'autre. Un paramètre public de ce système est noté g, et correspond au générateur de l'ensemble des valeurs dans lequel les calculs sont effectués. L'entité à contrôler 12 dispose d'une clé publique I et d'une clé secrète s. La clé publique I vérifie l'équation suivante : 1 = gs L'entité de contrôle 11 génère de manière aléatoire une valeur c,,. L'entité de contrôle 11 transmet à l'entité à contrôler 12 une valeur y issue de la valeur aléatoire c',. L'entité à contrôler 12 génère de manière aléatoire une valeur r, et une valeur cp. Puis, elle transmet à l'entité de contrôle 11 les valeurs suivantes : x, qui correspond à g` ; et cp. L'entité de contrôle 11 transmet alors les valeurs suivantes : ôet c, 6, et y etant générées en même temps a partir de la valeur cv. L'entité à contrôler contrôle la cohérence des valeurs b, y et c,; Elle transmet ensuite une valeur y vérifiant : y = r + cs, oùc=cp+cv De l'autre côté, l'entité de contrôle 11 contrôle que l'équation suivante est vérifiée : gY=xlc Ainsi, en écoutant les échanges entre l'entité de contrôle 11 et l'entité à contrôler 12, on peut obtenir la valeur de le et de c selon les équations 30 suivantes : le=gY/x; et c=c,, +cp Puis, une autre écoute permet d'obtenir une valeur l'0' et c'. Ensuite, si l'équation suivante est vérifiée, on peut en déduire que les deux écoutes correspondent à la même entité à contrôler 12, et révèle donc des informations relatives à cette entité à contrôler : Icc' = l,c'c Ainsi, l'utilisation de protocoles de type Schnorr, Fiat-Shamir ou encore GPS (pour Girault, Poupard et Stern) permettent d'obtenir des informations que l'on souhaiterait pourtant conserver secrètes. La présente invention vise à améliorer la situation. Un premier aspect de la présente invention propose un procédé de contrôle d'une entité à contrôler par une entité de contrôle, une clé secrète étant associée à l'entité de contrôle ; lesdites entité à contrôler et entité de contrôle partageant une pluralité de paramètres publics, un second paramètre public de ladite pluralité étant une combinaison d'un premier paramètre public de ladite pluralité avec la clé secrète de l'entité de contrôle; ledit procédé comprenant les étapes suivantes au niveau de l'entité à contrôler : /a/ générer au moins une valeur aléatoire ; /b/ transmettre un premier message à l'entité de contrôle, ledit premier message comprenant au moins une valeur combinée obtenue en combinant le premier paramètre public avec la valeur aléatoire ; et /c/ transmettre un second message à l'entité de contrôle, ledit second message comprenant au moins une valeur combinée obtenue en combinant la valeur aléatoire, une clé secrète de l'entité à contrôler et une valeur reçue depuis l'entité de contrôle ; dans lequel une des valeurs comprises dans le premier ou le second message est basée sur le second paramètre public. On affecte ici avantageusement une clé secrète à l'entité de contrôle qui est utilisée pour l'obtention d'un des paramètres publics partagés entre l'entité de contrôle et l'entité à contrôler. Grâce à ces dispositions, il est possible de maintenir secrètes toutes informations liées à l'entité à contrôler même si les échanges entre l'entité de contrôle et l'entité à contrôler sont écoutés. En effet, sans la connaissance de la clé secrète de l'entité de contrôle, aucune information sur l'entité à contrôler ne peut être révélée sur la base des échanges effectués entre ces deux entités selon un mode de réalisation de la présente invention. La présente invention peut avantageusement être mise en oeuvre dans de nombreux domaines. A titre d'exemple non limitatif, on peut citer les domaines d'application des cartes à puce, comme des passeports électroniques, des étiquettes RFID, et de manière plus générale le domaine des transactions électroniques. On peut prévoir que des première et seconde valeurs aléatoires sont générées à l'étape /a/ et que la valeur basée sur le second paramètre public est en outre basée sur la seconde valeur aléatoire et est transmise dans le premier message. Dans ce cas, on transmet à l'entité de contrôle la valeur issue d'une combinaison avec le second paramètre public au début de l'échange de messages. Un tel mode de réalisation peut avantageusement être mis en oeuvre dans le contexte de protocole de type Schnorr, tel que défini dans le document de Schnorr 'Efficient signature generation by smart cards' de Journal of Cryptology 1991. La première valeur combinée peut être obtenue en calculant le premier paramètre public à la puissance de la première valeur aléatoire et la seconde valeur combinée peut être obtenue en calculant le second paramètre public à la puissance de la seconde valeur aléatoire. La troisième valeur combinée peut être obtenue en sommant les valeurs suivantes : la première valeur aléatoire, la seconde valeur aléatoire, et le produit de la clé secrète de l'entité à contrôler avec la valeur reçue depuis l'entité de contrôle. En procédant ainsi, on tire avantageusement parti de la clé secrète de l'entité de contrôle dans les valeurs combinées émises depuis l'entité à contrôler vers l'entité de contrôle. En effet, sur la base de ces valeurs il n'est pas possible d'opérer un quelconque contrôle de l'identité de l'entité à contrôler si on ne détient pas la clé secrète de l'entité de contrôle. On peut alors décider que l'entité à contrôler est contrôlée sur la base de l'équation suivante : J = ((gv)Y x" z-1`1/vc où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où g est le premier paramètre public ; où g" est le second paramètre public ; où x est la valeur combinée transmise dans le premier message ; où y est la valeur combinée transmise dans le second message ; où z est la valeur basée sur le second paramètre public; 15 où c est la valeur reçue depuis l'entité de contrôle ; où v est la clé secrète de l'entité de contrôle. Ainsi, sur la base de l'équation ci-dessus, on est en mesure soit d'authentifier l'entité à contrôler dans le cas où l'entité de contrôle connait la clé publique I de l'entité à contrôler, soit d'identifier cette entité à contrôler 20 dans le cas où l'entité de contrôle a accès à une base de données contenant au moins cette clé publique I. On peut également prévoir de borner les valeurs aléatoires, la clé secrète de l'entité à contrôler, ainsi que la valeur reçue depuis l'entité de contrôle entre 0 et des valeurs définies respectives. Dans ce cas, le procédé 25 selon un mode de réalisation de la présente invention trouve aisément une application avantageusement dans le contexte d'un protocole de type GPS, tel que défini par exemple dans le document `On the fly authentification and signature schemes based on groups of unknown order' de Girault, Poupard, Stern du Journal of Cryptology 2006. 30 On peut prévoir que les première et seconde valeurs aléatoires sont comprises entre 0 et A-1 ; la valeur reçue depuis l'entité de contrôle est comprise entre 0 et B-1 ; et la clé secrète de l'entité à contrôler est comprise 5 10 entre 0 et S-1 ; où A, B et S sont paramètres publics. Dans ces conditions l'entité à contrôler peut être contrôlée en outre sur la base de l'inéquation suivante : 0 5 y 2(Aù1)+(Bù1)(Sù1) Ainsi, il est aisé de se baser sur un procédé de contrôle selon un mode de réalisation de la présente invention afin d'en déduire un procédé d'authentification ou d'identification qui préserve la confidentialité de l'entité à contrôler. Dans un mode de réalisation de la présente invention, on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante : Jvc = (gÎ )yl (g2 )y2 xvz où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où g, et g2 sont deux premiers paramètres publics ; où g," et g2" sont deux seconds paramètres publics ; où v est une clé secrète de l'entité de contrôle ; où x et z sont des valeurs transmises dans le premier message et vérifient respectivement les équations suivantes : x=gll.g22 vr'l vr'2 z = gl •g2 où y, et y2 sont des valeurs transmises dans le second message et vérifient les équations respectives : y,=r,+s, c+r', y2=r2+s2 c+r'2 25 où s, et s2 sont des clés secrètes de l'entité à contrôler ; où r1, r2, r'1 et r'2 sont des valeurs aléatoires générées à l'étape /a/. Ici, avantageusement on peut donc appliquer la présente invention dans le contexte de protocole de type Okamoto tel que défini dans le document 'Provably secure and practical identification schemes and corresponding 30 signature schemes' de T. Okamoto daté de 1992.20 On peut alternativement prévoir que la valeur basée sur le second paramètre public est en outre basée sur la valeur aléatoire et est transmise dans le second message. Ici, on est en mesure d'appliquer avantageusement la présente invention au protocole de type Fiat-Shamir, tel que défini dans le document de Fiat et Shamir `How to prove yourself : pratical solutions of identification and signature problems', de Proceedings of Crypto 1986, et dans le document `A modification of the Fiat Shamir scheme' Proceedings of Crypto 1988. Dans ce contexte, on peut décider que l'entité à contrôler est contrôlée 10 sur la base de l'équation suivante: y2x"=Jc où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où y est la valeur (y) basée sur le second paramètre public et vérifie 15 l'équation : y = (gv)r1 sc où g" est le second paramètre public, r1 est la valeur aléatoire, s la clé secrète de l'entité à contrôler et c la valeur reçue depuis l'entité de contrôle ; 20 où x est la valeur obtenue à l'étape /b/ et vérifie l'équation : 2rl x = g où v est la clé secrète de l'entité de contrôle. On est également en mesure d'appliquer avantageusement la présente invention au protocole de type GQ, tel que défini dans le document 'A 25 paradoxical identity-based signature scheme resulting from Zero-Knowledge minimizing both transmission and memory' de Proceedings of Crypto 1988, de Guillou et Quisquater. Dans ce contexte, on peut décider que l'entité à contrôler est contrôlée sur la base de l'équation suivante: 30 @ Wx"=Jc où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où y est la valeur (y) basée sur le second paramètre public et vérifie l'équation : y=(g") ri s° où s est une clé secrète de l'entité à contrôler ; où g est le premier paramètre public ; où g" est le second paramètre public ; où ri est la valeur aléatoire ; où v est la clé secrète de l'entité de contrôle ; où x est la valeur obtenue à l'étape /b/ et vérifie l'équation : x=gWr1 où W est un paramètre public associé à l'entité à contrôler ; Dans un mode de réalisation de la présente invention, on peut décider que l'entité à contrôler est contrôlée sur la base de l'équation suivante: .Y-Wxv =~7~ où G1, G2, ..., Gm et W sont des clés publiques de l'entité à 15 contrôler ou des valeurs dans une base de données accessible depuis l'entité de contrôle, où m est un entier positif ; où x est la valeur combinée transmise dans le premier message et vérifie l'équation : Wri x = g où y est la valeur basée sur le second paramètre public et vérifie l'équation : Yù(gv...Qr,n où g est le premier paramètre public ; où g" est le second paramètre public ; où r1 est la valeur aléatoire générée par l'entité à contrôler ; où v est la clé secrète de l'entité de contrôle ; où Q1,...,Qm sont des clés secrètes de l'entité à contrôler et vérifient l'équation suivante : G; = 1, pour i compris entre 1 et m ; où d1, ..., dm, sont des valeurs aléatoires générées par l'entité de 20 25 30 contrôle. Ainsi, il est possible de prévoir d'appliquer la présente invention dans le contexte du protocole GQ2 ou dans le contexte d'un protocole de type Fiat-Shamir à plusieurs secrets. Un deuxième aspect de la présente invention propose un procédé de contrôle par une entité de contrôle d'au moins une entité à contrôler, une clé secrète étant associée à l'entité de contrôle ; les entité à contrôler et entité de contrôle partageant une pluralité de paramètres publics, un second paramètre public de ladite pluralité étant une combinaison d'un premier paramètre public de ladite pluralité avec la clé secrète de l'entité de contrôle; ledit procédé comprenant les étapes suivantes au niveau de l'entité de contrôle : /a/ recevoir depuis l'entité à contrôler un premier message comprenant au moins une valeur combinée obtenue à partir du premier paramètre public ; /b/ générer une valeur aléatoire et transmettre cette valeur aléatoire à l'entité à contrôler ; /c/ recevoir depuis l'entité à contrôler un second message comprenant au moins une valeur combinée obtenue à partir d'une valeur aléatoire générée au niveau de l'entité à contrôler, d'une clé secrète de l'entité à contrôler et de ladite valeur aléatoire générée à l'étape /b/ ; dans lequel une des valeurs comprises dans le premier ou le second message est basée sur le second paramètre public. Grâce à ces dispositions, on obtient les mêmes avantages que ceux listés ci-avant au regard du procédé de contrôle mis en oeuvre selon un mode de réalisation de la présente invention au niveau de l'entité à contrôler. Dans un mode de réalisation de la présente invention, des première et seconde valeurs aléatoires sont générées avant l'étape /a/ au niveau de l'entité à contrôler ; et la valeur (z) basée sur le second paramètre public (gv) est en outre basée sur le seconde valeur aléatoire et est reçue dans le premier message. On peut décider que l'entité à contrôler est contrôlée sur la base de l'équation suivante: J=((gv)Yx" z1)1/vc où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où g est le premier paramètre public ; gv est le second paramètre public ; x est la valeur combinée reçue dans le premier message ; y est la valeur combinée reçue dans le second message ; z est la valeur basée sur le second paramètre public; c est la valeur transmise par l'entité de contrôle ; et v est la clé secrète de l'entité de contrôle. Ainsi, on obtient une application de la présente invention au protocole de type Schnorr. On peut également prévoir de borner les valeurs aléatoires, la clé secrète de l'entité à contrôler, ainsi que la valeur reçue depuis l'entité de contrôle entre 0 et des valeurs définies respectives. On peut prévoir que les première et seconde valeurs aléatoires sont comprises entre 0 et A-1 ; la valeur reçue depuis l'entité de contrôle est comprise entre 0 et B-1 ; et la clé secrète de l'entité à contrôler est comprise entre 0 et S-1 ; où A, B et S sont paramètres publics. Dans ces conditions l'entité à contrôler peut être contrôlée en outre sur la base de l'inéquation suivante : 0 y 2(Aù1) + (B -1)(S -1) On peut décider dans un autre contexte que l'entité à contrôler est contrôlée sur la base de l'équation suivante: wc - (Sl )y'l(gDy2 xvz où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où gi et g2 sont deux premiers paramètres publics ; où giv et g2v sont deux seconds paramètres publics ; où v est une clé secrète de l'entité de contrôle ; où x et z sont des valeurs transmises dans le premier message et vérifient respectivement les équations suivantes : x = g1 .g22 vr'l vr'2 z = gl •g2 où y1 et y2 sont des valeurs transmises dans le second message et vérifient les équations respectives : y1=r1+s1 c+r'1 y2=r2+s2 c+r'2 où s1 et s2 sont des clés secrètes de l'entité à contrôler ; où r1, r2, r'1 et r'2 sont des valeurs aléatoires générées au niveau de l'entité à contrôler avant l'étape /a/. On peut alors obtenir un procédé d'identification ou d'authentification adapté à un protocole de type Okamoto. Alternativement, la valeur (y) basée sur le second paramètre public (g") 15 peut alors en outre être basée sur la valeur aléatoire et est transmise dans le second message. On peut ainsi décider que l'entité à contrôler est contrôlée sur la base de l'équation suivante: y2x"=Jc 20 où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où y est la valeur (y) basée sur le second paramètre public et vérifie l'équation : y = (g")rlsc où g" est le second paramètre public, r1 est la valeur aléatoire, s 25 la clé secrète de l'entité à contrôler et c la valeur transmise par l'entité de contrôle ; où x est la valeur obtenue avant l'étape /a/ au niveau de l'entité à contrôler et vérifie l'équation : 2rl x = g 30 où v est la clé secrète de l'entité de contrôle. On obtient alors aisément ici un procédé selon un mode de réalisation qui est adapté au protocole de type Fiat-Shamir. On peut décider dans un autre contexte que l'entité à contrôler est contrôlée sur la base de l'équation suivante: y Wxv=J° où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où y est la valeur (y) basée sur le second paramètre public et vérifie l'équation : y=(gv)ri Sc où s est une clé secrète de l'entité à contrôler ; où g est le premier paramètre public ; où gv est le second paramètre public ; où r1 est la valeur aléatoire ; où v est la clé secrète de l'entité de contrôle ; où x est la valeur avant l'étape /a/ au niveau de l'entité à contrôler et vérifie l'équation : x=gwrl où W est un paramètre public associé à l'entité à contrôler. On peut alors obtenir un procédé selon un mode de réalisation de la 20 présente invention qui est adapté au protocole de type GQ. Dans un mode de réalisation de la présente invention, on peut décider que l'entité à contrôler est contrôlée sur la base de l'équation suivante: y-W x" = G; ' ...G,,,, où G1, G2, ..., Gm et W sont des clés publiques de l'entité à 25 contrôler ou des valeurs dans une base de données accessible depuis l'entité de contrôle, où m est un entier positif ; où x est la valeur combinée transmise dans le premier message et vérifie l'équation : Wr1 x = g 30 où y est la valeur basée sur le second paramètre public et vérifie l'équation : y=(gV )riQl'...Qm,,, où g est le premier paramètre public ; où g" est le second paramètre public ; où ri est la valeur aléatoire générée par l'entité à contrôler ; où v est la clé secrète de l'entité de contrôle ; où Q1,...,Qm sont des clés secrètes de l'entité à contrôler et vérifient l'équation suivante : G; Q W = 1, pour i compris entre 1 et m ; où di, ..., dm, sont des valeurs aléatoires générées par l'entité de contrôle. Un troisième aspect de la présente invention propose une entité à contrôler adaptée pour échanger des informations avec une entité de contrôle, et adaptée pour mettre en oeuvre un procédé de contrôle selon le premier aspect de la présente invention. Un quatrième aspect de la présente invention propose une entité de contrôle adaptée pour échanger des informations avec une entité à contrôler, et adaptée pour mettre en oeuvre un procédé de contrôle selon le deuxième aspect de la présente invention. Un cinquième aspect de la présente invention propose un système de contrôle comprenant une entité de contrôle selon le quatrième aspect de la présente invention et au moins une entité à contrôler selon le troisième aspect de la présente invention. D'autres aspects, buts et avantages de l'invention apparaîtront à la lecture de la description d'un de ses modes de réalisation. L'invention sera également mieux comprise à l'aide des dessins, sur lesquels : la figure 1 illustre un procédé de contrôle selon un mode de réalisation de l'art antérieur ; la figure 2 illustre un procédé de contrôle selon un mode de réalisation de la présente invention ; et la figure 3 illustre un procédé de contrôle selon un autre mode de réalisation de la présente invention. La présente invention trouve aisément à être appliquée dans différents protocoles comme notamment le protocole Schnorr, le protocole Okamoto, le protocole GPS, le protocole Fiat-Shamir, le protocole GQ, le protocole GQ2 défini dans `The new Guillou-Quisquater scheme'. RSA 2000 conference, ainsi que le protocole Ong-Schnorr tel que défini dans le document 'Fast signature generation with a Fiat Shamir like scheme' de H. Ong et C. Schnorr, Eurocrypt 1990. La figure 2 illustre un procédé de contrôle dans un mode de réalisation de la présente invention. Ici, un système de contrôle contient une entité de 10 contrôle 11 et une entité à contrôler 12. Aucune limitation n'est attachée à l'entité à contrôler, ni au nombre d'entités à contrôler que peut gérer l'entité de contrôle 11. La présente invention est aisément applicable de manière avantageuse à une entité à contrôler de type passeport électronique ou encore une entité à 15 contrôler de type étiquette RFID. Les paramètres publics utilisés dans un tel système de contrôle sont les suivants : g qui représente l'ensemble des valeurs dans lequel les calculs sont effectués ; et 20 - g", où v est une clé secrète associée à l'entité de contrôle 11. L'entité de contrôle 11 dispose donc d'un identifiant secret v sur la base duquel il est possible de garantir une confidentialité de l'identité de l'entité à contrôler même en cas d'écoute des échanges. L'entité à contrôler 12 dispose, elle, également de son identifiant secret 25 s. Elle utilise en outre une clé publique notée I et qui vérifie l'équation : 1=g s Il est ici prévu que l'entité à contrôler 12 génère deux nombres aléatoires r1 et r2. Puis, elle transmet à l'entité de contrôle 11 une première et une 30 deuxième valeurs combinées qui vérifient respectivement les équations suivantes : x= gr' , et z = (g")2 Sur réception de ces valeurs, l'entité de contrôle 11 génère un nombre aléatoire c (ou `challenge' en anglais) et le transmet à l'entité à contrôler 12. L'entité à contrôler 12, sur réception de cette valeur c, est alors en mesure de calculer une troisième valeur combinée : y=r1 + sc + r2 Cette valeur y est ensuite envoyée à l'entité de contrôle 11. Sur réception de cette valeur y, l'entité de contrôle est en mesure de calculer une valeur J selon l'équation suivante : J=((gv)yx" z1)1/vc Ainsi, l'entité de contrôle peut avantageusement à ce stade déterminer si J correspond à une valeur de clé publique I qui est stockée par exemple dans une base de données associée à cette entité de contrôle. Dans ce cas, l'entité de contrôle peut décider que l'entité à contrôler 12 a été identifiée. Dans le cas où l'entité de contrôle 11 connait la valeur de I, elle peut alors vérifier que I vérifie l'équation : 1 = ((gv)y X-v z-1)1/vc et dans ce cas, décider que l'entité à contrôler a été authentifiée. On peut prévoir que la valeur de 1 est stockée dans une base de données, accessible depuis l'entité de contrôle, et à laquelle on peut laisser libre accès, car la connaissance des identifiants I ne permet pas de reconnaître l'identité d'une entité à contrôler, quand bien même des échanges de cette entité à contrôler avec une entité de contrôle auraient été écoutés plusieurs fois. Un tel procédé de contrôle garantit un niveau élevé de confidentialité qui repose essentiellement sur le secret attaché à la clé secrète de l'entité de contrôle. En effet, sans cette valeur v il est impossible d'obtenir de l'information sur l'identification de l'entité à contrôler. Or, il convient de noter que, avantageusement, au regard des informations échangées, il est très complexe de retrouver la clé secrète v. Les sections précédentes illustrent comment un principe de la présente invention peut avantageusement être appliqué dans le contexte de protocole de type Schnorr. Les sections suivantes détaillent une application de la présente invention dans le contexte d'un protocole de type GPS. Ici, on prévoit de borner les valeurs suivantes : - r1 et r2 entre 0 et A-1 ; - c entre 0 et B-1 ; et -s entre 0 et S-1 où A, B et S sont des paramètres aux valeurs définies. Dans ce contexte, on contrôle l'identité de l'entité à contrôler sur la base de l'équation suivante : I =((gv)YX vz1r ainsi que de l'équation suivante : 0y2(Aû1)+(Bû1)(Sû1) Les sections suivantes détaillent une application de la présente invention dans le contexte d'un protocole de type Okamoto. On prévoit ici d'associer une première clé secrète s1 et une seconde clé secrète s2 à l'entité à contrôler. Les paramètres publics partagés par l'entité de contrôle et l'entité à contrôler sont g1, g2, g1v et g2v, où v est la clé secrète de l'entité de contrôle. Une clé publique associée à l'entité à contrôler I vérifie l'équation suivante : = ges1 g2s2 Dans ce contexte, à l'étape /a/, les quatre valeurs aléatoires r1,r2,r'1 et r'2 sont générées. Puis l'entité à contrôler 12 émet à destination de l'entité de contrôle 11 un 25 premier message qui comprend les deux valeurs x et z définies respectivement par les équations suivantes : x=g1r1 g2r2 z= (g1v)r'l (g2v)r'2 Sur réception de ce premier message, l'entité de contrôle génère une 30 valeur aléatoire c et la transmet à l'entité à contrôler. Puis, cette valeur aléatoire reçue depuis l'entité de contrôle est prise en compte au niveau de l'entité à contrôler afin de déterminer deux valeurs à transmettre dans un second message émis à destination de l'entité de contrôle. Ces deux valeurs yl et y2 vérifient les équations suivantes : y1=rl+sl .c+r'l y2=r2+s2.c+r'2 Enfin, sur la base des valeurs contenues dans ce second message, l'entité de contrôle est en mesure de contrôler l'entité de contrôle, c'est à dire en mesure de l'identifier ou de l'authentifier selon l'équation suivante: wc = (ôl )yl (ô2 )Y2 xvz Plus précisément, lorsque l'entité de contrôle connaît la valeur de la clé publique I de l'entité à contrôler, elle contrôle si l'équation précédente est vérifiée, et dans ce cas décide que l'entité à contrôler est authentifiée. Dans le cas où l'entité de contrôle dispose d'une base de données de clés publiques de différentes entités à contrôler, elle vérifie si une valeur J de la base de données vérifie l'équation précédente, et si tel est le cas elle décide que l'entité à contrôler est identifiée. Les sections suivantes décrivent plusieurs applications de la présente invention au cas où la valeur combinée qui est basée sur le second paramètre public, c'est-à-dire le paramètre public qui est issu d'une combinaison avec la clé secrète de l'entité de contrôle, est envoyée à l'entité de contrôle dans le second message. La figure 3 illustre un tel mode de réalisation dans lequel une première valeur combinée x est initialement envoyée depuis l'entité à contrôler 12 vers l'entité de contrôle 11 dans un premier message, et dans lequel une valeur combinée y obtenue à partir du paramètre public partagé issu de la clé secrète de l'entité de contrôle est envoyée plus tard dans un second message. Les sections suivantes détaillent ce type d'application dans le contexte d'un protocole de type Fiat-Shamir. Une clé secrète v est ici encore associée à l'entité de contrôle 11 et une clé publique I et une clé secrète s sont associées à l'entité à contrôler 12. La clé publique I et la clé secrète s de l'entité à contrôler sont reliées par l'équation suivante : I=s2 Une valeur aléatoire r1 est générée au niveau de l'entité à contrôler. Puis, on obtient une valeur combinée x à transmettre dans le premier message pour l'entité de contrôle selon l'équation suivante : x=g2r1 Sur réception de ce premier message, l'entité de contrôle génère une valeur aléatoire c et la transmet à l'entité à contrôler, cette valeur étant comprise dans l'ensemble de valeurs 0 et 1. Ensuite, l'entité à contrôler est capable de déterminer une valeur 10 combinée y à transmettre via un second message à l'entité de contrôle selon l'équation suivante : y = (gv)rlsc Ici, l'entité de contrôle peut décider si l'entité à contrôler est contrôlée ou non. En effet, si l'entité de contrôle connaît la clé publique de l'entité à contrôler 15 elle est en mesure de décider que cette dernière est authentifiée si l'équation suivante est vérifiée : le=y2X-V Si elle dispose seulement d'une base de données de clés publiques elle peut décider que l'entité à contrôler est identifiée s'il existe une valeur J dans la 20 base de données vérifiant l'équation : Je=y2XV De manière générale, les échanges décrits dans différents contextes d'application peuvent avantageusement être réitérés afin de pouvoir augmenter la fiabilité d'une décision d'identification ou d'authentification. II convient de 25 noter qu'il est préférable d'opérer ainsi par réitération dans le contexte d'application à un protocole de type Fiat-Shamir. Les sections suivantes détaillent une application de la présente invention dans le contexte d'un protocole de type GO. Une clé secrète v est associée à l'entité de contrôle 11. Deux clés 30 publiques I et W sont associées à l'entité à contrôler 12, ainsi qu'une clé secrète s, l'équation suivante étant vérifiée : sw1=1 Les paramètres publics g et g'' sont partagés par l'entité de contrôle et l'entité à contrôler, v étant la clé secrète de l'entité de contrôle. Une valeur aléatoire r1 est générée au niveau de l'entité à contrôler. Puis, un premier message est transmis à l'entité de contrôle, ce premier message comprenant une valeur x vérifiant l'équation suivante : x=gwrl Sur réception de ce premier message, l'entité de contrôle génère une valeur aléatoire c et la transmet à l'entité à contrôler, cette valeur étant comprise entre 0 et W-1. Cette dernière est alors en mesure de déterminer une valeur y obtenue sur la base du paramètre public gv selon l'équation suivante : y= (9v) i sc Ensuite cette valeur y est transmise dans un second message à destination de l'entité de contrôle. Cette dernière peut alors contrôler l'entité à contrôler. Si elle connaît les clés publiques I et W de l'entité à contrôler, et que l'équation suivante est vérifiée : le=y-w xv alors l'entité à contrôler est authentifiée. Si l'entité de contrôle dispose d'une base de données comprenant une liste de clés publiques alors elle peut décider que l'entité à contrôler est identifiée si une valeur J de la base de données vérifie l'équation suivante : J°=ÿ-w xv Les sections suivantes détaillent une application de la présente invention 25 dans le contexte d'un protocole de type GQ2. Les paramètres publics g et gv sont partagés par l'entité de contrôle et l'entité à contrôler, v étant la clé secrète de l'entité de contrôle. Une pluralité de clés publiques sont associées à l'entité à contrôler G1, ... ,Gm et W, où m est un entier positif. 30 Une pluralité de clés secrètes sont également associées à l'entité à contrôler ces clés secrètes vérifiant l'équation suivante : G; Q;"= 1, pour i compris entre 1 et m. L'entité à contrôler génère une valeur aléatoire r1 et transmet un premier message à l'entité de contrôle, ce premier message comprenant la valeur x définie comme suit : Wr1 x = g Sur réception de ce premier message, l'entité de contrôle génère une pluralité de valeurs aléatoires d1, ..., dm, chacune étant comprise entre 0 et W-1. Ensuite, l'entité à contrôler transmet dans un second message la valeur y telle que définie ci-après : y=(gV )rl Ql'...Qm,n Sur réception de ce second message, l'entité de contrôle est alors en mesure de contrôler l'entité à contrôler. Si elle connaît toutes les clés publiques de l'entité à contrôler, elle peut l'authentifier si l'équation suivante est vérifiée : Y Wx ûu, ...u,,, Dans tous les cas décrits ci-avant, il convient de noter qu'il peut être avantageux de prévoir d'échanger le paramètre public g" au préalable avant tout autre échange de message selon le procédé d'un mode de réalisation de la présente invention. Dans ce cas, on peut prévoir que l'entité à contrôler vérifie la validité de ce paramètre public par une méthode de certification ou de signature. Un tel mode de réalisation permet alors de modifier de manière aisée ce paramètre et d'augmenter ainsi le niveau de protection et l'interopérabilité d'un tel protocole dans certaines conditions. REVENDICATIONS 1. Procédé de contrôle d'une entité à contrôler (12) par une entité de contrôle (11) ; une clé secrète (v) étant associée à l'entité de contrôle ; lesdites entité à contrôler et entité de contrôle partageant une pluralité de paramètres publics (g, g"), un second paramètre public (g") de ladite pluralité étant une combinaison d'un premier paramètre public (g) de ladite pluralité avec la clé secrète (v) de l'entité de contrôle (11); ledit procédé comprenant les étapes suivantes au niveau de l'entité à contrôler : la/ générer au moins une valeur aléatoire (r1) ; /b/ transmettre un premier message à l'entité de contrôle, ledit premier message comprenant au moins une valeur combinée (x) obtenue en combinant le premier paramètre public (g) avec la valeur aléatoire ; et /c/ transmettre un second message à l'entité de contrôle, ledit second message comprenant au moins une valeur combinée (y) obtenue en combinant la valeur aléatoire (ri), une clé secrète de l'entité à contrôler (s) et une valeur reçue depuis l'entité de contrôle (c) ; dans lequel au moins une des valeurs comprises dans le premier ou le second message est basée sur le second paramètre public (g"). 2. Procédé de contrôle selon la revendication 1, dans lequel des première et seconde valeurs aléatoires (ri, r2) sont générées à l'étape /a/ ; et dans lequel la valeur (z) basée sur le second paramètre public (g") est en outre basée sur la seconde valeur aléatoire et est transmise dans le premier message. 3. Procédé de contrôle selon la revendication 2, dans lequel la première valeur combinée (x) est obtenue en calculant le premier paramètre public à la puissance de la première valeur aléatoire et la seconde valeur combinée (z) est obtenue en calculant le second paramètre public à la puissance de la seconde valeur aléatoire, et dans lequel la troisième valeur combinée (y) est obtenue en sommant les valeurs suivantes : la première valeur aléatoire, la seconde valeur aléatoire, et le produit de la clé secrète de l'entité à contrôler (s) avec la valeur reçue depuis l'entité de contrôle (c). 4. Procédé de contrôle selon la revendication 2 ou 3, dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: J = ((gV)y x-v z-1)1lvc où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où g est le premier paramètre public ; où gv est le second paramètre public ; où x est la valeur combinée transmise dans le premier message ; où y est la valeur combinée transmise dans le second message ; où z est la valeur basée sur le second paramètre public; où c est la valeur reçue depuis l'entité de contrôle ; et où v est la clé secrète de l'entité de contrôle. 5. Procédé de contrôle selon la revendication 4, dans lequel les première et seconde valeurs aléatoires sont comprises entre 0 et A-1 ; la valeur reçue depuis l'entité de contrôle est comprise entre 0 et B-1 ; et la clé secrète de l'entité à contrôler est comprise entre 0 et S-1 ; où A, B et S sont des paramètres publics ; et dans lequel l'entité à contrôler est contrôlée en outre sur la base de l'inéquation suivante : 0 5 y 6. Procédé de contrôle selon la revendication 2, dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: Jvc = (SI %,g2)Y2 xvz où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où g1 et g2 sont deux premiers paramètres publics ; où g1" et g2v sont deux seconds paramètres publics ; où v est une clé secrète de l'entité de contrôle ; où x et z sont des valeurs transmises dans le premier message et vérifient respectivement les équations suivantes : x = g; '.g22 vr'1 vr'2 z= gl .g2 où y1 et Y2 sont des valeurs transmises dans le second message et vérifient les équations respectives : y1=r1+s1c+r'1 Y2=r2+sec+r'2 où s1 et s2 sont des clés secrètes de l'entité à contrôler ; où r1, r2, r'1 et r'2 sont des valeurs aléatoires générées à l'étape /a/. 7. Procédé de contrôle selon la revendication 1, dans lequel la valeur (y), basée sur le second paramètre public (gV), est en outre basée sur la valeur aléatoire et est transmise dans le second message. 8. Procédé de contrôle selon la revendication 7, dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: y2xv=J° où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où y est la valeur (y) basée sur le second paramètre public et vérifie l'équation : y = (gv)rlscoù g" est le second paramètre public, r1 est la valeur aléatoire, s une clé secrète de l'entité à contrôler et c la valeur reçue depuis l'entité de contrôle ; où x est la valeur obtenue à l'étape /b/ et vérifie l'équation : 2r1 x = g où v est la clé secrète de l'entité de contrôle. 9. Procédé de contrôle selon la revendication 7, dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: @-Wx"=J° où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où y est la valeur (y) basée sur le second paramètre public et vérifie l'équation : y=(gv)rl sc 15 où s est une clé secrète de l'entité à contrôler ; où g est le premier paramètre public ; où g" est le second paramètre public où r1 est la valeur aléatoire ; où v est la clé secrète de l'entité de contrôle ; 20 où x est la valeur obtenue à l'étape /b/ et vérifie l'équation : x=gWr1 où W est un paramètre public associé à l'entité à contrôler. 10. Procédé de contrôle selon la revendication 7, dans lequel on décide que 25 l'entité à contrôler est contrôlée sur la base de l'équation suivante: _Wv G, ...G; @ x = où G1, G2, ..., Gm et W sont des clés publiques de l'entité à contrôler ou des valeurs dans une base de données accessible depuis l'entité de contrôle, où m est un entier positif ; 30 où x est la valeur combinée transmise dans le premier message et vérifie l'équation : 10x = g Wrl où y est la valeur basée sur le second paramètre public et vérifie l'équation : y=(gv)rlQi'...Qmn, où g est le premier paramètre public ; où gV est le second paramètre public où ri est la valeur aléatoire générée par l'entité à contrôler ; où v est la clé secrète de l'entité de contrôle ; où Q1,...,Qn, sont des clés secrètes de l'entité à contrôler et vérifient l'équation suivante : G; Q w = 1, pour i compris entre 1 et m ; où di, ..., dm, sont des valeurs aléatoires générées par l'entité de contrôle. 11. Procédé de contrôle par une entité de contrôle (11) d'au moins une 15 entité à contrôler (12), une clé secrète étant associée à l'entité de contrôle ; lesdites entité à contrôler et entité de contrôle partageant une pluralité de paramètres publics (g, g"), un second paramètre public (g� de ladite pluralité étant une combinaison d'un premier paramètre public (g) de ladite pluralité 20 avec la clé secrète (v) de l'entité de contrôle (11); ledit procédé comprenant les étapes suivantes au niveau de l'entité de contrôle : /a/ recevoir depuis l'entité à contrôler un premier message comprenant au moins une valeur combinée (x) obtenue à partir du premier 25 paramètre public ; /b/ générer une valeur aléatoire (c) et transmettre cette valeur aléatoire à l'entité à contrôler (12) ; /c/ recevoir depuis l'entité à contrôler (12) un second message comprenant au moins une valeur combinée (y) obtenue à partir d'une valeur 30 aléatoire générée au niveau de l'entité à contrôler, d'une clé secrète de l'entité à contrôler (s) et de ladite valeur aléatoire (c) générée à l'étape /b/ ; 10 dans lequel une des valeurs comprises dans le premier ou le second message est basée sur le second paramètre public (g"). 12. Procédé de contrôle selon la revendication 11, dans lequel des première et seconde valeurs aléatoires (ri,r2) sont générées au niveau de l'entité à contrôler avant l'étape /a/ ; et dans lequel la valeur (z) basée sur le second paramètre public (g") est en outre basée sur le seconde valeur aléatoire et est reçue dans le premier message. 13. Procédé de contrôle selon la revendication 12 dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: J=((gv)yxvz1)1/vc où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où g est le premier paramètre public ; g" est le second paramètre public ; x est la valeur combinée transmise dans le premier message ; y est la valeur combinée transmise dans le second 20 message ; z est la valeur basée sur le second paramètre public ; c est la valeur transmise par l'entité de contrôle ;et v est la clé secrète de l'entité de contrôle. 25 14. Procédé de contrôle selon la revendication 13, dans lequel les première et seconde valeurs aléatoires sont comprises entre 0 et A-1 ; la valeur reçue depuis l'entité de contrôle est comprise entre 0 et B-1 ; et la clé secrète de l'entité à contrôler est comprise entre 0 et S-1 ; où A, B et S sont des paramètres publics ; et 30 dans lequel l'entité à contrôler est contrôlée en outre sur la base de l'inéquation suivante : 05yS2(Aù1)+(Bù1)(Sù1) 15. Procédé de contrôle selon la revendication 11, dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: Jvc = (g)yl(g,)y2 xvz où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où gi et g2 sont deux premiers paramètres publics où gi" et g2" sont deux seconds paramètres publics ; où v est une clé secrète de l'entité de contrôle ; où x et z sont des valeurs transmises dans le premier message et vérifient respectivement les équations suivantes : x = gil .g22 vr'1 vr'2 z = gi .g2 où yi et y2 sont des valeurs transmises dans le second message et vérifient les équations respectives : y,=r1+s1 c+r'1 y2=r2+s2 c+r'2 où si et s2 sont des clés secrètes de l'entité à contrôler ; où ri, r2, r'1 et r'2 sont des valeurs aléatoires générées au niveau de l'entité à contrôler avant l'étape /a/. 16. Procédé de contrôle selon la revendication 11, dans lequel la valeur (y) basée sur le second paramètre public (gV) est en outre basée sur la valeur aléatoire et est transmise dans le second message. 17. Procédé de contrôle selon la revendication 16, dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: où J est la clé publique de l'entité à contrôler ou une valeur dans 30 une base de données accessible depuis l'entité de contrôle ;25où y est la valeur (y) basée sur le second paramètre public et vérifie l'équation : y = (g")r1s° où gv est le second paramètre public, r1 est la valeur aléatoire, s la clé secrète de l'entité à contrôler et c la valeur transmise par l'entité de contrôle ; où x est la valeur obtenue avant l'étape/a/ au niveau de l'entité à contrôler et vérifie l'équation : 2r1 x = g où v est la clé secrète de l'entité de contrôle. 18. Procédé de contrôle selon la revendication 16, dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: y Wxv=Jc où J est la clé publique de l'entité à contrôler ou une valeur dans une base de données accessible depuis l'entité de contrôle ; où y est la valeur (y) basée sur le second paramètre public et vérifie l'équation : y=(gv)rl sc où s est une clé secrète de l'entité à contrôler ; où g est le premier paramètre public ; où gv est le second paramètre public ; où r1 est la valeur aléatoire ; où v est la clé secrète de l'entité de contrôle ; où x est la valeur obtenue avant l'étape /a/ au niveau de l'entité à contrôler et vérifie l'équation : x=g où W est un paramètre public associé à l'entité à contrôler. 19. Procédé de contrôle selon la revendication 16, dans lequel on décide que l'entité à contrôler est contrôlée sur la base de l'équation suivante: y Wx° =Gd'...Gm Wr1où G1, G2, ..., Gm et W sont des clés publiques de l'entité à contrôler ou des valeurs dans une base de données accessible depuis l'entité de contrôle, où m est un entier positif ; où x est la valeur combinée transmise dans le premier message et vérifie l'équation : Wr1 x = g où y est la valeur basée sur le second paramètre public et vérifie l'équation : y=(gv)r,Qi'...Qd où g est le premier paramètre public ; où g' est le second paramètre public où r1 est la valeur aléatoire générée par l'entité à contrôler ; où v est la clé secrète de l'entité de contrôle ; où Q1,...,Qm sont des clés secrètes de l'entité à contrôler et vérifient l'équation suivante : G; Q W = 1, pour i compris entre 1 et m ; où d1, ..., dm, sont des valeurs aléatoires générées par l'entité de contrôle. 20. Entité à contrôler (12) adaptée pour échanger des informations avec une 20 entité de contrôle (11), et adaptée pour mettre en oeuvre un procédé de contrôle selon l'une quelconque des revendications 1 à 10. 21. Entité de contrôle (11) adaptée pour échanger des informations avec une entité à contrôler (12), et adaptée pour mettre en œuvre un procédé de 25 contrôle selon l'une quelconque des revendications 11 à 19. 22. Système de contrôle comprenant une entité à contrôler (11) selon la revendication 20 et au moins une entité de contrôle (12) selon la revendication 21. 15 30