Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
GROUP SIGNATURE USING A PSEUDONYM
Document Type and Number:
WIPO Patent Application WO/2014/154694
Kind Code:
A1
Abstract:
The invention relates to a method for signing a message (m), implemented by the processing means of a user device of a member (Mi) belonging to a group of members (Formula I), said user device having a secret signature key (ski), said method including the step of generating (E301) a group signature (σ) for the message (m), enabling said member (Mi) to prove the membership thereof in the group (Formula I), and the step of generating (E302) a pseudonym (nymij) identifying the member (Mi) within a domain (Dj) of a service provider (SPj), said domain including a set of terminals in communication with a server of said service provider, said signature (σ) being designed so that said member (Mi) can prove, by means of signing the message (m), the knowledge thereof of said secret signature key without disclosing same, said group signature (σ) being designed such that the membership of the member (Mi) in the group is verifiable independently from the pseudonym (nymij), said pseudonym and said signature being a function of a portion (xi) of said secret signature key of the member (Mi) and being designed such as to prove that the member identified by the pseudonym is the signee of the message (m) and said pseudonym (nymij) of said member (Mi) being specific to the domain (D j ).

Inventors:
PATEY ALAIN (FR)
CHABANNE HERVÉ (FR)
BRINGER JULIEN (FR)
Application Number:
PCT/EP2014/055969
Publication Date:
October 02, 2014
Filing Date:
March 25, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MORPHO (FR)
International Classes:
H04L9/32
Foreign References:
EP1848143A12007-10-24
Other References:
JULIEN BRINGER ET AL: "Collusion-Resistant Domain-Specific Pseudonymous Signatures", INTERNATIONAL ASSOCIATION FOR CRYPTOLOGIC RESEARCH,, vol. 20130401:132437, 31 March 2013 (2013-03-31), pages 1 - 15, XP061007444
JENS BENDER ET AL: "Domain-Specific Pseudonymous Signatures for the German Identity Card", 19 September 2012, INFORMATION SECURITY, SPRINGER BERLIN HEIDELBERG, BERLIN, HEIDELBERG, PAGE(S) 104 - 119, ISBN: 978-3-642-33382-8, XP047016711
JULIEN BRINGER ET AL: "Backward Unlinkability for a VLR Group Signature Scheme with Efficient Revocation Check", INTERNATIONAL ASSOCIATION FOR CRYPTOLOGIC RESEARCH,, vol. 20120514:133910, 14 May 2012 (2012-05-14), pages 1 - 22, XP061005783
BENDER, J.; DAGDELEN, O.; FISCHLIN, M.; KUGLER, D.: "ISC. Lecture Notes in Computer Science", vol. 7483, 2012, SPRINGER, article "Domain-specific pseudonymous signatures for the german identity card", pages: 104 - 119
BRINGER, J.; PATEY, A.: "VLR group signatures - how to achieve both backward unlinkability and efficient revocation checks", SECRYPT, 2012, pages 215 - 220
DAVID CHAUM; EUGÈNE VAN HEYST, EUROCRYPT, 1991, pages 257 - 265
DAN BONEH; HOVAV SHACHAM, ACM CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2004, pages 168 - 177
BRINGER J.; PATEY A.: "VLR group signatures - how to achieve both backward unlinkability and efficient revocation checks", SECRYPT, 2012, pages 215 - 220
BRINGER, J.; CHABANNE, H.; POINTCHEVAL, D.; ZIMMER, S.: "IWSEC. Lecture Notes in Computer Science", vol. 5312, 2008, SPRINGER, article "An application of the Boneh and Shacham group signature scheme to biometric authentication", pages: 219 - 230
NAKANISHI, T.; FUNABIKI, N.: "IWSEC. Lecture Notes in Computer Science", vol. 4266, 2006, SPRINGER, article "A short verifier-local revocation group signature scheme with backward unlinkability", pages: 17 - 32
Attorney, Agent or Firm:
REGIMBEAU (FR)
Download PDF:
Claims:
REVENDICATIONS

1 . Procédé de signature d'un message (m) mis en œuvre par des moyens de traitement d'un dispositif utilisateur d'un membre (M,) appartenant à un groupe de membres (£), ledit dispositif utilisateur détenant une clé de signature secrète (ski), comprenant une étape de génération (E301 ) pour le message (m) d'une signature de groupe (o) permettant audit membre (M,) de prouver son appartenance au groupe de membres (£) et une étape de génération (E302) d'un pseudonyme (nyrriij) identifiant le membre (M,) dans un domaine (Dj) d'un fournisseur de services (SPj), ledit domaine comprenant un ensemble de terminaux en communication avec un serveur dudit fournisseur de service,

ladite signature de groupe (o) étant construite de sorte que ledit membre (Mi) puisse prouver en signant le message (m) sa connaissance de ladite clé de signature secrète sans la divulguer,

et caractérisé en ce que ladite signature de groupe (o) est construite de sorte que l'appartenance du membre (M|) au groupe soit vérifiable indépendamment du pseudonyme (nyrriij),

et en ce que ledit pseudonyme et ladite signature sont fonction d'une partie (xi) de ladite clé de signature secrète du membre (M,), et sont construits de sorte à prouver que le membre identifié par le pseudonyme est le signataire du message (m) et en ce que ledit pseudonyme (nyrriij) du membre (M,) est spécifique au domaine

2. Procédé de signature selon la revendication précédente caractérisé en ce que la clé de signature secrète (ski) est connue uniquement du membre (M,) détenant ledit dispositif utilisateur.

3. Procédé de signature selon l'une quelconque des revendications précédentes caractérisé en ce que ladite clé de signature secrète (ski) est stockée dans un moyen de stockage sécurisé.

4. Procédé de signature selon l'une quelconque des revendications précédentes caractérisé en ce que préalablement auxdites étapes de génération d'une signature de groupe et d'un pseudonyme, ledit procédé comprend une étape (E100) de génération de clés mise en œuvre par un serveur de gestion de clés d'une autorité de gestion de clés, au cours de laquelle, des moyens de traitement du serveur de gestion :

- génèrent pour le groupe de membres (£) un ensemble de paramètres publics (gpk) (E101 ),

- déterminent un paramètre de domaine (dpkj) spécifique au domaine (D,) (E102) et,

- transmettent ce paramètre au fournisseur de service (SPj) (E103). 5. Procédé de signature selon la revendication 4 caractérisé en ce que le paramètre de domaine (dpkj) est égal à gtri , avec un entier et g1 un générateur d'un groupe G1 , g1 étant un paramètre parmi l'ensemble de paramètres publics (gpk).

6. Procédé de signature selon la revendication 5 caractérisé en ce que l'entier rj est déterminé par l'autorité de gestion de clés.

7. Procédé de signature selon l'une quelconque des revendications 4 à 6 caractérisé en ce que ledit pseudonyme (nyrriij) du membre (M,) dans le domaine (Dj) est fonction du paramètre de domaine {dpkj) spécifique au domaine (D,) déterminé par ledit serveur de gestion.

8. Procédé de signature selon l'une quelconque des revendications 4 à 7 caractérisé en ce que le pseudonyme (nyrriij) est égal à dpkjXi avec xi ladite partie de clé de signature secrète du membre (M,) et dpkj ledit paramètre de domaine.

9. Procédé de signature selon l'une quelconque des revendications précédentes caractérisé en ce que ladite signature (o) comprend une valeur K, différente du pseudonyme (nyrriij), de la forme BAxi avec B un élément d'un groupe G1 et xi ladite partie de clé de signature secrète du membre (M,).

10. Procédé de signature selon l'une quelconque des revendications précédentes caractérisé en ce que les moyens de traitement du dispositif utilisateur mettent en œuvre un algorithme de preuve à divulgation nulle de connaissance dans lequel ladite signature est générée de façon à prouver que le membre identifié par le pseudonyme (nyrriij) est le signataire du message (m).

1 1 . Procédé de contrôle d'une signature d'un message (m) et d'un pseudonyme mis en œuvre par des moyens de traitement d'un serveur de contrôle, ladite signature

(o) et ledit pseudonyme (nymij) étant générés (E500) selon le procédé de l'une quelconque des revendications précédentes, comprenant une étape de vérification (E601 ), à partir de la signature (o) et du pseudonyme (nymij), de la connaissance par le membre (Mi) de la clé de signature secrète (ski) et que ledit pseudonyme et ladite signature du membre (Mi) sont fonction d'une partie (xi) de ladite clé de signature secrète, de sorte à prouver que le membre identifié par le pseudonyme est le signataire du message (m) et qu'il appartient au groupe de membres (£) ;

12. Procédé de contrôle selon la revendication 1 1 caractérisé en ce que ladite étape de vérification comprend une étape de vérification de preuve lors de laquelle les moyens de traitement du serveur de contrôle vérifient qu'une preuve à divulgation nulle de connaissance prouvant que le membre identifié par le pseudonyme est le signataire du message (m) est correcte. 13. Procédé de contrôle selon la revendication 12 en dépendance des revendications 8 et 9 caractérisé en ce que ladite étape de vérification de preuve vérifie l'égalité des logarithmes discrets de la valeur K en base B et du pseudonyme nymij en base dpkj. 14. Procédé de contrôle selon l'une quelconque des revendications 12 à 13 caractérisé en ce que ladite étape de vérification comprend une vérification de ladite signature pour prouver l'appartenance du membre (Mi) au groupe et en ce que ladite étape de vérification de preuve est réalisée lors de la vérification de ladite signature.

15. Procédé de contrôle selon l'une quelconque des revendications 1 1 à 14 comprenant une étape (E602) de vérification de la révocation du membre (Mi) du groupe de membres (£).

16. Procédé de contrôle selon la revendication 15 caractérisé en ce que les moyens de traitement du serveur de contrôle vérifient dans une base de données que le pseudonyme (nymij) du membre (Mi) n'appartient pas à une liste de révocation (RLj) pour le domaine (Dj), ladite liste de révocation étant construite (E400) à partir des pseudonymes (nym^) des membres du groupe de membres (£) révoqués par l'autorité de gestion.

17. Procédé de contrôle selon la revendication 16 caractérisé en ce que ladite autorité de gestion souhaitant révoquer du groupe de membres (£) un membre (Mi), transmet ladite partie de clé secrète (x,) du membre (M,) au fournisseur de service (SPj) et en ce que ladite liste de révocation (RLj) pour le domaine (Dj) stockée dans une base de données est construite par le fournisseur de service (SPj) en ajoutant dans la liste de révocation (RLj), le pseudonyme (nym^) du membre (Mi) calculé à partir de ladite partie de clé secrète reçue.

18. Programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé selon l'une quelconque des revendications précédentes lorsque ledit programme est exécuté sur un ordinateur.

19. Dispositif utilisateur (201 ) comprenant au moins un moyen de stockage, un moyen de traitement et une interface de communication caractérisé en ce qu'il est configuré pour mettre en œuvre un procédé selon l'une quelconque des revendications 1 à 10.

20. Serveur de contrôle (205s) comprenant au moins un moyen de stockage, un moyen de traitement et une interface de communication caractérisé en ce qu'il est configuré pour mettre en œuvre un procédé selon l'une quelconque des revendications 1 1 à 17.

21 . Système caractérisé en ce qu'il est comprend au moins un dispositif utilisateur (201 ) selon la revendication 19 et au moins un serveur de contrôle (205s) selon la revendication 20.

Description:
SIGNATURE DE GROUPE UTILISANT UN PSEUDONYME

DOMAINE DE L'INVENTION La présente invention concerne de façon générale le domaine des signatures numériques.

L'invention concerne plus précisément une nouvelle méthode de signature combinant une signature de groupe avec l'utilisation de pseudonymes, à des fins d'authentification.

Elle s'applique tout particulièrement aux documents d'identité, notamment aux documents de voyage lisibles par machine (Machine Readable Travel Document, MRTD) tels que les passeports ou les cartes d'identité.

ETAT DE LA TECHNIQUE

Comme illustré sur la figure 1 , pour qu'un détenteur d'un document d'identité Docld de type MRTD puisse accéder à un service proposé par un fournisseur de service SP, une connexion est établie entre le document d'identité et un terminal T du fournisseur de service et divers mécanismes de sécurité sont mis en place. Parmi ces mécanismes, le protocole PACE (Password Authenticated Connection Establishment) permet d'établir un canal sécurisé entre le document d'identité et le terminal, et le protocole EAC (Extended Access Control) permet de réaliser une authentification mutuelle du document d'identité et du fournisseur de service et d'établir un autre canal sécurisé.

De plus, le protocole RI (Restricted Identification) permet de générer un pseudonyme spécifique à un document d'identité pour un domaine donné regroupant un ensemble de terminaux du fournisseur de service. Ce pseudonyme permet auxdits terminaux d'identifier le document d'identité. Par ailleurs ce protocole satisfait la propriété de « cross-domain anonymity » : il est impossible d'établir un lien entre les pseudonymes utilisés pour des domaines différents pour un même document d'identité. Ce protocole peut être étendu à l'utilisation de tels pseudonymes pour signer numériquement un message. Une telle variante de ce protocole est décrite dans la référence Bender, J., Dagdelen, O., Fischlin, M., Kugler, D.: Domain-specific pseudonymous signatures for the german identity card. In: Gollmann, D., Freiling, F.C. (eds.) ISC. Lecture Notes in Computer Science, vol. 7483, pp. 104-119, Springer (2012) et propose que chaque utilisateur détienne un élément secret, dit clé de signature, généré par une autorité de gestion de clés à partir de sa propre clé secrète, et que cet élément secret soit utilisé à la fois pour signer les messages émis et pour générer le pseudonyme utilisé par cet utilisateur. Ce protocole permet de garantir que l'utilisateur possède une clé de signature valide et non révoquée, et que le pseudonyme utilisé est légitime.

Un tel protocole vérifie les trois propriétés suivantes : « unforgeability », « cross-domain anonymity » et « seclusiveness ».

La propriété d' « unforgeability » assure qu'il est impossible à quiconque de générer une signature à la place d'un détenteur d'un document d'identité.

La propriété de « seclusiveness » assure qu'il est impossible que soit générée une signature valide utilisant un pseudonyme non valide.

Néanmoins ce protocole se fonde sur l'hypothèse que les utilisateurs ne peuvent récupérer leur clé de signature, cette clé étant supposée être stockée sur une puce inviolable d'un document d'identité. En effet, la mise en commun par au moins deux utilisateurs de leurs clés de signature leur permettrait de retrouver la clé secrète de l'autorité de gestion de clés et donc de générer de nouvelles clés valides. Il existe donc un besoin de proposer un mécanisme de signature sécurisé même en cas de récupération et de mise en commun des clés de signature de plusieurs utilisateurs.

D'autre part, ce protocole suppose également que l'autorité de gestion de clés ne mémorise pas les clés de signature générées pour les utilisateurs, une fois celles-ci délivrées. En effet, la connaissance des clés par l'autorité de gestion de clés lui permettrait de les utiliser pour signer un message à la place de n'importe quel utilisateur légitime. Or, l'absence de mémorisation de ces clés par l'autorité de gestion de clés est difficile à garantir. Il existe donc également un besoin de proposer un mécanisme de signature garantissant qu'aucune autorité ne puisse signer un message à la place d'un utilisateur. Par ailleurs, un autre mécanisme de signature connu est celui de la signature de groupe, tel que décrit dans la référence Bringer, J.Patey, A.: VLR group signatures - how to achieve both backward unlinkability and efficient revocation checks. In: SECRYPT. pp. 215-220 (2012). Celui-ci permet à un membre d'un groupe de signer un message de manière anonyme au nom du groupe et de prouver l'appartenance de ce membre à ce groupe.

Il prévoit d'associer un secret de groupe à des membres d'un groupe. Il prévoit également d'associer à chaque membre du groupe une clé secrète composée d'une première partie de clé générée par le membre et d'une seconde partie de clé basée à la fois sur la première partie de clé et sur le secret de groupe. La signature d'un message ou challenge par un membre avec sa clé secrète lui permet de prouver qu'il est membre du groupe tout en restant anonyme.

Néanmoins un tel mécanisme ne permet pas à un membre du groupe d'avoir une identité dans ce groupe.

Les références suivantes décrivent également des mécanismes de signature de groupe : David Chaum, Eugène van Heyst: Group Signatures. EUROCRYPT 1991 :257-265 et Dan Boneh, Hovav Shacham: Group signatures with verifier-local revocation. ACM Conférence on Computer and Communications Security 2004:168- 177.

Il existe donc un besoin de proposer un mécanisme de signature permettant à un membre d'un groupe de signer un message au nom du groupe, tout en ayant une identité dans le groupe, sans présenter les inconvénients des mécanismes de signature utilisant des pseudonymes cités ci-dessus.

RESUME DE L'INVENTION

A cet effet, l'invention a pour objet un procédé de signature d'un message m mis en œuvre par des moyens de traitement d'un dispositif utilisateur d'un membre M, appartenant à un groupe de membres £, ledit dispositif utilisateur détenant une clé de signature secrète ski, comprenant une étape de génération pour le message m d'une signature de groupe σ permettant audit membre M, de prouver son appartenance au groupe de membres £ et une étape de génération d'un pseudonyme nyrrii j identifiant le membre M, dans un domaine D j d'un fournisseur de services SP j , ledit domaine D j comprenant un ensemble de terminaux en communication avec un serveur dudit fournisseur de service, ladite signature σ étant construite de sorte que ledit membre Mi puisse prouver en signant le message m sa connaissance de ladite clé de signature secrète sans la divulguer,

et caractérisé en ce que ladite signature de groupe est construite de sorte que l'appartenance du membre au groupe soit vérifiable indépendamment du pseudonyme,

et en ce que ledit pseudonyme et ladite signature sont fonction d'une partie xi de ladite clé de signature secrète du membre M,, et sont construits de sorte à prouver que le membre identifié par le pseudonyme est le signataire du message m et en ce que ledit pseudonyme nyrrii j du membre M, est spécifique au domaine D j .

Le mécanisme de signature objet de l'invention combine ainsi une signature de groupe et l'utilisation de pseudonymes, et permet au signataire de prouver son appartenance au groupe tout en ayant une identité dans ce groupe.

Dans une variante, la clé de signature secrète (ski) est connue uniquement du membre M, détenant ledit dispositif utilisateur. Ainsi, personne, pas même l'autorité de gestion de clés, ne peut de ce fait signer un message à la place du membre M,.

Avantageusement, ladite clé de signature secrète (ski) est stockée dans un moyen de stockage sécurisé pour empêcher l'accès à celle-ci par un tiers.

Dans un mode de réalisation, préalablement auxdites étapes de génération d'une signature de groupe et d'un pseudonyme, ledit procédé peut comprendre une étape de génération de clés mise en œuvre par un serveur de gestion de clés d'une autorité de gestion de clés, au cours de laquelle, des moyens de traitement du serveur de gestion génèrent pour le groupe de membres £ un ensemble de paramètres publics gpk, déterminent un paramètre de domaine dpk, spécifique au domaine D j , et transmettent ce paramètre au fournisseur de service SP j . Avantageusement, le paramètre de domaine (dpk j ) est égal à g j , avec un entier et g1 un générateur d'un groupe G1 , g1 étant un paramètre parmi l'ensemble de paramètres publics (gpk). Dans un mode de réalisation, l'entier est déterminé par l'autorité de gestion de clés.

De manière préférentielle, ledit pseudonyme nymi j du membre M, dans le domaine D j est fonction du paramètre de domaine dpkj spécifique au domaine D, déterminé par ledit serveur de gestion. Notamment, le pseudonyme nym^ peut être égal à dpk 1 avec xi ladite partie de clé de signature secrète du membre M, et dpk j ledit paramètre de domaine.

Ainsi, le pseudonyme d'un membre est différent dans chaque domaine et ne dévoile pas la partie de clé secrète utilisée pour le générer, ce qui permet de garantir que des pseudonymes du même membre dans deux domaines différents ne pourront être reliés.

D'autre part, ladite signature σ peut comprendre une valeur K, différente du pseudonyme, de la forme B A xi avec B un élément d'un groupe G1 et xi ladite partie de clé de signature secrète du membre M,.

Selon une variante, les moyens de traitement du dispositif utilisateur mettent en œuvre un algorithme de preuve à divulgation nulle de connaissance dans lequel ladite signature est générée de façon à prouver que le membre identifié par le pseudonyme (nirrii j ) est le signataire du message. L'utilisation d'un algorithme à divulgation nulle de connaissance permet au signataire d'apporter la preuve de son identité sans pour autant divulguer sa clé secrète.

L'invention a également pour objet un procédé de contrôle d'une signature d'un message m et d'un pseudonyme mis en œuvre par des moyens de traitement d'un serveur de contrôle, ladite signature σ et ledit pseudonyme nymij étant générés selon le procédé de signature décrit précédemment, comprenant une étape de vérification, à partir de la signature σ et du pseudonyme nymij, de la connaissance par le membre Mi de la clé de signature secrète ski et que ledit pseudonyme et ladite signature du membre Mi sont fonction d'une partie xi de ladite clé de signature secrète, de sorte à prouver que le membre identifié par le pseudonyme est le signataire du message m et qu'il appartient au groupe de membres £ ; Selon une variante ladite étape de vérification comprend une étape de vérification de preuve lors de laquelle les moyens de traitement du serveur de contrôle vérifient qu'une preuve à divulgation nulle de connaissance prouvant que le membre identifié par le pseudonyme est le signataire du message (m) est correcte. Ladite étape de vérification de preuve peut vérifier l'égalité des logarithmes discrets de la valeur K en base B et du pseudonyme nym^ en base dpk j . Une telle étape prouve ainsi que le membre identifié par le pseudonyme est bien le signataire du message m sans avoir à calculer lesdits logarithmes discrets et sans révéler aucune partie de la clé de signature secrète du membre M,. Selon un mode de réalisation, ladite étape de vérification comprend une vérification de ladite signature pour prouver l'appartenance du membre (Mi) au groupe et ladite étape de vérification de preuve est réalisée lors de la vérification de ladite signature. Ainsi la vérification de la signature permet à la fois de prouver l'appartenance du signataire au groupe et de prouver que le membre identifié par le pseudonyme est bien le signataire du message.

Le procédé de contrôle peut également comprendre une étape de vérification de la révocation du membre Mi du groupe de membres £ . Pour ce faire, les moyens de traitement du serveur de contrôle peuvent vérifier dans une base de données que le pseudonyme nyrrii j du membre Mi n'appartient pas à une liste de révocation RL j pour le domaine D j , ladite liste de révocation étant construite à partir des pseudonymes nym^ des membres du groupe £ révoqués par l'autorité de gestion.

L'autorité de gestion souhaitant révoquer du groupe de membres £ un membre

Mi, transmet ladite partie de clé secrète x, du membre M, au fournisseur de service SP j . La liste de révocation RL j pour le domaine D j stockée dans une base de données est construite par le fournisseur de service SP j en ajoutant dans la liste de révocation RL j , le pseudonyme nyrrii j du membre Mi calculé à partir de ladite partie de clé secrète reçue. L'invention a également pour objet un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes des procédés de signature et de contrôle de signature définis ci-dessus lorsque ledit programme est exécuté sur un ordinateur, un dispositif utilisateur et un serveur de contrôle comprenant au moins un moyen de stockage, un moyen de traitement et une interface de communication configurés pour mettre en œuvre respectivement un procédé de signature et un procédé de contrôle de signature tels que définis ci- dessus ainsi qu'un système comprenant au moins un tel dispositif utilisateur et au moins un tel serveur de contrôle. DESCRIPTION DES FIGURES

D'autres caractéristiques et avantages ressortiront encore de la description qui suit, laquelle est purement illustrative et non limitative et doit être lue en regard des figures annexées, parmi lesquelles :

La figure 1 illustre des mécanismes de sécurité avancés pour MRTD.

La figure 2 est une représentation schématique d'un exemple de système pour la mise en œuvre des procédés selon l'invention.

La figure 3 représente un ordinogramme illustrant les étapes génériques d'un procédé de signature selon un mode de réalisation de l'invention.

La figure 4 représente un ordinogramme illustrant les étapes d'un procédé de génération de paramètres publics selon un mode de réalisation de l'invention.

La figure 5 représente un ordinogramme illustrant les étapes d'un procédé d'adhésion à un groupe selon un mode de réalisation de l'invention.

La figure 6 représente un ordinogramme illustrant les étapes d'un procédé de signature d'un message selon un mode de réalisation de l'invention.

La figure 7 représente un ordinogramme illustrant les étapes génériques d'un procédé de signature et de contrôle de signature selon un mode de réalisation de l'invention. La figure 8 représente un ordinogramme illustrant les étapes d'un procédé de contrôle de signature selon un mode de réalisation de l'invention.

DESCRIPTION DETAILLEE D'AU MOINS UN MODE DE REALISATION

La figure 2 représente un exemple de système pour la mise en œuvre des procédés selon l'invention.

Un tel système comprend un ensemble de dispositifs utilisateurs 201 détenus chacun par un membre Mi, (i entier) faisant partie d'un ensemble de membres constituant un groupe de membres £, des terminaux de lecture 202, une autorité de gestion de clés 203, des fournisseurs de services 204 et des vérificateurs 205, les vérificateurs pouvant être des fournisseurs de service.

L'ensemble des dispositifs utilisateurs, les terminaux de lecture, l'autorité de gestion de clés, les fournisseurs de services et les vérificateurs sont interconnectés par le biais d'un réseau informatique 206. Un ensemble de terminaux de ce réseau en communication avec un fournisseur de service constitue un domaine.

L'autorité de gestion de clés, les fournisseurs de service et les vérificateurs peuvent être connectés à ce réseau par des serveurs respectifs comprenant une mémoire vive et des moyens de stockage tels qu'une mémoire non volatile réinscriptible (mémoire flash ou mémoire EEPROM) pouvant stocker une base de données, des moyens de traitement comportant un processeur, des unités cryptographiques pour générer notamment des nombres aléatoires, etc.. et des moyens d'interface leur permettant de communiquer avec d'autres entités sur le réseau et d'être connectés à des bases de données. De tels serveurs peuvent également comprendre des moyens de saisie et d'interface utilisateur permettant leur administration. Les serveurs des entités précitées sont respectivement dénommés serveur de gestion de clés 203s, serveur de fournisseur de service 204s, et serveur de contrôle 205s dans la suite de la description.

Avantageusement, au moins deux de ces serveurs peuvent être réunis au sein d'un même dispositif informatique assurant conjointement les fonctions desdits serveurs. Le dispositif utilisateur d'un membre M, peut comprendre un dispositif électronique portable apte à stocker des données sécurisées lisibles par un terminal de lecture.

Un dispositif électronique portable peut être un document d'identité comprenant une puce dans laquelle sont stockées des données sécurisées par exemple un document de voyage lisible par machine (Machine Readable Travel Document, MRTD) tel qu'un passeport ou une carte d'identité, un dispositif de stockage à mémoire flash doté d'une interface de communication USB, dite clé USB (« Universal Sériai Bus »), une carte à puce etc.. Le dispositif électronique portable peut comporter une mémoire vive et des moyens de stockage tels qu'une mémoire non volatile réinscriptible (mémoire flash ou mémoire EEPROM), des moyens de traitement comportant un processeur, des unités cryptographiques pour générer notamment des nombres aléatoires etc.. Le dispositif électronique portable peut également comporter une interface de communication sans contact telle qu'une interface RFID ou NFC, ou bien une interface de communication sans fil telle qu'une interface Bluetooth ou Wifi.

Les données sécurisées stockées dans le dispositif électronique portable peuvent être des données biométriques. Dans ce cas, le dispositif portable peut être muni de capteurs permettant de capturer les données biométriques d'un membre Mi, telles que ses empreintes digitales, palmaires ou rétiniennes.

Un dispositif électronique portable et un terminal de lecture peuvent communiquer par le biais de communications sans fil ou sans contact telles que celles mentionnées ci-dessus. Ils peuvent également communiquer par le biais d'une interface USB, Firewire ou toute autre interface de communication filaire. Ils peuvent également communiquer par le biais d'une interface à contact de carte à puce de type ISO 7816.

Un terminal de lecture peut également comporter une interface de communication filaire ou sans fil, adaptée pour la connexion du terminal au réseau informatique, telle qu'une interface Ethernet, Wifi ou 3G ; et une interface utilisateur permettant au membre M, de contrôler son fonctionnement.

Selon une variante, un dispositif électronique portable et un terminal de lecture peuvent être réunis au sein d'un même dispositif électronique comprenant des moyens d'interface de communication et d'interface utilisateur similaires à ceux décrits ci-dessus. Le réseau reliant les membres M, et les serveurs consiste à titre d'exemple en un réseau local Ethernet, un réseau local sans fil, le réseau Internet, un réseau de téléphonie mobile... Avantageusement, les communications sur ce réseau sont sécurisées, notamment par chiffrement des données échangées.

La figure 3 représente un ordinogramme illustrant les étapes génériques du procédé de signature dans un mode de réalisation de l'invention.

Le mécanisme de signature objet de l'invention combine une signature de groupe et l'utilisation de pseudonymes.

Dans un mode de réalisation préférentiel et détaillé ci-dessous le mécanisme de signature de groupe présenté est basé sur un mécanisme de signature de groupe VLR (« Vérifier Local Revocation ») tel que décrit dans la référence Bringer J., Patey A.: VLR group signatures - how to achieve both backward unlinkability and efficient revocation checks. In: SECRYPT. pp. 215-220 (2012).

Le procédé de signature selon l'invention peut comprendre une étape E100 de génération de clé, une étape E200 d'adhésion au groupe et une étape E300 de signature, décrites dans les paragraphes suivants.

On note :

d, G 2 , G T des groupes bilinéaires d'ordre premier p (p étant codé sur k bits) tel que (p-1 )/2 soit un nombre premier,

q un nombre premier,

e un couplage de Gi x G 2 dans G T c'est-à-dire une forme bilinéaire et non dégénérée de d x G 2 dans G T ,

gi et g 2 des générateurs de d et G 2 ,

Par ailleurs, la notation '||' représente l'opération de concaténation.

Le procédé de signature peut comporter une première étape E100 de génération de clé mise en œuvre par le serveur de gestion de clés 203s, représentée en Figure 4. Selon un mode de réalisation, au cours d'une étape E101 les moyens de traitement du serveur de gestion génèrent pour le groupe un ensemble de paramètres publics gpk et un secret de groupe γ. Au cours d'une étape E102, le serveur de gestion détermine de manière aléatoire un paramètre de domaine dpk j et le transmet au cours d'une étape E103 via ses moyens d'interface au serveur du fournisseur de service SP j 204 appartenant à un domaine D j . Les paramètres publics gpk sont rendus publics au cours d'une étape E104. Selon une variante, le paramètre de domaine dpk j est également rendu public.

Plus précisément, dans un mode de réalisation de l'invention, au cours de cette étape E100, les moyens de traitement du serveur de gestion de clés :

■ déterminent les groupes bilinéaires d'ordre premier G-ι, G 2 , G T , le nombre premier q et le couplage e.

déterminent une fonction de hachage H de {0, 1 } * vers Z p

déterminent g~ , g~ appartenant à d

déterminent le secret de groupe γ appartenant à Z p *

■ calculent w = g 2 Y

calculent Ti = e(gi, g 2 ), T 2 = e{gi, g 2 ), T 3 = e{g , g 2 ) et T 4 = e{g , w)

À partir de ces éléments, le serveur de gestion de clés peut générer l'ensemble de paramètres publics gpk = (d, G 2 , G T , e, p, gi, g 2 , gi, g , w, H, Ti, T 2 , T 3 , T 4 ).

Le secret de groupe ne fait ainsi pas partie des paramètres publics gpk, et n'est détenu que par l'autorité de gestion. La difficulté à mettre en œuvre l'algorithme du logarithme discret pour un groupe G 2 bien choisi permet de garantir l'impossibilité pratique de retrouver le secret de groupe γ à partir de w. Ainsi la diffusion de w dans l'ensemble de paramètres publics gpk ne pose aucun problème de sécurité du mécanisme de signature et w sera utilisé pour vérifier l'appartenance au groupe du signataire d'un message. Au cours de l'étape E102, pour chaque fournisseur de service SP j , le serveur de gestion des clés génère un paramètre de domaine dpk j, spécifique au domaine D j . Ce paramètre peut être fonction d'un nombre entier. A titre d'exemple ce paramètre peut être égal à g^L L'entier peut avantageusement être généré aléatoirement par le serveur de gestion à l'aide de son unité cryptographique. Le serveur de gestion transmet ensuite ce paramètre via ses moyens d'interface au serveur du fournisseur de service SP j .

Les paramètres publics gpk et le cas échéant le paramètre de domaine dpk, peuvent être rendus publics de diverses manières. Ils peuvent être envoyés aux dispositifs utilisateurs 201 et aux serveurs de contrôle 205s par les fournisseurs de service ou publiés sur un site des fournisseurs de service.

Le procédé de signature peut comporter également selon un mode de réalisation de l'invention une seconde étape E200 dite d'adhésion au groupe consistant à créer une clé de signature secrète pour un nouveau membre adhérant au groupe, décrite en Figure 5. Cette étape peut être mise en œuvre lorsqu'un détenteur d'un dispositif utilisateur 201 souhaite devenir membre M,, i entier, du groupe £ géré par l'autorité de gestion de clés 203 jouant le rôle de gestionnaire de groupe.

Selon un mode de réalisation, ce membre peut générer lors d'une étape E201 à l'aide des moyens de traitement de son dispositif électronique portable une première partie de clé inconnue de l'autorité de gestion de clés, transmettre lors d'une étape E203 une donnée d'identité, calculée lors d'une étape E202 par ces moyens de traitement à partir de cette première partie de clé, au serveur de gestion de clés 203s et prouver à l'autorité de gestion de clés à l'aide de cette donnée d'identité qu'il détient la première partie de clé par un algorithme de preuve à divulgation nulle de connaissance (« Zéro knowledge proof »). Le serveur de gestion de clés génère alors lors d'une étape E204 et transmet ensuite au membre M, lors d'une étape E205 la partie de clé manquante formant avec la première partie de clé la clé de signature du membre M,.

Plus précisément, dans un mode de réalisation de l'invention, au cours de cette étape E200 :

Le serveur de gestion de clés transmet au dispositif utilisateur du membre M, via ses moyens d'interface un nombre n, déterminé aléatoirement appartenant à {0, 1 }\ Les moyens de traitement du dispositif utilisateur du membre M, déterminent une première partie de clé f, appartenant à Z p et calculent des données d'identité F, = g~i fi .

Les moyens de traitement du dispositif utilisateur du membre M, déterminent aléatoirement un nombre r f appartenant à Z p et calculent R = g~i rf , c = H(gpk || Fi || R || ni) puis s f = r f + c fi.

Le dispositif utilisateur du membre M, transmet F,, c et s f au serveur de gestion de clés.

Les moyens de traitement du serveur de gestion de clés calculent R' = g~ s f x Fi ~c , comparent c et H(gpk || F, || R' || n,) et vérifient que s f appartient à Z p . Si cette comparaison est positive, le membre M, a bien apporté à l'autorité de gestion la preuve qu'il détient la première partie de clé f, sans la divulguer.

Si la comparaison est positive, les moyens de traitement du serveur de gestion de clés déterminent une seconde partie de clé x, appartenant à Z p et calculent une troisième partie de clé A, = (g^i 1 ^ 1 ^.

Les moyens d'interface du serveur de gestion de clés transmettent les seconde et troisième parties de clé, x, et au membre M, en utilisant un canal de préférence sécurisé.

De manière optionnelle, M, vérifie que e(A, wg 2 xl ) = Q2) lors d'une étape E206.

Ainsi, Ai qui constitue la troisième partie de clé est fonction du secret de groupe et permet au membre de prouver qu'il fait partie du groupe.

De plus, dans un tel mode de réalisation, le membre M, est le seul à connaître l'intégralité de sa clé de signature constituée des première, deuxième et troisième parties de clé. Personne, pas même l'autorité de gestion de clés ne peut de ce fait signer un message à la place du membre.

La dernière vérification optionnelle permet au membre de vérifier que le couple de seconde et troisième parties de clé (Ai, xi) qui lui a été transmis n'a pas été corrompu et est valide, c'est-à-dire vérifie l'équation A = (^Fi) 1 /^ 1"1" ^ . La clé de signature du membre M, peut être stockée dans des moyens de stockage sécurisés du dispositif utilisateur appartenant au membre M,, avantageusement dans la mémoire non volatile du dispositif électronique portable correspondant.

De même la deuxième et la troisième parties de clé peuvent être stockées par le serveur de gestion de clés, avantageusement au sein d'une base de données enregistrée dans les moyens de stockage du serveur de gestion de clés ou bien connectée à celui-ci.

Selon une variante de l'invention, la première partie de clé fi est calculée à partie d'une donnée biométrique du membre M, capturée par les capteurs du dispositif électronique portable ou bien mémorisée par celui-ci. La première partie de clé f, peut également être le résultat de l'application par les moyens de traitement du dispositif électronique portable d'une fonction de hachage à une telle donnée biométrique.

De façon optionnelle, lors de l'exécution de cette étape d'adhésion à un groupe, l'autorité de gestion envoie le résultat du couplage e(A, , g 2 ) au membre M, pour éviter que celui-ci ait à prendre en charge le calcul d'un couplage par la suite lors du calcul de la signature.

Le procédé de signature comprend une troisième étape E300 de signature d'un message m, décrite en Figure 6. Le message m peut être un défi (« challenge ») transmis préalablement par un serveur de contrôle 205s au membre M, ou bien n'importe quel type de message à signer par le membre M,. Avantageusement, on transmet également au membre Mi le paramètre de domaine dpkj, si celui-ci n'a pas été rendu public ou n'est pas déjà connu dudit membre.

Cette étape permet de générer lors d'une étape E301 pour le message m une signature de groupe permettant de prouver l'appartenance du membre au groupe de manière anonyme et d'y associer lors d'une étape E302 un pseudonyme nyrrii j identifiant le membre M,. Ledit pseudonyme et ladite signature sont fonction d'une partie de ladite clé de signature secrète du membre M,, et sont construits de sorte à prouver que le membre identifié par le pseudonyme est le signataire du message m. De plus, ledit pseudonyme nyrrii j du membre M, est spécifique au domaine D j . Avantageusement, les moyens de traitement du dispositif utilisateur mettent en œuvre un algorithme de preuve à divulgation nulle de connaissance dans lequel la signature est générée de façon à prouver que le membre identifié par le pseudonyme nyrrii j est le signataire du message m. Plus précisément, dans un premier mode de réalisation de l'invention, au cours de cette étape E300 les moyens de traitement du dispositif utilisateur 201 du membre M, :

Déterminent B appartenant à Gi et calculent J =B fl , K =B Xl .

Déterminent a appartenant à Z p et calculent b = a x, et T = g a

■ Déterminent r f , r x , r a , r b, r x2 , appartenant à Z p.

Calculent = B r f, R 2 = B r *, R 4 = K r ^B ~r R 3 = e( ,g 2 y r * T 2 r fT 3 rb T a , R 5 = dpk j rx2 , R 6 = B ¾

Calculent c = H(gpk || B || J || K || T || R, || R 2 1 | R 3 1 | R 4 || m) et d = H(gpk || B H K H dpkj H nyrriij H R 5 || R 6 )

■ Calculent s f = r f + c f,, s x = r x + c x,, s a = r a + c a, s b = r b + c b, s^ = ¾ + d x,.

Le membre Mi possède alors la signature du message : σ = (B, J, K, T, c, s f , s x , s a , s b , d, s,<2) et un pseudonyme nym,, = dpk j Xi . Les éléments B, J, K, T, c, s f , s x , s a et s b de la signature peuvent être utilisés pour vérifier l'appartenance du membre au groupe indépendamment du pseudonyme. La signature peut donc être utilisée de manière anonyme. Par ailleurs, le pseudonyme et les éléments B, K, d et Sx2 de la signature peuvent être utilisés pour prouver que la même clé secrète a été utilisée pour générer le pseudonyme et la signature, et ainsi prouver que le membre identifié par le pseudonyme nyrrii j est le signataire du message m.

Dans un deuxième mode de réalisation, au cours de cette étape E300, les moyens de traitement du dispositif utilisateur 201 du membre M, :

■ Déterminent B appartenant à Gi et calculent J =B fl , K =B Xl . Déterminent a appartenant à Z p et calculent b = a x, et T = A, g

Déterminent r f , r x , r a , r b , appartenant à Z p.

Calculent = B r f, R 2 = B r *, R 4 = K r ^B ~r R 3 = e( ,g 2 y r * T 2 r fT 3 rb T a , R 5 = ■ Calculent c = H(gpk H B || J H K H T H R ! H R 2 || R 3 || R 4 || R 5 || m).

Calculent s f = r f + c f,, s x = r x + c x,, s a = r a + c a, s b = r b + c b.

Le membre Mi possède alors la signature du message : σ = (B, J, K, T, c, s f , s x , s a , s b ) et un pseudonyme nym,, = dpkj Xl lui permettant de s'identifier dans le groupe. La signature σ et l'élément R 5 peuvent être utilisés pour vérifier l'appartenance du membre au groupe indépendamment du pseudonyme, et donc de manière anonyme. Par ailleurs, la signature et le pseudonyme peuvent être utilisés pour prouver que le membre identifié par le pseudonyme nyrrii j est le signataire du message m. Alternativement, la signature et le pseudonyme peuvent être utilisés pour prouver en une seule opération de vérification l'appartenance du membre au groupe et que le membre identifié par le pseudonyme nyrrii j est le signataire du message m, comme détaillé ci-dessous.

Le pseudonyme du membre M, dans le domaine D j étant formé à partir du paramètre de domaine dpkj spécifique au domaine Dj, le membre M, aura des pseudonymes différents dans des domaines distincts. Il est alors impossible pour les fournisseurs de service 204 ou vérificateurs 205 de déterminer si deux messages dans deux domaines distincts présentant des signatures et des pseudonymes différents ont été signés par le même membre (« cross-domain unlinkability »).

Toutefois, pour préserver la propriété d'unlinkability, les fournisseurs de service et vérificateurs ne doivent pas avoir connaissance des . En effet, à partir de Γ et d'un pseudonyme nym,, =dpkj Xi avec dpk, = g s , g t Xi peut être retrouvé. Ainsi en connaissant deux utilisés pour générer les paramètres de domaine de deux domaines distincts, un fournisseur de service ou un vérificateur pourrait déterminer si deux pseudonymes dans ces domaines correspondent au même membre.

La signature σ est construite de sorte que le membre Mi puisse prouver en signant un message ou challenge qu'il a connaissance de la clé de signature secrète ski = (f, , χ, , A) sans la divulguer, avantageusement par un algorithme de preuve à divulgation nulle de connaissance, et donc prouver son appartenance au groupe. De plus, par construction, xi, qui constitue une seconde partie de clé de signature secrète est utilisé à la fois pour le calcul de la signature du message m et pour générer le pseudonyme utilisé par le membre M,. Ceci permet de les lier et ainsi de pouvoir prouver à partir de la signature et du pseudonyme que le membre M, connaît la seconde partie de clé x, sans dévoiler cette dernière et que le membre identifié par le pseudonyme construit à partir de cette seconde partie de clé xi est bien le signataire légitime du message m.

Afin de limiter l'utilisation des ressources du dispositif utilisateur du membre M,, l'autorité de gestion 203 peut envoyer, lors de l'exécution de l'étape d'adhésion au groupe E200, le résultat du couplage e(A, g 2 ) au membre M, afin que celui-ci n'ait pas à prendre en charge le calcul de ce couplage lors du calcul de R 3 . En effet, e(T 2 , g 2 ) = e(A, g 2 ) e(g^, g 2 ) a . Connaissant e(A, g 2 ) et e{gï, g 2 ), le membre Mi n'a plus ainsi que des exponentiations et des multiplications à calculer. De même, avantageusement, tous les calculs effectués lors de cette étape de signature peuvent être réalisés hors ligne avant la réception du message m à signer, à l'exception du calcul de hachage et des exponentiations de R 5 et nyrrii j . Ceci permet de limiter le temps de signature d'un message et les ressources nécessaires à celle-ci. Selon une variante, il est également possible de calculer à l'avance, R 5 et nyrrii j pour chacun des fournisseurs de service si les paramètres de domaine dpk j ont été préalablement acquis par le membre M, et si la mémoire nécessaire pour stocker les résultats de ces calculs est disponible.

A l'issue de cette étape de signature, le dispositif utilisateur 201 du membre Mi transmet lors d'une étape E303 par ses moyens d'interface de communication la signature σ obtenue, le pseudonyme correspondant au membre M,, et l'élément R 5 dans le deuxième mode de réalisation, au serveur de contrôle 205s qui lui a envoyé le challenge à signer, ou bien au destinataire du message m auquel il envoie également le message m. L'invention concerne également un procédé de signature et de contrôle de signature dont un mode de réalisation est décrit en Figure 7 et qui peut comprendre des étapes de création d'une base de données de révocation E400, une étape E500 de mise en œuvre du procédé de signature illustrée en Figure 3 et une étape E600 de contrôle de signature, les étapes E400 et E600 étant décrites ci-dessous.

Des membres pouvant adhérer au groupe ou le quitter à des instants différents ou bien des membres pouvant perdre leur capacité de signature, un mécanisme de révocation peut être mis en place lors de l'étape E400. Une liste de révocation peut être établie pour chaque domaine et mise à jour par l'autorité de gestion 203. Pour ce faire, une liste de révocation RL j pour le domaine Dj est construite à partir des pseudonymes nym^ de membres du groupe révoqués et stockée dans une base de données de révocation BD j . Selon un mode de réalisation de l'invention, lorsque l'autorité de gestion souhaite révoquer un membre M, du groupe, le serveur de gestion 203s transmet à chaque serveur 204s du fournisseur de service SP j , la seconde partie de clé secrète x, du membre, et chaque serveur du fournisseur de service SP j calcule les pseudonymes nym^ correspondants et les ajoute dans la liste de révocation RL j de la base de données de révocation BD j .

Comme illustré sur la Figure 8, le procédé de contrôle de signature E600 comprend une première étape E601 de vérification consistant à contrôler, à partir de la signature σ et du pseudonyme nyrrii j , que le membre Mi a connaissance de la clé de signature secrète sk, = (f, , x, , A,), c'est-à-dire qu'il est un membre légitime du groupe, et que le pseudonyme et la signature du membre Mi sont liés, c'est-à-dire que ledit pseudonyme et ladite signature du membre Mi sont fonction d'une partie de ladite clé de signature secrète. Si cette vérification est positive, le pseudonyme reçu avec la signature est bien celui du signataire.

Selon un mode de réalisation, ladite étape de vérification comprend une étape de vérification de preuve lors de laquelle les moyens de traitement du serveur de contrôle vérifient qu'une preuve à divulgation nulle de connaissance prouvant que le membre identifié par le pseudonyme est le signataire du message (m) est correcte.

Avantageusement, ladite étape de vérification de preuve vérifie l'égalité des logarithmes discrets de la valeur K =B Xl en base B et du pseudonyme nyrrii j = dpk j Xi en base dpk j .

L'appartenance du signataire au groupe est vérifiable indépendamment du pseudonyme et la vérification que la preuve que le membre identifié par le pseudonyme est le signataire du message est correcte est réalisée par des opérations distinctes à partir de la signature et du pseudonyme.

Selon une variante du deuxième mode de réalisation, ladite étape de vérification peut comprendre une opération de vérification de ladite signature permettant de prouver à la fois l'appartenance du membre (Mi) au groupe et que le membre identifié par le pseudonyme est le signataire du message.

Le procédé de contrôle E600 peut également comprendre une seconde étape E602 de vérification de révocation consistant à vérifier que le membre Mi n'a pas été révoqué du groupe.

Plus précisément, dans le premier mode de réalisation de l'invention, lors de l'étape E601 , les moyens de traitement d'un serveur de contrôle 205s :

■ Vérifient que B, J, K, T appartiennent à d et que s f , s x , s a , s b , s x2 appartiennent à Z p.

Calculent R' 2 = B S *K ~C , R' 3 = e(T, g 2 y s * T 2 s f T 3 Sb T 4 Sa 7 c e(T, w) "c , R' 4 = K B ~sb , R'-ι = B s fJ ~c , R' 5 = dpk j Sx2 ηγτ ^- ά et = B s K ~d .

Vérifient que c = H(gpk || B || J || K || T || R'i || R' 2 1| R' 3 II R' 4 II m) et que d = H(gpk M B M K || dpkj || nymy || R' 5 1| R' 6 ).

Dans ce mode de réalisation la vérification de l'égalité entre c et H(gpk || B || J II K H T H R'-ι II R' 2 H R'3 II R' 4 II m) permet de prouver l'appartenance du membre au groupe indépendamment du pseudonyme. Par ailleurs, la vérification de l'égalité entre d et H(gpk || B || K || dpk, || nym,, || R' 5 1| R' 6 ) permet de prouver que la même clé secrète a été utilisée pour générer le pseudonyme et la signature.

Dans le deuxième mode de réalisation de l'invention, lors de l'étape E601 , les moyens de traitement d'un serveur de contrôle 205s :

Vérifient que B, J, K, T appartiennent à d et que s f , s x , s a , s b appartiennent à Z p.

Calculent R' 2 = B S *K ~C , R' 3 = e(T, g 2 y s * T 2 s f T 3 Sb T 4 Sa 7 e(T, w) ~c et R' 4 = K B ~ s b , = B s f] ~ c .

Vérifient que c = H(gpk || B || J || K || T || R'i || R' 2 1| R's II ' 4 II R 5 II m).

Dans ce mode de réalisation la vérification de l'égalité entre c et H(gpk || B || J II K H T II R'-ι II R' 2 H R'3 II R' 4 II R5 II m) permet de prouver l'appartenance du membre au groupe de manière anonyme indépendamment du pseudonyme.

A partir du pseudonyme, les moyens de traitement d'un serveur de contrôle 205s calculent ensuite R' 5 = dpkj Sx nym i c et vérifient que c = H(gpk || B || J II K H T II R'-ι II R' 2 H R'3 II R' 4 II R's II m). Cette vérification permet de prouver que la même clé secrète a été utilisée pour générer le pseudonyme et la signature, et donc que le membre identifié par le pseudonyme est bien le signataire du message.

Selon une variante de ce deuxième mode de réalisation de l'invention, lors de l'étape E601 , les moyens de traitement d'un serveur de contrôle 205s :

Vérifient que B, J, K, T appartiennent à G- \ et que s f , s x , s a , s b appartiennent à Z p.

Calculent R' 2 = B S *K ~C , R' 3 = e(T, g 2 y s * T 2 s f T 3 Sb T 4 Sa 7 c e(T, w) "c , R' 4 = K B ~ s b , R'-ι = B s f] ~ c et R' 5 = dpkj Sx nym^

Vérifient que c = H(gpk || B || J || K || T || R \\ R' 2 1| R' 3 1| R' 4 1| R' 5 1| m). Dans cette variante la vérification de l'égalité entre c et H(gpk || B || J || K || T

Il R'-ι II R' 2 H R'3 II R' 4 II R's II ni) permet à la fois de prouver l'appartenance du membre au groupe et de prouver que la même clé secrète a été utilisée pour générer le pseudonyme et la signature. Ainsi, dans tous les modes de réalisation décrits, un vérificateur peut contrôler l'appartenance du signataire du message au groupe sans connaître le secret de groupe et identifier le signataire par son pseudonyme. Le vérificateur peut également contrôler que le pseudonyme fourni avec la signature identifie bien le signataire.

Dans un mode de réalisation de l'invention, lors de l'étape E602 les moyens de traitement du serveur de contrôle vérifient dans la base de données de révocation BD j que le pseudonyme nyrrii j n'appartient pas à la liste de révocation RL j.

Si les deux étapes de vérifications E601 et E602 sont positives, alors la signature et le pseudonyme sont considérés comme valides. Pour vérifier la signature d'un message m et le pseudonyme du membre M, , le serveur de contrôle n'a besoin que de connaître cette signature et ce pseudonyme ainsi que les paramètres de domaine dpk, et les paramètres publics gpk. Le serveur de contrôle n'a notamment pas connaissance de la clé de signature secrète du membre M,. Aucun serveur de contrôle ne peut de ce fait signer un message à la place du membre, ni connaître le pseudonyme du membre M, dans plusieurs domaines et relier les signatures et pseudonymes de ce membre pour différents domaines. De ce fait, et de par la construction des pseudonymes : quand on observe deux pseudonymes pour deux domaines différents, il est impossible, grâce à des hypothèses de complexité de certains problèmes mathématiques, de dire s'ils correspondent ou non au même membre.

D'autre part, la liste de révocation n'est pas prise en compte lors de la signature. Cela permet de ne pas avoir à renouveler les clés des membres valides après une révocation d'un membre et n'implique pas de calculs supplémentaires pour le signataire.

De plus, lors de la deuxième étape de vérification, les moyens de traitement du serveur de contrôle n'ont qu'un test d'appartenance à une liste à réaliser et non un nombre linéaire d'opérations arithmétiques comme dans les mécanismes de signature de groupe connus. Selon une variante de l'invention, on utilise des listes de membres valides au lieu de listes de révocation. Lors de la deuxième étape de vérification, le serveur de contrôle doit alors vérifier que le pseudonyme qu'il vérifie appartient bien à la liste de membres valides.

Avantageusement les bases de données de stockage de ces listes sont stockées sur les serveurs des fournisseurs de service. Selon une variante, les listes sont mémorisées dans une base de données commune stockée sur le serveur de gestion des clés.

Ainsi l'objet de l'invention permet de construire des signatures utilisant des pseudonymes et permettant à un membre d'un groupe de signer un message au nom du groupe, tout en ayant une identité dans le groupe, sans présenter les inconvénients des mécanismes de signature utilisant des pseudonymes.

En effet ce mécanisme de signature est sécurisé même en cas de récupération et de mise en commun de clés de signature par des membres du groupe et peut garantir également que personne y compris l'autorité de gestion de clés ne puisse signer un message à la place d'un membre du groupe.

Le mécanisme de signature objet de l'invention peut être appliqué pour réaliser par exemple des authentifications biométriques anonymes tels que décrites dans la référence Bringer, J. Chabanne, H. Pointcheval, D. Zimmer, S. An application of the Boneh and Shacham group signature scheme to biométrie authentication. In: Matsuura, K., Fujisaki, E. (eds.) IWSEC. Lecture Notes in Computer Science, vol. 5312, pp. 219-230. Springer (2008) et peut être fondé sur des signatures de groupe de type « Backward Unlinkability » comme décrit dans la référence Bringer, J., Patey, A. VLR group signatures - how to achieve both backward unlinkability and efficient revocation checks. In: SECRYPT. pp. 215-220 (2012) et dans la référence Nakanishi, T., Funabiki, N.: A short verifier-local revocation group signature scheme with backward unlinkability. In: Yoshiura, H., Sakurai, K., Rannenberg, K., Murayama, Y., ichi Kawamura, S. (eds.) IWSEC. Lecture Notes in Computer Science, vol. 4266, pp. 17-32. Springer (2006).