Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
ANONYMOUS ACCESS TO A SERVICE BY MEANS OF AGGREGATED CERTIFICATES
Document Type and Number:
WIPO Patent Application WO/2012/085425
Kind Code:
A1
Abstract:
The invention relates to a method of anonymous access to a service, comprising the allocation (100), by at least one certifying entity (Cj), of a plurality of certificates (σι,σΝ·) to a user entity (U), the certificates being calculated on the basis of at least one attribute (mk) associated with the user entity, the calculation (200), by the user entity (U), an aggregated certificate (aa) on the basis of a plurality of certificates (σ1,σΝ) among the certificates allocated to the user entity (U), the calculation (300), by the user entity (U), of a proof of knowledge (ΡοΚσ) of the aggregated certificate (aa) and a verification (400), performed by a verifying entity (V), of at least one of these certificates by means of said proof of knowledge (ΡοΚσ), the access to the service being provided by the verifying entity to the user entity as a function of the result of this verification. The invention furthermore relates to a corresponding computer program, the user entity (U), verifying entity (V) and certificating entity (Q) corresponding as well as to a system of anonymous accreditation (SAA) for anonymous access to a service comprising these various entities.

Inventors:
CANARD SEBASTIEN (FR)
LESCUYER ROCH (FR)
Application Number:
PCT/FR2011/053050
Publication Date:
June 28, 2012
Filing Date:
December 19, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FRANCE TELECOM (FR)
CANARD SEBASTIEN (FR)
LESCUYER ROCH (FR)
International Classes:
H04L9/32
Other References:
FEDERICA PACI ET AL: "VeryIDX - A Digital Identity Management System for Pervasive Computing Environments", 1 October 2008, SOFTWARE TECHNOLOGIES FOR EMBEDDED AND UBIQUITOUS SYSTEMS; [LECTURE NOTES IN COMPUTER SCIENCE], SPRINGER BERLIN HEIDELBERG, BERLIN, HEIDELBERG, PAGE(S) 268 - 279, ISBN: 978-3-540-87784-4, XP019107200
ABHILASHA BHARGAV-SPANTZEL ET AL: "Multifactor Identity Verification Using Aggregated Proof of Knowledge", IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: PART C:APPLICATIONS AND REVIEWS, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 40, no. 4, 1 July 2010 (2010-07-01), pages 372 - 383, XP011307487, ISSN: 1094-6977
CAMENISCH J ET AL: "EFFICIENT GROUP SIGNATURE SCHEMES FOR LARGE GROUPS", ADVANCES IN CRYPTOLOGY - CRYPTO '97. SANTA BARBARA, AUG. 17 - 21, 1997; [PROCEEDINGS OF THE ANNUAL INTERNATIONAL CRYPTOLOGY CONFERENCE (CRYPTO)], BERLIN, SPRINGER, DE, vol. CONF. 17, 17 August 1997 (1997-08-17), pages 410 - 424, XP000767547, ISBN: 978-3-540-63384-6
STEFAN BRANDS: "A Technical Overview of Digital Credentials", 20 February 2002 (2002-02-20), XP055004420, Retrieved from the Internet [retrieved on 20110809]
Attorney, Agent or Firm:
FRANCE TELECOM R&D/PIV/BREVETS (FR)
Download PDF:
Claims:
Revendications

1. Procédé d'accès anonyme à un service, caractérisé par :

l'attribution (100), par au moins une entité certificatrice (Q), d'une pluralité de certificats (σι,σΝ·) à une entité utilisatrice (U), lesdits certificats étant calculés à partir d'au moins un attribut (n¾) associé à l'entité utilisatrice, l'attribution de la pluralité de certificats comprenant, pour chacun des certificats attribués par l'entité certificatrice (Cj) :

- le calcul (150) d'un certificat (σ au moyen d'une donnée publique (C) liée à une clé secrète (sku) de l'entité utilisatrice, d'au moins un attribut (i¾) associé à l'entité utilisatrice et d'une clé secrète (skq) de l'entité certificatrice; et

- la transmission (155) du certificat (σ à l'entité utilisatrice (U);

le calcul (200), par l'entité utilisatrice (U), d'un certificat agrégé (aa) à partir d'une pluralité de certificats (σι,σΝ) parmi les certificats attribués à l'entité utilisatrice (U) ;

le calcul (300), par l'entité utilisatrice (U), d'une preuve de connaissance (ΡοΚσ) du certificat agrégé (aa) ; et

une vérification (400), effectuée par une entité vérificatrice (V), d'au moins un desdits certificats au moyen de ladite preuve de connaissance (ΡοΚσ), l'accès au service étant fourni par l'entité vérificatrice à l'entité utilisatrice en fonction du résultat de ladite vérification.

2. Procédé d'accès anonyme à un service selon la revendication 1, caractérisé en ce que le certificat (σι) est calculé dans le cadre des environnements bilinéaires munis de couplages selon la formule suivante :

où σί représente le certificat, C représente la donnée publique C liée à la clé secrète de l'entité utilisatrice, lj représente le nombre d'attributs signés par l'entité certificatrice , H représente une fonction cryptographique de hachage, gi et g2 représentent deux générateurs de groupe choisis aléatoirement et de manière uniforme respectivement dans deux groupes d'ordre p, où p est un nombre entier premier, skq représente la clé secrète de l'entité certificatrice, et mk représente un attribut associé à l'entité utilisatrice.

3. Procédé d'accès anonyme à un service selon l'une des revendications 1 ou 2, dans lequel le certificat (σ^ calculé par l'entité certificatrice (Cj) est un certificat provisoire, l'étape d'attribution (100') étant caractérisée en ce que :

la donnée publique liée à la clé secrète (sku) de l'entité utilisatrice est un engagement (C) sur la clé secrète (skD) de l'entité utilisatrice calculé (110") dans l'entité utilisatrice (U) au moyen d'une variable aléatoire (s) avant d'être transmis (123') à l'entité certificatrice (Cj); le certificat provisoire reçu par l'entité utilisatrice (U) est démasqué (160') au moyen de ladite variable aléatoire (s) afin d'obtenir le certificat (σ attribué à l'entité utilisatrice (U).

4. Procédé d'accès anonyme à un service selon la revendication 3, caractérisé en ce que le démasquage (160) du certificat provisoire (A;) comprend le calcul du certificat (σ attribué à l'entité utilisatrice (U) en multipliant le certificat reçu de l'entité certificatrice par la variable (g *0 )~s , où gi représente un générateur de groupe choisi aléatoirement et de manière uniforme dans un groupe d'ordre p, où p est un nombre entier premier, skCj représente la clé secrète de l'entité certificatrice et s est une valeur aléatoirement choisie dans l'ensemble Zp des entiers modulo p.

5. Procédé d' accès anonyme à un service selon la revendication 3 ou 4, caractérisé en ce que le certificat (σ attribué à l'entité utilisatrice (U) est vérifié (170) par l'entité utilisatrice après le démasquage (160) du certificat provisoire. 6. Procédé d'accès anonyme à un service selon l'une des revendications 1 à 5, l'étape d'attribution (100) étant caractérisée en ce que :

la donnée publique (C) liée à la clé secrète (sku) de l'entité utilisatrice est vérifiée (140) au moyen d'une preuve de connaissance (R,S) de ladite donnée publique (C) ; et

le calcul (150) du certificat (Ai) n'est effectué que si le résultat de la vérification (140) de l'engagement est positif.

7. Procédé d'accès anonyme à un service selon l'une des revendications 1 à 6, l'étape d'attribution (100) étant caractérisée par :

le calcul (110, 110"), par l'entité utilisatrice, de la donnée publique (C) liée à la clé secrète (sku) de l'entité utilisatrice ;

le calcul (120) d'une première partie (R) de la preuve de connaissance à partir de la donnée publique (C) liée à la clé secrète (sku); et

le calcul (130) d'une deuxième partie (S) de la preuve de connaissance à partir d'une donnée aléatoire (c) reçue de l'entité certificatrice.

8. Procédé d'accès anonyme à un service selon la revendication 7, caractérisé en ce que le calcul (110") de la donnée publique (C") comprend :

le calcul d'une première partie (C0") de ladite donnée publique liée à la clé secrète (sku) de l'entité utilisatrice ; et

le calcul d'une deuxième partie (C2") de la donnée publique liée à la clé secrète (sku) de l'entité utilisatrice et à au moins un certificat attribué par une autre entité certificatrice.

9. Procédé d'accès anonyme à un service selon l'une des revendications 1 à 8, caractérisé en ce que le calcul (300) de la preuve de connaissance (ΡοΚσ) du certificat agrégé (aa) comprend :

le calcul (310) d'un engagement (D) sur le certificat agrégé (aa) ;

le calcul (320) d'une première partie (P) de la preuve de connaissance (ΡοΚσ) à partir de l'engagement (D) sur le certificat agrégé (aa) ;

le calcul (340) d'une deuxième partie (T) de la preuve de connaissance (ΡοΚσ) à partir d'une donnée aléatoire (d) reçue de l'entité vérificatrice (V).

10. Programme d'ordinateur comprenant des instructions pour la mise en œuvre respectivement de l'étape de calcul d'un certificat (σ;), l'étape de génération d'une preuve de connaissance d'une pluralité de certificats attribués à une entité utilisatrice et l'étape de vérification au moyen de ladite preuve de connaissance d'une pluralité de certificats selon l'une des revendications 1 à 9, lorsque ce programme d'ordinateur est exécuté par une unité de calcul située respectivement dans une entité certificatrice (Q), une entité utilisatrice (U) et une entité vérificatrice (V).

11. Entité certificatrice (Q) apte à accréditer une entité utilisatrice (U), caractérisée en ce qu'elle comprend :

une unité de calcul (CALCq) apte à mettre en œuvre l'étape de calcul d'un certificat (σ à partir d'au moins un attribut (n¾) du procédé d'accès anonyme selon l'une des revendications 1 à 9; et

une unité de communication (COMq) apte à transmettre ledit certificat (σ à l'entité utilisatrice

(U).

12. Entité vérificatrice (V) apte à vérifier une entité utilisatrice (U), caractérisée en ce qu'elle comprend :

une unité de communication (COMv) apte à recevoir une preuve de connaissance (ΡοΚσ) d'une pluralité de certificats attribués à l'entité utilisatrice ; et

une unité de calcul (CALCV) apte à mettre en œuvre l'étape de vérification (400) du procédé d'accès anonyme selon l'une des revendications 1 à 9 au moyen de ladite preuve de connaissance, afin de démarrer la fourniture d'un service à l'entité utilisatrice en fonction du résultat de la vérification.

13. Entité utilisatrice (U) apte à requérir un service par l'intermédiaire d'une entité vérificatrice (V) au moyen d'une preuve de connaissance (PoKn) d'une pluralité de certificats attribués à l'entité utilisatrice par au moins une entité certificatrice (Q), l'entité utilisatrice (U) étant caractérisée en ce qu'elle comprend :

une unité de communication (COMu) apte à recevoir une pluralité de certificats (σ;) provenant d'au moins une entité certificatrice (Q) ; et une unité de calcul (CALCu) apte à mettre en œuvre l'étape (300) de calcul d'une preuve de connaissance (ΡοΚσ) du procédé d'accès anonyme selon l'une des revendications 1 à 9 à partir de la pluralité de certificats (σ reçus,

l'unité de communication (COMu) étant apte, en outre, à transmettre la preuve de connaissance (ΡοΚσ) à l'entité vérificatrice (V) afin de requérir un service.

14. Système d'accréditation anonyme (SAA) pour l'accès anonyme à un service, caractérisé en ce que le système comprend :

au moins une entité certificatrice (Q) selon la revendication 11 ;

une entité vérificatrice (V) selon la revendication 12 ; et

une entité utilisatrice (U) selon la revendication 13.

Description:
Accès anonyme à un service au moyen de certificats agrégés

L'invention concerne le domaine des systèmes d'accréditation anonyme pour l'accès à des services, en particulier au moyen de l'attribution de certificats agrégés entre eux.

Dans un système d'accréditation courant, une organisation de confiance émet, pour certains utilisateurs, des accréditations certifiées portant sur un ou plusieurs attributs de cet utilisateur.

Une telle organisation peut être, par exemple, une mairie émettant des accréditations certifiées consistant en des cartes d'identité, lesquelles présentent un certain nombre d'attributs associés à l'utilisateur du type nom, prénom, date de naissance, adresse, etc. Cette organisation peut également être une université émettant des accréditations certifiées consistant en des cartes d'étudiant, lesquelles présentent certains attributs associés à un étudiant du type nom, prénom, numéro d'étudiant, études suivies, etc.

Lorsqu'il souhaite accéder à un service offert par un organisme tiers agissant en tant que fournisseur de services, l'utilisateur peut alors vouloir utiliser de telles accréditations certifiées de façon anonyme, c'est-à-dire en minimisant l'information qu'il fournit à ce fournisseur de service afin d'en obtenir le service désiré.

Par exemple, l'accès à certains services spécifiques peut être restreint aux habitants d'une ville. Dans un tel cas, l'utilisateur doit alors prouver qu'il habite bien la bonne ville, de façon certifiée par la mairie, mais il peut ne pas vouloir révéler les autres attributs le concernant sur sa carte d'identité, tels que son nom ou son adresse exacte.

Similairement, un étudiant peut vouloir bénéficier d'une ristourne sur un service offert par l'organisme tiers. L'étudiant doit alors prouver qu'il possède une accréditation provenant d'une université, mais peut ne pas vouloir révéler les autres attributs le concernant sur sa carte d'étudiant, tels que son nom ou les études qu'il suit.

Pour répondre à ce besoin d'anonymat, il est possible d'envisager des systèmes d'accréditation utilisant des techniques cryptographiques proches des signatures de groupe ou des signatures aveugles.

Dans le cas des signatures de groupe, l'organisation certificatrice signe, lors de la phase de création de l'accréditation, l'ensemble des attributs associés à l'utilisateur en ne produisant qu'une seule signature. Cette signature doit être telle que l'organisation certificatrice elle-même ne doit pas être capable d'utiliser cette accréditation afin de se faire passer pour l'utilisateur, ce qui est par exemple possible en utilisant des techniques liées aux schémas de signature de groupe. L'entité de confiance est l'organisation qui délivre des accréditations. Dans les exemples présentés ci-dessus, l'Entité de confiance est la mairie, ou l'université.

Une fois l'utilisateur en possession d'une telle accréditation, il peut révéler un ou plusieurs attributs qui lui sont associés, en fonction de la demande de l'organisme tiers agissant en tant que fournisseur de services auprès duquel il requiert un service, en générant, à l'instar des techniques de signature de groupe, une preuve de connaissance des attributs non révélés et une signature sur l'ensemble des attributs, révélés ou non, sans divulguer ni les attributs non révélés ni la signature de l'organisation certificatrice. L'utilisateur préserve de ce fait son anonymat vis-à-vis du monde extérieur.

Dans ce cas de figure, il est nécessaire d'utiliser un schéma de signature permettant de signer plusieurs messages/attributs en une seule signature et où le possesseur de la signature est capable de faire une preuve de connaissance de la signature et des messages signés, sans révéler ni la signature, ni l'ensemble de ces messages/attributs qu'il souhaite cacher, tout en gardant la possibilité de donner en clair le ou les attributs qui lui sont demandés par l'organisme tiers.

Un tel schéma de signature est consommateur en temps de calcul puisqu'il nécessite de cacher explicitement les attributs non révélés. La taille de la preuve dépend donc du nombre d'attributs initialement certifiés par l'entité émettrice. Par ailleurs, sa mise en œuvre pratique nécessite l'utilisation de données cryptographiques de taille importante, comme cela est le cas dans la technologie Idemix proposée par IBM.

Dans les cas des signatures aveugles, l'idée consiste à faire signer de façon aveugle les attributs par l'organisation certificatrice. L'utilisation d'une telle signature aveugle rend le système d'accréditation plus efficace, au détriment cependant d'une traçabilité accrue de l'utilisateur. Un exemple de ce type de technique est repris dans la technologie UProve proposée par Microsoft.

La présente invention a pour objet de remédier aux inconvénients précités des solutions envisagées de l'art antérieur et de proposer une technique alternative d'accréditation anonyme, qui soit potentiellement plus efficace et moins gourmande en temps de calcul et en bande passante et qui permette une simplification des procédures lorsqu'un utilisateur doit faire appel à des accréditations provenant d'organisations différentes.

La présente invention propose à cet effet un procédé d' accès anonyme à un service comprenant : l'attribution, par au moins une entité certificatrice, d'une pluralité de certificats à une entité utilisatrice, ces certificats étant calculés à partir d'au moins un attribut associé à l'entité utilisatrice ; le calcul, par l'entité utilisatrice, d'un certificat agrégé à partir d'une pluralité de certificats parmi les certificats attribués à l'entité utilisatrice ;

le calcul, par l'entité utilisatrice, d'une preuve de connaissance du certificat agrégé ; et une vérification, effectuée par une entité vérificatrice, d'au moins un de ces certificats au moyen de ladite preuve de connaissance, l'accès au service étant fourni par l'entité vérificatrice à l'entité utilisatrice en fonction du résultat de ladite vérification.

Dans un mode de réalisation, l'attribution de la pluralité de certificats à l'entité utilisatrice comprend, pour chacun des certificats attribués par une entité certificatrice, le calcul d'un certificat au moyen d'une donnée publique liée à une clé secrète de l'entité utilisatrice, d'au moins un attribut associé à l'entité utilisatrice et d'une clé secrète de l'entité certificatrice et la transmission du certificat à l'entité utilisatrice, ce qui permet de certifier que l'utilisateur présente bien l'attribut en question tout en ne révélant pas la clé secrète de l'utilisateur. En particulier, le certificat peut être calculé dans le cadre des environnements bilinéaires munis de couplages selon la formule suivante :

où σ; représente le certificat, C représente la donnée publique liée à la clé secrète de l'entité utilisatrice, lj représente le nombre d'attributs signés par l'entité certifie atrice Q, H représente une fonction cryptographique de hachage, gi et g 2 représentent deux générateurs de groupe choisis aléatoirement et de manière uniforme respectivement dans deux groupes bilinéaires d'ordre p, où p est un nombre entier premier, skq représente la clé secrète de l'entité certificatrice, et n¾ représente un attribut associé à l'entité utilisatrice.

Dans un mode de réalisation avantageux où le certificat calculé par l'entité certificatrice est un certificat provisoire, la donnée publique liée à la clé secrète de l'entité utilisatrice est un engagement sur la clé secrète de l'entité utilisatrice calculé dans l'entité utilisatrice au moyen d'une variable aléatoire avant d'être transmis à l'entité certificatrice et le certificat provisoire reçu par l'entité utilisatrice est démasqué au moyen de ladite variable aléatoire afin d'obtenir le certificat attribué à l'entité utilisatrice. Ceci permet d'empêcher l'entité certificatrice de générer des certificats qu'elle pourrait utiliser à la place de l'utilisateur.

En particulier, le démasquage du certificat provisoire comprend le calcul du certificat attribué à l'entité utilisatrice en multipliant le certificat reçu de l'entité certificatrice par la variable (g 1 skq ) ~s , où gi représente un générateur de groupe choisi aléatoirement et de manière uniforme dans un groupe d'ordre p, où p est un nombre entier premier, skq représente la clé secrète de l'entité certificatrice et s est une valeur aléatoirement choisie dans l'ensemble Z p des entiers modulo p.

Avantageusement, le certificat attribué à l'entité utilisatrice est vérifié par l'entité utilisatrice après le démasquage du certificat provisoire, afin de pouvoir interrompre le protocole d'attribution avant de transmettre une quelconque de preuve de connaissance si ce protocole ne s'est pas bien déroulé.

Avantageusement, la donnée publique liée à la clé secrète de l'entité utilisatrice est vérifiée au moyen d'une preuve de connaissance de cette donnée publique, et le calcul du certificat n'est effectué que si le résultat de la vérification de l'engagement est positif, ce qui évite d'effectuer inutilement le calcul du certificat si l'utilisateur n'est pas habilité à obtenir un tel certificat et permet l'envoi d'un message d'erreur si le protocole ne s'est pas bien déroulé.

L'étape d'attribution peut comprendre en particulier le calcul, par l'entité utilisatrice, de la donnée publique liée à la clé secrète de l'entité utilisatrice, le calcul d'une première partie de la preuve de connaissance à partir de cette donnée publique liée à la clé secrète et le calcul d'une deuxième partie de la preuve de connaissance à partir d'une donnée aléatoire reçue de l'entité certificatrice.

Dans un mode de réalisation particulier, le calcul de l'engagement comprend le calcul d'une première partie de ladite donnée publique liée à la clé secrète de l'entité utilisatrice et le calcul d'une deuxième partie de la donnée publique liée à la clé secrète de l'entité utilisatrice et à au moins un certificat attribué par une autre entité certificatrice.

Avantageusement, le calcul de la preuve de connaissance de la pluralité de certificats attribués à l'entité utilisatrice comprend le calcul d'un engagement sur le certificat agrégé, le calcul d'une première partie de la preuve de connaissance à partir de l'engagement sur le certificat agrégé et le calcul d'une deuxième partie de la preuve de connaissance à partir d'une donnée aléatoire reçue de l'entité vérificatrice, ce qui permet de ne pas révéler directement le certificat agrégé et donc de préserver au mieux l'anonymat.

La présente invention vise également un programme d'ordinateur comprenant des instructions pour la mise en œuvre de l'étape de calcul d'un certificat ci-avant lorsque ce programme d'ordinateur est exécuté par une unité de calcul située dans une entité certificatrice.

La présente invention vise par ailleurs un programme d'ordinateur comprenant des instructions pour la mise en œuvre de l'étape de génération d'une preuve de connaissance d'une pluralité de certificats attribués à une entité utilisatrice ci-avant lorsque ce programme d'ordinateur est exécuté par une unité de calcul située dans une entité utilisatrice.

La présente invention vise en outre un programme d'ordinateur comprenant des instructions pour la mise en œuvre de l'étape de vérification au moyen d'une preuve de connaissance d'une pluralité de certificats ci-avant, lorsque ce programme d'ordinateur est exécuté par une unité de calcul située dans une entité vérificatrice.

Au titre de la protection recherchée, les programmes d'ordinateur ci-avant sont à considérer comme des produits programme d'ordinateur.

La présente invention propose par ailleurs une entité certificatrice, apte à accréditer une entité utilisatrice, comprenant une unité de calcul apte à mettre en œuvre l'étape de calcul d'un certificat à partir d'au moins un attribut ci-avant, et une unité de communication apte à transmettre ce certificat calculé à l'entité utilisatrice.

La présente invention propose également une entité vérificatrice, apte à vérifier une entité utilisatrice, comprenant une unité de communication apte à recevoir une preuve de connaissance d'une pluralité de certificats attribués à l'entité utilisatrice et une unité de calcul apte à mettre en œuvre l'étape de vérification ci-avant au moyen de cette preuve de connaissance, afin de démarrer la fourniture d'un service à l'entité utilisatrice en fonction du résultat de la vérification.

La présente invention propose en outre une entité utilisatrice, apte à requérir un service par l'intermédiaire d'une entité vérificatrice, au moyen d'une preuve de connaissance d'une pluralité de certificats attribués à l'entité utilisatrice par au moins une entité certificatrice, cette entité utilisatrice comprenant une unité de communication apte à recevoir une pluralité de certificats provenant d' au moins une entité certificatrice et une unité de calcul apte à mettre en œuvre l'étape de calcul d'une preuve de connaissance ci-avant à partir de la pluralité de certificats reçus, l'unité de communication étant apte, en outre, à transmettre la preuve de connaissance à une entité vérificatrice afin de requérir un service. La présente invention vise enfin un système d'accréditation anonyme, pour l'accès anonyme à un service, comprenant au moins une entité certificatrice telle que décrite ci-avant, une entité vérificatrice telle que décrite ci-avant et une entité utilisatrice telle que décrite ci-avant. D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des dessins annexés sur lesquels :

- la figure 1 illustre les étapes principales d'un procédé d'accès anonyme à un service selon la présente invention ;

- la figure 2 illustre en particulier l'étape d'attribution d'un certificat employée par le procédé d'accès anonyme à un service selon la présente invention ;

- la figure 3 illustre en particulier les étapes de calcul d'un certificat agrégé à partir des certificats attribués à l'entité utilisatrice, de calcul d'une preuve de connaissance de ces certificats et de vérification de cette preuve de connaissance employées par le procédé d'accès anonyme à un service selon la présente invention ;

- la figure 4 illustre plus particulièrement l'étape d'attribution d'un certificat employée par le procédé d'accès anonyme à un service selon un deuxième mode de réalisation de l'invention ;

- la figure 5 illustre plus particulièrement l'étape d'attribution d'un certificat employée par le procédé d'accès anonyme à un service selon un troisième mode de réalisation de l'invention ; et

- la figure 6 représente schématiquement un système d'accréditation anonyme pour l'accès anonyme à un service, dans lequel est mis en œuvre le procédé d'accès anonyme à un service selon la présente invention.

On se réfère tout d'abord à la figure 1 sur laquelle sont illustrées les étapes principales d'un procédé d'accès anonyme à un service selon la présente invention.

Ce procédé d'accès anonyme débute par l'attribution préalable (étape 100) d'une pluralité de certificats ... σ ί; ... σ Ν · à une entité utilisatrice U. Ces certificats sont attribués par au moins une entité certificatrice , voire par une pluralité d'entités certificatrices Ci,..., C j ,...,C M , de sorte qu'une même entité certificatrice Q peut attribuer plusieurs certificats à l'entité utilisatrice U.

On entend ici par « entité utilisatrice » tout dispositif pouvant être utilisé par un utilisateur et disposant au moins d'une unité de communication, pour communiquer avec d'autres entités, et d'une unité de calcul permettant d'effectuer des calculs sur des données échangées avec ces autres entités, comme cela sera expliqué par la suite.

Similairement, on entend ici par « entité certificatrice » tout dispositif disposant au moins d'une unité de communication, pour pouvoir communiquer avec des entités utilisatrices, et d'une unité de calcul permettant d'effectuer des calculs sur des données échangées avec ces entités utilisatrices afin de leur attribuer un certificat, un tel certificat pouvant être agrégés avec d'autres certificats comme cela sera expliqué par la suite. Enfin, on entend ici par « certificat » une ou plusieurs donnée(s), sous forme numérique, permettant à l'entité utilisatrice et son utilisateur de s'authentifier auprès d'un organisme tiers fournissant un service (lequel peut être distinct de l'entité certificatrice) sans lui révéler plus d'information que ce qui est nécessaire pour valider accès à ce service et donc en préservant leur anonymat. On peut parler ici également d'accréditation anonyme, auquel cas l'entité certificatrice peut être vue comme étant une entité d'accréditation.

Dans la présente invention, un certificat est généré au moyen d'un ou plusieurs attribut(s) mi,.. .,ι¾ associé(s) à l'entité utilisatrice U.

De tels attributs ηΐι,... ,η¾ peuvent être en particulier certains attributs de l'utilisateur utilisant cette entité utilisatrice U. Ainsi, pour reprendre l'exemple illustratif d'une entité certificatrice appartenant à une université et d'une entité utilisatrice appartenant à un étudiant, de tels attributs peuvent correspondre au nom de l'étudiant, à son prénom, son numéro d'étudiant, les différents types d'études qu'il suit dans cette université, etc. Dans l'autre exemple illustratif déjà évoqué où l'entité certificatrice appartient cette fois à une mairie émettant des cartes d'identité, ces attributs peuvent correspondre au nom de l'administré, à son prénom, sa date de naissance, son adresse, etc.

Ainsi, comme chacun des certificats σ ί est généré à partir de tels attributs, l'utilisateur de l'entité utilisatrice peut se servir de tels certificats pour s'authentifier auprès d'un organisme sollicitant la preuve de la certification de tels attributs par une entité certificatrice, au moyen de son entité utilisatrice U, sans révéler plus d'informations pour autant.

Une fois qu'un certain nombre de certificats o it ... σ ί; ... σ Ν · ont été attribués à l'entité utilisatrice U, un certificat agrégé a a est calculé (étape 200) par l'entité utilisatrice U à partir d'une pluralité de certificats σι ; ... σ ;> ... σ Ν (où Ν<Ν') parmi les certificats attribués à l'entité utilisatrice (U), par exemple en les multipliant entre eux. Cette étape 200 d'agrégation peut, par exemple, être effectuée à la volée lorsque l'utilisateur entame la procédure de requête d'un service auprès d'une entité vérificatrice V.

Ainsi, lorsque l'entité utilisatrice U désire s'authentifier auprès d'une entité vérificatrice V requérant l'authentification sur la base d'un certain nombre d' attributs de l'utilisateur, l'entité utilisatrice U peut choisir les Oi correspondant à ces attributs nécessaires à l'authentification parmi les N' certificats dont elle dispose.

Le procédé d'accès anonyme se poursuit par le calcul (étape 300), par l'entité utilisatrice U, d'une preuve de connaissance PoK n du certificat agrégé a a .

On entend ici par « preuve de connaissance des certificats a a » des données, sous forme numérique, calculées à partir de ce certificat agrégé et permettant de prouver que l'utilisateur a la connaissance de ce certificat agrégé, donc des certificats individuels σι σι σ Ν . qui le composent, et donc que ces certificats ont bien été attribués à l'entité utilisatrice U par une entité certificatrice, sans pour autant dévoiler ces certificats eux-mêmes. Ici, dans la mesure où chaque certificat σ ί a lui-même été obtenu à partir d'attributs associés à l'entité utilisatrice, la preuve de connaissance ΡοΚ σ ainsi générée correspond indirectement à une preuve de connaissance du fait que l'utilisateur de l'entité utilisatrice U présente bien ces attributs qui lui sont associés, ce qui permet à l'organisme tiers d'être renseigné à ce sujet sans qu'il n'ait directement accès ni à l'identité de l'utilisateur, ni aux autres attributs préalablement certifiés. Sa seule certitude est que les attributs qu'il obtient appartiennent effectivement à cette entité utilisatrice et qu'ils ont effectivement été certifiés par une entité certificatrice Q.

Ce calcul de la preuve de connaissance ΡοΚ σ , effectuée dans l'entité utilisatrice U, se termine par la transmission de cette preuve de connaissance ΡοΚ σ vers une entité vérificatrice V afin d'en obtenir un service.

Ainsi, on entend ici par « entité vérificatrice » tout dispositif disposant au moins d'une unité de communication pour pouvoir communiquer avec des entités utilisatrices requérant un service au moyen d'une preuve de connaissance des certificats, d'une unité de calcul pour effectuer des calculs sur des données échangées avec ces entités utilisatrices, afin de vérifier ces données avant de déclencher la fourniture du service. Le service peut alors être soit fourni directement par l'entité vérificatrice, soit fourni par une entité tiers distincte de l'entité vérificatrice auquel cas l'entité vérificatrice est apte à requérir la fourniture du service auprès de cette entité de tiers après avoir vérifié les données.

Suite à la réception de la preuve de connaissance ΡοΚ σ par cette entité vérificatrice V, une vérification (étape 400) est alors effectuée par cette entité vérificatrice V au moyen de cette preuve de connaissance ΡοΚ σ portant sur les certificats σ ί> σ Ν attribués préalablement à l'entité utilisatrice U.

L'entité vérificatrice V fournit alors l'accès au service requis à l'entité utilisatrice U en fonction du résultat de cette vérification, c'est-à-dire seulement si cette vérification donne un résultat positif.

Dans la présente invention, les certificats σι ;... O sont agrégeables, c'est-à-dire qu'un certificat agrégé σ α peut être obtenu dans l'entité utilisatrice U à partir de l'agrégation de différents certificats σι,...,σ Ν attribués par une ou plusieurs entités certificatrices Ci,... C j ,...,C M , par exemple en multipliant ces certificats.

Afin d'obtenir de tels certificats agrégeables, un schéma de signature agrégeable peut être avantageusement employé par l'entité certificatrice Q pour générer un certificat agrégeable σι, en procédant à une signature d'un ou plusieurs attribut(s) mi,...,m k avec une clé secrète skq attribuée préalablement à l'entité certificatrice Q, et potentiellement certifiée dans le cadre par exemple d'un système PKI classique.

L'intérêt d'utiliser des certificats OI , . . . ,ON agrégeables est de permettre d'obtenir un seul certificat agrégé o a , conçu à partir de plusieurs certificats agrégeables. Ce certificat agrégé a a peut ensuite être vérifié par différentes entités vérificatrices au moyen d'une preuve de connaissance ΡοΚ σ d'un tel certificat agrégé. Dans la présente invention, une nouvelle preuve de connaissance PoK o du certificat agrégé a a est générée, de façon distincte, à chaque requête d'accès de l'entité utilisatrice U auprès d'une entité vérificatrice V afin d'empêcher la traçabilité de l'utilisateur. L'invention se traduit également par un gain potentiel en bande passante et en simplicité d'utilisation dans la mesure où seule une preuve de connaissance d'un certificat agrégé est transmise aux entités vérificatrices V au lieu d'une multitude de certificats distincts et dans la mesure où l'accès à un service tiers ne nécessite pas de preuve dont la quantité de calcul dépendrait du nombre d'attributs initialement certifiés par l'entité émettrice.

En particulier, dans un petit dispositif embarqué, le fait de transmettre des données consomme plus de batterie que de faire un calcul. Pour cette raison, l'agrégation de certificats par l'entité utilisatrice U videra moins la batterie que leur transmission.

La présente invention permet en outre une simplification des procédures lorsqu'un utilisateur doit faire appel à des accréditations provenant d'organisations différentes, puisqu'un seul certificat agrégé est utilisé.

On se réfère maintenant à la figure 2 qui illustre plus particulièrement l'étape 100 d' attribution d'un certificat aj telle qu'employée par le procédé d'accès anonyme à un service selon la présente invention.

Sur cette figure 2 sont représentées, à gauche, les sous-étapes effectuées par l'entité utilisatrice U et, à droite, les sous-étapes effectuées par l'entité certificatrice Q ; ainsi que les différentes données échangées entre ces entités au moyen de leur unité de communication respective.

L'entité utilisatrice U et l'entité certificatrice Q disposent avantageusement d'une paire de clés privée et publique respective (sku,pku) et (ska,pkci), par exemple de paires de clés asymétriques conformément à un schéma de cryptographie à clé publique. Ces clés privées et publiques peuvent être obtenues de la façon suivante : a) une procédure d'initialisation SETUP est d'abord exécutée, au cours de laquelle :

- Un environnement bilinéaire (p, Gi, G 2 , e) est choisi où p est un nombre premier, Gi et G 2 deux groupes d'ordre p et e un couplage bilinéaire applicable à GiX G 2 . Dans la suite, Z p désigne l'ensemble des entiers modulo p ;

- une fonction cryptographique de hachage résistante aux collisions H : {0,1 } *→ Gi est choisie ;

- deux générateurs de groupe gi et u sont choisis aléatoirement de manière uniforme dans Gi ; et

- un générateur de groupe g 2 est choisi aléatoirement de manière uniforme dans G 2 .

A l'issue de cette procédure d'initialisation, les paramètres globaux (p,Gi,G 2 ,e,g 1 ,g 2 ,u,H) sont disponibles. b) une procédure de génération de clés KEY. GEN est ensuite exécutée, au cours de laquelle :

- Pour l'entité utilisatrice U : - une variable x est choisie aléatoirement de manière uniforme dans Z p , laquelle correspond à la clé privée sku de l'entité utilisatrice U, i.e. sku = x ;

- la variable X= g j * est calculée, laquelle correspond à la clé publique pku de l'entité utilisatrice U, i.e. pku = X.

- Pour chaque entité certificatrice Compliquée :

- une variable γ est choisie aléatoirement de manière uniforme dans Z p , laquelle correspond à la clé privée skq de l'entité certificatrice U, i.e. skq = γ;

- les variables Ty = g et ΐ 2 = g sont calculées, afin d'obtenir la clé publique pkq de l'entité certificatrice Q, telle que pkc j = (T , Ι 2 ).

Une fois ces différents paramètres obtenus au préalable, l'étape 100 d'attribution peut débuter par le calcul (étape 110), par l'entité utilisatrice U, d'une donnée publique C liée à la clé secrète sk D de l'entité utilisatrice U, cette donnée publique C permettant de masquer la clé secrète sku tout en autorisant des calculs impliquant cette clé secrète.

A titre d'exemple, dans un premier mode de réalisation, cette donnée publique liée à la clé secrète sku peut être calculée selon la formule suivante :

(1) C = u sk "

Une fois la donnée publique C calculée, une première partie R d'une preuve de connaissance PoK c de cette donnée publique C peut être calculée par l'entité utilisatrice, lors d'une étape 120 de calcul d'une partie au moins de la preuve de connaissance.

Similairement à la donnée publique C, toujours dans un premier mode de réalisation, cette première partie R de la preuve de connaissance PoK c de la donnée publique C peut être calculée à partir d'une donnée r x , choisie aléatoirement dans Z p , selon la formule suivante :

(2) R = u '

La donnée publique C et la première partie R de la preuve de connaissance PoK c de cette donnée publique C sont alors transmises, sous forme de donnée numérique, à l'entité certificatrice C j (étape 123).

Cette entité certificatrice Q renvoie en retour un nombre aléatoire c à l'entité utilisatrice U (étape 127), afin de permettre la génération d'une deuxième partie S de la preuve de connaissance PoK c au moyen de cette variable aléatoire c, ce qui est effectué lors de l'étape 130 de calcul d'une deuxième partie S de la preuve de connaissance PoK c de la donnée publique C par l'entité utilisatrice U.

Dans un premier mode de réalisation, cette deuxième partie S de la preuve de connaissance PoK c de la donnée publique C peut ainsi être calculé la formule suivante :

(3) S = r s + c sk jj Cette deuxième partie S de la preuve de connaissance PoKc est alors transmise vers l'entité certificatrice C j (étape 135).

Une fois en possession de la donnée publique C et de la preuve de connaissance PoK c de cette donnée publique C, l'entité certificatrice Q peut procéder alors au calcul (étape 150) d'un certificat σ; au moyen de la donnée publique C liée à la clé secrète sku de l'entité utilisatrice U, d'un ou plusieurs attribut(s) η¾, ... , m L associé(s) à l'entité utilisatrice U et de la clé secrète skq de l'entité certificatrice Q .

En d'autres termes, cette étape 150 de calcul correspond à la signature, par l'entité certificatrice C j , d'un ou plusieurs attribut(s) m ! ,..., ra k ,.. ., m l (où l j > 1 est le nombre d'attributs signés par l'entité certificatrice Q) associé(s) à l'entité utilisatrice U au moyen de sa clé secrète skq en appliquant un schéma de signature agrégeable permettant d'obtenir une signature agrégeable correspondant au certificat

A titre d'exemple, dans le premier mode de réalisation introduit précédemment, le certificat a; peut être calculé ici selon la formule suivante : où a k '= H( gl SKc ' m, )

Ainsi, dans le cas particulier où un seul attribut η¾ est certifié par l'entité certificatrice Q, c'est-à- dire où l j =l, cette formule (4) devient alors la formule suivante :

Il est avantageux de conditionner ce calcul au résultat d'une étape de vérification de la donnée publique C, afin d'éviter d'attribuer un certificat à un utilisateur non habilité.

Pour ce faire, une fois en possession de la donnée publique C et de la preuve de connaissance PoK c de cette donnée publique C, et avant tout calcul de certificat, l'entité certificatrice Q procède à la vérification (étape 140) de la donnée publique C liée à la clé secrète sku de l'entité utilisatrice U, au moyen de la preuve de connaissance PoK c , c'est-à-dire au moyen des première et deuxième parties R et S de la preuve de connaissance PoK c .

Ainsi, dans le cas du premier mode de réalisation introduit précédemment, cette vérification peut consister à vérifier si l'égalité suivante est bien respectée :

(6) u'- = R C c

Si le résultat de cette vérification est positif, c'est-à-dire si l'égalité (4) est bien vérifiée, l'entité certificatrice C j peut alors procéder au calcul du certificat tel que décrit précédemment. Si ce résultat est négatif, une donnée d'erreur (par exemple une donnée « 0 ») peut être émise et le procédé s'arrête à ce stade. Une fois calculé, le certificat σ; est ensuite transmis (étape 155) à l'entité utilisatrice U où il peut être directement utilisé pour obtenir le certificat agrégé σ α .

Dans un mode particulier de réalisation, une ou plusieurs variable(s) auxiliaires d'information ¾' telle(s) que a k '= H(g l peuvent également être transmises à l'entité utilisatrice U à ce

stade, et ce pour chaque attribut m k appartenant à un sous-ensemble M' d'attributs inclus dans l'ensemble de tous les attributs {m k } l<k<[ signés lors de l'étape 150 de calcul. Ces variables auxiliaires d'information σ^' peuvent être employées, lors de l'étape 300 d'authentification anonyme auprès d'une entité vérificatrice V, pour cacher certains attributs comme cela est expliqué plus loin.

Une fois reçu par l'entité utilisatrice, il peut être avantageux de vérifier (étape 170) le certificat σ; dans l'entité utilisatrice, avant de s'en servir pour générer une quelconque preuve de connaissance.

Cette vérification peut être effectuée au moyen de la vérification d'une relation entre le certificat Oj, les attributs nii,..., m L utilisés lors de la génération de ce certificat σι et de la clé secrète sku de l'entité utilisatrice U.

Pour reprendre le premier mode de réalisation évoqué précédemment, cette vérification peut consister à vérifier l'égalité suivante :

(7) e(a t , g 2 ) = e(u, T j ) sk " [

Si cette relation (7) n'est pas respectée, le résultat de la vérification 170 est négatif, ce qui se traduit par l'émission d'un message d'erreur (par exemple une donnée « 0 ») et la non-validation du certificat O j dans l'entité utilisatrice U.

Si cette relation (7) est vérifiée, le résultat de cette vérification est positif : le certificat O j est validé et peut être utilisé ultérieurement pour construire un certificat agrégé o a permettant de requérir un service impliquant les attributs auprès d'une entité vérificatrice, en combinaison éventuellement avec d'autres attributs certifiés par d'autres entités certificatrices.

Ce certificat peut être mémorisé à cet effet dans l'entité utilisatrice U, éventuellement conjointement avec les variables auxiliaires d'information σ^' qui ont été avantageusement reçues de l'entité certificatrice C j .

Cette étape 100 d'attribution, qui aboutit à l'attribution par une entité certificatrice C j d'un certain nombre de (au moins un) certificats Oj , à l'entité utilisatrice U peut être répétée pour chacune des M entités certificatrices d'un ensemble d'entités certificatrices i 1 C ; . h r , ce qui aboutit à l'attribution à l'entité utilisatrice U d'un ensemble de N certificats {cr i } 1<i<N délivrés par ces M entités certificatrices, et portant sur un ensemble d'attributs.

On se réfère maintenant à la figure 3, laquelle illustre en particulier les étapes de calcul d'un certificat agrégé à partir des certificats attribués à l'entité utilisatrice, de calcul d'une preuve de connaissance de ces certificats et de vérification de cette preuve de connaissance employées par le procédé d'accès anonyme à un service selon la présente invention.

Sur cette figure 3 sont représentées, à gauche, les sous-étapes effectuées par l'entité utilisatrice U et, à droite, les sous-étapes effectuées par l'entité vérificatrice V_ ainsi que les différentes données échangées entre ces entités au moyen de leur unité de communication respectif.

On se place ici dans la situation où, lors de l'étape préalable 100 d'attribution, l'entité utilisatrice a reçu plusieurs certificats σι,...,σ ί ,...,σ Ν. attribués respectivement par M entités certificatrices

On procède alors au calcul (étape 200) d'un certificat agrégé o a à partir d'un sous-ensemble des certificats ai,... ,Oi,... ,a k préalablement obtenus, par exemple en multipliant ces certificats de sorte que cr a = σ ι * ... * cr N .

Cette étape 200 d'agrégation peut être effectuée à la volée par l'utilisateur, lorsque celui souhaite requérir un service par l'intermédiaire d'une entité vérificatrice V.

Une fois ce certificat agrégé σ α obtenu, l'entité utilisatrice U procède au calcul (étape 300) d'une preuve de connaissance ΡοΚ σ des certificats attribués à l'entité utilisatrice au moyen de ce certificat agrégé σ α .

L'étape 300 de calcul de cette preuve de connaissance ΡοΚ σ peut se décomposer de la façon suivante :

• Un engagement D sur le certificat agrégé σ α est d'abord calculé (sous-étape 310) au moyen de ce certificat agrégé σ α et de la clé secrète sku de l'entité utilisatrice U, par exemple selon la procédure suivante :

a) on choisit une variable aléatoire r dans Z p ;

b) une première partie d'engagement Di est calculée à partir de cette variable aléatoire r, telle que c) une deuxième partie d'engagement D 2 est calculée à partir de la clé secrète sku de l'entité utilisatrice U

1

et du certificat agrégé a a , selon la formule D 2 —<J a sk u - u L'engagement D sur le certificat agrégé σ α correspond alors à la paire (D1,D2).

• Une fois cet engagement D calculé par l'entité utilisatrice U, la preuve de connaissance ΡοΚ σ peut être calculée à partir au moins de cet engagement D, de la façon suivante :

a) une première partie P de cette preuve de connaissance PoK 0 peut être calculée par l'entité utilisatrice U, à partir d'une partie au moins de l'engagement D, lors d'une étape 320 de calcul, selon la procédure suivante : - on choisit trois variables aléatoires r x , r r et r s dans Z p ;

- on calcule les deux variables P j = g^' , P 2 = D^ * g l %

- on calcule égalementP 3 = e(D 2 ,g 2 ) r* · e(u, g 2 ) "% · ;

La première partie P de la preuve de connaissance ΡοΚ σ correspond alors au triplet (Pi,P 2 ,P3). b) L'engagement D et la première partie de la preuve de connaissance PoKo sont alors transmis à l'entité vérificatrice V (étape 325), laquelle, suite à la réception de ces données, procède à la sélection d'une valeur aléatoire d dans Z p (étape 330) et envoie en retour cette variable aléatoire d à l'entité utilisatrice U (étape 335).

c) Une fois cette variable d reçue, l'entité utilisatrice U procède alors au calcul d'une deuxième partie T de la preuve de connaissance ΡοΚ σ (étape 340) à partir de cette variable aléatoire d, par exemple selon la procédure suivante :

- une variable s x est calculée telle que t x = r x + d · sk u ;

- une variable s r est calculée telle que t r = r r + d · r ; et

- une variable s 5 est calculée telle que t^ = v s + d · r · sk u .

La deuxième partie T de la preuve de connaissance ΡοΚ σ correspond alors au triplet de ces variables, i.e. T=(t x ,t r ,t 8 ).

A l'issue de cette étape 340, la deuxième partie T de la preuve de connaissance PoK„ est transmise (étape 345) à l'entité vérificatrice V, qui dispose alors de l'engagement D sur le certificat agrégé a a , de la valeur aléatoire d et des deux parties P et T de la preuve de connaissance ΡοΚ σ de ce certificat agrégé σ α .

Il est alors possible d'effectuer une vérification 400, dans l'entité vérificatrice V, de cette preuve de connaissance ΡοΚ σ .

Une telle vérification peut être réalisée en vérifiant si les trois relations suivantes (8)-(10) sont bien respectées :

(8)

Si l'une de ces relations (8) à (10) n'est pas respectée, le résultat de la vérification 300 est négatif, ce qui se traduit par l'émission d'un message d'erreur (par exemple une donnée « 0 ») et la non- attribution du service requis par l'entité utilisatrice U auprès de l'entité vérificatrice. Le procédé d'accès anonyme à ce service s'arrête alors à ce stade.

Par contre, si toutes les relations (8) à (10) sont respectées, le résultat de la vérification 300 est positif et le service requis par l'entité utilisatrice U auprès de l'entité vérificatrice peut être fourni à cette entité utilisatrice U, par exemple en envoyant un message d'autorisation (étape 405) à l'entité utilisatrice U, ce message pouvant comprendre des données correspondant au service requis lui-même.

Dans un mode de réalisation particulier où l'utilisateur souhaite cacher certains des attributs r¾, attribués par l'entité certifie atrice Q et ayant un indice k appartenant à l'ensemble M j ' inclus dans M j ={ 1 l j }, et pour lesquels il a reçu des variables d'information auxiliaires Ok' telles que

sk r :

σί ~ H(&i Cj L?2 c ' \\ m k ^ ' l° rs ^ e l'étape 155 de transmission, le certificat agrégé o a peut être modifié à l'issue de l'étape 200 d'agrégation en utilisant ces variables d'information auxiliaires σ^' .

En particulier, si l'utilisateur souhaite cacher les attributs m k dont les indices k appartiennent à un sous-ensemble M j " inclus dans l'ensemble M j ' ci-avant, l'opération suivante est effectuée sur le certificat agrégé après l'étape 200 d'agrégation, pour le(s) valeur(s) de k appartenant à l'ensemble M j ' ' :

σ Λ * σ^→σ α

Cette transformation du certificat agrégé a a au moyen d'une ou plusieurs variable(s) auxiliaire(s) ¾' calculée pour un ou plusieurs attribut(s) n¾ à cacher permet de cacher cet ou ces attribut(s) n¾ à l'entité vérificatrice V lors du processus d'authentification de l'entité utilisatrice U.

Dans ce mode particulier de réalisation, la relation (10) à vérifier devient alors la relation modifiée (10') suivante :

En d'autres termes, cette relation modifiée (10') revient à vérifier une accréditation agrégée sur le sous-ensemble M j M j " valide sous les clefs publiques L j des entités certificatrices. On se réfère maintenant à la figure 4, laquelle illustre en particulier l'étape d'attribution 100' d'un certificat employée par le procédé d'accès anonyme à un service selon un deuxième mode de réalisation de l'invention.

En effet, il est avantageux de masquer la donnée publique liée à la clé secrète sku de l'entité utilisatrice U et la première partie de preuve de connaissance de cette donnée publique générée lors de l'étape d'attribution, afin de mieux protéger l'utilisateur en empêchant l'entité certificatrice Q de générer des certificats qu'elle pourrait délivrer à la place de l'utilisateur.

Pour ce faire, dans ce deuxième mode de réalisation, la donnée publique correspond à un engagement sur la clé secrète sku- Le terme d'« engagement » sur une valeur est entendu ici dans son sens cryptographique et correspond à une donnée (sous forme numérique), non-modifiable et liée à cette valeur, qui permet de garder cette valeur cachée dans un premier temps mais peut être employée ultérieurement pour révéler cette valeur. Un tel engagement permet de masquer la clé secrète sku, tout en garantissant son intraçabilité.

Ainsi, dans le deuxième mode de réalisation illustré sur cette figure 4, l'étape 100' d'attribution peut débuter par le calcul (étape 110'), par l'entité utilisatrice U, d'un engagement C sur la clé secrète sku de l'entité utilisatrice U.

Ce calcul consiste à choisir une variable aléatoire s dans Z p et à calculer l'engagement C selon la formule modifiée (11) suivante, laquelle remplace alors la formule (1) évoquée précédemment en relation avec l'étape 110 du premier mode de réalisation :

(H) C'= u sk» gl s

Une fois cet engagement C calculé, la première partie R' de la preuve de connaissance PoK c de cet engagement peut être calculée par l'entité utilisatrice, lors d'une étape 120' de calcul, en choisissant deux variables aléatoires r x et r s dans Z p et en calculant la valeur R' selon la formule modifiée (12) suivante, laquelle remplace alors la formule (2) évoquée précédemment en relation avec l'étape 120 du premier mode de réalisation :

(12) R'= u r * g/ S

L'engagement C et la première partie R' de la preuve de connaissance PoK c - de cet engagement C sont alors transmises à l'entité certifie atrice C j (étape 123').

Suite à la réception de ces données, l'entité certificatrice Q procède à la sélection d'une variable aléatoire c' dans Z p (étape 125') et envoie en retour cette variable aléatoire c' à l'entité utilisatrice U (étape 127').

Une fois cette variable c' reçue, l'entité utilisatrice U procède alors au calcul d'une deuxième partie S' de la preuve de connaissance PoK c . de l'engagement C (étape 130'), cette deuxième partie S' correspondant à la paire de variables (s x , s s ) calculées selon les formules modifiées (13) et (14) suivantes, lesquelles remplacent ainsi la formule (3) évoquée précédemment en relation avec l'étape 130 du premier mode de réalisation :, selon la procédure suivante :

(13) s x = r x + c'-sk u

(14) s s = r s + c' s .

La deuxième partie S' de la preuve de connaissance PoK c - telle que S'=(s x , s s ) est alors transmise vers l'entité certificatrice Q (étape 135').

Une fois en possession de l'engagement C , de la première partie R' de la preuve de connaissance PoK c . et de la deuxième partie S'=(s x , s s ) de cette preuve de connaissance PoK c ., l'entité certificatrice Cj peut procéder à la vérification (étape 140') de l'engagement C en vérifiant si la relation modifiée (15) suivante, correspondant à la relation (6) évoquée en relation avec l'étape 140 du premier mode de réalisation, est bien respectée :

Si cette relation modifiée (5') n'est pas respectée, le résultat de la vérification 140' est négatif, ce qui se traduit par l'émission d'un message d'erreur et la non-attribution d'un certificat à l'entité utilisatrice U. L'étape 100' d'attribution du certificat s'arrête alors à ce stade.

Si, par contre, la relation modifiée (15) est respectée, le résultat de la vérification 140' est positif et l'étape 100' d'attribution peut se poursuivre par le calcul (étape 150') d'un certificat selon la formule (16) suivante, laquelle correspond à la formule (4) employée lors de l'étape 150 de calcul du premier mode de réalisation :

Le certificat aj ainsi obtenu correspond au certificat obtenu par la formule (5) dans le premier mode de réalisation multiplié par la variable g skcj et est donc masqué par une telle variable. Ce certificat n'est alors pas agrégeable en tant que tel et ne peut donc pas être utilisé directement par l'entité utilisatrice U lors de l'étape 200 d'agrégation. A ce titre, ce certificat O j est un certificat provisoire qui est alors transmis (étape 155') par l'entité certificatrice Q à l'entité utilisatrice U.

Afin de rendre son caractère agrégeable à ce certificat provisoire reçu de l'entité certificatrice C j , ce certificat provisoire est ensuite démasqué (étape 160') par l'entité utilisatrice U, selon la formule (17) suivante :

Cette opération de démasquage permet d'obtenir un certificat définitif respectant la relation de la formule (4) (i.e. où <J i = ) et donc agrégeable avec d'autres

certificats agrégeables. Ce certificat définitif est ensuite avantageusement vérifié (étape 170') au moyen de la relation

(7) évoquée en relation avec l'étape 170 du premier mode de réalisation.

Comme pour le premier mode de réalisation, cette étape 100' d'attribution selon un deuxième mode de réalisation, qui aboutit à l'attribution par une entité certificatrice C j d'un certificat provisoire démasqué en un certificat définitif σ; par l'entité utilisatrice U, peut être répétée pour chacune des M entités certificatrices Ci d'un ensemble d'entités certificatrices ion à

J L C qui aboutit à l' attribut

J \ , ce

≤j≤M '

l'entité utilisatrice U d'un ensemble de N certificats {<Τ ; } 1<ί<Λ , , délivrés respectivement par chacune des M entités certificatrices Ci,. . .,Q, . . . ,CM-

Dans ce deuxième mode de réalisation de l'étape d' attribution, la quantité de données fournies par l'utilisateur de l'entité utilisatrice U à l'entité vérificatrice V, sous forme d'attributs associés à cet utilisateur, est minimisé. On se réfère maintenant à la figure 5, laquelle illustre également l'étape 100" d'attribution d'un certificat, telle qu'employée par le procédé d'accès anonyme à un service, selon un troisième mode de réalisation de l'invention.

Ce troisième mode de réalisation s'applique au cas où l'entité utilisatrice U possède déjà N certificats σ Ν , obtenus auprès de différentes entités certificatrices d,. . .,C j ,. . .,C M et sollicite l'attribution d'un nouveau certificat σ Ν+ ι auprès d'une nouvelle entité certifie atrice C j+1 , tout en cherchant à minimiser les données fournies à cette nouvelle entité certificatrice Q + i.

Pour illustrer ce troisième mode de réalisation, on se place dans la situation où l'entité utilisatrice a calculé un certificat agrégé a a à partir des N certificats Oi , . . . , σ Ν , déjà attribués, c'est-à-dire dans le cas

Dans ce troisième mode de réalisation tel qu'illustré sur cette figure 5, l'étape 100" d' attribution débute également par le calcul (étape 1 10"), par l'entité utilisatrice U, d'une donnée publique C ' liée à la clé secrète sku de l'entité utilisatrice U.

Cette donnée publique C" comprend une première partie de donnée publique C 0 " liée à la clé secrète sku, par exemple calculée selon la procédure suivante dans laquelle cette première partie de donnée publique correspond à un engagement sur cette clé secrète sku, similairement à ce qui a été précédemment décrit pour l'étape 110' :

a) on choisit une variable aléatoire s dans Z p ; b) on calcule C 0 = u sk °

Outre cette première partie de donnée publique C 0 ", une deuxième partie de donnée publique Ci" est calculée selon la procédure suivante : a) on choisit une variable aléatoire r dans Z p ; b) on calcule C j " = g : r Enfin, une troisième partie de donnée publique C 2 ' ' liée à la clé secrète sku et au certificat agrégé a a est calculée à partir de la clé secrète sku de l'entité utilisatrice U et du certificat agrégé o a , par exemple selon la formule (18) suivante où cette troisième partie de donnée publique C 2 " correspond à un engagement sur la clé secrète sku de l'entité utilisatrice U et le certificat agrégé o a :

1

(18) C 2 "= a a ~ ^ - u r

Ainsi la donnée publique C" correspond au triplet de données publiques (C 0 " ,Ci" ,C 2 ") et porte aussi bien sur la clé secrète sk O de l'entité utilisatrice U que sur le certificat agrégé a a possédé par l'entité utilisatrice U.

Une fois cette donnée publique C" calculée, la première partie R" de la preuve de connaissance PoK C" de cette donnée publique C" peut être calculée par l'entité utilisatrice U, lors d'une étape 120" de calcul, selon la procédure suivante : a) on choisit quatre variables aléatoires r x , r s , r r et r g dans Z p ;

b) on calcule R 0 = u T * g 1 T* , R j = g 1 , R 2 = (C 1 " ) ri g 1 ~%

N

c) on calcule R 3 = e(C 2 " , g 2 ) r* - e(u, g 2 ) ¾ · erii/Qi: 2 ) "r * ;

j=i

La donnée publique C"=(Co" ,Ci",C2") et la première partie de la preuve de connaissance PoK c - de cette donnée publique C" sont alors transmises à l'entité certificatrice C N+ i (étape 123"), laquelle, suite à la réception de ces données, procède à la sélection d'une variable aléatoire c" dans Z p (étape 125") et renvoie en retour cette variable aléatoire c" à l'entité utilisatrice U (étape 127").

Une fois cette variable c" reçue, l'entité utilisatrice U procède alors au calcul d'une deuxième partie S" de la preuve de connaissance ΡοΚ α ·· de cette donnée publique C" (étape 130") selon la procédure suivante : a) une variable s x est calculée telle que s x = r x + c"-sk u ;

b) une variable s s est calculée telle que s s = r s + c"-s ;

c) une variable s r est calculée telle que s r = r r + c"-r ; et

d) une variable s s est calculée telle que = r 5 + c"-r · sk u . La deuxième partie S" de la preuve de connaissance PoK c - correspond alors au quadruplet de variables (s x ,s Sj ,s r ,s 5 ), qui est alors transmis vers l'entité certificatrice C j (étape 135").

Une fois en possession de la donnée publique C" , de la première partie R" de la preuve de connaissance PoK C " et de la deuxième partie S" de cette preuve de connaissance PoK C s l'entité certificatrice C j+1 procède alors avantageusement à la vérification (étape 140") de la donnée publique C", en vérifiant si les quatre relations suivantes (19)-(22) sont bien respectées :

(19) u s ¾ ¾ =R 0 - (C 0 ")

(20) g l s< =R 1 - (C l "f

Si l'une de ces relations (19) à (22) n'est pas respectée, le résultat de la vérification 140" est négatif, ce qui se traduit par l'émission d'un message d'erreur (par exemple une donnée « 0 ») et la non- attribution d'un certificat σ Ν+ ι à l'entité utilisatrice U. L'étape 100" d'attribution du certificat s'arrête alors à ce stade.

Par contre, si toutes les relations (19) à (22) sont respectées, le résultat de la vérification 140" est positif et l'étape 100" d'attribution peut se poursuivre par le calcul (étape 150") du certificat σ Ν+1 selon la formule (23) suivante :

Ce certificat a N+i , lequel est un certificat provisoire au sens où il n'est pas agrégeable en tant que tel, est alors transmis (étape 155") par l'entité certificatrice Q + i à l'entité utilisatrice U, où il peut être ensuite transformé en un certificat démasqué (i.e. agrégeable) σ Ν+ ι par l'entité utilisatrice U (étape 160"), selon la formule (24) suivante :

(24) σ Ν + 1 ■ Γ

Ce nouveau certificat σ Ν+1 est ensuite avantageusement vérifié (étape 170") au moyen de la relation (25) suivante :

Si cette relation (25) n'est pas respectée, le résultat de la vérification 170" est négatif, ce qui se traduit par l'émission d'un message d'erreur (par exemple une donnée « 0 ») et la non-validation du certificat σ Ν+ ι dans l'entité utilisatrice U.

Par contre, si la relation (25) est respectée, le résultat de la vérification 170" est positif et le certificat a N+i est validé. Il peut alors être mémorisé par l'entité utilisatrice U afin d'être utilisé ultérieurement pour requérir anonymement un service impliquant un des attributs η¾,...,ηΐι auprès d'une entité vérificatrice V. On notera ici qu'à la différence des certificats σ; individuellement attribués dans les premier et deuxième modes de réalisation de l'étape d'attribution du procédé, le certificat σ Ν+ ι obtenu dans le troisième mode est un certificat obtenu sur présentation d'un certain nombre de certificats précédemment attribués. Il est ainsi possible de reproduire cette étape 100" d'attribution avec une nouvelle entité certificatrice C N+2 , ce qui aboutira à l'attribution d'un nouveau certificat σ Ν+2 , et ainsi de suite, de façon itérative.

On se réfère enfin à la figure 6 qui représente schématiquement un système d'accréditation anonyme SAA pour l'accès anonyme à un service, dans lequel est mis en œuvre le procédé d'accès anonyme à un service décrit précédemment.

Ce système d'accréditation anonyme SAA comprend :

- une entité utilisatrice U, utilisée par un utilisateur pour requérir anonymement un service auprès d'une entité vérificatrice grâce à au moins un ou plusieurs certificat(s) anonyme(s) Oj attribué(s) par au moins une entité certificatrice Q ;

- au moins une entité certificatrice Q, apte à accréditer anonymement une entité utilisatrice U, en lui attribuant un ou plusieurs certificat(s) anonyme(s) ; et

- au moins une entité vérificatrice V, apte à vérifier anonymement l'entité utilisatrice U et à lui fournir un service SERV après vérification d'une preuve de connaissance ΡοΚ σ portant sur un ou plusieurs certificat(s) anonyme(s).

Sur la figure 6 sont illustrées M entités certificatrices distinctes d,...,C j ,...,C M , ce nombre M pouvant être n'importe quel nombre entier supérieur ou égal à 1. Seule l'entité certificatrice C j est décrite en détail, les autres entités certificatrices étant similaires à cette entité C j .

Cette entité certificatrice C j peut être un dispositif informatique de type serveur appartenant à une organisation certificatrice telle qu'une mairie, une université, une préfecture, etc.

Cette entité certificatrice Q comprend en particulier une unité de calcul CALCq arrangée pour mettre en œuvre l'étape 100 d'attribution d'un certificat Ai à l'entité utilisatrice U telle que décrite ci- avant. Une telle unité de calcul CALCq peut consister en un processeur, un micro-processeur, ou bien un ordinateur personnel ou un serveur comprenant un tel processeur.

Cette entité certificatrice Ci comprend en outre une unité de communication COMq adaptée pour transmettre le certificat provisoire Ai généré par l'unité de calcul CALCq à l'entité utilisatrice U auquel il est attribué. Cette unité de communication COMq peut être implémentée avec des dispositifs de transmission de type radiofréquence, sans-fil ou optique, ou filaires, capables de transmettre des données numériques correspondant à un certificat provisoire Ai vers l'entité utilisatrice U, aussi bien que de recevoir de celle-ci des données numériques correspondant à un engagement C et une preuve de connaissance PoK c de cet engagement C.

Cette entité certificatrice Q peut comprendre en outre une unité de mémorisation MEMq, connectée à l'unité de calcul CALCq et capable de mémoriser les attributs ηΐι,...,ηΐι associés à l'utilisateur de l'entité utilisatrice U afin de pouvoir les fournir ultérieurement à l'unité de calcul CALCq lorsque celle-ci est amenée à générer un certificat Aj . Cette unité de mémorisation ΜΕΜ α comprend en outre une partie sécurisée capable de stocker la clé secrète sk q attribuée à l'entité certificatrice

L'entité vérificatrice V, quant à elle, peut être un dispositif informatique de type serveur appartenant à un organisme tiers apte à délivrer un service, tel que des transports publics, un organisme vendant des billets de concert ou de musée, délivrant des tickets restaurant pour des étudiants, ou donnant accès à des équipements de type bibliothèque ou piscine, entre autres.

Cette entité vérificatrice V comprend une unité de communication COM V capable de recevoir une preuve de connaissance ΡοΚ σ d'une pluralité de certificats ai,...,o i: ...,o N attribués à l'entité utilisatrice. Cette unité de communication COM V peut être implémentée similairement à l'unité de communication COM décrite ci-avant.

Cette entité vérificatrice V comprend en outre une unité de calcul CALC V capable d'appliquer l'étape de vérification 400 décrite ci-avant à une preuve de connaissance ΡοΚ σ reçue de l'entité utilisatrice U et à déclencher la fourniture d'un service SERV à cette entité utilisatrice U en fonction du résultat de cette vérification. Cette unité de calcul CALC V peut être implémentée similairement à l'unité de communication CALCq décrite ci-avant.

Dans un mode de réalisation, l'entité vérificatrice V correspond à l'entité fournissant un service, auquel cas l'entité vérificatrice V comprend une unité de fourniture de service, qui peut être l'unité de calcul CALCv elle-même lorsqu'il s'agit de calculer une réduction en fonction de l'âge d'un utilisateur, par exemple. Dans un autre mode de réalisation, l'entité vérificatrice V n'est pas elle-même l'entité fournissant un service, mais prend le rôle d'intermédiaire vérificateur. Dans ce cas, l'unité de communication COM v est apte, en outre, à communiquer avec l'entité fournissant le service requis par l'entité utilisatrice U, afin de déclencher la fourniture du service après que l'unité de calcul CALC V ait vérifié la preuve de connaissance ΡοΚ σ reçue de l'entité utilisatrice U. L'entité utilisatrice U, pour sa part, peut prendre la forme d'un dispositif informatique de type ordinateur personnel ou d'un smartphone, voire d'une carte à puce ou d'une étiquette RFID, et comprend une unité de communication COMu, similaire aux unités COM v et COM c décrite précédemment, capable de recevoir au moins un certificat Aj calculé par une entité certificatrice Q et de transmettre une preuve de connaissance ΡοΚ σ construite à partir des certificats Aj reçus de différentes entité certificatrices à l'entité vérificatrice V afin de requérir un service SERV.

L'entité utilisatrice U comprend en outre une unité de calcul CALCu capable de mettre en œuvre l'étape 300 de calcul de la preuve de connaissance ΡοΚ σ d'une pluralité de certificats σι,...,σί,. . .,σ Ν attribués à l'entité utilisatrice, telle que décrite ci-avant. Une telle unité de calcul CALCu peut être implémentée similairement aux unités de calcul CALCq et CALC V décrites ci-avant.

Cette entité utilisatrice U peut comprendre en outre une unité de mémorisation MEMu, connectée à l'unité de calcul CALCu et capable de mémoriser les différents certificats Ai,..., Ai,..., AN reçus des entités certificatrices, les certificats OI , . . . ,O Î , . . . ,ON avantageusement obtenus respectivement par démasquage de ces certificats Αι,...,Α;,...,Α Ν lorsque ces derniers sont des certificats provisoires, ainsi que le certificat agrégé a a obtenu à partir de ces certificats. Cette unité de mémorisation MEMu comprend en outre une partie sécurisée capable de stocker la clé secrète sku attribuée à l'entité utilisatrice U.

La présente invention vise en outre un programme d'ordinateur comprenant des instructions pour la mise en œuvre de l'étape de génération d'un certificat Aj au moyen d'au moins un attribut r¾ ci-avant, lorsque ce programme d'ordinateur est exécuté par l'unité de calcul CALCq située dans l'entité certificatrice C j décrite ci-avant.

La présente invention vise aussi un programme d'ordinateur comprenant des instructions pour la mise en œuvre de l'étape 300 de génération d'une preuve de connaissance ΡοΚ σ d'une pluralité de certificats attribués à une entité utilisatrice U lorsque ce programme d'ordinateur est exécuté par l'unité de calcul CALCu située dans l'entité utilisatrice U décrite ci-avant.

La présente invention vise en outre un programme d'ordinateur comprenant des instructions pour la mise en œuvre de l'étape 400 de vérification, au moyen d'une telle preuve de connaissance ΡοΚ σ , d'au moins un certificat attribué à une entité utilisatrice U lorsque ce programme d'ordinateur est exécuté par l'unité de calcul CALC V située dans l'entité vérificatrice V décrite ci-avant.

Ces programmes peuvent utiliser n'importe quel langage de programmation, et être sous la forme d'un code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme provisoirement compilée, ou dans n'importe quelle autre forme souhaitable.

L'invention vise aussi un support d'informations lisible par un ordinateur ou processeur de données, et comportant les instructions d'un des programmes mentionnés ci-dessus. Un tel support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD-ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette ou un disque dur.

Ce support d'informations peut aussi être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet. Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. La présente invention peut trouver application dans tous les domaines dans lesquels des services sont fournis à des utilisateurs en fonction de la fourniture d'informations personnelles concernant ces utilisateurs.

La présente invention est notamment particulièrement avantageuse lorsqu'un organisme tiers ne fournit un service que sur la base du croisement d'informations personnelles d'un utilisateur certifiées par une ou (avantageusement) plusieurs organisations certificatrices distinctes, ce qui amène habituellement l'utilisateur à révéler des informations personnelles, non nécessaires en elles-mêmes à l'obtention de ce service mais fournies conjointement avec les informations nécessaires à l'obtention de ce service dans les certificats, à cet organisme tiers.

A titre d'exemple, un premier certificat peut être délivré par une mairie sur la base d'un attribut d'un utilisateur prouvant qu'il habite une ville bien précise, parmi d'autres attributs personnels. Un deuxième certificat peut être délivré par une université sur la base d'un attribut de cet utilisateur prouvant qu'il est bien étudiant dans cette université, parmi d'autres attributs personnels comme son âge.

Avec la présente invention, l'utilisateur peut alors agréger ces deux certificats afin de requérir une réduction auprès d'un service de transport public qui n'accorde de telles réductions qu'aux habitants de cette ville précise qui sont étudiants. En utilisant le procédé d'accès anonyme de la présente invention, l'utilisateur peut alors obtenir cette réduction spécifique aux seuls étudiants de cette ville, sans avoir besoin de dévoiler d'autres informations personnelles.

Bien entendu, l'invention n'est pas limitée aux exemples de réalisation ci-dessus décrits et représentés, à partir desquels on pourra prévoir d'autres modes et d'autres formes de réalisation, sans pour autant sortir du cadre de l'invention.

La présente invention peut ainsi s'appliquer au cas où un seul attribut η¾ est certifié, ce qui correspond au cas où une entité certificatrice émet des certificats sur ce seul attribut nii. Un schéma simple et efficace est ainsi obtenu. Dans ce cas, l'entité certificatrice signe l'attribut η¾, qui peut se présenter sous la forme d'un document, lequel peut être en l'occurrence n'importe quelle suite de bits, courte ou longue.

La présente invention peut également s'appliquer au cas où plusieurs attributs m 1> ..., m l sont j certifiés, avec 1J>1. Dans ce cas, un document m à signer peut être séparé en plusieurs sous-documents m^..., !^ , ce qui permet de laisser la liberté à l'utilisateur de cacher certains sous-documents lorsqu'il montre ses accréditations, tout en lui interdisant de cacher d'autres sous-documents.

Par ailleurs, un mode de réalisation particulier de preuve de connaissance a été décrit dans le mode de réalisation illustré à la figure 3 en ce qui concerne la preuve de connaissance ΡοΚ σ du certificat agrégé a a envoyée à l'entité vérificatrice V lors de la phase d' authentification correspondant aux étapes 300 et 400.

Il est cependant évident que la présente invention ne se limite à ce seul mode de réalisation et que la preuve de connaissance ΡοΚ σ du certificat agrégé σ 3 envoyée à l'entité vérificatrice V peut consister en une autre forme de donnée publique construite à partir de ce certificat agrégé et permettant de prouver que l'entité utilisatrice U a la connaissance de ce certificat agrégé a a et que les certificats composant ce certificat agrégé ont bien été attribués à l'entité utilisatrice U par une ou plusieurs entité(s) certificatrice(s), sans pour autant dévoiler ces certificats eux-mêmes, ni le certificat agrégé, à l'entité vérificatrice V.