EP3903443A1 - Procédé et système de génération de clés pour un schéma de signatures anonymes - Google Patents

Procédé et système de génération de clés pour un schéma de signatures anonymes

Info

Publication number
EP3903443A1
EP3903443A1 EP19845598.2A EP19845598A EP3903443A1 EP 3903443 A1 EP3903443 A1 EP 3903443A1 EP 19845598 A EP19845598 A EP 19845598A EP 3903443 A1 EP3903443 A1 EP 3903443A1
Authority
EP
European Patent Office
Prior art keywords
entity
group
trace
signature
anonymous
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP19845598.2A
Other languages
German (de)
English (en)
Inventor
Jacques Traore
Nicolas DESMOULINS
Guillaume Odriosolo
Adam OUOROU
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
Orange SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orange SA filed Critical Orange SA
Publication of EP3903443A1 publication Critical patent/EP3903443A1/fr
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting

Definitions

  • the invention is situated in the context of cryptography and more precisely in that of group signature.
  • a group signature scheme allows a user to prove that he belongs to a group (for example, bidders, people who have subscribed to a service, etc.) without revealing his exact identity.
  • Group signatures have the particularity of being anonymous because it is not possible to identify the signatory.
  • Group signatures are said to be non-traceable because it cannot be determined whether two signatures were issued by the same person or by two separate people.
  • group public key The validity of a group signature can be verified by anyone using a public key characterizing the group called "group public key".
  • group public key a public key characterizing the group
  • a member To be part of the group, a member must first register with a group administration entity. During this registration phase, the future member obtains, blindly, a group private key which allows him to sign messages on behalf of the group. Only a trusted revocation authority, or revocation entity, has the power to revoke the anonymity of a group signature, thanks to a private key called "trap” that only it has. In practice, this hatch can in fact be shared between several revocation authorities; it is then necessary that they all cooperate to lift the anonymity of a signature. The group member is thus protected against improper lifting of anonymity.
  • group signature is described for example in the article by Dan Boneh, Xavier Boyen and Hovav Shacham: “Short Group Signatures. CRYPTO 2004: 41-55 ”.
  • Direct Anonymous For certain applications requiring the anonymity of users, such as voting or electronic petitions, it is preferable to implement a variant of group signatures, called direct anonymous certification (for DM, Direct Anonymous
  • DM anonymous direct certificates unlike group signatures, are, although anonymous, traceable: it is therefore possible to determine whether two DM signatures have been issued by the same person or by two separate persons. In the context of voting or an electronic petition, this traceability would ensure that an elector has voted only once or that the electronic petition has been signed by different petitioners.
  • the invention proposes an electronic signature solution which does not have the drawbacks of the solutions mentioned above.
  • the invention relates to a process for anonymous signature of a message, this process being implemented by an entity member of a group and comprising:
  • the invention relates to a device for anonymous signature of a message implemented by an entity member of a group and comprising:
  • the invention provides a cryptographic method of anonymous signatures in which the group signatures are traceable.
  • the anonymity of an anonymous signature generated by the members of the group in accordance with the scheme can be lifted by the revocation entities.
  • This cryptographic process is moreover more effective, in particular in terms of computation time, than the schemes of direct anonymous attestations DAA or group signatures of the state of the art.
  • the security of this anonymous signature scheme is also based on a so-called “non-interactive” security hypothesis considered to be more
  • the invention relates to a method for generating keys for an anonymous signature scheme, this method comprising:
  • each member entity being configured to blindly obtain a group private key, this private key being used by this member entity to generate anonymous signatures conforming to the diagram, these anonymous signatures comprising the trace.
  • “Obtain blindly” refers to the fact that the group administration entity does not know the group private key used by the member entity to sign its messages.
  • the invention relates to a key generation system for an anonymous signature scheme, this system comprising:
  • At least one revocation entity configured to calculate a pair of revocation keys comprising a public key and a private key, this private key being able to be used by the revocation entity to revoke the anonymity of an anonymous signature conforming to said scheme ;
  • a group administration entity configured to register at least one member entity with said group
  • the revocation entity being configured to calculate, from a public key of the pair of revocation keys, a trace generator, this trace generator being intended to be used by each member entity to generate a trace representative of this member entity, this trace being invariant with respect to the anonymous signatures generated by this member entity in accordance with said diagram;
  • each member entity being configured to blindly obtain a group private key, this private key being used by the member entity to generate anonymous signatures conforming to the diagram, these anonymous signatures comprising the trace.
  • the proposed key generation method comprises:
  • the trace generator is renewed periodically.
  • the trace generator is specific to a given service.
  • the service corresponds, for example, to a specific ballot.
  • the different steps of the key generation method and the voting method according to the invention are determined by instructions from computer programs.
  • the invention also relates to a computer program, on an information medium, this program comprising instructions adapted to the implementation of at least one method as mentioned above.
  • This program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other desirable form.
  • the invention also relates to an information medium readable by a computer, and comprising instructions of a computer program as mentioned above.
  • the information medium can be any entity or device capable of storing the program.
  • the support may include a storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or also a magnetic recording means, for example a hard disk.
  • the information medium can be a transmissible medium such as an electrical or optical signal, which can be routed via an electrical or optical cable, by radio or by other means.
  • the program according to the invention can in particular be downloaded from a network of the Internet type.
  • the information medium can be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the process in question.
  • FIG. 1 shows a key generation system and an anonymous signature device according to an embodiment of the invention
  • FIG. 2 shows in flowchart the main steps of a key generation method according to the invention
  • FIG. 3 shows in the form of a flowchart the main steps of a signature process according to the invention
  • FIG. 4 shows in flowchart the main steps of a signature verification method that can be used in the invention
  • FIG. 5 represents, in the form of a flowchart, the main steps of a method of lifting anonymity which can be used in the invention
  • FIG. 6 shows an electronic voting system according to an embodiment of the invention
  • FIG. 7 shows in flowchart the main steps of a key generation process in the voting system of Figure 6;
  • FIG. 8 shows in the form of a flowchart the main steps of a voting method according to the invention.
  • FIG. 9 shows in flowchart the main steps of a signature verification process that can be used in the voting system of Figure 6;
  • FIG. 10 shows, in the form of a flowchart, the main steps of an anonymity lifting process that can be used in the voting system of Figure 6;
  • FIG. 11 shows the hardware architecture of the devices used in the invention, in a particular embodiment.
  • p is a prime number; the groups G 1 G 2 and G T are cyclic groups of order p;
  • g, h denote two generators, chosen at random, of G ⁇
  • h is a generator, randomly chosen, of G 2 ;
  • e is a bilinear coupling of type 2 or 3, defined on the set Gi x G 2 towards the set
  • a bilinear coupling is an application defined on a set Gi x G 2 to a set G T where G lf G 2 and G T denote cyclic groups of order p.
  • This application checks the following properties:
  • the groups G lf G 2 and G T will be chosen so that there is no efficiently calculable isomorphism between Gi and G 2 .
  • Such couplings are known as “Type 3” couplings in the literature.
  • the recommended sizes of the parameters of a coupling of "Type 3" are the following: 256 bits for the prime number p as well as for the elements of G 1 512 for those of G 2 and 3072 for those of
  • the invention implements, at least in some of these aspects:
  • FIG. 1 represents an SGC key generation system for an anonymous signature scheme SigA 2 and an entity V, member of a group g in accordance with the invention. It also represents a DV verification device.
  • the member entity V t comprises a communication module COM and a device DSA for anonymous signature in accordance with the invention.
  • the group's administration entity £ L comprises a communication module COM, a cryptographic module MCR and a registration module ERG configured to register at least one member entity V in the group.
  • the DSA device of the 1 ⁇ 4 member entity includes a module
  • ERG registration system configured to register the member entity V with the group administration entity EL.
  • each revocation entity l j comprises an MCR cryptographic module configured to calculate a pair of revocation keys. , this pair comprising a public key P j and a private key can be used by the revocation entity to revoke the anonymity of an anonymous signature in accordance with the SigA 2 scheme.
  • the cryptographic module MCR of a revocation entity l j is configured to calculate, from private keys of the key pair of
  • This trace T t is invariant with respect to the anonymous signatures a L generated by the member entity in accordance with the SigA 2 scheme.
  • the cryptographic module MCR of each member entity V t is configured to obtain, blindly, a group private key SK G l .
  • the cryptographic module MCR of each member entity V is configured to generate message signatures, using the group private key, these signatures comprising the trace G,.
  • the DV verification device is configured to verify whether an anonymous signature conforms to the SigA 2 anonymous signature scheme. It implements a verification algorithm which takes an msg message, a signature and the public key of the PK G group as input. It determines whether the signature is valid or not.
  • the verification device DV comprises communication means COM and a cryptographic module MCR.
  • the cryptographic module MCR of the verification device DV is configured to determine that the anonymous signature s ⁇ of an msg message is valid if:
  • the cryptographic module MCR of a revocation entity l j is configured to implement the method of lifting the anonymity of a signature described later with reference to FIG. 5.
  • FIG. 2 represents in the form of a flowchart the main steps of a method for generating group keys according to the invention.
  • the cryptographic module MCR of the administration entity RL randomly draws three values, co, co, c ! of Z p .
  • the cryptographic module MCR of the administrative entity £ L constitutes a pair of keys in which:
  • the private key SK £ M consists of the three values (x 0 , 3 ⁇ 0 , 3 ⁇ 4) which have been drawn at random;
  • the cryptographic module MCR of the administration entity RL generates a proof RP 2 with zero disclosure of knowledge to prove that it knows the key private associated with its public key.
  • RP 2 PoKfoq
  • This random value constitutes a private key of the revocation entity K j to lift the anonymity of a signature.
  • the cryptographic modules MCR of the revocation entities K j calculate in turn a public key P j associated with this private key x K ] . More specifically, in the embodiment described here:
  • the private key associated with the group public key is
  • each member entity V has a unique identifier ID V. as well as a pair of private, public keys (SK ⁇ PK,), of a digital signature algorithm, the public key PK, having has been certified by a recognized certification entity, for example by the RL administration entity.
  • digital signature algorithms that can be used for this purpose are: RSA, DSA, ECDSA, ...
  • the member entity V interacts with the administrative entity £ L.
  • the group private key SK ⁇ is obtained by the member entity from its private key c ⁇ i known only to it.
  • the cryptographic module MCR of the administration entity £ L verifies that Ci 1 1 and that the signature s n . and that the proof RP ⁇ are both valid.
  • the cryptographic module MCR of the administration entity EL transmits £, 11, 11 'and the proof RP 3 to the member entity Vj.
  • the member entity transmits the signature Sig v . to the administrative entity EL.
  • the administration entity £ L verifies that the signature Sig v . is valid, and if so, transmits x 'to the member entity V t .
  • the administrative entity EL maintains a REG register containing for each 1 ⁇ 4 member entity of the group the following values:
  • the trace generator P t is renewed periodically (every hour, every day, at the beginning of the month, etc.). It is sufficient for this that the revocation entities renew their private key and recalculate according to the generation method described above the corresponding trace generator P t .
  • the trace generator P t is specific to a given service. Typically a trace generator P t can be generated for a specific election. For a new poll, the revocation entities must calculate new private keys x ' K ] to deduce a new trace generator P' t .
  • FIG. 3 represents in the form of a flowchart, the main steps of a signature method according to the invention. This signature process uses the SigA 2 anonymous signature scheme. This diagram uses an algorithm which from a message msg, the public group key PK G and the private group key SK ⁇ of a member entity, produces a signature q of the message msg.
  • This trace 7 ⁇ calculated from the trace generator P t and from the element s, from the group private key of the member entity V t does not depend on the message msg. In other words, trace 7 ⁇ constitutes an invariant of the signatures issued by the member entity.
  • the proof PIT is the pair (c, r) in which:
  • z is a random value of Z p drawn by the member entity V ⁇ ;
  • the cryptographic module MCR of the member entity V t generates the anonymous signature q of the message msg, this being made up of the following five elements: (w, w ', q, 7 ⁇ , Pn ' j ). It includes the trace 7 ⁇ which makes it possible to trace all the signatures issued by the member entity V ,.
  • FIG. 4 represents in the form of a flowchart the main steps of a method for verifying an anonymous signature which can be used in the invention.
  • This method is implemented by the verification device DV of FIG. 1. It implements a verification algorithm which takes as input a message msg, a signature q and the public key of the group PK G. It determines whether the signature q is valid or not.
  • the verification device considers that the anonymous signature q of a message msg is valid if:
  • This process can only be implemented by the revocation entities Jl j . It uses an algorithm which takes as input an msg message, a signature on the public key of the PK G group and the private keys xh of the revocation authorities and returns ID V. the identity of a member entity V as well as proof that V is indeed the author of this signature s ,.
  • each of the revocation entities Jl j obtains the anonymous signature s, of a message msg.
  • the SigA 2 anonymous signature scheme can in particular be used to implement an electronic voting solution.
  • FIG. 6 shows an SVE2 electronic voting system according to the invention.
  • This system comprises a key generation SGC system for an anonymous signature scheme SigA 2 and an entity V t member of a group g in accordance with the invention. It also includes a DV verification device.
  • the group member entities are voter entities.
  • the SGC key generation system comprises a registration entity L and an organizing entity O.
  • Each acts both as a group administration entity and as a group revocation entity. It is understood that this is an illustrative example here and that in other examples the distribution of roles assigned to the different entities may be different.
  • the recording entity L and the organizing entity O each comprise a communication module COM and a cryptographic module MCR.
  • the registration entity L and the organizing entity O also each include an ERG registration module configured to register at least one voter entity in the group.
  • an elector entity registers both with the registration entity L and with the organizing entity O.
  • This embodiment makes it possible to distribute the role of group administrator between two entities so as to prevent a single entity from being able to create false voter entities.
  • the voter entity V t comprises a communication module COM and an anonymous signature device DSA according to the invention.
  • the voter entity DSA device includes an ERG registration module configured to register the voter entity V with the registration entity L.
  • the cryptographic module MCR of each revocation entity L, O is configured to calculate a pair of revocation keys, the private key of which can be used to revoke the anonymity of an anonymous signature conforming to said diagram.
  • SigA 2 and to calculate, from a public key of the revocation key pair, a trace generator.
  • the DSA device of each voter entity includes an MCR cryptographic module configured to generate a trace using this trace generator, this trace G, being invariant with respect to the anonymous signatures s ⁇ generated by the voter entity in accordance with the SigA 2 diagram.
  • the cryptographic module MCR of each voter entity V t is configured to obtain, blindly, a group private key SK G l , denoted s, below.
  • the cryptographic module MCR of each voter entity v * is configured to generate signatures s, of messages, using the group private key, these signatures comprising the trace G,.
  • the DV verification device is configured to verify whether an anonymous signature conforms to the SigA 2 anonymous signature scheme. It implements a verification algorithm which takes an msg message, a signature and the public key of the PK G group as input. It determines whether the signature s ⁇ is valid or not.
  • the verification device DV comprises communication means COM and a cryptographic module MCR.
  • the MCR cryptographic module is configured to determine that the anonymous signature s of an msg message is valid if:
  • the cryptographic module MCR of a revocation entity L, O is configured to implement the method of lifting the anonymity of a signature described later with reference to FIG. 10.
  • FIG. 7 represents in the form of a flowchart a method for generating the keys of the voter entities in accordance with this embodiment of the invention.
  • the cryptographic module MCR of the organizing entity O randomly draws four values x, x%, x%, x from Z p .
  • x is a private key used by the organizing entity O to lift the anonymity of a voter entity.
  • the cryptographic module MCR of the organizing entity O calculates
  • the cryptographic module MCR of the organizing entity O constitutes a pair of keys in which:
  • the SKQ private key is made up of the four values ( c ⁇ , co, co, c?) which have been drawn at random;
  • PKQ the PKQ public key
  • Registration entity A proceeds in the same way.
  • the cryptographic module MCR of the recording entity A randomly draws four values c ⁇ , c ⁇ , co, c ⁇ from Z p .
  • the private key SK ⁇ consists of the four values which were drawn randomly.
  • the cryptographic module MCR of the recording entity A generates proof VAPn 2 that it knows the private key associated with its public key. This proof is defined as follows:
  • a step VF6 when all the revocation entities, namely the registration entity A and the organizing entity O in this embodiment, have calculated their public key, they calculate the public key of the group PK G. It includes the trace generator P t c A c O
  • the private key associated with the group public key is
  • each voter entity has a unique identifier ID V. as well as a pair of keys, private and public (SK ⁇ PK,), of a digital signature algorithm, the public key PK, having been certified beforehand by a recognized certification authority, for example by the registration entity A and by the organizing entity O.
  • SK ⁇ PK private and public
  • the voter entity Vj then transmits these three values C,, VEPlli, s ⁇ ? Tr to the administration entity L and to the organizing entity O.
  • the administration entity L and the organizing entity O can use known techniques of distributed cryptography.
  • the administrative entity L (respectively the organizing entity O) randomly generates a value x ' A of Z p (respectively x' ° of Z p ) and calculates
  • the cryptographic module MCR of the administration entity L or of the organizing entity O transmits E, u, u 'and the proof VEVW 3 to the voter entity V
  • these values are sent by the administration entity cA and by the organizing entity O and the voter entity Vj verifies that the values received from the two entities L and O are identical.
  • the administration entity L and the organizing entity O verify that the signature Sig v. is valid, and if this is the case, the administration entity L transmits x 'to the voter entity Vj.
  • the administration entity L maintains an unrepresented REG register containing for each member entity Vj of the group the following values:
  • FIG. 8 represents in the form of a flowchart the main steps of a voting method in accordance with this embodiment of the invention.
  • the message can be formed by the vote of the voter entity, possibly in encrypted form, the encryption being able to be calculated using a public key whose private key would be shared between several configured assessor entities to count the votes.
  • This trace 7 ⁇ calculated from the trace generator P t and from the element s, from the group private key of the voter entity V t does not depend on the message msg. In other words, trace 7 ⁇ therefore constitutes an invariant of the signatures issued by the voter entity.
  • the proof VEPn ′ is the pair (c, r) in which:
  • z is a random value of Z p drawn by the voter entity V ⁇ ;
  • FIG. 9 represents in the form of a flowchart the main steps of a method for verifying an anonymous signature in accordance with the invention.
  • step VK4 it considers that the anonymous signature s * of an msg message is valid if:
  • VEPn ' j is valid
  • This process is implemented by the registration entity A and the organizing entity O.
  • each of these entities A and O obtains the signature a ,.
  • A calculates T 2 and prove (VAPn
  • the organizing entity O transmits the proof VOP3 ⁇ 4 to the recording entity A.
  • the recording entity A finds in its register REG the corresponding entry
  • the recording entity A returns the identifier ID V. , the proofs VOPr3 ⁇ 4 thus and VAPn
  • as Ci. CL.x ', PK, and Sig Vi . If all the proofs are valid, let C ', C, ⁇ xf and let the signature Sig v. is valid then the registration entity A considers that the voter entity whose identifier is ID V. is indeed the author of the signature s, of the message msg.
  • the administration entity SA, the revocation entities ⁇ j , the organizing entity O, the registration entity A, the verification device DV the member or voter entities V x have the hardware architecture of an ORD computer as shown schematically in Figure 11.
  • the computer ORD notably comprises a processor 7, a read-only memory 8, a random access memory 9, a non-volatile memory 10 and means of communication COM.
  • These COM communication means allow the different entities to communicate with each other in particular. They can include one or more communication interfaces on one or more telecommunications networks (fixed or mobile, wired or wireless, etc.).
  • the read-only memory 8 of the computer ORD constitutes a recording medium in accordance with the invention, readable by the processor and on which is recorded a computer program in accordance with the invention, generally designated here by PROG, comprising instructions for the execution of one of the methods which are the subject of the invention. So :
  • the program PROG is a program PROG1 comprising instructions for the execution of steps E2 to E12 of a key generation method according to the invention, and of steps Z8 to Z10 a process for lifting anonymity in accordance with the invention,
  • the PROG program is a PROG1 program comprising instructions for the execution of steps F2 to F6 of a key generation method according to the invention, and of steps Z2 to Z6 of a method of lifting anonymity according to the invention,
  • the program PROG is a program PROG2 comprising instructions for the execution of steps VE2 to VE12 of a key generation method according to the invention and of steps VZ2 to VZ6 of a method for lifting anonymity in accordance with the invention,
  • the program PROG is a program PROG3, comprising instructions for the execution of steps VE2 to VE12 of a key generation method according to the invention and of steps VZ2 to VZ10 d '' a process for lifting anonymity in accordance with the invention,
  • the PROG program is a PROG4 program
  • the PROG program is a PROG5 program, comprising instructions for the execution of steps G2 to G8 or VG2 to VG8 of the key generation method according to the invention, of steps H2 to H 10 or VH2 at VH 10 of a signature process in accordance with the invention.
  • Each of these programs defines, in an equivalent manner, functional modules of the device or of the module on which it is installed, capable of implementing the steps of the process concerned and based on the hardware elements 7-10 of the computer ORD .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

Le procédé de signature anonyme d'un message (msg) mis en oeuvre par une entité membre (V i) d'un groupe comporte : - une étape d'enregistrement dudit membre (V i ) auprès d'une entité (A) d'administration du groupe; - une étape (H8) de génération, par ladite entité membre (V i), d'une trace (Τi), à partir d'un générateur de trace (Pt) calculé par au moins une entité de révocation (52;) et compris dans une clé publique (PKG) dudit groupe, ladite trace (Τi)) étant invariante par rapport aux signatures anonymes (σi) générées par ladite entité membre conformément audit schéma; - une étape d'obtention, de manière aveugle, par ladite entité membre (V,), d'une clé privée (SKi G) de groupe; - une étape (H10) de génération d'au moins une signature (σi), conformément à un schéma de signatures anonymes (SigA2) en utilisant ladite clé privée, ladite signature comportant ladite trace (Τi).

Description

Procédé et système de génération de clés pour un schéma de signatures anonymes Technique antérieure
L'invention se situe dans le contexte de la cryptographie et plus précisément dans celui de la signature de groupe.
On rappelle qu'un schéma de signature de groupe permet à un utilisateur de prouver son appartenance à un groupe (par exemple d'enchérisseurs, de personnes ayant souscrit à un service, etc.) sans révéler son identité exacte. Les signatures de groupe ont la particularité d'être anonymes car il n'est pas possible d'identifier le signataire. Les signatures de groupe sont dites non traçables car on ne peut pas déterminer si deux signatures ont été émises par la même personne ou par deux personnes distinctes.
La validité d'une signature de groupe peut être vérifiée par quiconque grâce à une clé publique caractérisant le groupe appelée "clé publique de groupe". Pour faire partie du groupe, un membre doit au préalable s'enregistrer auprès d'une entité d'administration du groupe. Lors de cette phase d'enregistrement, le futur membre obtient, de manière aveugle, une clé privée de groupe qui lui permet de signer des messages au nom du groupe. Seule une autorité de confiance de révocation, ou entité de révocation, a le pouvoir de révoquer l'anonymat d'une signature de groupe, grâce à une clé privée appelée « trappe » qu'elle seule possède. En pratique, cette trappe peut en fait être partagée entre plusieurs autorités de révocation ; il est alors nécessaire qu'elles coopèrent toutes pour lever l'anonymat d'une signature. Le membre du groupe se voit ainsi protéger contre des levées d'anonymat abusives.
Le concept de signature de groupe est décrit par exemple dans l'article de Dan Boneh, Xavier Boyen et Hovav Shacham : « Short Group Signatures. CRYPTO 2004: 41-55 ».
Pour certaines applications nécessitant de préserver l'anonymat des utilisateurs, comme le vote ou la pétition électronique, il est préférable de mettre en oeuvre une variante des signatures de groupe, appelée attestation anonyme directe (pour DM, Direct Anonymous
Attestation en anglais). Le concept de DM est décrit par exemple dans l'article d'Ernie Brickell, Liqun Chen, et Jiangtao Li: « A New Direct Anonymous Attestation Scheme from Bilinear Maps. TRUST 2008: 166-178 ».
Les attestations anonymes directes anonymes DM, à la différence des signatures de groupe, sont, bien qu'anonymes, traçables : il est donc possible de déterminer si deux signatures DM ont été émises par la même personne ou par deux personnes distinctes. Dans le contexte du vote ou d'une pétition électronique, cette traçabilité permettrait de s'assurer qu'un électeur n'a voté qu'une seule fois ou que la pétition électronique a bien été signée par des pétitionnaires différents.
Malheureusement on ne connaît pas de solution pour lever l'anonymat d'une signature DM et donc identifier un signataire. Cela pose des problèmes pour certaines applications, comme le vote électronique, notamment dans les pays dans lesquels une liste d'émargement permettant d'identifier les électeurs ayant voté doit être accessible à tous les électeurs.
L'invention propose une solution de signature électronique qui ne présente pas les inconvénients des solutions mentionnées ci-dessus.
Obiet et résumé de l'invention
Ainsi, et selon un premier aspect, l'invention vise un procédé de signature anonyme d'un message, ce procédé étant mis en oeuvre par une entité membre d'un groupe et comportant :
- une étape d'enregistrement de ce membre auprès d'une entité d'administration du groupe ;
- une étape de génération d'une trace à partir d'un générateur de trace calculé par au moins une entité de révocation et compris dans une clé publique du groupe, cette trace étant invariante par rapport aux signatures anonymes générées par cette entité membre conformément au schéma ;
- une étape d'obtention, de manière aveugle d'une clé privée de groupe ;
- une étape de génération d'au moins une signature conformément à un schéma de signatures anonymes en utilisant la clé privée de groupe, la signature comportant la trace.
Corrélativement, l'invention vise un dispositif de signature anonyme d'un message mis en oeuvre par une entité membre d'un groupe et comportant :
- un module d'enregistrement de cette entité membre auprès d'une entité d'administration du groupe ;
- un module de génération d'une trace à partir d'un générateur de trace calculé par au moins une entité de révocation et compris dans une clé publique du groupe, cette trace étant invariante par rapport aux signatures anonymes générées par cette entité membre conformément au schéma ;
- un module d'obtention, de manière aveugle, d'une clé privée de groupe ;
- une étape de génération d'au moins une signature en utilisant cette clé privée de groupe, cette signature comportant la trace.
L'invention propose un procédé cryptographique de signatures anonymes dans lequel les signatures de groupe sont traçables.
De façon avantageuse, et contrairement aux attestations anonymes directes, l'anonymat d'une signature anonyme générée par les membres du groupe conformément au schéma peut être levé par les entités de révocation.
Ce procédé cryptographique s'avère par ailleurs plus efficace, en particulier en termes de temps de calcul, que les schémas d'attestations anonymes directes DAA ou de signatures de groupe de l'état de la technique. La sécurité de ce schéma de signatures anonymes s'appuie par ailleurs sur une hypothèse de sécurité dite « non-interactive » considérée comme plus
« standard » par la communauté cryptographique qu'une hypothèse de sécurité dite « interactive » (par exemple faisant appel à un oracle) sur lesquelles s'appuient les schémas d'attestations anonymes directes les plus efficaces de l'état de la technique. Un tel schéma de signatures anonymes offre ainsi une meilleure sécurité.
Selon un deuxième aspect, l'invention concerne un procédé de génération de clés pour un schéma de signatures anonymes, ce procédé comportant :
- une étape de calcul, par au moins une entité de révocation, d'une paire de clés de révocation comportant une clé publique et une clé privée, cette, clé privée pouvant être utilisée par cette entité de révocation pour révoquer l'anonymat d'une signature anonyme conforme audit schéma ;
- une étape d'enregistrement, par une entité d'administration d'un groupe, d'au moins une entité membre auprès du groupe ;
- une étape de calcul, à partir de la clé publique de la paire de clé de révocation, d'un générateur de trace, ledit générateur de trace étant destiné à être utilisé par chaque entité membre enregistrée dans le groupe pour générer une trace représentative de cette entité membre et invariante par rapport aux signatures anonymes générées par cette entité membre conformément au schéma ;
- chaque entité membre étant configurée pour obtenir de façon aveugle une clé privée de groupe, cette clé privée étant utilisée par cette entité membre pour générer des signatures anonymes conformes au schéma, ces signatures anonymes comportant la trace. « Obtenir de façon aveugle » fait référence au fait que l'entité d'administration du groupe ne connaît pas la clé privée de groupe utilisée par l'entité membre pour signer ses messages.
Corrélativement, l'invention concerne un système de génération de clés pour un schéma de signatures anonymes, ce système comportant :
- au moins une entité de révocation configurée pour calculer une paire de clés de révocation comprenant une clé publique et une clé privée, cette clé privée pouvant être utilisée par l'entité de révocation pour révoquer l'anonymat d'une signature anonyme conforme audit schéma ;
- une entité d'administration de groupe configurée pour enregistrer au moins une entité membre auprès dudit groupe ;
- l'entité de révocation étant configurée pour calculer, à partir d'une clé publique de la paire de clés de révocation, un générateur de trace, ce générateur de trace étant destiné à être utilisé par chaque entité membre pour générer une trace représentative de cette entité membre, cette trace étant invariante par rapport aux signatures anonymes générées par cette entité membre conformément audit schéma ;
- chaque entité membre étant configurée pour obtenir de façon aveugle une clé privée de groupe, cette clé privée étant utilisée par l'entité membre pour générer des signatures anonymes conformes au schéma, ces signatures anonymes comportant la trace.
Dans un mode particulier de réalisation, le procédé de génération de clés proposé comporte :
- une étape de génération d'une paire de clés du schéma pour l'entité d'administration du groupe ; - la clé publique de la paire de clé de révocation étant calculée à partir d'une clé publique de cette paire de clés.
Dans un mode particulier de réalisation, le générateur de trace est renouvelé périodiquement.
Dans un mode particulier de réalisation, le générateur de trace est spécifique à un service donné. Le service correspond par exemple à un scrutin spécifique.
En effet, de par ces fonctionnalités, le procédé de génération de clés proposé peut s'appliquer au vote électronique. Il offre en effet un schéma de signature :
- anonyme ce qui permet d'assurer le secret du vote ;
- traçable ce qui permet de s'assurer qu'un électeur ne vote pas deux fois ;
- dans lequel les anonymats des signatures sont révocables, permettant ainsi à des entités de révocation, en cas de recours par exemple, d'établir une liste d'émargement du scrutin.
Dans un mode particulier de réalisation, les différentes étapes du procédé de génération de clés et du procédé de vote selon l'invention sont déterminées par des instructions de programmes d'ordinateurs.
En conséquence, l'invention vise aussi un programme d'ordinateur, sur un support d'informations, ce programme comportant des instructions adaptées à la mise en oeuvre d'au moins un procédé tel que mentionné ci-dessus.
Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable.
L'invention vise aussi un support d'informations lisible par un ordinateur, et comportant des instructions d'un programme d'ordinateur tel que mentionné ci-dessus.
Le 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 un disque dur.
D'autre part, le support d'informations peut ê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.
Brève description des dessins D'autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins annexés qui en illustrent un exemple de réalisation dépourvu de tout caractère limitatif. Sur les figures :
- la figure 1 représente un système de génération de clés et un dispositif de signature anonyme conformes à un mode de réalisation de l'invention ;
- la figure 2 représente sous forme d'organigramme les principales étapes d'un procédé de génération de clés conforme à l'invention ;
- la figure 3 représente sous forme d'organigramme les principales étapes d'un procédé de signature conforme à l'invention ;
- la figure 4 représente sous forme d'organigramme les principales étapes d'un procédé de vérification d'une signature pouvant être utilisé dans l'invention ;
- la figure 5 représente, sous forme d'organigramme, les principales étapes d'un procédé de levée d'anonymat pouvant être utilisé dans l'invention ;
- la figure 6 représente un système de vote électronique conforme à un mode de réalisation de l'invention ;
- la figure 7 représente sous forme d'organigramme les principales étapes d'un procédé de génération de clés dans le système de vote de la figure 6 ;
- la figure 8 représente sous forme d'organigramme les principales étapes d'un procédé de vote conforme à l'invention ;
- la figure 9 représente sous forme d'organigramme les principales étapes d'un procédé de vérification d'une signature pouvant être utilisé dans le système de vote de la figure 6 ;
- la figure 10 représente, sous forme d'organigramme, les principales étapes d'un procédé de levée d'anonymat pouvant être utilisé dans le système de vote de la figure 6 ;
- la figure 11 représente l'architecture matérielle des dispositifs utilisés dans l'invention, dans un mode particulier de réalisation.
Description détaillée des modes de réalisation
Dans la suite de ce document, nous utiliserons la notation RoK^, a2,..., ah : Jl(alr a2,..., ah)) pour désigner une preuve de connaissance à divulgation nulle de connaissance d'éléments al f a2,..., an satisfaisant la relation R. Ainsi une preuve de connaissance des deux facteurs premiers d'un module RSA (du nom des inventeurs, « Rivest-Shamir-Adleman ») public N serait notée :
Dans la description à venir,
p est un nombre premier ; les groupes G1 G2 et GT sont des groupes cycliques d'ordre p ;
g, h désignent deux générateurs, choisis aléatoirement, de G^
h est un générateur, choisi aléatoirement, de G2;
e est un couplage bilinéaire de type 2 ou 3, défini sur l'ensemble Gi x G2 vers l'ensemble
Gj.
On rappelle qu'un couplage bilinéaire, noté e, est une application définie sur un ensemble Gi x G2 vers un ensemble GT où Glf G2 et GT désignent des groupes cycliques d'ordre p. Cette application e vérifie les propriétés suivantes :
- Bilinéarité :
- Non dégénérée : Pour g± ¹ lGl et g2 ¹ lG2, e(g1; g2) ¹ 1Gt ., dans lequel lGl et lG2 désignent respectivement l'élément neutre des groupes Glf G2.
- Calculable : V gi e Glf V g2 e G2, il existe un algorithme efficace pour calculer e gi, g2) ·
En pratique, les groupes Glf G2 et GT seront choisis de telle sorte qu'il n'existe pas d'isomorphisme calculable efficacement entre Gi et G2. De tels couplages sont connus sous le nom de couplages de « Type 3 » dans la littérature. En pratique, et pour un niveau de sécurité de 128 bits, les tailles recommandées des paramètres d'un couplage de « Type 3 » sont les suivantes : 256 bits pour le nombre premier p ainsi que pour les éléments de G1 512 pour ceux de G2 et 3072 pour ceux de
Gy.
La sécurité du schéma repose en partie sur l'hypothèse que les problèmes ci-dessous sont difficiles. En d'autres termes, si un attaquant est en mesure de mettre en défaut la sécurité du schéma cryptographique, alors il est également à même de résoudre ces problèmes pourtant réputés « difficiles ».
Problème DDH. Soit G un groupe cyclique d'ordre premier p. Étant donné un générateur g e G, deux éléments quelconques ga, gb e G et un candidat X e G, le problème Diffie-Hellman décisionnel (DDH) consiste à déterminer si X = gab ou non.
Dans le cas des schémas fondés sur des couplages bilinéaires, des problèmes difficiles spécifiques existent. Pour les couplages utilisés dans l'invention, les inventeurs font l'hypothèse que le problème DDH est difficile dans les groupes Gx et G2. Cette hypothèse est connue sous le nom d'hypothèse de Diffie-Hellman symétrique externe (SXDH).
Pour le procédé selon l'invention, il peut être démontré que si un tiers (ne disposant pas des clés des autorités de révocation) arrive à identifier le signataire de n'importe quelle signature anonyme alors c'est qu'il est également en mesure de résoudre le problème SXDH.
Problème a-MSDH. Soit (p. G^ G2, GT, e) un environnement bilinéaire de « Type 3 » et g
(respectivement g) un générateur de Gx (respectivement de G2). Étant donné {(gx‘ , gx‘)q ainsi que
l ) i=0
(ga, ga, gax) où a et x sont deux éléments quelconques de Z* , le problème q-MSDH consiste à i a
trouver un quadruplet (w, R, hx+«, hp(x)) où h e G^, P est un polynôme de degré au maximum q et w un élément de Zp tel que les polynômes P(X) et (X + w) sont premiers entre eux.
Il peut être démontré que si un tiers réussit à « forger » des signatures du schéma de signatures anonymes selon l'invention, alors c'est qu'il est également en mesure de résoudre le problème q-MSDH.
Dans le mode de réalisation décrit ici, l'invention met en oeuvre, au moins dans certains de ces aspects :
- une ou plusieurs entités EL d'administration d'un groupe ;
- des autorités de révocation {Æj}-=1 avec (t > 1) ;
- des entités membres du groupe. Q désigne le groupe des n entités membres.
La figure 1 représente un système SGC de génération de clés pour un schéma de signatures anonymes SigA2 et une entité V, membre d'un groupe g conformes à l'invention. Elle représente en outre un dispositif de vérification DV.
L'entité membre Vt comporte un module de communication COM et un dispositif DSA de signature anonyme conforme à l'invention.
Le système SGC de génération de clés comporte une entité EL d'administration du groupe, et des autorités de révocation {Æj}-=1 avec (t > 1) .
L'entité d'administration £L du groupe comporte un module de communication COM, un module cryptographique MCR et un module d'enregistrement ERG configuré pour enregistrer au moins une entité membre V dans le groupe.
A cet effet, le dispositif DSA de l'entité membre ¼ comporte un module
d'enregistrement ERG configuré pour enregistrer l'entité membre V auprès de l'entité EL d'administration du groupe.
Dans le mode de réalisation décrit ici, chaque entité de révocation lj comporte un module cryptographique MCR configuré pour calculer une paire de clés de révocation , cette paire comprenant une clé publique Pj et une clé privée pouvant être utilisée par l'entité de révocation pour révoquer l'anonymat d'une signature anonyme conforme audit schéma SigA2.
Dans le mode de réalisation décrit ici, le module cryptographique MCR d'une entité de révocation lj est configuré pour calculer, à partir des clés privées de la paire de clés de
c i
révocation, un générateur de trace Pt = X1 1=1 x , où X1 désigne un paramètre public produit par le système de génération de clés SGC.
Dans le mode de réalisation décrit ici, le dispositif DSA de chaque entité membre comporte un module cryptographique MCR configuré pour générer une trace Tt = Pt Si représentant l'entité membre Vt en utilisant ce générateur de trace à partir de la clé privée de l'entité membre Vj. Cette trace Tt est invariante par rapport aux signatures anonymes aL générées par l'entité membre conformément au schéma SigA2. Dans le mode de réalisation décrit ici, le module cryptographique MCR de chaque entité membre Vt est configuré pour obtenir, de manière aveugle, une clé privée SKG l de groupe.
Dans le mode de réalisation décrit ici, le module cryptographique MCR de chaque entité membre V, est configuré pour générer des signatures de messages, en utilisant la clé privée de groupe, ces signatures comportant la trace G, .
Le dispositif de vérification DV est configuré pour vérifier si une signature anonyme est conforme au schéma de signatures anonymes SigA2. Il met en oeuvre un algorithme de vérification qui prend en entrée un message msg, une signature et la clé publique du groupe PKG . Il détermine si la signature est valide ou non.
Dans le mode de réalisation décrit ici, le dispositif de vérification DV comporte des moyens de communication COM et un module cryptographique MCR.
Le module de communication COM du dispositif de vérification DV est configuré pour obtenir une signature anonyme s; telle que s; = (w, w', c1 T, RP'; ).
Le module cryptographique MCR du dispositif de vérification DV est configuré pour déterminer que la signature anonyme sί d'un message msg est valide si :
w ¹ lGl
- T ¹ lGl;
RP'ί est valide ; et
e(w, 0) e(c1: 1) = e(w', S).
Dans le mode de réalisation décrit ici, le module cryptographique MCR d'une entité de révocation lj est configuré pour mettre en oeuvre le procédé de levée d'anonymat d'une signature décrit ultérieurement en référence à la figure 5.
La figure 2 représente sous forme d'organigramme les principales étapes d'un procédé de génération de clés du groupe conforme à l'invention.
Au cours d'une étape E2, le module cryptographique MCR de l'entité d'administration RL tire aléatoirement trois valeurs, co,co,c! de Zp.
Au cours d'une étape E4, le module cryptographique MCR de l'entité d'administration £L calcule
Au cours d'une étape E6, le module cryptographique MCR de l'entité d'administration £L constitue une paire de clés dans laquelle :
la clé privée SK£M est constituée des trois valeurs (x0 , 3ë0 , ¾ ) qui ont été tirées aléatoirement ; et
la clé publique RK£L est constituée des éléments calculés à l'étape E4: RKL =
Au cours d'une étape E8, le module cryptographique MCR de l'entité d'administration RL génère une preuve RP2 à divulgation nulle de connaissance pour prouver qu'il connaît la clé privée associée à sa clé publique. RP2 = PoKfoq, a2, a3 = C = gaih A X, = h A X0 = h A Xi = h ).
Au cours d'une étape F2, le module cryptographique MCR de chacune des entités de révocation {Æ7}J=1 tire aléatoirement une valeur xJ li de Zp. Cette valeur aléatoire constitue une clé privée de l'entité de révocation Kj pour lever l'anonymat d'une signature.
Au cours d'une étape F4, les modules cryptographiques MCR des entités de révocation Kj calculent tour à tour une clé publique Pj associée à cette clé privée xK ] . Plus précisément, dans le mode de réalisation décrit ici :
l'entité de révocation Jir calcule P1 = et prouve qu'elle connaît la clé privée associée à sa clé publique, autrement dit le logarithme discret de P dans la base X .
l'entité de révocation H2 calcule P2 = et prouve qu'elle connaît la clé privée associée à sa clé publique, autrement dit le logarithme discret de P2 dans la base P .
l'entité de révocation lj, pour t ³ j ³ 2, calcule Pj = Pj-^ et prouve qu'elle connaît la clé privée associée à sa clé publique, autrement dit le logarithme discret de Pj dans la base 3-1 ·
Au cours d'une étape F6, lorsque toutes les entités de révocation ont calculé leur clé publique Ps, le module cryptographique MCR de l'entité de révocation Kt constitue la clé publique du groupe PKG = (CXo, X X0 , X Pt). Elle comporte le générateur de trace Pt = X1 1=1 x obtenu à partir des clés privées de chacune des entités de révocation Kj . La clé privée associée à la clé publique de groupe est
Dans le mode de réalisation décrit ici, chaque entité membre V possède un identifiant unique IDV. ainsi qu'une paire de clés privée, publique (SK^ PK,), d'un algorithme de signature numérique, la clé publique PK, ayant été certifiée par une entité de certification reconnue, par exemple par l'entité d'administration RL . Des exemples d'algorithmes de signature numérique pouvant être utilisés à cet effet sont : RSA, DSA, ECDSA,...
Pour obtenir sa clé privée de groupe, l'entité membre V, interagit avec l'entité d'administration £L. Au cours d'une étape G2, le module cryptographique MCR de l'entité membre P, tire aléatoirement une valeur x, e Zp et calcule = X^‘. Il est à noter que la clé privée de groupe SK^ est obtenue par l'entité membre à partir de sa clé privée cίi connue d'elle seule.
Il génère ensuite une preuve RP, à divulgation nulle de connaissance qu'il connaît x, le logarithme discret de C, en base X1 : RP, = PoKfo^ : = X"1). L'exemple d'une telle preuve est fourni dans le document Claus-Peter Schnorr, « Efficient Identification and Signature for Smart Cards », Theory and Application of Cryptology, Springer, 1989. Au cours d'une étape G4, le module cryptographique de l'entité membre Vj génère une signature sn sur Ci : sn = SignSK.{Ci) où SK; désigne la clé privée de Vj. L'entité membre Vi.transmet ensuite ces trois valeurs Ci ,RPί, sn., à l'entité d'administration £L .
Au cours d'une étape E10, le module cryptographique MCR de l'entité d'administration £L vérifie que Ci ¹ 1 et que la signature sn. et que la preuve RPί sont toutes les deux valides.
Si c'est le cas, au cours d'une étape E12, le module cryptographique MCR de l'entité d'administration EL génère deux valeurs aléatoires b et x! de Zp et calcule E = X ' ainsi qu'une paire (u, u’) où u = hb et u' = ux°(Cj · X4 )b = u*o+(*;+*’)*i . n prouve que la paire (u, u’) a été calculée de manière conforme et notamment à partir des clés privées x0 et x1 :
Au cours d'une étape E14, le module cryptographique MCR de l'entité d'administration EL transmet £ , 11, 11’ et la preuve RP3 à l'entité membre Vj.
Au cours d'une étape G6, le module cryptographique de l'entité membre Vj vérifie que u ¹ 1 et que la preuve RP3 est valide. Si ces deux vérifications sont concluantes, le module cryptographique de l'entité membre Vj génère, au cours d'une étape G7 une signature Sigv. sur Ct et E : Sigv. = SignSK.(Ci, E ), où SKi désigne la clé privée de l'entité membre Vj.
Au cours d'une étape G75, l'entité membre transmet la signature Sigv. à l'entité d'administration EL.
Au cours d'une étape E13, l'entité d'administration £L vérifie que la signature Sigv. est valide, et si c'est le cas, transmet x' à l'entité membre Vt .
L'entité d'administration EL maintient un registre REG contenant pour chaque entité membre ¼ du groupe les valeurs suivantes :
désigne le nombre de membres dûment enregistrés.
Au cours d'une étape G8, l'entité membre Vj vérifie que E = X et constitue, si cette vérification est concluante sa clé privée de groupe SK^. Celle-ci est constituée par le triplet SK^ =
(sj,u, u’) OÙ s, = x, + x'mod p.
Dans un mode de réalisation particulier, le générateur de trace Pt est renouvelé périodiquement (toutes les heures, tous les jours, en début de mois, etc.). Il suffit pour cela que les entités de révocation renouvellent leur clé privée et recalculent selon le procédé de génération décrit précédemment le générateur de trace correspondant Pt.
Dans un mode de réalisation particulier, le générateur de trace Pt est spécifique à un service donné. Typiquement un générateur de trace Pt peut être généré pour une élection spécifique. Pour un nouveau scrutin, les entités de révocation doivent calculer de nouvelles clés privées x'K ] pour en déduire un nouveau générateur de trace P't. La figure 3 représente sous forme d'organigramme, les principales étapes d'un procédé de signature conforme à l'invention. Ce procédé de signature utilise le schéma de signatures anonymes SigA2. Ce schéma utilise un algorithme qui à partir d'un message msg, de la clé publique de groupe PKG et de la clé privée de groupe SK^ d'une entité membre, produit une signature q du message msg.
Conformément au schéma de signatures anonymes SigA2, pour signer anonymement un message quelconque msg e {0,1}* avec sa clé privée de groupe SKQ, le module cryptographique MCR de l'entité membre Vt tire aléatoirement, au cours d'une étape H2 une valeur l e Zv . Il calcule, à l'étape H4 la valeur w = ul et à l'étape H6 la valeur W = ( u ')*.
Au cours d'une étape H8, le module cryptographique MCR de l'entité membre V} calcule la valeur q = wSi et la trace 7} = Pt s‘. Cette trace 7} calculée à partir du générateur de trace Pt et de l'élément s, de la clé privée de groupe de l'entité membre Vt ne dépend pas du message msg. Autrement dit, la trace 7} constitue un invariant des signatures émises par l'entité membre .
L'entité membre V} prouve que le logarithme discret de q dans la base w est le même que le logarithme discret de 7} dans la base Pt : PIT, = PoKfoq: q = w"1 A ^ = Pt ai).
Dans le mode de réalisation de l'invention décrit ici, la preuve PIT, est la paire (c, r) dans laquelle :
z est une valeur aléatoire de Zp tirée par l'entité membre V} ;
- 7\ = wz ;
- T2 = Pt z ;
- c = yfC TY. T^ Pt. msg) ;
r = z— es, mod p
La preuve est valide
Au cours d'une étape H10, le module cryptographique MCR de l'entité membre Vt génère la signature anonyme q du message msg, celle-ci étant constituée des cinq éléments suivants : (w, w', q, 7}, Pn'j ). Elle comporte la trace 7} qui permet de tracer toutes les signatures émises par l'entité membre V,.
La figure 4 représente sous forme d'organigramme les principales étapes d'un procédé de vérification d'une signature anonyme pouvant être utilisé dans l'invention. Ce procédé est mis en oeuvre par le dispositif de vérification DV de la figure 1. Il met en oeuvre un algorithme de vérification qui prend en entrée un message msg, une signature q et la clé publique du groupe PKG . Il détermine si la signature q est valide ou non.
Au cours d'une étape K2, le dispositif de vérification d'une signature anonyme obtient une signature anonyme q = (w, w', ^ Pll'i ).
Au cours d'une étape K4, le dispositif de vérification considère que la signature anonyme q d'un message msg est valide si :
- w ¹ lGl ; - ¹ lGl;
RP'ί est valide ; et
e(w, 0) e(c1, 1) = e(w', S).
La figure 5 représente sous forme d'organigramme les principales étapes d'un procédé de levée d'anonymat d'une signature valide sί = (w.w'. , ^, n'j ) d'un message msg. Ce procédé ne peut être mis en oeuvre que par les entités de révocation Jlj . Il utilise un algorithme qui prend en entrée un message msg, une signature a la clé publique du groupe PKG et les clés privées x h des autorités de révocation et retourne IDV. l'identité d'un entité membre V ainsi qu'une preuve que V est bien l'auteur de cette signature s,.
Au cours d'une étape Z2, chacune des entités de révocation Jlj obtient la signature anonyme s, d'un message msg.
Au cours d'une étape Z4, les autorités de révocation {J j}j t = l calculent successivement, et prouve (PI¾) que le logarithme discret de dans la base Tt est égal au logarithme discret de X dans la base P .
Jl2 calcule T2 = et prouve (RP|) que le logarithme discret de T2 dans la base est égal au logarithme discret de P1 dans la base P2.
Jlj, pour t ³ j ³ 2, calcule Tj et prouve (PI¾) que le logarithme discret de Tj dans la base Tj-t est égal au logarithme discret de Pj-1 dans la base Pj.
Il est rappelé ici qu'il peut n'y avoir qu'une seule entité de révocation.
Si toutes les preuves produites par les autorités de révocation sont valides,
Au cours d'une étape Z6, les autorités de révocation transmettent Tt et l'ensemble des preuves {PI¾}-=1 à l'entité d'administration £L.
Au cours d'une étape Z8, l'entité d'administration £L retrouve dans son registre REG l'entrée correspondant
Au cours d'une étape Z10, l'entité d'administration £L fournit en retour à l'entité de révocation lj demanderesse de la levée d'anonymat, l'identifiant IDV., les preuves (Pn!¾}i=1 ainsi que Ci. C'j.x', PK, et SigVj . Si toutes les preuves {R¾}[=1 sont valides, que C', = C, · xf et que la signature Sigv. est valide alors l'entité d'administration RL considère que l'entité membre V, dont l'identifiant est IDV. est bien l'auteur de la signature s, du message msg.
Lorsque le service est un vote électronique, il est alors possible de constituer une liste d'émargement à partir des identifiants obtenus par la mise en oeuvre du procédé. Description d'un deuxième mode de réalisation de l'invention
Le schéma de signatures anonymes SigA2 peut en particulier être utilisé pour mettre en oeuvre une solution de vote électronique.
La figure 6 représente un système de vote électronique SVE2 conforme à l'invention. Ce système comporte un système SGC de génération de clés pour un schéma de signatures anonymes SigA2 et une entité Vt membre d'un groupe g conformes à l'invention. Il comporte en outre un dispositif de vérification DV.
Dans ce mode de réalisation, les entités membres de groupe sont des entités électeurs.
Dans ce mode de réalisation, le système SGC de génération de clés comporte une entité d'enregistrement L et une entité organisateur O. Chacune fait à la fois office d'entité d'administration du groupe et d'entité de révocation du groupe. Il est bien entendu qu'il s'agit ici d'un exemple illustratif et que dans d'autres exemples la distribution des rôles attribuée aux différentes entités peut être différente. L'entité d'enregistrement L et l'entité organisateur O comportent chacune un module de communication COM et un module cryptographique MCR. L'entité d'enregistrement L et l'entité organisateur O comportent en outre chacune un module d'enregistrement ERG configuré pour enregistrer au moins une entité électeur dans le groupe.
Ainsi, dans ce mode de réalisation de l'invention, une entité électeur s'enregistre à la fois auprès de l'entité d'enregistrement L et auprès de l'entité organisateur O. Ce mode de réalisation permet de répartir le rôle d'administrateur de groupe entre deux entités de sorte à éviter qu'une seule entité ne soit en mesure de créer de fausses entités électeurs.
L'entité électeur Vt comporte un module de communication COM et un dispositif DSA de signature anonyme conforme à l'invention.
Le dispositif DSA de l'entité électeur comporte un module d'enregistrement ERG configuré pour enregistrer l'entité électeur V auprès de l'entité d'enregistrement L.
Dans le mode de réalisation décrit ici, le module cryptographique MCR de chaque entité de révocation L, O est configuré pour calculer une paire de clés de révocation dont la clé privée peut être utilisée pour révoquer l'anonymat d'une signature anonyme conforme audit schéma SigA2 et pour calculer, à partir d'une clé publique de la paire de clés de révocation, un générateur de trace.
Le dispositif DSA de chaque entité électeur comporte un module cryptographique MCR configuré pour générer une trace utilisant ce générateur de trace, cette trace G, étant invariante par rapport aux signatures anonymes sί générées par l'entité électeur conformément au schéma SigA2.
Dans le mode de réalisation décrit ici, le module cryptographique MCR de chaque entité électeur Vt est configuré pour obtenir, de manière aveugle, une clé privée SKG l de groupe, notée s, par la suite. Dans le mode de réalisation décrit ici, le module cryptographique MCR de chaque entité électeur v* est configuré pour générer des signatures s, de messages, en utilisant la clé privée de groupe, ces signatures comportant la trace G, .
Le dispositif de vérification DV est configuré pour vérifier si une signature anonyme s, est conforme au schéma de signatures anonymes SigA2. Il met en oeuvre un algorithme de vérification qui prend en entrée un message msg, une signature et la clé publique du groupe PKG . Il détermine si la signature sί est valide ou non.
Dans le mode de réalisation décrit ici, le dispositif de vérification DV comporte des moyens de communication COM et un module cryptographique MCR.
Le module de communication COM est apte à obtenir une signature anonyme sί telle que CTj = (w, w', c^ T^ PITj ).
Le module cryptographique MCR est configuré pour déterminer que la signature anonyme s, d'un message msg est valide si :
- w ¹ lGl ;
- ¹ lGl;
RP'ί est valide ; et
Dans le mode de réalisation décrit ici, le module cryptographique MCR d'une entité de révocation L , O est configuré pour mettre en oeuvre le procédé de levée d'anonymat d'une signature décrit ultérieurement en référence à la figure 10.
La figure 7 représente sous forme d'organigramme un procédé de génération des clés des entités électeurs conforme à ce mode de réalisation de l'invention.
Au cours d'une étape VE2, le module cryptographique MCR de l'entité organisateur O tire aléatoirement quatre valeurs x ,x%,x%,x de Zp . Dans ce mode de réalisation, x est une clé privée utilisée par l'entité organisateur O pour lever l'anonymat d'une entité électeur.
Au cours d'une étape VE4, le module cryptographique MCR de l'entité organisateur O calcule
Au cours d'une étape VE6, le module cryptographique MCR de l'entité organisateur O constitue une paire de clés dans laquelle :
la clé privée SKQ est constituée des quatre valeurs (c^,co ,co ,c?) qui ont été tirées aléatoirement ; et
la clé publique PKQ est constituée des éléments calculés à l'étape VE4: PKQ =
(Cxg,X?,¾,X?, P0).
Au cours d'une étape VE8, le module cryptographique MCR de l'entité organisateur O génère une preuve VOPn2 qu'il connaît la clé privée associée à sa clé publique en générant une preuve à divulgation nulle de connaissance définie comme suit : nop2 = PoKfo^, a2, a3, a4: Cxo = g« h“ A Xf = h“3 A Xo = h“ A X? = h“3 A P0 = X“4).
L'entité d'enregistrement A procède de la même façon.
Au cours d'une étape VE2, le module cryptographique MCR de l'entité d'enregistrement A tire aléatoirement quatre valeurs c^, c^, co , c^ de Zp . Dans ce mode de réalisation, est une clé privée utilisée par l'entité d'enregistrement A pour lever l'anonymat d'une entité électeur.
Au cours d'une étape VE4, le module cryptographique MCR de l'entité d'enregistrement
A calcule
Au cours d'une étape VE6, le module cryptographique MCR de l'entité d'enregistrement A
constitue une paire de clés dans laquelle :
la clé privée SK ^ est constituée des quatre valeurs qui ont été tirées aléatoirement ; et
la clé publique SK^, PK^ est constituée des éléments calculés à l'étape VE4: PK0 =
Au cours d'une étape VE8, le module cryptographique MCR de l'entité d'enregistrement A génère une preuve VAPn2 qu'il connaît la clé privée associée à sa clé publique. Cette preuve est définie comme suit :
ha 3 L RL = A“4)
Au cours d'une étape VF4, les modules cryptographiques MCR de l'entité organisateur O et de l'entité d'enregistrement A, après avoir rendu publiques leurs clés publiques P0 et RL, calculent chacun de leur côté un générateur de trace Pt = X4 x ¾
Au cours d'une étape VF6, lorsque toutes les entités de révocation, à savoir l'entité d'enregistrement A et l'entité organisateur O dans ce mode de réalisation, ont calculé leur clé publique, elles calculent la clé publique du groupe PKG . Elle comporte le générateur de trace Pt cA cO
= X x obtenu à partir des clés privées de ces entités de révocation A et O.
xf, x0 = xf xf et x4 = xf xf .
La clé privée associée à la clé publique de groupe est
Dans ce mode de réalisation, chaque entité électeur possède un identifiant unique IDV. ainsi qu'une paire de clés, privée et publique (SK^ PK,), d'un algorithme de signature numérique , la clé publique PK, ayant été certifiée au préalable par une autorité de certification reconnue, par exemple par l'entité d'enregistrement A et par l'entité organisateur O.
Dans le mode de réalisation décrit ici, pour obtenir sa clé privée de groupe, l'entité électeur V, doit interagir avec l'entité d'administration A et avec l'entité organisateur O. Au cours d'une étape VG2, le module cryptographique MCR de l'entité membre Vj tire aléatoirement une valeur x, e Zp et calcule Ci = X‘. Il génère ensuite une preuve VEPlli à divulgation nulle de connaissance qu'il connaît Xi le logarithme discret de Ci en base Xx : VEPlli = RoK^ : Ci = x“4).
Au cours d'une étape VG4, le module cryptographique MCR de l'entité électeur , génère une signature sn. sur Ci : sn. = SignSK.{Ci ') où SIC désigne la clé privée de . L'entité électeur Vj transmet ensuite ces trois valeurs C, , VEPlli, s \ ?t r à l'entité d'administration L et à l'entité organisateur O.
Au cours d'une étape VE10, le module cryptographique MCR de l'entité
d'administration L et le module cryptographique MCR de l'entité organisateur O vérifient ¹ 1 et que la signature sn et que la preuve RP, sont toutes les deux valides.
Si c'est le cas, au cours d'une étape VE12, le module cryptographique MCR de l'entité d'administration L et le module cryptographique MCR de l'entité organisateur O génèrent conjointement deux valeurs aléatoires b et x! de Zp et calculent E = X ' ainsi qu'une paire (u, u’) où u = hb Us prouvent que la paire (u, u’) a été calculée de manière conforme et notamment à partir des clés privées x0 et x1 :
On rappelle, que pour générer conjointement une valeur, par exemple la valeur x', l'entité d'administration L et l'entité organisateur O peuvent utiliser des techniques connues de cryptographie distribuée. Par exemple, l'entité d'administration L (respectivement l'entité organisateur O) génère aléatoirement une valeur x'A de Zp (respectivement x'° de Zp ) et calcule
E'L = C L (respectivement X °). On obtient ainsi E = E'L. E'° = X où x' = x'M + x'° (mod p).
Dans ce mode de réalisation, au cours d'une étape VE14, le module cryptographique MCR de l'entité d'administration L ou de l'entité organisateur O transmet E , u, u’ et la preuve VEVW3 à l'entité électeur V En variante ces valeurs sont envoyées par l'entité d'administration cA et par l'entité organisateur O et l'entité électeur Vj vérifie que les valeurs reçues des deux entités L et O sont identiques.
Au cours d'une étape VG6, le module cryptographique de l'entité électeur v; vérifie que u ¹ 1 et que la preuve VOAPn3 est valide. Si ces deux vérifications sont concluantes, le module cryptographique de l'entité électeur génère, au cours d'une étape VG7 une signature Sigv. sur ç et E : Sigv. = SignSK.{Ci, E'), où SKt désigne la clé privée de l'entité électeur V Au cours d'une étape VG75, l'entité électeur transmet la signature Sigv. à l'entité d'administration L et à l'entité organisateur O.
Au cours d'une étape VE13, l'entité d'administration L et l'entité organisateur O vérifient que la signature Sigv. est valide, et si c'est le cas, l'entité d'administration L transmet x' à l'entité électeur Vj. L'entité d'administration L maintient un registre REG non représenté contenant pour chaque entité membre Vj du groupe les valeurs suivantes :
désigne le nombre d'entités électeurs dûment enregistrées.
Au cours d'une étape VG8, l'entité électeur Vj vérifie que E = X™ et constitue, si cette vérification est concluante sa clé privée de groupe SK^. Celle-ci est constituée par le triplet SK^ = (SÎ,U, u’) où s, = Xi + x'mod p. Il est à noter que ladite clé privée de groupe SK^ est obtenue par l'entité membre à partir de sa clé privée xit connue d'elle seule.
La figure 8 représente sous forme d'organigramme les principales étapes d'un procédé de vote conforme à ce mode de réalisation de l'invention.
Conformément au schéma de signatures anonymes SigA2, pour signer anonymement un message quelconque msg e {0,1}* avec sa clé privée de groupe SK^, le module cryptographique MCR de l'entité électeur Vj tire aléatoirement, au cours d'une étape VH2 une valeur 1 e Zp et calcule (étape VH4) la valeur w = u1 ainsi (étape VH6) que la valeur w' = (u')1.
Dans le cas d'un scrutin uninominal majoritaire, le message peut être constitué par le vote de l'entité électeur, éventuellement sous forme chiffrée, le chiffrement pouvant être calculé en utilisant une clé publique dont la clé privée serait partagée entre plusieurs entités assesseurs configurées pour procéder au dépouillement du vote.
Au cours d'une étape VH8, le module cryptographique MCR de l'entité électeur V} calcule la valeur = wSi et la trace 7} = Pt s‘. Cette trace 7} calculée à partir du générateur de trace Pt et de l'élément s, de la clé privée de groupe de l'entité électeur Vt ne dépend pas du message msg. Autrement dit, la trace 7} constitue donc un invariant des signatures émises par l'entité électeur .
L'entité électeur V} prouve que le logarithme discret de dans la base w est le même que le logarithme discret de 7} dans la base Pt : VEPn', = PoKfoq: q = w"1 A 7} = Pt ai).
Dans le mode de réalisation de l'invention décrit ici, la preuve VEPn', est la paire (c, r) dans laquelle :
z est une valeur aléatoire de Zp tirée par l'entité électeur V} ;
- 7\ = wz ;
- T2 = Pt z;
- c = TfC TY. T^ Pt. msg);
r = z— es, mod p
La preuve est valide si c = K( wr c{, Pt r 7}c, Pt, m) .
Au cours d'une étape VH 10, le module cryptographique MCR de l'entité électeur Vt génère la signature anonyme q du message msg, celle-ci étant constituée des cinq éléments suivants : (w, w', q, 7}, VEPn'j ). Elle comporte la trace 7} qui permet de tracer toutes les signatures émises par l'entité électeur VL. La figure 9 représente sous forme d'organigramme les principales étapes d'un procédé de vérification d'une signature anonyme conformément à l'invention.
Au cours d'une étape VK2, le dispositif de vérification d'une signature anonyme obtient une signature anonyme s, = (w, w', ^, Gi,nERP'ί ).
Au cours d'une étape VK4, elle considère que la signature anonyme s* d'un message msg est valide si :
w ¹ lGl
- Ti ¹ lGl;
VEPn'j est valide ; et
e(w, X0) e (c1, Â: 1) = e(w', ¾).
La figure 10 représente sous forme d'organigramme les principales étapes d'un procédé de levée d'anonymat de la signature valide s, = (in, in', ^, Gί, P'ί ) d'un message msg conformément à ce deuxième mode de réalisation de l'invention. Ce procédé est mis en oeuvre par l'entité d'enregistrement A et l'entité organisateur O.
Au cours d'une étape VZ2, chacune de ces entités A et O obtient la signature a,.
Au cours d'une étape VZ4, les entités A et O calculent successivement, 7} = Tj- l (::ί’ 1 avec T() = TL.
O calcule 7 = et prouve (VOP¾) que le logarithme discret de 7 dans la base G, est égal au logarithme discret de X dans la base P .
A calcule T2 et prouve (VAPn|) que le logarithme discret de T2 dans la base T est égal au logarithme discret de P1 dans la base P2.
Si toutes les preuves produites par les autorités de révocation sont valides,
Dans ce mode de réalisation, au cours d'une étape VZ6, l'entité organisateur O transmet la preuve VOP¾ à l'entité d'enregistrement A.
Au cours d'une étape VZ8, l'entité d'enregistrement A retrouve dans son registre REG l'entrée correspondant
Au cours d'une étape VZ10, l'entité d'enregistrement A retourne l'identifiant IDV., les preuves VOPr¾ ainsi et VAPn| que Ci. CL.x', PK, et SigVi . Si toutes les preuves sont valides, que C', = C, · xf et que la signature Sigv. est valide alors l'entité d'enregistrement A considère que l'entité électeur dont l'identifiant est IDV. est bien l'auteur de la signature s, du message msg.
Dans le mode de réalisation décrit ici, l'entité d'administration SA, les entités de révocation Æj, l'entité organisateur O, l'entité d'enregistrement A, le dispositif de vérification DV les entités membres ou électeurs Vx ont l'architecture matérielle d'un ordinateur ORD tel que représenté schématiquement à la figure 11. L'ordinateur ORD comprend notamment un processeur 7, une mémoire morte 8, une mémoire vive 9, une mémoire non volatile 10 et des moyens de communication COM. Ces moyens de communication COM permettent aux différentes entités de communiquer entre eux notamment. Ils peuvent comprendre une ou plusieurs interfaces de communication sur un ou plusieurs réseaux de télécommunication (fixes ou mobiles, avec ou sans fil, etc.).
La mémoire morte 8 de l'ordinateur ORD constitue un support d'enregistrement conforme à l'invention, lisible par le processeur et sur lequel est enregistré un programme d'ordinateur conforme à l'invention, désigné de façon générale ici par PROG, comportant des instructions pour l'exécution de l'un des procédés objets de l'invention. Ainsi :
— pour l'entité d'administration £L, le programme PROG est un programme PROG1 comportant des instructions pour l'exécution des étapes E2 à E12 d'un procédé de génération de clé conforme à l'invention, et des étapes Z8 à Z10 d'un procédé de levée d'anonymat conforme à l'invention,
— pour les entités de révocation Æj, le programme PROG est un programme PROG1 comportant des instructions pour l'exécution des étapes F2 à F6 d'un procédé de génération de clé conforme à l'invention, et des étapes Z2 à Z6 d'un procédé de levée d'anonymat conforme à l'invention,
— pour l'entité organisateur O, le programme PROG est un programme PROG2 comportant des instructions pour l'exécution des étapes VE2 à VE12 d'un procédé de génération de clé conforme à l'invention et des étapes VZ2 à VZ6 d'un procédé de levée d'anonymat conforme à l'invention,
— pour l'entité d'enregistrement L, le programme PROG est un programme PROG3, comportant des instructions pour l'exécution des étapes VE2 à VE12 d'un procédé de génération de clé conforme à l'invention et des étapes VZ2 à VZ10 d'un procédé de levée d'anonymat conforme à l'invention,
— pour le dispositif de vérification DV, le programme PROG est un programme PROG4
comportant des instructions pour l'exécution des étapes K2 à K4 ou VK2 à VK4 d'un procédé de vérification de signature conforme à l'invention,
— pour les entités membres V le programme PROG est un programme PROG5, comportant des instructions pour l'exécution des étapes G2 à G8 ou VG2 à VG8 du procédé de génération de clé conforme à l'invention, des étapes H2 à H 10 ou VH2 à VH 10 d'un procédé de signature conforme à l'invention.
Chacun de ces programmes définit, de façon équivalente, des modules fonctionnels du dispositif ou du module sur lequel il est installé, aptes à mettre en oeuvre les étapes du procédé concerné et s'appuyant sur les éléments matériels 7-10 de l'ordinateur ORD.

Claims

Revendications
1. Procédé de signature anonyme d'un message (msg) mis en oeuvre par une entité membre ( ) d'un groupe et comportant :
- une étape d'enregistrement dudit membre (Vj) auprès d'une entité {L) d'administration du groupe ;
- une étape (H8) de génération, par ladite entité membre ( ), d'une trace (7^), à partir d'un générateur de trace ( Pt ) calculé par au moins une entité de révocation (Æ·) et compris dans une clé publique ( PKG ) dudit groupe, ladite trace (7^) étant invariante par rapport aux signatures anonymes (s;) générées par ladite entité membre conformément audit schéma ;
- une étape d'obtention, de manière aveugle, par ladite entité membre (Vj), d'une clé privée (SKQ) de groupe ;
- une étape (H 10) de génération d'au moins une signature (s,), conformément à un schéma de signatures anonymes (SigA2) en utilisant ladite clé privée, ladite signature comportant ladite trace (Xô·
2. Procédé de génération de clés pour un schéma de signatures anonymes (SigA2), ledit procédé comportant :
- une étape (F2, F4, F6) de calcul, par au moins une entité de révocation (Æ·) d'une paire de clés de révocation , comprenant une clé publique et une clé privée ( ) ladite clé privée pouvant être utilisée par ladite entité de révocation pour révoquer l'anonymat d'une signature anonyme conforme audit schéma (SigA2) ;
- une étape d'enregistrement, par une entité {L) d'administration de groupe, d'au moins une entité membre ( ) auprès dudit groupe ;
- une étape (F2, F4, F6) de calcul, à partir de la clé publique (F ) de ladite au moins une paire de clés de révocation, d'un générateur de trace ( Pt ), ledit générateur de trace ( Pt ) étant destiné à être utilisé par chaque dite entité membre ( ) pour générer une trace (7^) représentative de ladite entité membre ( ), ladite trace (7^), étant invariante par rapport aux signatures anonymes (s;) générées par ladite entité membre conformément audit schéma ;
- ladite entité membre ( ) étant configurée pour obtenir de façon aveugle une clé privée (S¾) de groupe, ladite clé privée (S¾) étant utilisée par ladite entité membre ( ) pour générer des signatures anonymes (s;) conformes audit schéma, lesdites signatures anonymes (s;) comportant ladite trace ( yt ).
3. Procédé de génération de clés selon la revendication 2, ledit procédé comportant : - une étape (E2, E4, E6, VE2, VE4) de génération, par au moins une entité (L) d'administration du groupe, d'une paire de clés (XKL, RKL) dudit schéma pour au moins une entité {L) d'administration du groupe ;
- la clé publique (Pt) de ladite au moins une entité de révocation (Kj) étant calculée (F2, F4, F6) à partir d'une clé publique (¾) de ladite paire de clés ( SKA, PKA ).
4. Procédé de génération de clés selon la revendication 2 ou 3 dans lequel ledit générateur de trace (Pt) est renouvelé périodiquement.
5. Procédé selon l'une quelconque des revendications 2 à 4 dans lequel ledit générateur de trace (Pt) est spécifique à un service donné.
6. Système de génération de clés pour un schéma de signatures anonymes (SigA2), ce système comportant :
- au moins une entité de révocation (Æ·) configurée pour calculer une paire de clés de révocation comprenant une clé publique et une clé privée (c^), ladite clé privée ( ) pouvant être utilisée par ladite entité de révocation pour révoquer l'anonymat d'une signature anonyme conforme audit schéma (SigA2) ;
- une entité {L) d'administration de groupe configurée pour enregistrer au moins une entité membre ( ) auprès dudit groupe ;
- ladite au moins une entité de révocation (Æ·) étant configurée pour calculer, à partir d'une clé publique (P7) de ladite au moins une paire de clés de révocation, un générateur de trace (Pt), ledit générateur de trace (Pt) étant destiné à être utilisé par chaque dite entité membre ( ) pour générer une trace représentative de ladite entité membre ( ), ladite trace (T,) étant invariante par rapport aux signatures anonymes (s;) générées par ladite entité membre conformément audit schéma ;
- ladite entité membre ( ) étant configurée pour obtenir de façon aveugle une clé privée (S¾) de groupe, ladite clé privée (S¾) étant utilisée par ladite entité membre ( ) pour générer des signatures anonymes (s;) conformes audit schéma, lesdites signatures anonymes (s;) comportant ladite trace (7^).
7. Dispositif de signature anonyme (DSA) d'un message mis en oeuvre par une entité membre ( ) d'un groupe et comportant :
- un module d'enregistrement de ladite entité membre (Vj) auprès d'une entité {L) d'administration du groupe ;
- un module de génération d'une trace (7^) à partir d'un générateur de trace calculé par au moins une entité de révocation (Æ·) et compris dans une clé publique (PKG) dudit groupe, ladite trace (7j) étant invariante par rapport aux signatures anonymes (s;) générées par ladite entité membre conformément audit schéma ;
- un module d'obtention, de manière aveugle, d'une clé privée (SK^) de groupe ;
- une étape (H 10) de génération d'au moins une signature (s^ eh utilisant ladite clé privée de groupe, ladite signature comportant ladite trace (Tj).
8. Système de vote électronique (SVE) comportant un système de génération de clés selon la revendication 6 et au moins un dispositif de signature anonyme selon la revendication 7.
9. Programme d'ordinateur comprenant des instructions pour mettre en oeuvre un procédé de génération de clés selon l'une quelconque des revendications 2 à 5 lorsqu'il est exécuté par un ordinateur.
10. Programme d'ordinateur comprenant des instructions pour mettre en oeuvre un procédé de signatures anonymes selon la revendication 1 lorsqu'il est exécuté par un ordinateur.
EP19845598.2A 2018-12-24 2019-12-17 Procédé et système de génération de clés pour un schéma de signatures anonymes Pending EP3903443A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1874108A FR3091107A1 (fr) 2018-12-24 2018-12-24 Procédé et système de génération de clés pour un schéma de signatures anonymes
PCT/FR2019/053114 WO2020136320A1 (fr) 2018-12-24 2019-12-17 Procédé et système de génération de clés pour un schéma de signatures anonymes

Publications (1)

Publication Number Publication Date
EP3903443A1 true EP3903443A1 (fr) 2021-11-03

Family

ID=67441203

Family Applications (1)

Application Number Title Priority Date Filing Date
EP19845598.2A Pending EP3903443A1 (fr) 2018-12-24 2019-12-17 Procédé et système de génération de clés pour un schéma de signatures anonymes

Country Status (5)

Country Link
US (1) US11936795B2 (fr)
EP (1) EP3903443A1 (fr)
CN (1) CN113383512B (fr)
FR (1) FR3091107A1 (fr)
WO (1) WO2020136320A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021080449A1 (fr) * 2019-10-23 2021-04-29 "Enkri Holding", Limited Liability Company Procédé et système d'identification anonyme d'un utilisateur

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110060903A1 (en) * 2008-03-19 2011-03-10 Takuya Yoshida Group signature system, apparatus and storage medium

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999026207A1 (fr) * 1997-11-19 1999-05-27 Rsa Security Inc. Traçage d'especes numeriques au moyen d'authentifications delivrees par un representant fiduciaire
US7234059B1 (en) * 2001-08-09 2007-06-19 Sandia Corporation Anonymous authenticated communications
US7113594B2 (en) * 2001-08-13 2006-09-26 The Board Of Trustees Of The Leland Stanford University Systems and methods for identity-based encryption and related cryptographic techniques
FR2834598B1 (fr) * 2002-01-04 2004-02-20 France Telecom Procede et dispositif de signature anonyme au moyen d'une cle privee partagee
FR2834841B1 (fr) * 2002-01-17 2004-05-28 France Telecom Procede cryptographique de revocation a l'aide d'une carte a puce
FR2842680A1 (fr) * 2002-07-19 2004-01-23 France Telecom Procede de signature de liste et application au vote electronique
US7657748B2 (en) * 2002-08-28 2010-02-02 Ntt Docomo, Inc. Certificate-based encryption and public key infrastructure
FR2847401A1 (fr) * 2002-11-14 2004-05-21 France Telecom Procede d'acces a un service avec authentification rapide et anonymat revocable et systeme d'ouverture et de maintien de session
FR2855343B1 (fr) * 2003-05-20 2005-10-07 France Telecom Procede de signature electronique de groupe avec anonymat revocable, equipements et programmes pour la mise en oeuvre du procede
US8689000B2 (en) * 2003-05-21 2014-04-01 Hewlett-Packard Development Company, L.P. Use of certified secrets in communication
EP1710954A4 (fr) * 2004-01-23 2011-05-04 Nec Corp Systeme, procede, dispositif et programme de signature de groupe
DE602004006373T2 (de) * 2004-03-02 2008-01-17 France Telecom Verfahren und Vorrichtungen zur Erstellung fairer Blindunterschriften
US8352380B2 (en) * 2004-05-19 2013-01-08 France Telecom Method and system for generating a list signature
US7581107B2 (en) * 2004-05-28 2009-08-25 International Business Machines Corporation Anonymity revocation
US20080091941A1 (en) * 2004-09-03 2008-04-17 Nec Corporation Group Signature System, Member Status Judging Device, Group Signature Method And Member Status Judging Program
JP4768979B2 (ja) * 2004-10-19 2011-09-07 株式会社東芝 匿名注文システム、装置及びプログラム
JP4218760B2 (ja) * 2005-07-01 2009-02-04 インターナショナル・ビジネス・マシーンズ・コーポレーション トレーサビリティ検証システム、方法、プログラム
FR2892252B1 (fr) * 2005-10-17 2008-01-25 Oberthur Card Syst Sa Procede et dispositif de creation d'une signature de groupe et procede et dispositif de verification d'une signature de groupe associes.
US7958057B2 (en) * 2007-03-28 2011-06-07 King Fahd University Of Petroleum And Minerals Virtual account based new digital cash protocols with combined blind digital signature and pseudonym authentication
US8078876B2 (en) * 2007-04-30 2011-12-13 Intel Corporation Apparatus and method for direct anonymous attestation from bilinear maps
CN101359986B (zh) * 2007-04-30 2013-05-29 英特尔公司 用于根据双线性映射的直接匿名证明的装置和方法
US7844614B2 (en) * 2007-04-30 2010-11-30 Intel Corporation Apparatus and method for enhanced revocation of direct proof and direct anonymous attestation
US20080307223A1 (en) * 2007-06-08 2008-12-11 Brickell Ernest F Apparatus and method for issuer based revocation of direct proof and direct anonymous attestation
CN101689993B (zh) * 2007-07-11 2013-02-27 株式会社东芝 组署名系统、装置和方法
WO2009012434A1 (fr) * 2007-07-19 2009-01-22 Telcordia Technologies, Inc. Procédé pour une infrastructure de clé publique fournissant intégrité et anonymat de communication tout en détectant une communication malveillante
US8356181B2 (en) * 2007-11-15 2013-01-15 Intel Corporation Apparatus and method for a direct anonymous attestation scheme from short-group signatures
GB0801662D0 (en) * 2008-01-30 2008-03-05 Hewlett Packard Development Co Direct anonymous attestation using bilinear maps
US8499149B2 (en) * 2008-02-20 2013-07-30 Hewlett-Packard Development Company, L.P. Revocation for direct anonymous attestation
WO2010013699A1 (fr) * 2008-07-28 2010-02-04 日本電気株式会社 Système de signature
US8145897B2 (en) * 2008-09-29 2012-03-27 Intel Corporation Direct anonymous attestation scheme with outsourcing capability
FR2940726A1 (fr) * 2008-12-30 2010-07-02 France Telecom Signature de groupe a verification locale de revocation avec capacite de levee d'anonymat
US8583932B2 (en) * 2009-05-29 2013-11-12 Nec Corporation Signature device, signature verification device, anonymous authetication system, signing method, signature authentication method, and programs therefor
US8650403B2 (en) * 2009-06-12 2014-02-11 France Telecom Crytographic method for anonymous authentication and separate identification of a user
FR2970357B1 (fr) * 2011-01-07 2013-01-11 Oridao Dispositif et procede de tracage
US8707046B2 (en) * 2011-05-03 2014-04-22 Intel Corporation Method of anonymous entity authentication using group-based anonymous signatures
CA2902292C (fr) * 2013-03-15 2024-05-21 Ologn Technologies Ag Systemes, procedes et appareils de stockage et de fourniture securises d'informations de paiement
FR3003713B1 (fr) * 2013-03-25 2016-10-07 Morpho Signature de groupe utilisant un pseudonyme
EP2846492A1 (fr) * 2013-09-05 2015-03-11 Thomson Licensing Procédés et dispositifs de signature de groupe cryptographique
CN104753683B (zh) * 2015-04-08 2018-04-17 西安电子科技大学 车联网中具有高效撤销的群签名方法
US10326602B2 (en) * 2015-09-18 2019-06-18 Virginia Tech Intellectual Properties, Inc. Group signatures with probabilistic revocation
US10742413B2 (en) * 2017-04-25 2020-08-11 International Business Machines Corporation Flexible verifiable encryption from lattices
GB201800493D0 (en) * 2018-01-11 2018-02-28 Univ Oxford Innovation Ltd Computer-implemented method for managing user-submitted reviews using anonymous reputation system
US10320569B1 (en) * 2018-04-05 2019-06-11 HOTYB, Inc. Systems and methods for authenticating a digitally signed assertion using verified evaluators
WO2020082031A1 (fr) * 2018-10-18 2020-04-23 Eian Labs Inc. Audit de transaction confidentielle à l'aide d'une structure de données authentifiées

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110060903A1 (en) * 2008-03-19 2011-03-10 Takuya Yoshida Group signature system, apparatus and storage medium

Also Published As

Publication number Publication date
CN113383512A (zh) 2021-09-10
FR3091107A1 (fr) 2020-06-26
US20220103377A1 (en) 2022-03-31
US11936795B2 (en) 2024-03-19
CN113383512B (zh) 2024-09-10
WO2020136320A1 (fr) 2020-07-02

Similar Documents

Publication Publication Date Title
EP2847928B1 (fr) Procédé et système de cryptage chiffré sans certificat (clae)
EP3010177B1 (fr) Procédé d'authentification d'un dispositif client auprès d'un serveur à l'aide d'un élément secret
EP3903445A1 (fr) Procédé et système de vote électronique
EP2345202A2 (fr) Procédé de signature numérique en deux étapes
EP4179695A1 (fr) Procédé et système de chiffrement basé sur une identité vérifiable (vibe) faisant intervenir un chiffrement d'authentification sans certificat (clae)
FR2842680A1 (fr) Procede de signature de liste et application au vote electronique
EP2371083B1 (fr) Signature de groupe a vérification locale de révocation avec capacité de levée d'anonymat
CN108449326B (zh) 一种异构可否认的认证方法和系统
WO2005122466A1 (fr) Abrege descriptif procede et systeme de signature de liste
Petit et al. On the potential of PUF for pseudonym generation in vehicular networks
US20180167210A1 (en) Distributed cryptographic key insertion and key delivery
EP3965361A1 (fr) Echange de données entre un client et un dispositif distant, par exemple un module sécurisé
CN116405217A (zh) 一种常数级签名大小的sm9环签名方法及系统
EP3903443A1 (fr) Procédé et système de génération de clés pour un schéma de signatures anonymes
FR3079045A1 (fr) Procede d’emission de donnees depuis un vehicule automobile et procede de reception desdites donnees par un autre vehicule, a travers un canal de communication radio.
Valluri Zero-knowledge authentication schemes using quasi-polynomials over non-commutative Groups
Gupta et al. BSeVS–A Smart e-Voting System based on Blockchain Technology
Diop Cryptographic mechanisms for device authentication and attestation in the internet of things
CN114430322B (zh) 5g终端数据的验证方法、加密方法、终端和存储介质
WO2025021489A1 (fr) Procédés et dispositifs pour authentifier des données
EP4576650A1 (fr) Procédé de traitement de données
WO2025181246A1 (fr) Procédés et dispositifs de gestion de la révocation d'accréditations cryptographiques
EP1989819B1 (fr) Procéde de certification de clé publique par un prestataire non accrédité
Wang et al. A practical key issuing scheme in identity-based cryptosystem
Gorantla et al. Verifiably encrypted signature scheme with threshold adjudication

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20210615

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20240314