EP1461898A1 - Method and device for anonymous signature with a shared private key - Google Patents

Method and device for anonymous signature with a shared private key

Info

Publication number
EP1461898A1
EP1461898A1 EP02801132A EP02801132A EP1461898A1 EP 1461898 A1 EP1461898 A1 EP 1461898A1 EP 02801132 A EP02801132 A EP 02801132A EP 02801132 A EP02801132 A EP 02801132A EP 1461898 A1 EP1461898 A1 EP 1461898A1
Authority
EP
European Patent Office
Prior art keywords
group
key
common
private key
calculation
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.)
Withdrawn
Application number
EP02801132A
Other languages
German (de)
French (fr)
Inventor
Sébastien CANARD
Marc Girault
Jacques Traore
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
France Telecom 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 France Telecom SA filed Critical France Telecom SA
Publication of EP1461898A1 publication Critical patent/EP1461898A1/en
Withdrawn 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

Definitions

  • the present invention relates to the field of telecommunications and more particularly to the securing of transmissions, in particular for services, which uses cryptography.
  • the individual signing the message must first obtain certification from the trusted authority by communicating at least their public key and identity.
  • the signature process calculates an electronic signature of the message by taking into account on the one hand the content of the message and on the other hand the private key of the individual.
  • the signatory transmits the message, the signature and his certificate to the recipient.
  • the recipient of the message verifies the electronic signature of the message using at least the public key and the content of the message.
  • An anonymous electronic signature has the same characteristics as an electronic signature except that the recipient cannot determine the identity of the signatory; the signatory remains anonymous.
  • the addressee can address himself to the trusted authority which has, via the certificate, a means to lift anonymity.
  • anonymous group signature An anonymous group signature process allows each member of a group to produce an electronic signature that is characteristic of the group. The recipient of a message accompanied by an anonymous group signature can verify that the signature was produced by one of the group members. However, he cannot determine, among the various members of the group, the member in question.
  • a group is a set of individuals who declare themselves to an authority as belonging to the same group. During this declaration, each individual interacts with the trusted authority according to a determined protocol at the end of which the individual obtains a private key, associated with a group public key previously determined by the trusted authority, and the authority and the individual obtain an identifier of the individual associated with this private key. Each of these individuals is in the continuation of the request designated by the term of member.
  • An example of such a protocol is described in the article by J. Camenisch and M. Michels which has for reference "Efficient group signature signature schemes for large groups", In B.
  • Kaliski editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 to 424, Springer-Verlag, 1997.
  • the same interaction occurs when a new member arrives.
  • the existence of a group translates on the side of the authority of trust by the attribution to the group of a public key known as of group and by the attribution to each member of a private key associated with the public key, different for each member, and an identifier.
  • a member can produce an anonymous group signature of a message of their choice. Any recipient can verify that this signature has been produced by one of the members of the group, provided that the group public key is used.
  • the recipient is certain that the signature has been produced, or not, by a member of the group, but he does not obtain any information on the identifier of this member, the signatory communicates to the recipient only its identifier encrypted using a public key of the trusted authority; the signature is anonymous.
  • the recipient has the option of contacting the trusted authority, which can determine the identity of the signatory from the encrypted identifier accompanying the anonymous group signature.
  • the trusted authority can therefore lift anonymity at any time.
  • a group can evolve. According to a first type of evolution, new individuals can become members of the group.
  • the method encrypts, with an encryption algorithm, each of the results of these divisions and transmits to the recipient these encrypted results accompanied by determined elements.
  • the recipient uses the determined elements and the quantified results to verify on the one hand that the divisions were correctly carried out and on the other hand that all the results are different from 1; that is, to ensure that the signature was produced by an unrevoked member.
  • This process consists in using three additional keys in addition to the keys necessary for the success of the group signature: a private property key for each member, a public property key to allow each member to check the validity of his key and a public renewal key allowing each member to modify his private ownership key each time a member joins or leaves the group.
  • the trusted authority modifies the public ownership key and the renewal key.
  • Each remaining member of the group modifies their own private ownership key using the renewal key and checks its validity using the public ownership key.
  • signing a message electronically the signatory member uses their private property key.
  • the recipient can verify the electronic signature using the public ownership key.
  • One of the objectives of the invention is to remedy the drawbacks of the known and previously described methods.
  • the subject of the invention is a cryptographic method of anonymous signature of a message intended to be implemented by a member of a group, this group being composed of n members each equipped with a means of calculation and an associated storage means.
  • This process comprises initial steps which consist in the constitution of the group: in a first step, to calculate by a first means of calculation of a trusted authority, a pair of asymmetric keys common to the members of the group, this pair of keys consisting of a public key and a common private key, in a second step, to be calculated by the first means of calculation a group public key associated with the group, in a third step, for each member, during an interaction between the means of calculating the trusted authority and the means of calculating the member, calculating a private group key and storing this private group key in the member memorizing means, each group private key being associated with the group public key and being different for each member of the group,
  • a fourth step to determine by the first means of calculation as many symmetric secret keys as there are members of the group, in a fifth step, to encrypt by the first means of calculation the common private key with each of the secret keys to obtain as many of encrypted forms of the common private key than of unrevoked members.
  • the method comprises steps which consist: in a sixth step, by modifying by the first means of calculation the pair of common asymmetric keys to determine a public key and a private key up to date common, in a seventh step, to encrypt by the first means of calculation the common private key with each of the secret keys to obtain as many encrypted forms of the common private key as non-revoked members.
  • the method comprises steps which consist:
  • a so-called additional signature of the set composed of the message and the anonymous signature using the member's common private key.
  • the method according to the invention consists in supplementing the anonymous signature of a message made by a member with an additional signature.
  • This additional signature is calculated using a copy, held by the member, of a private signature key identical for all the members authorized to sign and unknown to all the dismissed members.
  • This so-called common private key is updated by the trusted authority each time a member of the group is dismissed. The update of the copy held by the member is triggered only during an anonymous signature phase of a message by this member and the update is only possible for an unrevoked member.
  • a method according to the invention is such that the group is set up on a date that is such that the steps also consist of:
  • the steps also consist of:
  • a method according to the invention is such that the steps also consist of:
  • a method according to the invention is such that the steps also consist of:
  • the method further comprises the step which consists in: deleting the secret key of the revoked member, from the storage means connected to the first calculation means, and is such as for updating the common private key stored by the member storage means, the method further comprises the steps which consist:
  • the subject of the invention is also a cryptographic device for anonymous signature of a digital message which comprises:
  • a first calculation means for calculating on the one hand at least one pair of asymmetric keys common to the members of the group composed of n members and on the other hand a public group key associated with the group, to calculate for each member, during '' an interaction with the member's calculation means, a group private key, each group private key being associated with the group public key and being different for each member of the group, to determine as many symmetric secret keys as members of the group group and to encrypt the common private key with each of the symmetric secret keys to obtain as many encrypted forms of the common private key as there are unrevoked members.
  • a device further comprises: - a storage means connected to the first calculation means via a communication network for storing at least the symmetric secret key of each member of the group, the group public key , the public key common to the members of the group and each of the different encrypted forms of the common private key.
  • the invention further relates to a smart card intended for a member of a group consisting of n members and intended to interact with a previous device. This card includes:
  • a calculation means for calculating an anonymous signature of a message using its private group key and for calculating an additional signature of the set composed of the message and the anonymous signature using the private key common of the member.
  • a card according to the invention is such that the updating means comprises a decryption means for decrypting one of the encrypted values of the common private key, calculated by the first calculation means of the device, at the using the common private key memorized by the member memorization means.
  • Figure 1 is a flow diagram of a method according to the invention.
  • FIG. 2 is a flow diagram of a particular embodiment of a method according to the invention.
  • Figure 3 is a diagram of a particular embodiment of a method according to the invention.
  • FIG. 1 represents a flow diagram of a cryptographic method of anonymous signature of a message according to the invention.
  • the method is intended to be implemented by a member of a group composed of n members. Each member has a means of calculation associated with a means of memorization. The process takes place in different steps which include initial steps and non-initial steps. The initial stages occur during the creation of the group and are listed below.
  • a first step consists in calculating 1 by a first means of calculating a trusted authority, a pair of asymmetric keys common to the members of the group; this key pair consists of a common public key and a common private key.
  • the algorithm used for the first step is a public key signature algorithm which may be the RSA algorithm, for R.L. Rivest, Shamir and L. Adleman who are the authors.
  • a second step consists in calculating 2 by the first means of calculating a group public key associated with the group.
  • the calculation is performed using a particular algorithm.
  • This algorithm can be that described in the article by J. Camemsch and M. Michels which has for reference "Efficient group signature signature schemes for large groups", In B. Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS , pages 410 to 424, Springer-Verlag, 1997.
  • a third step consists in calculating 3 during an interaction between the trusted authority and each member of the group taken successively, a group private key associated with the group public key, each group private key being different for each member of the group. group.
  • the member's private group key is stored 4 by the member's storage means, the trusted authority is not aware of this key.
  • the calculation is performed using a particular algorithm. This algorithm can be that described in the article by J.Camenisch and M. Michels which has for reference "Efficient group signature signature schemes for large groups", In B.Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS , pages 410 to 424, Springer-Verlag, 1997.
  • a fourth step consists in determining 5 by the first means of calculation as many symmetric secret keys as there are members of the group. This determination may consist of randomly drawing numbers and letters to form a key. Alternatively, the symmetric secret keys can verify a certain distribution. Such a distribution is described in the article by CKWong, MGGouda and SSLam entitled "Secure Group Communications Using Key Graph” - Technical Report TR-97-23, July 28, 1997.
  • a fifth step consists in encrypting 6 by the first means of calculating the common private key with each of the secret keys to obtain as many encrypted forms of the common private key as there are non-revoked members. The encryption is performed using an encryption algorithm such as the AES algorithm.
  • the symmetric secret keys verify a certain distribution which makes it possible not to encrypt the common private key with each of the secret keys but with only some of them.
  • composition of the group can change. 7.
  • a modification consists either of a dismissal within the group, or of the entry of a new member in the group. At each dismissal within the group and optionally upon the arrival of a new member, the process includes the following steps.
  • a sixth step consists in modifying 8 by the first means of calculation the pair of common asymmetric keys to determine a public key and a common private key up to date with the composition of the group. This modification is carried out using typically the same algorithm as that used during the first step.
  • a seventh step consists in encrypting 9 by the first means of calculating the common private key with each of the secret keys to obtain as many encrypted forms of the common private key as there are non-revoked members. This encryption is performed using typically the same algorithm as that used during the fifth step.
  • a group member can undertake to sign a message before forwarding it to a recipient.
  • the process comprises the following steps.
  • An eighth step consists in updating 11 the common private key memorized by the member memorization means only if one of the encrypted values of the common private key is decipherable using the symmetric secret key memorized by the memorization means. member.
  • the decryption is carried out using the same algorithm as that used during the seventh step, that is to say during the encryption.
  • the update is performed if the decryption algorithm makes it possible to decrypt one of the encrypted values of the common private key.
  • a ninth step consists in calculating 12 by the calculation means associated with the member memorization means, a so-called anonymous signature of the message using his group private key.
  • the calculation is performed using an anonymous signature algorithm.
  • Such an algorithm is described in the article by J. Camenisch and M.Stadler who has for reference "Efficient group signature signature schemes for large groups", In B. Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 to 424, Springer-Verlag, 1997. Another description is given in the article by J.Camenisch and M.Michels which has for reference "A group signature scheme with improved efficiency. In K.Ohta and D.Pei, editors, Advances in cryptology- ASIACRYPT'98, volume 1514 of LNCS , pages 160-174, Springer-Verlag, 1998.
  • a tenth step consists in calculating 13 by the member calculation means a so-called additional signature of the set composed of the message and the anonymous signature, using the member's private common key.
  • the algorithm used for the tenth step is a public key signature algorithm which may be the RSA algorithm.
  • FIG. 2 is a flow diagram of a particular embodiment of the method according to the invention.
  • the elements already described with reference to FIG. 1 are not re-described. The specific elements are described below.
  • the first step further consists in associating 14 an update date equal to tl with the common private key, by considering that tl is the date of constitution of the group.
  • the third step further consists in storing 15 by the storing means of each member the date of updating of the common private key.
  • the method furthermore consists in modifying 16 by the first means of calculating the update date to determine an update date equal to the date t2.
  • the eighth step consists in updating the common private key memorized by the means of memorization of the member if, in addition, the date update date stored by the member storage means is different from the update date of the common private key updated by the first calculation means.
  • the date memorized by the member memorization means is equal to the date of updating of the updated group private key, there is no update by the member memorization means .
  • the member's calculation means does not update his common private key, he uses the private key common which is stored in the member storage means for calculating the additional signature.
  • FIG. 3 is a diagram of an embodiment of a method according to the invention by means of a system.
  • the system includes at least one calculation means and as many smart cards 211 as there are members in the group.
  • a trusted authority such as a natural person, a legal person, a national or international administration, has a computing means 20 represented by a server in FIG. 3.
  • This computing means 20 is connected by a first communication link 22 to a communication network 23 which may as well be a public network such as the Internet, as a private network such as a LAN network, short for Anglo-Saxon terms Local Area Network.
  • Each member of a group has a 21 card! a chip which comprises in the chip a means 24 for storage and a means 25 for calculation. Each member also holds, or has access to, a reader 26 of this card rehé by a second communication link 27 to a personal computer 28, or any equivalent computer.
  • the personal computer 28 is rehé by a third communication link 29 to the communication network 23.
  • the constitution of the group with the trusted authority results in an interaction between the trusted authority and each member of the group.
  • the server 20 of the trusted authority calculates a pair of asymmetric keys 30, 31 common to the members of the group and a group public key 32 associated with the group.
  • the server 20 of the trusted authority and the means 25 for calculating the member calculate a key 33 ! private group.
  • the group private key 33 ⁇ is stored in the means 24 for storing the member's smart card.
  • the member has his own group private key which is different from the group private key of all the other members.
  • the pair 30, 31 of common asymmetric keys consists of a common public key 30 and a common private key 31. This pair 30, 31 can be associated with an update date D which is initialized on the date tl of calculation of this pair.
  • the group private keys are different for each member of the group and are associated with the group public key 32.
  • the server 20 of the trusted authority determines a key 34 ! symmetrical secret.
  • the server 20 then encrypts the common private key 31 with each of the secret keys 34i to obtain as many encrypted forms of the common private key 31 as of non-revoked members.
  • the server 20 of the trusted authority and the means 25 for calculating the member also calculate an identifier 35i of the member.
  • the chip card 211 stores in its storage means 24 the common private key 31, the member's private group key 33 1 and the secret key 341 assigned to the member.
  • the keys are transferred to a smart card during interaction using conventional methods.
  • the trusted authority keeps a copy of each of the symmetrical and identifying secret keys 34j 35i of each member in a memory space which can be a memory zone of the server 20 or an associated storage means 36.
  • the different public keys and the encrypted values of the common private key 31 are stored in a directory which is stored in a public part of the memory space 20, 36; that is to say directly accessible, in particular, by each member of the group or, in particular, by each recipient of a message and this via the network 23.
  • the group can evolve, either by the entry of a new member in the group, or by the dismissal of a member of the group.
  • the server 20 modifies the pair of common asymmetric keys 30, 31 to determine a pair of asymmetric keys up to date with the composition of the group. This update is performed on a given date known as the update. It can also be carried out when a new member enters the group.
  • the server 20 After determining this pair of up-to-date common asymmetric keys, the server 20 makes available in encrypted form the private key 31 of this pair of asymmetric keys for each of the smart cards 211 of the non-revoked members of the group.
  • the server 20 calculates as many encrypted forms as there are non-revoked members by using the key 34; personal secret to each of these members.
  • the server 20 encrypts the private key 31 of the pair of up-to-date common asymmetric keys 30, 31.
  • Each of the personal secret keys 34 ⁇ introduced as an input argument of the encryption algorithm used corresponds to a result which is the value encrypted of the common private key 31 of the pair of asymmetric keys up to date.
  • the different results and, generally, the date of update are stored in the directory.
  • the means 25 for calculating the card 21 ! smart connects to the memory space 20, 36 in which the directory is stored, via the personal computer 28 and the network 23.
  • the smart card 21 ⁇ reads in the directory the date D to update the common private key.
  • the means 25 for calculating the chip card 211 compares this update date D with that O ⁇ which it holds in its storage means 24. Either these dates are different, or these dates are identical.
  • card 21! chip can, for example, copy into its storage means 24 the various encrypted forms of the common private key 31.
  • the means 25 for calculating the smart card 21. r can then undertake to decrypt each of the encrypted forms of the common private key 31 using the decryption algorithm which is associated with the encryption algorithm previously used.
  • the input arguments include on the one hand, the personal secret key 341 stored in the card 21 ! on the other hand, taken successively, the encrypted forms of the common private key 31. At the first correct decryption result, card 21!
  • Another method consists in placing before each encrypted form of the common private key 31 an identifier of the member concerned.
  • the means 25 for calculating the smart card 21 i can then undertake to test each of the encrypted forms of the common private key 31 using the identifier. When it arrives at a valid test, it then undertakes to decrypt the encrypted form of the common private key 31 which corresponds to it using the decryption algorithm which is associated with the previously used encryption algorithm.
  • the input arguments include on the one hand, the personal secret key 34 ⁇ stored in the card 21 ! on the other hand, the encrypted form of the common private key 31.
  • the smart card does not make a copy in its means 24 of memorizing the different encrypted forms of the common private key 31. This situation arises when no change in the group has taken place since the member's entry into the group; card 21 ! chip holds the latest update of the common private key 31.
  • the means 25 for calculating the smart card 21 1 retrieves the message stored in the computer 28.
  • the means 25 for calculating the smart card 21 1 calculates an anonymous signature of this message to using the signature algorithm.
  • the input arguments comprise on the one hand the message and on the other hand the group private key 33 1 stored in the chip storage means 24.
  • the means 25 for calculating the chip card 211 calculates a second so-called additional signature of the assembly formed of the message and the anonymous signature using the previous signature algorithm.
  • the input arguments comprise on the one hand the assembly formed of the anonymous message and signature and on the other hand the common private key 31 stored in the member storage means.
  • card 21 ! smart transmits to the recipient chosen by the member, the additional signature, the anonymous signature and the message.
  • the recipient can in these conditions verify that the member who signed the message is a non-revoked member. To this end, the recipient verifies each of the two signatures, the additional signature and the anonymous signature, using the common public key, respectively the group public key. To verify, the recipient uses a verification algorithm available for example on a personal computer.
  • the input arguments comprise on the one hand the message and on the other hand the common public key, respectively the group public key.
  • a first application of a method according to the invention is electronic voting.
  • Electronic voting takes place in two phases:
  • the voter obtains a private group key according to a method according to the invention.
  • the anonymous signature that the voter can produce from his group private key is said to be "correlable”. This means that, in the event that the voter attempts to anonymously sign a second ballot by producing an anonymous signature, that ballot will be rejected by the ballot box. Indeed, the anonymous signature being correlable, the ballot box is able to verify that it is a second anonymous signature.
  • a malicious voter cannot claim to have lost their group private key, receive another, and be able to vote twice. Indeed, the implementation of a method according to the invention makes it possible to prohibit the use of the first group private key; this group private key is updated when he declares having lost the first group private key. This loss is managed by the implementation of a process according to the invention such as a revocation of the member.
  • a second application of a method according to the invention is an electronic auction service.
  • the auctions involve three protagonists: an auction server, a trusted authority and a client. All of the clients form a group called the client group.
  • a user wishing to register with the group of clients must contact the trusted authority which provides him with his group private key. He thus obtains the right to produce an anonymous group signature.
  • the trusted authority which provides him with his group private key. He thus obtains the right to produce an anonymous group signature.
  • he can sign each of his auctions anonymously.
  • each member of the client group can bid by signing a message containing in particular the product put up for sale and the amount of their bid.
  • the auction server can verify group membership and therefore the validity of the auction by verifying the anonymous group signature.
  • the winner is the one who gives the last bid before the auction.
  • the last message received by the auction server is therefore that of the winner.
  • the server then addresses this message and the corresponding anonymous group signature to the trusted authority, which is the only one capable of lifting anonymity and
  • the auctions involve dynamic groups: new people can join the group every day, a member can leave the group or be excluded for fraud at any time. It is therefore essential to set up a revocation system to prevent a revoked member from being able to use their signature fraudulently. Indeed, the revoked member could continue to use his private group key to participate in the auctions and distort the smooth running of the latter, for example by increasing the amount. And, if he takes care to withdraw early enough from the process so as not to win the auction in question, then this fraud is not detected since only the identity of the winner is finally revealed.
  • the implementation of a method according to the invention makes it possible to solve the problem of revocation of one or of member (s) of the group.
  • a third application of a method according to the invention is electronic payment. It involves four protagonists: a customer, a merchant, a bank and a trusted authority. Each client must be identified by the system and obtain a group private key before being able to make their first transaction. To make a payment, the customer must withdraw electronic documents from his bank. The pieces he removes are anonymous thanks to the use of a mechanism called blind signature.
  • the expenditure of a C piece at a merchant is done as follows: the chent generates a group signature relating to C pieces and transmits the signature and C pieces set to the merchant. The merchant verifies the signature of the bank attached to each piece C and verifies the group signature. If each of the two signatures is valid, the merchant accepts the transaction.
  • the merchant forwards to his bank the signatures and the documents received in payment for transfer to his account.
  • the bank sends the group signature relating to the disputed document to the trusted authority so that it identifies the indelicate price and sanctions the offender.
  • a reliable mechanism for revoking compromised group private keys is necessary in order to avoid fraud of the following type: a dishonest client reports the loss of his group private key to the trusted authority and therefore declines all responsibility for fraud that could be committed with s. The chent gives his key to his accomplice, who can then use s to sign the coins c he has legitimately withdrawn from the bank, and then spend them as many times as he wishes.
  • a method according to the invention solves the problem of revoking group private keys.

Abstract

The invention concerns a method and a system for anonymous cryptographic signature of a message. The method consists in completing the anonymous signature which is calculated (13) with a private key common to the set of members of a group authorized to sign and unknown to all revoked members. Said private key is updated (8, 11) at group level upon each revocation within the group and at member level only upon anonymous signature of a message by said member. The system consists of as many cards as there are members in a group and a device comprising a first calculating means.

Description

PROCEDE ET DISPOSITIF DE SIGNATURE ANONYME AU MOYEN D'UNE CLE PRIVEE PARTAGEE METHOD AND DEVICE FOR ANONYMOUS SIGNATURE USING A SHARED PRIVATE KEY
Domaine de l'inventionField of the invention
La présente invention se rapporte au domaine des télécommunications et plus particulièrement à la sécurisation des transmissions, en particulier pour des services, qui fait appel à la cryptographie.The present invention relates to the field of telecommunications and more particularly to the securing of transmissions, in particular for services, which uses cryptography.
Etat de l'artState of the art
Pour authentifier l'origine d'un document transmis par des moyens de télécommunication, il a été développé des mécanismes de signature électronique. Il faut noter que les termes transmission sous forme électronique sont couramment utilisés pour qualifier une transmission d'un document par des moyens de télécommunication. Les documents dont il est question dans le contexte de l'invention se présentent obligatoirement sous forme numérique par opposition à une présentation sous forme papier ; le terme message est utilisé dans la suite de la demande pour désigner ce type de document. Les mécanismes de signature électronique les plus courants reposent sur des techniques de cryptographie dites à clé publique qui mettent enjeu une entité dite autorité de confiance. Habituellement, cette autorité de confiance génère des certificats pour le compte d'utilisateurs des procédés courants à clé publique ; ces certificats établissent un lien entre une clé publique et l'identité du propriétaire de cette clé. Pour mettre en œuvre un tel procédé, l'individu signataire du message doit préalablement se faire certifier auprès de l'autorité de confiance en lui communiquant au moins sa clé publique et son identité. Lors de sa mise en œuvre, le procédé de signature calcule une signature électronique du message en prenant en compte d'une part le contenu du message et d'autre part la clé privée de l'individu. Le signataire transmet au destinataire le message, la signature et son certificat. Le destinataire du message vérifie la signature électronique du message à l'aide d'au moins la clé publique et du contenu du message.To authenticate the origin of a document transmitted by telecommunication means, electronic signature mechanisms have been developed. It should be noted that the terms transmission in electronic form are commonly used to qualify a transmission of a document by telecommunication means. The documents in question in the context of the invention must be presented in digital form as opposed to a presentation in paper form; the term message is used later in the request to designate this type of document. The most common electronic signature mechanisms are based on so-called public key cryptography techniques which involve an entity called a trusted authority. Usually, this trusted authority generates certificates on behalf of users of common public key processes; these certificates establish a link between a public key and the identity of the owner of this key. To implement such a process, the individual signing the message must first obtain certification from the trusted authority by communicating at least their public key and identity. During its implementation, the signature process calculates an electronic signature of the message by taking into account on the one hand the content of the message and on the other hand the private key of the individual. The signatory transmits the message, the signature and his certificate to the recipient. The recipient of the message verifies the electronic signature of the message using at least the public key and the content of the message.
Pour des applications particulières, telles que le vote électronique, les enchères électroniques ou le paiement électronique anonyme, il est nécessaire de pouvoir disposer d'une signature électronique dite anonyme. Une signature électronique anonyme a les mêmes caractéristiques qu'une signature électronique sauf que le destinataire ne peut déterminer l'identité du signataire ; le signataire garde l'anonymat. Toutefois, le destinataire peut s'adresser à l'autorité de confiance qui dispose, par l'intermédiaire du certificat, d'un moyen pour lever l'anonymat. Art antérieurFor specific applications, such as electronic voting, electronic auctions or anonymous electronic payment, it is necessary to have an electronic signature known as anonymous. An anonymous electronic signature has the same characteristics as an electronic signature except that the recipient cannot determine the identity of the signatory; the signatory remains anonymous. However, the addressee can address himself to the trusted authority which has, via the certificate, a means to lift anonymity. Prior art
Parmi les différents types de signature anonyme, il existe un type particulier appelé signature anonyme de groupe. Un procédé de signature anonyme de groupe permet à chaque membre d'un groupe de produire une signature électronique qui soit caractéristique du groupe. Le destinataire d'un message accompagné d'une signature anonyme de groupe peut vérifier que la signature a été produite par un des membres du groupe. Toutefois il ne peut déterminer, parmi les différents membres du groupe, le membre dont il s'agit.Among the different types of anonymous signature, there is a special type called anonymous group signature. An anonymous group signature process allows each member of a group to produce an electronic signature that is characteristic of the group. The recipient of a message accompanied by an anonymous group signature can verify that the signature was produced by one of the group members. However, he cannot determine, among the various members of the group, the member in question.
Dans le contexte de l'invention, un groupe est un ensemble d'individus qui se déclarent auprès d'une autorité comme appartenant à un même groupe. Lors de cette déclaration, chaque individu interagit avec l'autorité de confiance selon un protocole déterminé à l'issue duquel l'individu obtient une clé privée, associée à une clé publique de groupe préalablement déterminée par l'autorité de confiance, et l'autorité et l'individu obtiennent un identifiant de l'individu associé à cette clé privée. Chacun de ces individus est dans la suite de la demande désigné par le terme de membre. Un exemple d'un tel protocole est décrit dans l'article de J.Camenisch et M.Michels qui a pour référence "Efficient group signature signature schemes for large groups", In B.Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 à 424, Springer-Verlag, 1997. La même interaction intervient lors de l'arrivée d'un nouveau membre. L'existence d'un groupe se traduit du côté de l'autorité de confiance par l'attribution au groupe d'une clé publique dite de groupe et par l'attribution à chaque membre d'une clé privée associée à la clé publique, différente pour chaque membre, et d'un identifiant. A l'aide de sa clé privée, un membre peut produire une signature anonyme de groupe d'un message de son choix. Un destinataire quelconque peut vérifier que cette signature a bien été produite par un des membres du groupe à condition d'utiliser la clé publique de groupe. A l'issue de la vérification, le destinataire a la certitude que la signature a été produite, ou pas, par un membre du groupe, mais il n'obtient aucune information sur l'identifiant de ce membre, le signataire communique au destinataire uniquement son identifiant chiffré au moyen d'une clé publique de l'autorité de confiance ; la signature est anonyme. Le destinataire a toutefois la possibilité de s'adresser à l'autorité de confiance qui peut déterminer l'identité du signataire à partir de l'identifiant chiffré qui accompagne la signature anonyme de groupe. L'autorité de confiance peut donc lever l'anonymat à tout moment. Après constitution auprès de l'autorité de confiance, un groupe peut évoluer. Selon un premier type d'évolution, de nouveaux individus peuvent devenir membres du groupe. Selon un deuxième type d'évolution, des membres peuvent disparaître, soit par le départ d'un individu du groupe, soit par l'exclusion d'un individu du groupe ; pour ce type d'évolution, on parle de révocation. A chaque évolution du groupe, l'autorité de confiance est confrontée aux problèmes de donner ou de retirer à un membre du groupe les moyens de produire une signature anonyme du groupe. Le premier problème posé, qui réside dans l'attribution des moyens de produire une signature anonyme du groupe à un nouveau membre, est résolu en utilisant un des algorithmes de génération de clé publique/clé privée connus qui permettent d'associer à une même clé publique autant de clés privées que nécessaire. Un exemple d'un tel algorithme est décrit dans l'article de J.Camenisch et M.Michels qui a pour référence "Efficient group signature signature schemes for large groups", In B.Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 à 424, Springer-Nerlag, 1997.In the context of the invention, a group is a set of individuals who declare themselves to an authority as belonging to the same group. During this declaration, each individual interacts with the trusted authority according to a determined protocol at the end of which the individual obtains a private key, associated with a group public key previously determined by the trusted authority, and the authority and the individual obtain an identifier of the individual associated with this private key. Each of these individuals is in the continuation of the request designated by the term of member. An example of such a protocol is described in the article by J. Camenisch and M. Michels which has for reference "Efficient group signature signature schemes for large groups", In B. Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 to 424, Springer-Verlag, 1997. The same interaction occurs when a new member arrives. The existence of a group translates on the side of the authority of trust by the attribution to the group of a public key known as of group and by the attribution to each member of a private key associated with the public key, different for each member, and an identifier. Using their private key, a member can produce an anonymous group signature of a message of their choice. Any recipient can verify that this signature has been produced by one of the members of the group, provided that the group public key is used. At the end of the verification, the recipient is certain that the signature has been produced, or not, by a member of the group, but he does not obtain any information on the identifier of this member, the signatory communicates to the recipient only its identifier encrypted using a public key of the trusted authority; the signature is anonymous. However, the recipient has the option of contacting the trusted authority, which can determine the identity of the signatory from the encrypted identifier accompanying the anonymous group signature. The trusted authority can therefore lift anonymity at any time. After constitution with the trusted authority, a group can evolve. According to a first type of evolution, new individuals can become members of the group. According to a second type of evolution, members can disappear, either by the departure of an individual from the group, or by the exclusion of an individual from the group; for this type of development, we speak of revocation. Each time the group changes, the trusted authority is faced with the problem of giving or withdrawing a member of the group the means to produce an anonymous signature of the group. The first problem posed, which lies in allocating the means to produce an anonymous signature of the group to a new member, is resolved by using one of the known public key / private key generation algorithms which make it possible to associate with the same key. public as many private keys as necessary. An example of such an algorithm is described in the article by J. Camenisch and M. Michels which has for reference "Efficient group signature signature schemes for large groups", In B. Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 to 424, Springer-Nerlag, 1997.
Le second problème posé, qui réside dans le fait de retirer à un individu ces moyens, présente différentes solutions connues qui sont des procédés de révocation.The second problem posed, which resides in the fact of withdrawing from an individual these means, presents various known solutions which are methods of revocation.
Un premier de ces procédés est décrit dans F article suivant de E. Bresson et J. Stern, « Efficient Revocation in group Signatures », in K. Kim, editor, Public Key Cryptography - PKC 2001, volume 1992 of LΝCS, pages 190-206, Springer-Verlag, 2001. Ce procédé repose sur le fait que chaque membre d'un groupe possède un identifiant qui lui est propre. Etant donné que la signature doit rester anonyme, il n'est pas possible de dévoiler cet identifiant. Toutefois, selon le procédé, l'identifiant du signataire est divisé par celui de chaque membre révoqué ; le résultat de la division est toujours différent de 1 si et seulement si le signataire n'est pas lui-même un membre révoqué. Ensuite, le procédé chiffre, avec un algorithme de chiffrement, chacun des résultats de ces divisions et transmet au destinataire ces résultats chiffrés accompagnés d'éléments déterminés. Le destinataire exploite les éléments déterminés et les résultats chiffrés pour vérifier d'une part que les divisions ont été correctement effectuées et d'autre part que tous les résultats sont différents de 1 ; c'est-à-dire pour s'assurer que la signature a été produite par un membre non révoqué.A first of these methods is described in the following article by E. Bresson and J. Stern, "Efficient Revocation in group Signatures", in K. Kim, editor, Public Key Cryptography - PKC 2001, volume 1992 of LΝCS, pages 190- 206, Springer-Verlag, 2001. This process is based on the fact that each member of a group has its own identifier. Since the signature must remain anonymous, it is not possible to reveal this identifier. However, according to the process, the signatory's identifier is divided by that of each revoked member; the result of the division is always different from 1 if and only if the signatory is not himself a revoked member. Then, the method encrypts, with an encryption algorithm, each of the results of these divisions and transmits to the recipient these encrypted results accompanied by determined elements. The recipient uses the determined elements and the quantified results to verify on the one hand that the divisions were correctly carried out and on the other hand that all the results are different from 1; that is, to ensure that the signature was produced by an unrevoked member.
Ce procédé a pour inconvénient de générer une signature anonyme de groupe dont la longueur et le temps de calcul augmentent proportionnellement au nombre de membres révoqués étant donné qu'il y a autant de résultats chiffrés et d'éléments déterminés que de membres révoqués. Un deuxième de ces procédés de révocation est décrit dans l'article de H.J. Kim, J.I. Lim et D.H. Lee qui a pour référence « Efficient and Secure Member Deletion in Group Signature Schemes », In D. Won, editor. Information Security and Cryptology - ICISC 2000, volume 2015 of LNCS, pages 150 et s. Springer-Verlag 2000. Ce procédé consiste à utiliser trois clés supplémentaires en plus des clés nécessaires à la réussite de la signature de groupe : une clé privée de propriété pour chaque membre, une clé publique de propriété pour permettre à chaque membre de vérifier la validité de sa clé et une clé publique de renouvellement permettant à chaque membre de modifier sa clé privée de propriété à chaque fois qu'un membre rejoint ou quitte le groupe. Pour chaque nouveau membre et pour chaque révocation d'un membre, l'autorité de confiance modifie la clé publique de propriété et la clé de renouvellement. Chaque membre restant du groupe modifie sa propre clé privée de propriété à l'aide de la clé de renouvellement et vérifie sa validité grâce à la clé publique de propriété. Lors de la signature électronique d'un message, le membre signataire utilise sa clé privée de propriété. Ainsi, le destinataire peut vérifier la signature électronique à l'aide de la clé publique de propriété. Ce procédé a pour inconvénient d'être d'application particulière car il est prouvé sûre uniquement dans un schéma de signature de groupe particulier qui correspond à celui présenté dans l'article de J. Camenisch, M. Michels, ayant pour référence « A group Signature Scheme with Improved Efficiency », In K. Ohta et D. Pei, editors, Advances in Cryptology - ASIACRYPT'98, volume 1514 of LNCS, pages 160-174. Springler-Verlag, 1998. En outre, ce procédé est désavantageux en ce qu'il impose des calculs à chaque membre à chaque fois qu'un membre rejoint ou quitte le groupe ; or, ces calculs peuvent devenir fréquents si la dynamique du groupe est importante.The disadvantage of this method is that it generates an anonymous group signature, the length and time of calculation of which increases in proportion to the number of dismissed members, given that there are as many quantified results and determined elements as there are dismissed members. A second of these revocation procedures is described in the article by HJ Kim, JI Lim and DH Lee which has for reference "Efficient and Secure Member Deletion in Group Signature Schemes", In D. Won, editor. Information Security and Cryptology - ICISC 2000, volume 2015 of LNCS, pages 150 et seq. Springer-Verlag 2000. This process consists in using three additional keys in addition to the keys necessary for the success of the group signature: a private property key for each member, a public property key to allow each member to check the validity of his key and a public renewal key allowing each member to modify his private ownership key each time a member joins or leaves the group. For each new member and for each revocation of a member, the trusted authority modifies the public ownership key and the renewal key. Each remaining member of the group modifies their own private ownership key using the renewal key and checks its validity using the public ownership key. When signing a message electronically, the signatory member uses their private property key. Thus, the recipient can verify the electronic signature using the public ownership key. This process has the disadvantage of being of particular application because it is proven safe only in a particular group signature scheme which corresponds to that presented in the article by J. Camenisch, M. Michels, having for reference "A group Signature Scheme with Improved Efficiency ”, In K. Ohta and D. Pei, editors, Advances in Cryptology - ASIACRYPT'98, volume 1514 of LNCS, pages 160-174. Springler-Verlag, 1998. Furthermore, this method is disadvantageous in that it imposes calculations on each member each time a member joins or leaves the group; however, these calculations can become frequent if the group dynamics are important.
Un des objectifs de l'invention est de remédier aux inconvénients des méthodes connues et précédemment décrites.One of the objectives of the invention is to remedy the drawbacks of the known and previously described methods.
Exposé de l'inventionStatement of the invention
A cet effet, l'invention a pour objet un procédé cryptographique de signature anonyme d'un message destiné à être mis en œuvre par un membre d'un groupe, ce groupe étant composé de n membres équipés chacun d'un moyen de calcul et d'un moyen de mémorisation associé. Ce procédé comprend des étapes initiales qui consistent lors de la constitution du groupe : dans une première étape, à calculer par un premier moyen de calcul d'une autorité de confiance, une paire de clés asymétriques communes aux membres du groupe, cette paire de clés se composant d'une clé publique et d'une clé privée communes, dans une deuxième étape, à calculer par le premier moyen de calcul une clé publique de groupe associée au groupe, dans une troisième étape, pour chaque membre, lors d'une interaction entre le moyen de calcul de l'autorité de confiance et le moyen de calcul du membre, à calculer une clé privée de groupe et à mémoriser cette clé privée de groupe dans le moyen de mémorisation du membre, chaque clé privée de groupe étant associée à la clé publique de groupe et étant différente pour chaque membre du groupe,To this end, the subject of the invention is a cryptographic method of anonymous signature of a message intended to be implemented by a member of a group, this group being composed of n members each equipped with a means of calculation and an associated storage means. This process comprises initial steps which consist in the constitution of the group: in a first step, to calculate by a first means of calculation of a trusted authority, a pair of asymmetric keys common to the members of the group, this pair of keys consisting of a public key and a common private key, in a second step, to be calculated by the first means of calculation a group public key associated with the group, in a third step, for each member, during an interaction between the means of calculating the trusted authority and the means of calculating the member, calculating a private group key and storing this private group key in the member memorizing means, each group private key being associated with the group public key and being different for each member of the group,
- dans une quatrième étape, à déterminer par le premier moyen de calcul autant de clés secrètes symétriques que de membres du groupe, dans une cinquième étape, à chiffrer par le premier moyen de calcul la clé privée commune avec chacune des clés secrètes pour obtenir autant de formes chiffrées de la clé privée commune que de membres non révoqués.- in a fourth step, to determine by the first means of calculation as many symmetric secret keys as there are members of the group, in a fifth step, to encrypt by the first means of calculation the common private key with each of the secret keys to obtain as many of encrypted forms of the common private key than of unrevoked members.
Et à chaque révocation au sein du groupe, le procédé comprend des étapes qui consistent : dans une sixième étape, à modifier par le premier moyen de calcul la paire de clés asymétriques communes pour déterminer une clé publique et une clé privée communes à jour, dans une septième étape, à chiffrer par le premier moyen de calcul la clé privée commune avec chacune des clés secrètes pour obtenir autant de formes chiffrées de la clé privée commune que de membres non révoqués.And each revocation within the group, the method comprises steps which consist: in a sixth step, by modifying by the first means of calculation the pair of common asymmetric keys to determine a public key and a private key up to date common, in a seventh step, to encrypt by the first means of calculation the common private key with each of the secret keys to obtain as many encrypted forms of the common private key as non-revoked members.
Et à chaque signature anonyme d'un message par le membre du groupe, ce message devant être transmis à un destinataire, le procédé comprend des étapes qui consistent :And with each anonymous signature of a message by the member of the group, this message having to be transmitted to a recipient, the method comprises steps which consist:
- dans une huitième étape, à mettre à jour la clé privée commune mémorisée par le moyen de mémorisation du membre uniquement si une des valeurs chiffrées de la clé privée commune est déchiffrable à l'aide de la clé secrète symétrique mémorisée par le moyen de mémorisation du membre,- in an eighth step, updating the common private key memorized by the member memorization means only if one of the encrypted values of the common private key is decipherable using the symmetric secret key memorized by the memorizing means of the member,
- dans une neuvième étape, à calculer par le moyen de calcul du membre, une signature dite anonyme du message à l'aide de sa clé privée de groupe,- in a ninth step, to be calculated by the member's calculation means, a so-called anonymous signature of the message using his private group key,
- dans une dixième étape, à calculer par le moyen de calcul du membre une signature dite additionnelle de l'ensemble composé du message et de la signature anonyme, à l'aide de la clé privée commune du membre. Le procédé selon l'invention consiste à compléter la signature anonyme d'un message effectuée par un membre avec une signature additionnelle. Cette signature additionnelle est calculée à l'aide d'une copie, détenue par le membre, d'une clé privée de signature identique pour l'ensemble des membres autorisés à signer et inconnue de tous les membres révoqués. Cette clé privée dite commune est mise à jour par l'autorité de confiance à chaque révocation d'un membre du groupe. La mise à jour de la copie détenue par le membre est déclenchée uniquement lors d'une phase de signature anonyme d'un message par ce membre et la mise à jour n'est possible que pour un membre non révoqué.- In a tenth step, to calculate by the member's calculation means a so-called additional signature of the set composed of the message and the anonymous signature, using the member's common private key. The method according to the invention consists in supplementing the anonymous signature of a message made by a member with an additional signature. This additional signature is calculated using a copy, held by the member, of a private signature key identical for all the members authorized to sign and unknown to all the dismissed members. This so-called common private key is updated by the trusted authority each time a member of the group is dismissed. The update of the copy held by the member is triggered only during an anonymous signature phase of a message by this member and the update is only possible for an unrevoked member.
Ainsi, un membre révoqué est toujours détecté car la signature additionnelle qu'il fournit est nécessairement fausse étant donné qu'il ne possède pas la clé privée commune mise à jour.Thus, a revoked member is always detected because the additional signature that it provides is necessarily false since it does not have the updated common private key.
Selon un autre objet, un procédé selon l'invention est tel que la constitution du groupe a heu à une date tlet est tel que les étapes consistent en outre :According to another object, a method according to the invention is such that the group is set up on a date that is such that the steps also consist of:
- lors de la première étape, à associer par le premier moyen de calcul la clé privée commune à une date de mise à jour égale à tl,- during the first step, to associate by the first means of calculation the common private key with an update date equal to tl,
- lors de la troisième étape, à mémoriser par le moyen de mémorisation de chaque membre la date de mise à jour de la clé privée commune, et est tel qu'à chaque révocation au sein du groupe à une date t2, les étapes consistent en outre :- during the third stage, to memorize by the memorization means of each member the date of updating of the common private key, and is such that at each revocation within the group at a date t2, the stages consist of outraged :
- lors de la sixième étape, à modifier par le premier moyen de calcul la date de mise à jour pour déterminer une date de mise à jour égale à la date t2, et est tel qu'à chaque signature anonyme d'un message par le membre du groupe, ce message devant être transmis à un destinataire, les étapes consistent en outre :- during the sixth step, to modify by the first means of calculation the update date to determine an update date equal to the date t2, and is such that on each anonymous signature of a message by the member of the group, this message having to be transmitted to a recipient, the steps also consist of:
- lors de la huitième étape, à mettre à jour la clé privée commune mémorisée par le moyen de mémorisation du membre uniquement si en outre la date de mise à jour mémorisée par le moyen de mémorisation du membre est différente de la date de mise à jour de la clé privée commune mise à jour par le premier moyen de calcul.- during the eighth step, updating the common private key stored by the member storage means only if in addition the update date stored by the member storage means is different from the update date of the common private key updated by the first means of calculation.
Selon un autre objet, un procédé selon l'invention est tel que les étapes consistent en outre :According to another object, a method according to the invention is such that the steps also consist of:
- lors de la troisième étape, à calculer en outre par le premier moyen de calcul, pour chaque membre du groupe, un identifiant du membre et à mémoriser en outre par le moyen de mémorisation de chaque membre l'identifiant du membre, et est tel qu'à chaque révocation au sein du groupe les étapes consistent en outre :- during the third step, to further calculate by the first calculation means, for each member of the group, an identifier of the member and to additionally memorize by the means of memorizing each member the identifier of the member, and is such that upon each dismissal within the group the steps also consist of:
- à calculer par le premier moyen de calcul pour chaque nouveau membre du groupe un identifiant.- to calculate by the first calculation means for each new member of the group an identifier.
Selon un autre objet, un procédé selon l'invention est tel que les étapes consistent en outre :According to another object, a method according to the invention is such that the steps also consist of:
- lors de la troisième étape, à mémoriser par un moyen de mémorisation relié au premier moyen de calcul la clé secrète symétrique de chaque membre, la paire de clés asymétriques communes aux membres du groupe et la clé publique de groupe, et est tel que pour chaque modification de la composition du groupe qui correspond à une révocation au sein du groupe, le procédé comprend en outre l'étape qui consiste : à supprimer la clé secrète du membre révoqué, du moyen de mémorisation relié au premier moyen de calcul, et est tel que pour mettre à jour la clé privée commune mémorisée par le moyen de mémorisation d'un membre, le procédé comprend en outre les étapes qui consistent :- during the third step, to memorize by a memorization means connected to the first means of calculation the symmetric secret key of each member, the pair of asymmetric keys common to the members of the group and the public group key, and is such that for each modification of the composition of the group which corresponds to a revocation within the group, the method further comprises the step which consists in: deleting the secret key of the revoked member, from the storage means connected to the first calculation means, and is such as for updating the common private key stored by the member storage means, the method further comprises the steps which consist:
- à lire par le moyen de calcul du membre, les différentes formes chiffrées de la clé privée commune qui sont mémorisées dans le moyen de mémorisation relié au premier moyen de calcul,- to read by the member's calculation means, the different encrypted forms of the common private key which are stored in the storage means connected to the first calculation means,
- à déchiffrer par le moyen de calcul du membre et à l'aide de la clé secrète mémorisée par le moyen de mémorisation du membre, les différentes formes chiffrées de la clé privée commune.- to decrypt by the member calculation means and using the secret key memorized by the member memorization means, the different encrypted forms of the common private key.
L'invention a en outre pour objet un dispositif cryptographique de signature anonyme d'un message numérique qui comprend :The subject of the invention is also a cryptographic device for anonymous signature of a digital message which comprises:
- un premier moyen de calcul pour calculer d'une part au moins une paire de clés asymétriques communes aux membres du groupe composé de n membres et d'autre part une clé publique de groupe associée au groupe, pour calculer pour chaque membre, lors d'une interaction avec le moyen de calcul du membre, une clé privée de groupe, chaque clé privée de groupe étant associée à la clé publique de groupe et étant différente pour chaque membre du groupe, pour déterminer autant de clés secrètes symétriques que de membres du groupe et pour chiffrer la clé privée commune avec chacune des clés secrètes symétriques pour obtenir autant de formes chiffrées de la clé privée commune que de membres non révoqués. Selon un autre objet, un dispositif selon l'invention comprend en outre : - un moyen de mémorisation relié au premier moyen de calcul via un réseau de communication pour mémoriser au moins la clé secrète symétrique de chaque membre du groupe, la clé publique de groupe, la clé publique commune aux membres du groupe et chacune des différentes formes chiffrées de la clé privée commune. L'invention a en outre pour objet une carte à puce destinée à un membre d'un groupe constitué de n membres et destinée à interagir avec un dispositif précédent. Cette carte comprend :a first calculation means for calculating on the one hand at least one pair of asymmetric keys common to the members of the group composed of n members and on the other hand a public group key associated with the group, to calculate for each member, during '' an interaction with the member's calculation means, a group private key, each group private key being associated with the group public key and being different for each member of the group, to determine as many symmetric secret keys as members of the group group and to encrypt the common private key with each of the symmetric secret keys to obtain as many encrypted forms of the common private key as there are unrevoked members. According to another object, a device according to the invention further comprises: - a storage means connected to the first calculation means via a communication network for storing at least the symmetric secret key of each member of the group, the group public key , the public key common to the members of the group and each of the different encrypted forms of the common private key. The invention further relates to a smart card intended for a member of a group consisting of n members and intended to interact with a previous device. This card includes:
- un moyen de mémorisation d'une clé privée commune aux membres du groupe, d'une clé privée de groupe du membre et d'une clé secrète symétrique attribuée au membre,a means of memorizing a private key common to the members of the group, a private group key of the member and a symmetric secret key allocated to the member,
- un moyen de mise à jour de la clé privée commune mémorisée par le moyen de mémorisation du membre pour mettre à jour la clé privée commune uniquement si une des valeurs chiffrées de la clé privée commune, calculées par le premier moyen de calcul du dispositif, est déchiffrable à l'aide de la clé secrète symétrique mémorisée par le moyen de mémorisation du membre,a means for updating the common private key stored by the member storage means for updating the common private key only if one of the encrypted values of the common private key, calculated by the first means of calculating the device, is decipherable using the symmetric secret key memorized by the member memorization means,
- un moyen de calcul pour calculer une signature anonyme d'un message à l'aide de sa clé privée de groupe et pour calculer une signature additionnelle de l'ensemble composé du message et de la signature anonyme à l'aide de la clé privée commune du membre.a calculation means for calculating an anonymous signature of a message using its private group key and for calculating an additional signature of the set composed of the message and the anonymous signature using the private key common of the member.
Selon un autre objet, une carte selon l'invention est telle que le moyen de mise à jour comprend un moyen de déchiffrement pour déchiffrer une des valeurs chiffrées de la clé privée commune, calculées par le premier moyen de calcul du dispositif, à l'aide de la clé privée commune mémorisée par le moyen de mémorisation du membre.According to another object, a card according to the invention is such that the updating means comprises a decryption means for decrypting one of the encrypted values of the common private key, calculated by the first calculation means of the device, at the using the common private key memorized by the member memorization means.
Brève description des figuresBrief description of the figures
D'autres caractéristiques et avantages de l'invention apparaîtront lors de la description qui suit et qui est faite en regard de figures annexées de modes particuliers de réalisation donnés à titre d'exemples non limitatifs. Ces figures représentent :Other characteristics and advantages of the invention will appear during the description which follows and which is given with reference to the appended figures of particular embodiments given by way of nonlimiting examples. These figures represent:
La figure 1 est un organigramme d'un procédé selon l'invention.Figure 1 is a flow diagram of a method according to the invention.
La figure 2 est un organigramme d'une réalisation particulière d'un procédé selon l'invention.FIG. 2 is a flow diagram of a particular embodiment of a method according to the invention.
La figure 3 est un schéma d'un mode particulier de mise en œuvre d'un procédé selon l'invention.Figure 3 is a diagram of a particular embodiment of a method according to the invention.
Description détaillée de modes de réalisation de l'invention La figure 1 représente un organigramme d'un procédé cryptographique de signature anonyme d'un message selon l'invention. Le procédé est destiné à être mis en œuvre par un membre d'un groupe composé de n membres. Chaque membre possède un moyen de calcul associé à un moyen de mémorisation. Le procédé se déroule en différentes étapes qui comprennent des étapes initiales et des étapes non-initiales. Les étapes initiales interviennent lors de la création du groupe et sont listées ci-après.Detailed description of embodiments of the invention FIG. 1 represents a flow diagram of a cryptographic method of anonymous signature of a message according to the invention. The method is intended to be implemented by a member of a group composed of n members. Each member has a means of calculation associated with a means of memorization. The process takes place in different steps which include initial steps and non-initial steps. The initial stages occur during the creation of the group and are listed below.
Une première étape consiste à calculer 1 par un premier moyen de calcul d'une autorité de confiance, une paire de clés asymétriques communes aux membres du groupe ; cette paire de clés se compose d'une clé publique et d'une clé privée communes. L'algorithme utilisé pour la première étape est un algorithme de signature à clé publique qui peut-être l'algorithme RSA, pour R.L. Rivest, Shamir et L. Adleman qui en sont les auteurs.A first step consists in calculating 1 by a first means of calculating a trusted authority, a pair of asymmetric keys common to the members of the group; this key pair consists of a common public key and a common private key. The algorithm used for the first step is a public key signature algorithm which may be the RSA algorithm, for R.L. Rivest, Shamir and L. Adleman who are the authors.
Une deuxième étape consiste à calculer 2 par le premier moyen de calcul une clé publique de groupe associée au groupe. Le calcul est effectué en faisant appel à un algorithme particulier. Cet algorithme peut être celui décrit dans l'article de J.Camemsch et M.Michels qui a pour référence "Efficient group signature signature schemes for large groups", In B.Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 à 424, Springer-Verlag, 1997.A second step consists in calculating 2 by the first means of calculating a group public key associated with the group. The calculation is performed using a particular algorithm. This algorithm can be that described in the article by J. Camemsch and M.Michels which has for reference "Efficient group signature signature schemes for large groups", In B. Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS , pages 410 to 424, Springer-Verlag, 1997.
Une troisième étape consiste à calculer 3 lors d'une interaction entre l'autorité de confiance et chaque membre du groupe pris successivement, une clé privée de groupe associée à la clé publique de groupe, chaque clé privée de groupe étant différente pour chaque membre du groupe. Lors de l'interaction, la clé privée de groupe du membre est mémorisée 4 par le moyen de mémorisation du membre, l'autorité de confiance n'a pas connaissance de cette clé. Le calcul est effectué en faisant appel à un algorithme particulier. Cet algorithme peut être celui décrit dans l'article de J.Camenisch et M.Michels qui a pour référence "Efficient group signature signature schemes for large groups", In B.Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 à 424, Springer-Verlag, 1997.A third step consists in calculating 3 during an interaction between the trusted authority and each member of the group taken successively, a group private key associated with the group public key, each group private key being different for each member of the group. group. During the interaction, the member's private group key is stored 4 by the member's storage means, the trusted authority is not aware of this key. The calculation is performed using a particular algorithm. This algorithm can be that described in the article by J.Camenisch and M.Michels which has for reference "Efficient group signature signature schemes for large groups", In B.Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS , pages 410 to 424, Springer-Verlag, 1997.
Une quatrième étape consiste à déterminer 5 par le premier moyen de calcul autant de clés secrètes symétriques que de membres du groupe. Cette détermination peut consister à tirer au hasard des chiffres et des lettres pour former une clé. Selon une variante, les clés secrètes symétriques peuvent vérifier une certaine distribution. Une telle distribution est décrite dans l'article de C.K.Wong, M.G.Gouda et S.S.Lam intitulé "Secure Group Communications Using Key Graph" - Technical Report TR-97- 23, 28 juillet 1997. Une cinquième étape consiste à chiffrer 6 par le premier moyen de calcul la clé privée commune avec chacune des clés secrètes pour obtenir autant de formes chiffrées de la clé privée commune que de membres non révoqués. Le chiffrement est effectué en faisant appel à un algorithme de chiffrement tel que l'algorithme AES.A fourth step consists in determining 5 by the first means of calculation as many symmetric secret keys as there are members of the group. This determination may consist of randomly drawing numbers and letters to form a key. Alternatively, the symmetric secret keys can verify a certain distribution. Such a distribution is described in the article by CKWong, MGGouda and SSLam entitled "Secure Group Communications Using Key Graph" - Technical Report TR-97-23, July 28, 1997. A fifth step consists in encrypting 6 by the first means of calculating the common private key with each of the secret keys to obtain as many encrypted forms of the common private key as there are non-revoked members. The encryption is performed using an encryption algorithm such as the AES algorithm.
Selon la variante précédente, les clés secrètes symétriques vérifient une certaine distribution qui permet de ne pas chiffrer la clé privée commune avec chacune des clés secrètes mais avec seulement certaines d'entre elles.According to the previous variant, the symmetric secret keys verify a certain distribution which makes it possible not to encrypt the common private key with each of the secret keys but with only some of them.
Après constitution, la composition du groupe peut se modifier 7. Une modification consiste soit en une révocation au sein du groupe, soit en l'entrée d'un nouveau membre dans le groupe. A chaque révocation au sein du groupe et optionnellement lors de l'arrivée d'un nouveau membre, le procédé comprend les étapes suivantes.After constitution, the composition of the group can change. 7. A modification consists either of a dismissal within the group, or of the entry of a new member in the group. At each dismissal within the group and optionally upon the arrival of a new member, the process includes the following steps.
Une sixième étape consiste à modifier 8 par le premier moyen de calcul la paire de clés asymétriques communes pour déterminer une clé publique et une clé privée communes à jour de la composition du groupe. Cette modification est effectuée en utilisant typiquement le même algorithme que celui utilisé lors de la première étape.A sixth step consists in modifying 8 by the first means of calculation the pair of common asymmetric keys to determine a public key and a common private key up to date with the composition of the group. This modification is carried out using typically the same algorithm as that used during the first step.
Une septième étape consiste à chiffrer 9 par le premier moyen de calcul la clé privée commune avec chacune des clés secrètes pour obtenir autant de formes chiffrées de la clé privée commune que de membres non révoqués. Ce chiffrement est effectué en utilisant typiquement le même algorithme que celui utilisé lors de la cinquième étape.A seventh step consists in encrypting 9 by the first means of calculating the common private key with each of the secret keys to obtain as many encrypted forms of the common private key as there are non-revoked members. This encryption is performed using typically the same algorithm as that used during the fifth step.
A un moment donné quelconque, un membre du groupe peut entreprendre de signer 10 un message avant de le transmettre à un destinataire. A chaque signature anonyme d'un message par le membre, le procédé comprend les étapes suivantes.At any given time, a group member can undertake to sign a message before forwarding it to a recipient. With each anonymous signature of a message by the member, the process comprises the following steps.
Une huitième étape consiste à mettre 11 à jour la clé privée commune mémorisée par le moyen de mémorisation du membre uniquement si une des valeurs chiffrées de la clé privée commune est déchiffrable à l'aide de la clé secrète symétrique mémorisée par le moyen de mémorisation du membre. Le déchiffrement est effectué en utilisant le même algorithme que celui utilisé lors de la septième étape, c'est-à-dire lors du chiffrement. La mise à jour est effectuée si l'algorithme de déchiffrement permet de déchiffrer une des valeurs chiffrées de la clé privée commune.An eighth step consists in updating 11 the common private key memorized by the member memorization means only if one of the encrypted values of the common private key is decipherable using the symmetric secret key memorized by the memorization means. member. The decryption is carried out using the same algorithm as that used during the seventh step, that is to say during the encryption. The update is performed if the decryption algorithm makes it possible to decrypt one of the encrypted values of the common private key.
Une neuvième étape consiste à calculer 12 par le moyen de calcul associé au moyen de mémorisation du membre, une signature dite anonyme du message à l'aide de sa clé privée de groupe. Le calcul est effectué en faisant appel à un algorithme de signature anonyme. Un tel algorithme est décrit dans l'article de J.Camenisch et M.Stadler qui a pour référence "Efficient group signature signature schemes for large groups", In B.Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 à 424, Springer-Verlag, 1997. Une autre description est donnée dans l'article de J.Camenisch et M.Michels qui a pour référence "A group signature scheme with improved efficiency. In K.Ohta et D.Pei, editors, Advances in cryptology- ASIACRYPT'98, volume 1514 of LNCS, pages 160-174. Springer-Verlag, 1998.A ninth step consists in calculating 12 by the calculation means associated with the member memorization means, a so-called anonymous signature of the message using his group private key. The calculation is performed using an anonymous signature algorithm. Such an algorithm is described in the article by J. Camenisch and M.Stadler who has for reference "Efficient group signature signature schemes for large groups", In B. Kaliski, editor, Advances in Cryptology - CRYPTO97, volume 1296 of LNCS, pages 410 to 424, Springer-Verlag, 1997. Another description is given in the article by J.Camenisch and M.Michels which has for reference "A group signature scheme with improved efficiency. In K.Ohta and D.Pei, editors, Advances in cryptology- ASIACRYPT'98, volume 1514 of LNCS , pages 160-174, Springer-Verlag, 1998.
Une dixième étape consiste à calculer 13 par le moyen de calcul du membre une signature dite additionnelle de l'ensemble composé du message et de la signature anonyme, à l'aide de la clé privée commune du membre. L'algorithme utilisé pour la dixième étape est un algorithme de signature à clé publique qui peut-être l'algorithme RSA.A tenth step consists in calculating 13 by the member calculation means a so-called additional signature of the set composed of the message and the anonymous signature, using the member's private common key. The algorithm used for the tenth step is a public key signature algorithm which may be the RSA algorithm.
La figure 2 est un organigramme d'une réalisation particulière du procédé selon l'invention. Les éléments déjà décrits en regard de la figure 1 ne sont pas re-décrits. Les éléments particuliers sont décrits ci-après.FIG. 2 is a flow diagram of a particular embodiment of the method according to the invention. The elements already described with reference to FIG. 1 are not re-described. The specific elements are described below.
La première étape consiste en outre à associer 14 une date de mise à jour égale à tl à la clé privée commune, en considérant que tl est la date de constitution du groupe.The first step further consists in associating 14 an update date equal to tl with the common private key, by considering that tl is the date of constitution of the group.
La troisième étape consiste en outre à mémoriser 15 par le moyen de mémorisation de chaque membre la date de mise à jour de la clé privée commune.The third step further consists in storing 15 by the storing means of each member the date of updating of the common private key.
A chaque modification de la clé privée commune à une date t2 lors de la sixième étape, le procédé consiste en outre à modifier 16 par le premier moyen de calcul la date de mise à jour pour déterminer une date de mise à jour égale à la date t2.At each modification of the private key common to a date t2 during the sixth step, the method furthermore consists in modifying 16 by the first means of calculating the update date to determine an update date equal to the date t2.
A chaque signature anonyme d'un message par un membre du groupe, ce message devant être transmis à un destinataire, la huitième étape consiste à mettre à jour la clé privée commune mémorisée par le moyen de mémorisation du membre si, en outre, la date de mise à jour mémorisée par le moyen de mémorisation du membre est différente 17 de la date de mise à jour de la clé privée commune mise à jour par le premier moyen de calcul. Par contre, si la date mémorisée par le moyen de mémorisation du membre est égale à la date de mise à jour de la clé privée de groupe mise à jour, il n'y a pas de mise à jour par le moyen de mémorisation du membre.With each anonymous signature of a message by a member of the group, this message having to be transmitted to a recipient, the eighth step consists in updating the common private key memorized by the means of memorization of the member if, in addition, the date update date stored by the member storage means is different from the update date of the common private key updated by the first calculation means. On the other hand, if the date memorized by the member memorization means is equal to the date of updating of the updated group private key, there is no update by the member memorization means .
Tant qu'il n'y a ni révocation, ni entrée d'un nouveau membre, il n'y a pas de mise à jour de la paire de clés asymétriques communes et de la date de mise à jour par le premier moyen de calcul. Par conséquent et de manière avantageuse, le moyen de calcul du membre ne met pas à jour sa clé privée commune, il utilise la clé privée commune qui est mémorisée dans le moyen de mémorisation du membre pour calculer la signature additionnelle.As long as there is neither revocation nor entry of a new member, there is no update of the pair of common asymmetric keys and of the date of update by the first means of calculation . Consequently and advantageously, the member's calculation means does not update his common private key, he uses the private key common which is stored in the member storage means for calculating the additional signature.
La figure 3 est un schéma d'un mode de mise en œuvre d'un procédé selon l'invention au moyen d'un système.FIG. 3 is a diagram of an embodiment of a method according to the invention by means of a system.
Le système comprend au moins un moyen 20 de calcul et autant de cartes 211 à puce que de membres dans le groupe.The system includes at least one calculation means and as many smart cards 211 as there are members in the group.
Une autorité de confiance, telle une personne physique, une personne morale, une administration nationale ou internationale, détient un moyen 20 de calcul représenté par un serveur sur la figure 3. Ce moyen de calcul 20 est relié par une première liaison 22 de communication à un réseau 23 de communication qui peut aussi bien être un réseau public comme internet, qu'un réseau privé comme un réseau LAN, abréviation des termes anglo-saxons Local Area Network.A trusted authority, such as a natural person, a legal person, a national or international administration, has a computing means 20 represented by a server in FIG. 3. This computing means 20 is connected by a first communication link 22 to a communication network 23 which may as well be a public network such as the Internet, as a private network such as a LAN network, short for Anglo-Saxon terms Local Area Network.
Chaque membre d'un groupe détient une carte 21 ! à puce qui comprend dans la puce un moyen 24 de mémorisation et un moyen 25 de calcul. Chaque membre détient en outre, ou a accès à, un lecteur 26 de cette carte rehé par une deuxième liaison 27 de communication à un ordinateur 28 personnel, ou tout ordinateur équivalent. L'ordinateur 28 personnel est rehé par une troisième liaison 29 de communication au réseau 23 de communication.Each member of a group has a 21 card! a chip which comprises in the chip a means 24 for storage and a means 25 for calculation. Each member also holds, or has access to, a reader 26 of this card rehé by a second communication link 27 to a personal computer 28, or any equivalent computer. The personal computer 28 is rehé by a third communication link 29 to the communication network 23.
La constitution du groupe auprès de l'autorité de confiance se traduit par une interaction entre l'autorité de confiance et chaque membre du groupe. Avant cette interaction, le serveur 20 de l'autorité de confiance calcule une paire de clés 30, 31 asymétriques communes aux membres du groupe et une clé 32 publique de groupe associée au groupe. Lors de chaque interaction, le serveur 20 de l'autorité de confiance et le moyen 25 de calcul du membre calculent une clé 33 ! privée de groupe. La clé 33ι privée de groupe est mémorisée dans le moyen 24 de mémorisation de la carte à puce du membre. Après interaction avec l'autorité de confiance, le membre possède une clé privée de groupe qui lui est propre et qui est différente de la clé privée de groupe de tous les autres membres. La paire 30, 31 de clés asymétriques communes se compose d'une clé 30 publique commune et d'une clé privée 31 commune. A cette paire 30, 31 peut être associée une date D de mise à jour qui est initialisée à la date tl de calcul de cette paire. Les clés privées de groupe sont différentes pour chaque membre du groupe et sont associées à la clé 32 publique du groupe.The constitution of the group with the trusted authority results in an interaction between the trusted authority and each member of the group. Before this interaction, the server 20 of the trusted authority calculates a pair of asymmetric keys 30, 31 common to the members of the group and a group public key 32 associated with the group. During each interaction, the server 20 of the trusted authority and the means 25 for calculating the member calculate a key 33 ! private group. The group private key 33ι is stored in the means 24 for storing the member's smart card. After interacting with the trusted authority, the member has his own group private key which is different from the group private key of all the other members. The pair 30, 31 of common asymmetric keys consists of a common public key 30 and a common private key 31. This pair 30, 31 can be associated with an update date D which is initialized on the date tl of calculation of this pair. The group private keys are different for each member of the group and are associated with the group public key 32.
Lors de chaque interaction, le serveur 20 de l'autorité de confiance détermine une clé 34 ! secrète symétrique. Le serveur 20 chiffre ensuite la clé 31 privée commune avec chacune des clés 34i secrètes pour obtenir autant de formes chiffrées de la clé 31 privée commune que de membres non révoqués.During each interaction, the server 20 of the trusted authority determines a key 34 ! symmetrical secret. The server 20 then encrypts the common private key 31 with each of the secret keys 34i to obtain as many encrypted forms of the common private key 31 as of non-revoked members.
Généralement lors de chaque interaction, le serveur 20 de l'autorité de confiance et le moyen 25 de calcul du membre calculent en outre un identifiant 35i du membre.Generally during each interaction, the server 20 of the trusted authority and the means 25 for calculating the member also calculate an identifier 35i of the member.
Pendant l'interaction entre l'autorité de confiance et un membre, la carte 211 à puce mémorise dans son moyen 24 de mémorisation la clé 31 privée commune, la clé 331 privée de groupe du membre et la clé 341 secrète attribuée au membre. Le transfert des clés dans une carte à puce est effectué lors de l'interaction par des procédés classiques.During the interaction between the trusted authority and a member, the chip card 211 stores in its storage means 24 the common private key 31, the member's private group key 33 1 and the secret key 341 assigned to the member. The keys are transferred to a smart card during interaction using conventional methods.
L'autorité de confiance conserve une copie de chacune des clés 34j secrètes symétriques et identifiants 35i de chaque membre dans un espace mémoire qui peut être une zone mémoire du serveur 20 ou un moyen 36 de mémorisation associé. Les différentes clés publiques et les valeurs chiffrées de la clé 31 privée commune sont rangées dans un annuaire qui est stocké dans une partie publique de l'espace mémoire 20, 36 ; c'est-à-dire directement accessible, en particulier, par chaque membre du groupe ou, en particulier, par chaque destinataire d'un message et ce par l'intermédiaire du réseau 23.The trusted authority keeps a copy of each of the symmetrical and identifying secret keys 34j 35i of each member in a memory space which can be a memory zone of the server 20 or an associated storage means 36. The different public keys and the encrypted values of the common private key 31 are stored in a directory which is stored in a public part of the memory space 20, 36; that is to say directly accessible, in particular, by each member of the group or, in particular, by each recipient of a message and this via the network 23.
Après constitution auprès de l'autorité de confiance, le groupe peut évoluer, soit par l'entrée d'un nouveau membre dans le groupe, soit par la révocation d'un membre du groupe.After constitution with the trusted authority, the group can evolve, either by the entry of a new member in the group, or by the dismissal of a member of the group.
A chaque révocation au sein du groupe, le serveur 20 modifie la paire de clés 30, 31 asymétriques communes pour déterminer une paire de clés asymétriques à jour de la composition du groupe. Cette mise à jour est effectuée à une date donnée dite de mise à jour. Elle peut aussi être éventuellement effectuée lors de l'entrée d'un nouveau membre dans le groupe.At each revocation within the group, the server 20 modifies the pair of common asymmetric keys 30, 31 to determine a pair of asymmetric keys up to date with the composition of the group. This update is performed on a given date known as the update. It can also be carried out when a new member enters the group.
Après détermination de cette paire de clés asymétriques communes à jour, le serveur 20 met à disposition sous formes chiffrées la clé 31 privée de cette paire de clés asymétriques pour chacune des cartes 211 à puce des membres non révoqués du groupe. Le serveur 20 calcule autant de formes chiffrées que de membres non révoqués en utilisant la clé 34; secrète personnelle à chacun de ces membres. A chaque évolution du groupe, le serveur 20 chiffre la clé 31 privée de la paire de clés 30, 31 asymétriques communes à jour.After determining this pair of up-to-date common asymmetric keys, the server 20 makes available in encrypted form the private key 31 of this pair of asymmetric keys for each of the smart cards 211 of the non-revoked members of the group. The server 20 calculates as many encrypted forms as there are non-revoked members by using the key 34; personal secret to each of these members. At each evolution of the group, the server 20 encrypts the private key 31 of the pair of up-to-date common asymmetric keys 30, 31.
A chacune des clés 34ι secrètes personnelles introduite comme argument d'entrée de l'algorithme de chiffrement utihsé correspond un résultat qui est la valeur chiffrée de la clé 31 privée commune de la paire de clés asymétriques à jour. Les différents résultats et, généralement, la date de mise à jour sont rangés dans l'annuaire.Each of the personal secret keys 34ι introduced as an input argument of the encryption algorithm used corresponds to a result which is the value encrypted of the common private key 31 of the pair of asymmetric keys up to date. The different results and, generally, the date of update are stored in the directory.
Lorsqu'un membre du groupe veut signer un message mémorisé dans un ordinateur 28 personnel, il introduit sa carte 21 ! à puce dans le lecteur 26 de carte relié à cet ordinateur 28. Le moyen 25 de calcul de la carte 21 ! à puce se connecte à l'espace 20, 36 mémoire dans lequel est stocké l'annuaire, via l'ordinateur 28 personnel et le réseau 23.When a member of the group wants to sign a message stored in a personal computer 28, he introduces his card 21 ! chip in the card reader 26 connected to this computer 28. The means 25 for calculating the card 21 ! smart connects to the memory space 20, 36 in which the directory is stored, via the personal computer 28 and the network 23.
La carte 21 ι à puce lit dans l'annuaire la date D de mise à jour de la clé privée commune. Le moyen 25 de calcul de la carte 211 à puce compare cette date D de mise à jour avec celle Oι qu'elle détient dans son moyen 24 de mémorisation. Soit ces dates sont différentes, soit ces dates sont identiques.The smart card 21 ι reads in the directory the date D to update the common private key. The means 25 for calculating the chip card 211 compares this update date D with that Oι which it holds in its storage means 24. Either these dates are different, or these dates are identical.
Si les dates sont différentes, la carte 21 ! à puce peut, par exemple, copier dans son moyen 24 de mémorisation les différentes formes chiffrées de la clé 31 privée commune. Le moyen 25 de calcul de la carte 21. r à puce peut alors entreprendre de déchiffrer chacune des formes chiffrées de la clé 31 privée commune à l'aide de l'algorithme de déchiffrement qui est associé à l'algorithme de chiffrement préalablement utihsé. Les arguments d'entrée comprennent d'une part, la clé 341 secrète personnelle mémorisée dans la carte 21 ! à puce et d'autre part, prises successivement, les formes chiffrées de la clé 31 privée commune. Au premier résultat correct de déchiffrement, la carte 21 ! à puce met à jour d'une part la clé 31 privée commune qu'elle détient dans son moyen 24 de mémorisation avec la valeur déchiffrée de la clé 31 privée chiffrée commune et d'autre part la date Dj; de mise à jour qu'elle détient dans son moyen 24 de mémorisation avec la date D de mise à jour associée à la valeur déchiffrée de la clé 31 privée chiffrée commune.If the dates are different, card 21! chip can, for example, copy into its storage means 24 the various encrypted forms of the common private key 31. The means 25 for calculating the smart card 21. r can then undertake to decrypt each of the encrypted forms of the common private key 31 using the decryption algorithm which is associated with the encryption algorithm previously used. The input arguments include on the one hand, the personal secret key 341 stored in the card 21 ! on the other hand, taken successively, the encrypted forms of the common private key 31. At the first correct decryption result, card 21! smart updates on the one hand the common private key 31 which it holds in its storage means 24 with the decrypted value of the common encrypted private key 31 and on the other hand the date Dj; update it holds in its storage means 24 with the update date D associated with the decrypted value of the common encrypted private key 31.
Une autre méthode consiste à placer devant chaque forme chiffrée de la clé 31 privée commune un identifiant du membre concerné. Le moyen 25 de calcul de la carte 21 i à puce peut alors entreprendre de tester chacune des formes chiffrées de la clé 31 privée commune à l'aide de l'identifiant. Lorsqu'elle arrive à un test valide, elle entreprend alors de déchiffrer la forme chiffrée de la clé 31 privée commune qui lui correspond à l'aide de l'algorithme de déchiffrement qui est associé à l'algorithme de chiffrement préalablement utilisé. Les arguments d'entrée comprennent d'une part, la clé 34χ secrète personnelle mémorisée dans la carte 21 ! à puce et d'autre part la forme chiffrée de la clé 31 privée commune. La carte 21 ! à puce met à jour d'une part la clé 31 privée commune qu'elle détient dans son moyen 24 de mémorisation avec la valeur déchiffrée de la clé 31 privée chiffrée commune et d'autre part la date Oι de mise à jour qu'elle détient dans son moyen 24 de mémorisation avec la date D de mise à jour associée à la valeur déchiffrée de la clé 31 privée chiffrée commune.Another method consists in placing before each encrypted form of the common private key 31 an identifier of the member concerned. The means 25 for calculating the smart card 21 i can then undertake to test each of the encrypted forms of the common private key 31 using the identifier. When it arrives at a valid test, it then undertakes to decrypt the encrypted form of the common private key 31 which corresponds to it using the decryption algorithm which is associated with the previously used encryption algorithm. The input arguments include on the one hand, the personal secret key 34χ stored in the card 21 ! on the other hand, the encrypted form of the common private key 31. Card 21! on the one hand updates the common private key 31 which it holds in its storage means 24 with the decrypted value of the common encrypted private key 31 and on the other hand the date Oι of updating day it holds in its storage means 24 with the update date D associated with the decrypted value of the common encrypted private key 31.
Si les dates sont identiques la carte à puce n'effectue pas de copie dans son moyen 24 de mémorisation des différentes formes chiffrées de la clé 31 privée commune. Cette situation se présente lorsque aucune évolution du groupe n'a eu lieu depuis l'entrée du membre dans le groupe ; la carte 21 ! à puce détient la dernière mise à jour de la clé 31 privée commune.If the dates are identical, the smart card does not make a copy in its means 24 of memorizing the different encrypted forms of the common private key 31. This situation arises when no change in the group has taken place since the member's entry into the group; card 21 ! chip holds the latest update of the common private key 31.
Après cette phase de mise à jour, le moyen 25 de calcul de la carte 211 à puce récupère le message mémorisé dans l'ordinateur 28. Le moyen 25 de calcul de la carte 211 à puce calcule une signature anonyme de ce message à l'aide de l'algorithme de signature. Les arguments d'entrée comprennent d'une part le message et d'autre part la clé 331 privée de groupe mémorisée dans le moyen 24 de mémorisation de la puce.After this updating phase, the means 25 for calculating the smart card 21 1 retrieves the message stored in the computer 28. The means 25 for calculating the smart card 21 1 calculates an anonymous signature of this message to using the signature algorithm. The input arguments comprise on the one hand the message and on the other hand the group private key 33 1 stored in the chip storage means 24.
A l'issue de ce calcul, le moyen 25 de calcul de la carte 211 à puce calcule une seconde signature dite additionnelle de l'ensemble formé du message et de la signature anonyme à l'aide de l'algorithme de signature précédent. Les arguments d'entrée comprennent d'une part l'ensemble formé du message et de la signature anonyme et d'autre part la clé 31 privée commune mémorisée dans le moyen de mémorisation du membre.At the end of this calculation, the means 25 for calculating the chip card 211 calculates a second so-called additional signature of the assembly formed of the message and the anonymous signature using the previous signature algorithm. The input arguments comprise on the one hand the assembly formed of the anonymous message and signature and on the other hand the common private key 31 stored in the member storage means.
En final, la carte 21 ! à puce transmet au destinataire choisi par le membre, la signature additionnelle, la signature anonyme et le message.Finally, card 21 ! smart transmits to the recipient chosen by the member, the additional signature, the anonymous signature and the message.
Le destinataire peut dans ces conditions vérifier que le membre qui a signé le message est un membre non révoqué. A cette fin, le destinataire vérifie chacune des deux signatures, la signature additionnelle et la signature anonyme, à l'aide de la clé publique commune, respectivement de la clé publique de groupe. Pour vérifier, le destinataire utilise un algorithme de vérification disponible par exemple sur un ordinateur 37 personnel. Les arguments d'entrée comprennent d'une part le message et d'autre part la clé publique commune, respectivement la clé publique de groupe.The recipient can in these conditions verify that the member who signed the message is a non-revoked member. To this end, the recipient verifies each of the two signatures, the additional signature and the anonymous signature, using the common public key, respectively the group public key. To verify, the recipient uses a verification algorithm available for example on a personal computer. The input arguments comprise on the one hand the message and on the other hand the common public key, respectively the group public key.
Une première application d'un procédé selon l'invention est le vote électronique. Le vote électronique se déroule en deux phases :A first application of a method according to the invention is electronic voting. Electronic voting takes place in two phases:
- une inscription sur une liste électorale auprès d'une autorité administrative,- registration on an electoral list with an administrative authority,
- une opération de vote auprès d'une urne connectée via un réseau de communication à un serveur d'une administration des votes.- a voting operation with a ballot box connected via a communication network to a server of a voting administration.
Lors de l'inscription, l'électeur obtient une clé privée de groupe selon un procédé selon l'invention. Dans cette mise en œuvre du procédé, la signature anonyme que pourra produire l'électeur à partir de sa clé privée de groupe est dite "corrélable". Ceci signifie que, dans le cas où l'électeur tenterait de signer de manière anonyme un second bulletin de vote en produisant une signature anonyme, ce bulletin serait rejeté par l'urne. En effet, la signature anonyme étant corrélable, l'urne est en mesure de vérifier qu'il s'agit d'une seconde signature anonyme.During registration, the voter obtains a private group key according to a method according to the invention. In this implementation of the process, the anonymous signature that the voter can produce from his group private key is said to be "correlable". This means that, in the event that the voter attempts to anonymously sign a second ballot by producing an anonymous signature, that ballot will be rejected by the ballot box. Indeed, the anonymous signature being correlable, the ballot box is able to verify that it is a second anonymous signature.
Un électeur malveillant ne peut pas prétendre avoir perdu sa clé privée de groupe, en recevoir une autre et être en mesure de voter deux fois. En effet, la mise en œuvre d'un procédé selon l'invention permet de lui interdire l'utilisation de la première clé privée de groupe ; cette clé privée de groupe est mise à jour au moment où il déclare avoir perdu la première clé privée de groupe. Cette perte est gérée par la mise en œuvre d'un procédé selon l'invention comme une révocation du membre.A malicious voter cannot claim to have lost their group private key, receive another, and be able to vote twice. Indeed, the implementation of a method according to the invention makes it possible to prohibit the use of the first group private key; this group private key is updated when he declares having lost the first group private key. This loss is managed by the implementation of a process according to the invention such as a revocation of the member.
Une seconde application d'un procédé selon l'invention est un service d'enchères électroniques. Les enchères font appel à trois protagonistes : un serveur d'enchères, une autorité de confiance et un client. L'ensemble des clients forme un groupe dit groupe des clients. Un utilisateur désirant s'inscrire au groupe des clients doit s'adresser à l'autorité de confiance qui lui fournit sa clé privée de groupe. Il obtient ainsi le droit de produire une signature anonyme de groupe. Muni de ce droit, il peut signer chacune de ses enchères de manière anonyme. Lors d'une enchère pour un certain produit, chaque membre du groupe des clients peut enchérir en signant un message contenant notamment le produit mis en vente et le montant de son enchère. Le serveur d'enchères peut vérifier l'appartenance au groupe et donc la validité de l'enchère en vérifiant la signature anonyme de groupe. Le vainqueur est celui qui donne la dernière enchère avant l'adjudication. Le dernier message reçu par le serveur d'enchères est donc celui du vainqueur. Le serveur adresse alors ce message et la signature anonyme de groupe correspondante à l'autorité de confiance qui est la seule capable d'en lever l'anonymat et donc de déterminer l'identité physique de l'acheteur du produit mis aux enchères.A second application of a method according to the invention is an electronic auction service. The auctions involve three protagonists: an auction server, a trusted authority and a client. All of the clients form a group called the client group. A user wishing to register with the group of clients must contact the trusted authority which provides him with his group private key. He thus obtains the right to produce an anonymous group signature. Armed with this right, he can sign each of his auctions anonymously. When bidding on a certain product, each member of the client group can bid by signing a message containing in particular the product put up for sale and the amount of their bid. The auction server can verify group membership and therefore the validity of the auction by verifying the anonymous group signature. The winner is the one who gives the last bid before the auction. The last message received by the auction server is therefore that of the winner. The server then addresses this message and the corresponding anonymous group signature to the trusted authority, which is the only one capable of lifting anonymity and therefore of determining the physical identity of the buyer of the product being auctioned.
Les enchères mettent en jeu des groupes dynamiques : de nouvelles personnes peuvent chaque jour s'inscrire au groupe, un membre peut quitter le groupe ou être exclu pour fraude à tout moment. Il est donc indispensable de mettre en place un système de révocation pour empêcher qu'un membre révoqué ne puisse se servir de sa signature de manière frauduleuse. En effet, le membre révoqué pourrait continuer à utiliser sa clé privée de groupe pour participer aux enchères et fausser le bon déroulement de ces dernières par exemple en faisant monter le montant. Et, s'il prend soin de se retirer suffisamment tôt du processus de façon à ne pas remporter les enchères en question, alors cette fraude n'est pas détectée puisque seule l'identité du gagnant est finalement révélée. La mise en œuvre d'un procédé selon l'invention permet de résoudre le problème de révocation d'un ou de membre(s) du groupe.The auctions involve dynamic groups: new people can join the group every day, a member can leave the group or be excluded for fraud at any time. It is therefore essential to set up a revocation system to prevent a revoked member from being able to use their signature fraudulently. Indeed, the revoked member could continue to use his private group key to participate in the auctions and distort the smooth running of the latter, for example by increasing the amount. And, if he takes care to withdraw early enough from the process so as not to win the auction in question, then this fraud is not detected since only the identity of the winner is finally revealed. The implementation of a method according to the invention makes it possible to solve the problem of revocation of one or of member (s) of the group.
Une troisième application d'un procédé selon l'invention est le paiement électronique. Elle met en jeu quatre protagonistes : un client, un commerçant, une banque et une autorité de confiance. Chaque client doit se faire identifier par le système et obtenir une clé privée de groupe avant de pouvoir effectuer sa première transaction. Pour effectuer un paiement, le client doit retirer des pièces électroniques auprès de sa banque. Les pièces qu'il retire sont anonymes grâce à l'utilisation d'un mécanisme dit de signature aveugle. La dépense d'une pièce C chez un commerçant se fait de la manière suivante : le chent génère une signature de groupe portant sur les pièces C et transmet l'ensemble signature et pièces C au commerçant. Le commerçant vérifie la signature de la banque attachée à chaque pièce C et vérifie la signature de groupe. Si chacune des deux signatures est valide, le commerçant accepte la transaction. A un moment donné du jour, le commerçant transmet à sa banque les signatures et les pièces reçues en paiement pour virement à son compte. En cas de fraude, par exemple par la réutilisation d'une même pièce dans plusieurs transactions, la banque envoie la signature de groupe portant sur la pièce litigieuse à l'autorité de confiance afin qu'elle identifie le chent indélicat et sanctionne le contrevenant.A third application of a method according to the invention is electronic payment. It involves four protagonists: a customer, a merchant, a bank and a trusted authority. Each client must be identified by the system and obtain a group private key before being able to make their first transaction. To make a payment, the customer must withdraw electronic documents from his bank. The pieces he removes are anonymous thanks to the use of a mechanism called blind signature. The expenditure of a C piece at a merchant is done as follows: the chent generates a group signature relating to C pieces and transmits the signature and C pieces set to the merchant. The merchant verifies the signature of the bank attached to each piece C and verifies the group signature. If each of the two signatures is valid, the merchant accepts the transaction. At a given time of the day, the merchant forwards to his bank the signatures and the documents received in payment for transfer to his account. In the event of fraud, for example by the reuse of the same coin in several transactions, the bank sends the group signature relating to the disputed document to the trusted authority so that it identifies the indelicate price and sanctions the offender.
Un mécanisme fiable de révocation des clés privées de groupe compromises est nécessaire afin d'éviter une fraude du type suivant : un client malhonnête signale à l'autorité de confiance la perte de sa clé privée de groupe s et décline alors toute responsabilité pour les fraudes qui pourraient être commises avec s. Le chent remet sa clé à son complice, lequel peut alors utiliser s pour signer les pièces c qu'il a légitimement retirées à la banque, puis les dépenser autant de fois qu'il le souhaite. Un procédé selon l'invention permet de résoudre le problème de la révocation des clés privées de groupe. A reliable mechanism for revoking compromised group private keys is necessary in order to avoid fraud of the following type: a dishonest client reports the loss of his group private key to the trusted authority and therefore declines all responsibility for fraud that could be committed with s. The chent gives his key to his accomplice, who can then use s to sign the coins c he has legitimately withdrawn from the bank, and then spend them as many times as he wishes. A method according to the invention solves the problem of revoking group private keys.

Claims

REVENDICATIONS
1. Procédé cryptographique de signature anonyme d'un message destiné à être mis en œuvre par un membre d'un groupe, ce groupe étant composé de n membres équipés chacun d'un moyen (25) de calcul et d'un moyen (24) de mémorisation associé, caractérisé en ce qu'il comprend des étapes initiales qui consistent lors de la constitution du groupe :1. Cryptographic method of anonymous signature of a message intended to be implemented by a member of a group, this group being composed of n members each equipped with a means (25) of calculation and a means (24 ) associated memorization, characterized in that it comprises initial stages which consist in the constitution of the group:
- dans une première étape, à calculer (1) par un premier moyen de calcul d'une autorité de confiance, une paire de clés (30,31) asymétriques communes aux membres du groupe, cette paire de clés se composant d'une clé (30) publique et d'une clé (31) privée communes, dans une deuxième étape, à calculer (2) par le premier moyen de calcul une clé (32) publique de groupe associée au groupe,- in a first step, to be calculated (1) by a first means of calculating a trusted authority, a pair of asymmetric keys (30,31) common to the members of the group, this pair of keys consisting of a key (30) public and of a common private key (31), in a second step, to calculate (2) by the first means of calculation a group public key (32) associated with the group,
- dans une troisième étape, pour chaque membre, lors d'une interaction entre le moyen de calcul de l'autorité de confiance et le moyen de calcul du membre, à calculer (3) une clé (331) privée de groupe et à mémoriser (4) cette clé (331) privée de groupe dans le moyen (24) de mémorisation du membre, chaque clé (33ι) privée de groupe étant associée à la clé (32) publique de groupe et étant différente pour chaque membre du groupe,- in a third step, for each member, during an interaction between the means of calculating the trusted authority and the means of calculating the member, to calculate (3) a group private key (33 1 ) and to memorize (4) this private group key (331) in the member memorization means (24), each private group key (33ι) being associated with the public group key (32) and being different for each member of the group ,
- dans une quatrième étape, à déterminer (5) par le premier moyen de calcul autant de clés (34i) secrètes symétriques que de membres du groupe, dans une cinquième étape, à chiffrer (6) par le premier moyen (20) de calcul la clé (31) privée commune avec chacune des clés (34;) secrètes pour obtenir autant de formes chiffrées de la clé (31) privée commune que de membres non révoqués, et en ce qu'à chaque révocation au sein du groupe, le procédé comprend des étapes qui consistent : dans une sixième étape, à modifier (8) par le premier moyen (20) de calcul la paire de clés (30, 31) asymétriques communes pour déterminer une clé (30) publique et une clé (31) privée communes à jour, dans une septième étape, à chiffrer (9) par le premier moyen (20) de calcul la clé (31) privée commune avec chacune des clés (34j) secrètes pour obtenir autant de formes chiffrées de la clé (31) privée commune que de membres non révoqués, et en ce qu'à chaque signature (10) anonyme d'un message par le membre du groupe, ce message devant être transmis à un destinataire, le procédé comprend des étapes qui consistent :- in a fourth step, to be determined (5) by the first means of calculation as many symmetrical secret keys (34i) as there are members of the group, in a fifth step, to be encrypted (6) by the first means (20) of calculation the common private key (31) with each of the secret keys (34;) to obtain as many encrypted forms of the common private key (31) as there are non-revoked members, and in that on each revocation within the group, the method comprises steps which consist: in a sixth step, of modifying (8) by the first means (20) of calculation the pair of common asymmetric keys (30, 31) to determine a public key (30) and a key (31 ) private common up to date, in a seventh step, to encrypt (9) by the first means (20) of calculation the private key (31) common with each of the secret keys (34j) to obtain as many encrypted forms of the key ( 31) private common only of non-revoked members, and in that on each anonymous signature (10) of a message by the group member, this message having to be transmitted to a recipient, the method comprises steps which consist of:
- dans une huitième étape, à mettre (11) à jour la clé (31) privée commune mémorisée par le moyen (24) de mémorisation du membre uniquement si une des valeurs chiffrées de la clé (31) privée commune est déchiffrable à l'aide de la clé (34^ secrète symétrique mémorisée par le moyen (24) de mémorisation du membre,- In an eighth step, updating (11) the common private key (31) stored by the member memorization means (24) only if one of the encrypted values of the common private key (31) is decryptable using the key (34 ^ symmetrical secret memorized by the member memorization means (24),
- dans une neuvième étape, à calculer (12) par le moyen (25) de calcul du membre, une signature dite anonyme du message à l'aide de sa clé (331) privée de groupe,in a ninth step, to be calculated (12) by the means (25) of calculating the member, a so-called anonymous signature of the message using its private group key (331),
- dans une dixième étape, à calculer (13) par le moyen (24) de calcul du membre une signature dite additionnelle de l'ensemble composé du message et de la signature anonyme, à l'aide de la clé (31) privée commune du membre.in a tenth step, to calculate (13) by the means (24) of calculating the member a so-called additional signature of the set composed of the message and the anonymous signature, using the common private key (31) of the member.
Procédé cryptographique de signature anonyme selon la revendication 1, dans lequel la constitution du groupe a heu à une date tl et dans lequel les étapes consistent en outre :The cryptographic anonymous signature method according to claim 1, in which the constitution of the group took place on a date tl and in which the steps further consist:
- lors de la première étape, à associer (14) par le premier moyen de calcul la clé (31) privée commune à une date de mise à jour égale à tl,- during the first step, to associate (14) by the first calculation means the common private key (31) with an update date equal to tl,
- lors de la troisième étape, à mémoriser (15) par le moyen (24) de mémorisation de chaque membre la date de mise à jour de la clé (31) privée commune, et dans lequel à chaque révocation au sein du groupe à une date t2, les étapes consistent en outre :- during the third step, to memorize (15) by the means (24) of memorizing each member the date of update of the common private key (31), and in which at each revocation within the group at a date t2, the steps also consist of:
- lors de la sixième étape, à modifier (16) par le premier moyen (20) de calcul la date de mise à jour pour déterminer une date de mise à jour égale à la date t2, et dans lequel à chaque signature anonyme d'un message par le membre du groupe, ce message devant être transmis à un destinataire, les étapes consistent en outre :- during the sixth step, to modify (16) by the first means (20) of calculating the update date to determine an update date equal to the date t2, and in which on each anonymous signature of a message by the group member, this message having to be transmitted to a recipient, the steps also consist of:
- lors de la huitième étape, à mettre (11) à jour la clé privée commune mémorisée par le moyen (24) de mémorisation du membre uniquement si en outre la date (O ) de mise à jour mémorisée par le moyen (24) de mémorisation du membre est différente de la date (D) de mise à jour de la clé (31) privée commune mise à jour par le premier moyen de calcul. - during the eighth step, to update (11) the common private key memorized by the member memorization means (24) only if in addition the date (O) of update memorized by the member (24) memorisation of the member is different from the date (D) of updating of the common private key (31) updated by the first means of calculation.
3. Procédé cryptographique de signature anonyme selon la revendication 1, dans lequel les étapes consistent en outre :3. Cryptographic anonymous signature method according to claim 1, in which the steps further consist of:
- lors de la troisième étape, à calculer (3) en outre par le premier moyen de calcul, pour chaque membre du groupe, un identifiant (35i) du membre et à mémoriser (4) en outre par le moyen (24) de mémorisation de chaque membre l'identifiant (35;) du membre, et en ce qu'à chaque révocation au sein du groupe les étapes consistent en outre : à calculer par le premier moyen (20) de calcul pour chaque nouveau membre du groupe un identifiant (35*).- during the third step, to calculate (3) in addition by the first means of calculation, for each member of the group, an identifier (35i) of the member and to store (4) in addition by the means (24) of memorization of each member the identifier (35;) of the member, and in that at each dismissal within the group the steps also consist: in calculating by the first means (20) of calculation for each new member of the group an identifier (35 *).
4. Procédé cryptographique de signature anonyme d'un message selon la revendication 3, dans lequel les étapes initiales consistent en outre : lors de la troisième étape, à mémoriser par un moyen (36) de mémorisation rehé au premier moyen (20) de calcul la clé (34j) secrète symétrique de chaque membre, la clé (32) publique de groupe, la clé (30) publique commune aux membres du groupe, chacune des différentes formes chiffrées de la clé (31) privée commune et chacun des identifiants (35i), chaque forme chiffrée de la clé (31) privée commune étant associée à un des identifiants (35;), et dans lequel pour chaque modification de la composition du groupe qui correspond à une révocation d'un des membres du groupe, le procédé comprend en outre l'étape qui consiste :4. Cryptographic method of anonymous signature of a message according to claim 3, in which the initial steps further consist: during the third step, to be memorized by a means (36) of memorization rehé to the first means (20) of calculation the symmetric secret key (34j) of each member, the group public key (32), the public key (30) common to the members of the group, each of the different encrypted forms of the common private key (31) and each of the identifiers ( 35i), each encrypted form of the common private key (31) being associated with one of the identifiers (35;), and in which for each modification of the composition of the group which corresponds to a revocation of one of the members of the group, the the method further includes the step of:
- à supprimer la clé (34;)secrète de ce membre, du moyen (36) de mémorisation relié au premier moyen (20) de calcul, et en ce que pour mettre à jour la clé (31) privée commune mémorisée par le moyen (24) de mémorisation du membre le procédé comprend en outre les étapes qui consistent :- to delete the secret key (34;) of this member, of the storage means (36) connected to the first calculation means (20), and in that to update the common private key (31) stored by the means (24) for memorizing the member, the method further comprises the steps which consist of:
- à lire par le moyen (25) de calcul du membre, la forme chiffrée de la clé (31) privée commune qui est mémorisée dans le moyen (36) de mémorisation rehé au premier moyen (20) de calcul et associée à l'identifiant (35i) du membre,- To read by the means (25) of calculation of the member, the encrypted form of the common private key (31) which is memorized in the means (36) of memorization rehé to the first means (20) of calculation and associated with the member identifier (35i),
- à déchiffrer par le moyen (25) de calcul du membre et à l'aide de la clé (34;) secrète mémorisée par le moyen (24) de mémorisation du membre, la forme chiffrée de la clé (31) privée commune précédemment lue. - To decipher by the means (25) of calculation of the member and using the secret key (34;) memorized by the means (24) for memorizing the member, the encrypted form of the private key (31) previously shared read.
5. Procédé cryptographique de signature anonyme d'un message selon la revendication 1, dans lequel les étapes initiales consistent en outre :5. Cryptographic method of anonymous signature of a message according to claim 1, in which the initial steps also consist of:
- lors de la troisième étape, à mémoriser par un moyen (36) de mémorisation rehé au premier moyen (20) de calcul la clé secrète de chaque membre, la paire de clés (30, 31) asymétriques communes aux membres du groupe et la clé (32) publique de groupe, et dans lequel pour chaque modification de la composition du groupe qui correspond à une révocation au sein du groupe, le procédé comprend en outre l'étape qui consiste :- during the third step, to be memorized by a memory means (36) rehé to the first means (20) of calculating the secret key of each member, the pair of asymmetrical keys (30, 31) common to the members of the group and the group public key (32), and in which for each modification of the group composition which corresponds to a revocation within the group, the method further comprises the step which consists in:
- à supprimer la clé secrète du membre révoqué, du moyen (36) de mémorisation rehé au premier moyen (20) de calcul, et en ce que pour mettre à jour la clé (31) privée commune mémorisée par le moyen (24) de mémorisation d'un membre le procédé comprend en outre les étapes qui consistent :- to delete the secret key of the revoked member, from the memorized means (36) to the first calculation means (20), and in that to update the common private key (31) memorized by the means (24) memorisation of a member the method further comprises the steps which consist:
- à lire par le moyen (25) de calcul du membre, les différentes formes chiffrées de la clé (31) privée commune qui sont mémorisées dans le moyen (36) de mémorisation relié au premier moyen (20) de calcul,- to read by the member calculation means (25), the different encrypted forms of the common private key (31) which are stored in the storage means (36) connected to the first calculation means (20),
- à déchiffrer par le moyen (25) de calcul du membre et à l'aide de la clé (34i) secrète mémorisée par le moyen (24) de mémorisation du membre, les différentes formes chiffrées de la clé (31) privée commune.- To decipher by the means (25) of calculation of the member and using the secret key (34i) memorized by the means (24) for memorizing the member, the different encrypted forms of the common private key (31).
6. Dispositif cryptographique de signature anonyme d'un message numérique, caractérisé en ce qu'il comprend :6. Cryptographic device for anonymous signature of a digital message, characterized in that it comprises:
- un premier moyen (20) de calcul pour calculer (1, 2) d'une part au moins une paire de clés (30, 31) asymétriques communes aux membres du groupe composé de n membres et d'autre part une clé (32) publique de groupe associée au groupe, pour calculer (3) pour chaque membre, lors d'une interaction avec le moyen (25) de calcul du membre, une clé (33^ privée de groupe, chaque clé (331) privée de groupe étant associée à la clé (32) publique de groupe et étant différente pour chaque membre du groupe, pour déterminer (5) autant de clés (34;) secrètes symétriques que de membres du groupe et pour chiffrer (6) la clé (31) privée commune avec chacune des clés (34;) secrètes symétriques pour obtenir autant de formes chiffrées de la clé (31) privée commune que de membres non révoqués. - a first calculation means (20) for calculating (1, 2) on the one hand at least one pair of asymmetric keys (30, 31) common to the members of the group composed of n members and on the other hand a key (32 ) group public associated with the group, to calculate (3) for each member, during an interaction with the means (25) for calculating the member, a key (33 ^ group private, each key (331) group private being associated with the group public key (32) and being different for each member of the group, to determine (5) as many symmetrical secret keys (34;) as group members and to encrypt (6) the key (31) private common with each of the symmetric secret keys (34;) to obtain as many encrypted forms of the common private key (31) as non-revoked members.
7. Dispositif cryptographique de signature anonyme d'un message numérique selon la revendication 6, dans le dispositif comprend en outre :7. Cryptographic device for anonymous signature of a digital message according to claim 6, in the device further comprising:
- un moyen (36) de mémorisation rehé au premier moyen (20) de calcul via un réseau (23) de communication pour mémoriser au moins la clé (34;) secrète symétrique de chaque membre du groupe, la clé (32) pubhque de groupe, la clé (30) pubhque commune aux membres du groupe et chacune des différentes formes chiffrées de la clé (31) privée commune.a means (36) of memorizing rehé to the first means (20) of calculation via a communication network (23) to memorize at least the secret symmetric key (34;) of each member of the group, the public key (32) of group, the public key (30) common to the members of the group and each of the different encrypted forms of the common private key (31).
8. Carte (2 ) à puce destinée à un membre d'un groupe constitué de n membres et destinée à interagir avec un dispositif selon l'une des revendications 6 et 7, caractérisé en ce qu'elle comprend :8. Chip card (2) intended for a member of a group consisting of n members and intended to interact with a device according to one of claims 6 and 7, characterized in that it comprises:
- un moyen (24) de mémorisation d'une clé (31) privée commune aux membres du groupe, d'une clé (33 i) privée de groupe du membre et d'une clé (34χ) secrète symétrique attribuée au membre,a means (24) for storing a private key (31) common to the members of the group, a private group key (33 i) for the member and a symmetric secret key (34χ) assigned to the member,
- un moyen (25) de mise à jour de la clé (31) privée commune mémorisée par le moyen (24) de mémorisation du membre pour mettre (11) à jour la clé (31) privée commune uniquement si une des valeurs chiffrées de la clé (31) privée commune, calculée par le premier moyen (20) de calcul du dispositif, est déchiffrable à l'aide de la clé (341) secrète symétrique mémorisée par le moyen (24) de mémorisation du membre,- a means (25) for updating the common private key (31) memorized by the member memorization means (24) for updating (11) the common private key (31) only if one of the encrypted values of the common private key (31), calculated by the first means (20) for calculating the device, is decipherable using the secret symmetric key (341) memorized by the member memorization means (24),
- un moyen (25) de calcul pour calculer (12) une signature anonyme d'un message à l'aide de sa clé (33 ) privée de groupe et pour calculer (13) une signature additionnelle de l'ensemble composé du message et de la signature anonyme à l'aide de la clé (31) privée commune du membre.a calculation means (25) for calculating (12) an anonymous signature of a message using its private group key (33) and for calculating (13) an additional signature of the set composed of the message and anonymous signature using the member's common private key (31).
9. Carte (2 li) à puce selon la revendication 8 dans laquelle le moyen (25) de mise à jour comprend un moyen de déchiffrement pour déchiffrer une des valeurs chiffrées de la clé (31) privée commune, calculée (1) par le premier moyen (20) de calcul du dispositif, à l'aide de la clé (34ι) secrète symétrique mémorisée par le moyen (24) de mémorisation du membre.9. Smart card (2 li) according to claim 8 wherein the updating means (25) comprises a decryption means for decrypting one of the encrypted values of the common private key (31), calculated (1) by the first means (20) for calculating the device, using the symmetric secret key (34ι) memorized by the member memorization means (24).
10. Système cryptographique de signature anonyme d'un message numérique destiné à mettre en œuvre un procédé selon la revendication 1, caractérisé en ce qu'il comprend :10. Cryptographic system for anonymous signature of a digital message intended to implement a method according to claim 1, characterized in that it comprises:
- au moins un dispositif selon l'une des revendications 6 et 7 et au moins autant de cartes (211) à puce selon la revendication 8 que de membres dans le groupe. - at least one device according to one of claims 6 and 7 and at least as many smart cards (211) according to claim 8 as there are members in the group.
EP02801132A 2002-01-04 2002-12-13 Method and device for anonymous signature with a shared private key Withdrawn EP1461898A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0200107A FR2834598B1 (en) 2002-01-04 2002-01-04 METHOD AND DEVICE FOR ANONYMOUS SIGNATURE USING A SHARED PRIVATE KEY
FR0200107 2002-01-04
PCT/FR2002/004335 WO2003061193A1 (en) 2002-01-04 2002-12-13 Method and device for anonymous signature with a shared private key

Publications (1)

Publication Number Publication Date
EP1461898A1 true EP1461898A1 (en) 2004-09-29

Family

ID=8871175

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02801132A Withdrawn EP1461898A1 (en) 2002-01-04 2002-12-13 Method and device for anonymous signature with a shared private key

Country Status (6)

Country Link
US (1) US7571324B2 (en)
EP (1) EP1461898A1 (en)
JP (1) JP4082717B2 (en)
AU (1) AU2002364839A1 (en)
FR (1) FR2834598B1 (en)
WO (1) WO2003061193A1 (en)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10181953B1 (en) 2013-09-16 2019-01-15 Amazon Technologies, Inc. Trusted data verification
GB2407948B (en) * 2003-11-08 2006-06-21 Hewlett Packard Development Co Smartcard with cryptographic functionality and method and system for using such cards
US8037314B2 (en) * 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
WO2006027933A1 (en) * 2004-09-03 2006-03-16 Nec Corporation Group signature system, member state judgment device, group signature method, and member state judgment program
US7516326B2 (en) * 2004-10-15 2009-04-07 Hewlett-Packard Development Company, L.P. Authentication system and method
US20060112271A1 (en) * 2004-11-22 2006-05-25 Murata Kikai Kabushiki Kaisha Cipher mail server device
US8074067B2 (en) * 2005-02-10 2011-12-06 Nec Corporation Member certificate acquiring device, member certificate issuing device, group signing device, and group signature verifying device
JP2007004461A (en) * 2005-06-23 2007-01-11 Nec Corp Service providing system, outsourcing agency apparatus, service providing method, and program
FR2892252B1 (en) * 2005-10-17 2008-01-25 Oberthur Card Syst Sa METHOD AND DEVICE FOR CREATING A GROUP SIGNATURE AND METHOD AND DEVICE FOR VERIFYING AN ASSOCIATED GROUP SIGNATURE.
EP1826979A1 (en) * 2006-02-27 2007-08-29 BRITISH TELECOMMUNICATIONS public limited company A system and method for establishing a secure group of entities in a computer network
WO2007099276A1 (en) * 2006-03-02 2007-09-07 British Telecommunications Public Limited Company Message processing methods and systems
US8615801B2 (en) * 2006-08-31 2013-12-24 Microsoft Corporation Software authorization utilizing software reputation
US8090954B2 (en) 2007-03-16 2012-01-03 Microsoft Corporation Prevention of unauthorized forwarding and authentication of signatures
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
EP1976220A1 (en) * 2007-03-30 2008-10-01 British Telecommunications Public Limited Company Computer network
EP1975830A1 (en) * 2007-03-30 2008-10-01 British Telecommunications Public Limited Company Distributed computer system
JP5186790B2 (en) 2007-04-06 2013-04-24 日本電気株式会社 Electronic money transaction method and electronic money system
US20080301433A1 (en) * 2007-05-30 2008-12-04 Atmel Corporation Secure Communications
JP4971917B2 (en) * 2007-09-11 2012-07-11 日本放送協会 Signature generation device, signature verification device, group management device, and program thereof
US8464058B1 (en) 2008-04-08 2013-06-11 Hewlett-Packard Development Company, L.P. Password-based cryptographic method and apparatus
JP5327223B2 (en) * 2008-07-28 2013-10-30 日本電気株式会社 Signature system
FR2950213A1 (en) * 2009-09-11 2011-03-18 France Telecom METHOD FOR GENERATING A DIGITAL CERTIFICATE
EP2572471A1 (en) * 2010-05-19 2013-03-27 Koninklijke Philips Electronics N.V. Attribute-based digital signature system
GB2490483B (en) 2011-04-26 2019-05-29 Hewlett Packard Entpr Dev Lp Digital signature method and system
ES2400895B1 (en) * 2011-05-13 2014-03-24 Telefónica, S.A. METHOD FOR MAKING A DIGITAL GROUP SIGNATURE
FR2979044B1 (en) * 2011-08-09 2013-08-30 Morpho METHOD FOR MANAGING AND CONTROLLING DATA OF DIFFERENT FIELDS OF IDENTITY ORGANIZED IN THE ENHANCEMENT STRUCTURE
KR101543711B1 (en) * 2011-10-11 2015-08-12 한국전자통신연구원 Lightweight Group Signature System and Schemes with Short Signatures
US10038679B2 (en) * 2012-12-24 2018-07-31 Intel Corporation Centralized secure device pairing
CN103208151B (en) * 2013-04-03 2016-08-03 天地融科技股份有限公司 Process the method and system of operation requests
US9985966B2 (en) * 2014-01-07 2018-05-29 Empire Technology Development Llc Anonymous signature scheme
US20170288866A1 (en) * 2016-03-30 2017-10-05 AVAST Software s.r.o. Systems and methods of creating a distributed ring of trust
US11257066B2 (en) 2016-09-30 2022-02-22 Middleware, Inc. Automated digital method and system of providing or sharing access
US10776772B2 (en) 2016-09-30 2020-09-15 Middleware, Inc. Automated digital method and system of providing or sharing access
US20220051314A1 (en) * 2018-09-12 2022-02-17 Nec Corporation Information processing apparatus, information processing system, member identification method, and non-transitory computer readable medium storing program
FR3091107A1 (en) * 2018-12-24 2020-06-26 Orange Method and system for generating keys for an anonymous signature scheme
US10735205B1 (en) * 2019-03-08 2020-08-04 Ares Technologies, Inc. Methods and systems for implementing an anonymized attestation chain
US10790990B2 (en) 2019-06-26 2020-09-29 Alibaba Group Holding Limited Ring signature-based anonymous transaction
US11576037B2 (en) * 2019-10-18 2023-02-07 Huawei Technologies Co., Ltd. Issuing offline PKI certificates in distributed V2X network
US11509484B1 (en) 2019-12-18 2022-11-22 Wells Fargo Bank, N.A. Security settlement using group signatures
US11265176B1 (en) 2019-12-18 2022-03-01 Wells Fargo Bank, N.A. Systems and applications to provide anonymous feedback
US11398916B1 (en) 2019-12-18 2022-07-26 Wells Fargo Bank, N.A. Systems and methods of group signature management with consensus

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298153B1 (en) * 1998-01-16 2001-10-02 Canon Kabushiki Kaisha Digital signature method and information communication system and apparatus using such method
JP2000124887A (en) * 1998-10-14 2000-04-28 Fuji Xerox Co Ltd Enciphering/decoding method for group unit, and method and device for signature
JP2000148012A (en) * 1998-11-12 2000-05-26 Fuji Xerox Co Ltd Device and method for authentication

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO03061193A1 *

Also Published As

Publication number Publication date
US7571324B2 (en) 2009-08-04
JP4082717B2 (en) 2008-04-30
FR2834598A1 (en) 2003-07-11
JP2005525721A (en) 2005-08-25
WO2003061193A1 (en) 2003-07-24
AU2002364839A1 (en) 2003-07-30
FR2834598B1 (en) 2004-02-20
US20050169461A1 (en) 2005-08-04

Similar Documents

Publication Publication Date Title
WO2003061193A1 (en) Method and device for anonymous signature with a shared private key
EP2441207B1 (en) Cryptographic method for anonymous authentication and separate identification of a user
EP1459479A2 (en) Cryptographic system for group signature
EP1612991B1 (en) Electronic voting method and corresponding system in a high security network
FR2625636A1 (en) SYSTEM FOR ROUTING INFORMATION FOR RELIABLE AUTHENTICATION OF A MULTITUDE OF DOCUMENTS
WO2005122466A1 (en) Method and system for generating a list signature
FR2625013A1 (en) RELIABLE DOCUMENT AUTHENTICATION SYSTEM AND METHOD
WO2011117486A1 (en) Non-hierarchical infrastructure for the management of paired security keys of physical persons
WO2007012584A1 (en) Method for controlling secure transactions using a single multiple dual-key device, corresponding physical device, system and computer programme
EP2345202A2 (en) Digital signature method in two steps
WO2007045745A1 (en) Method and device for creating a group signature and related method and device for verifying a group signature
WO2007012583A1 (en) Method for controlling secure transactions using a single physical device, corresponding physical device, system and computer programme
EP1523824B1 (en) List signature method and application to electronic voting
EP1466304A1 (en) Cryptographic revocation method using a chip card
FR2720209A1 (en) Method of performing a secure electronic transaction
EP3965361A1 (en) Data exchange between a client and a remote device, for example a secure module
CA2831167C (en) Non-hierarchical infrastructure for managing twin-security keys of physical persons or of elements (igcp/pki)
EP1989819B1 (en) Method for certifying a public key by an uncertified provider
WO2008081151A2 (en) Method for signing an anonymous and correlatable list
FR2813467A1 (en) PROCESS FOR GENERATING NON-REPUDIABLE SIGNATURES, IN PARTICULAR BY AN ON-BOARD SYSTEM, AND ON-BOARD SYSTEM FOR IMPLEMENTING THE PROCESS
FR2949932A1 (en) CRYPTOGRAPHIC METHOD OF ANONYMOUS SUBSCRIPTION TO SERVICE

Legal Events

Date Code Title Description
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

17P Request for examination filed

Effective date: 20040702

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SI SK TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

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

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20120605