FR2775399A1 - Digital signature procedure based on blind signatures for use in cryptography and electronic payment systems - Google Patents
Digital signature procedure based on blind signatures for use in cryptography and electronic payment systems Download PDFInfo
- Publication number
- FR2775399A1 FR2775399A1 FR9802196A FR9802196A FR2775399A1 FR 2775399 A1 FR2775399 A1 FR 2775399A1 FR 9802196 A FR9802196 A FR 9802196A FR 9802196 A FR9802196 A FR 9802196A FR 2775399 A1 FR2775399 A1 FR 2775399A1
- Authority
- FR
- France
- Prior art keywords
- signature
- message
- user
- sep
- calculates
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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/3257—Cryptographic 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 blind signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
Description
PROCEDE DE SIGNATURE NUMERIQUE BORGNE
DESCRIPTION
Domaine technique
La présente invention a pour objet un procédé de signature numérique. Ce procédé comprend, d'une part, une opération de retrait et d'autre part, une opération de présentation de la signature.BORGNE DIGITAL SIGNATURE METHOD
DESCRIPTION
Technical area
The present invention relates to a digital signature method. This method comprises, on the one hand, a withdrawal operation and, on the other hand, a presentation operation of the signature.
L'invention trouve une application notamment dans le paiement électronique. The invention finds application particularly in the electronic payment.
Etat de la technique antérieure
Un concept particulier de signature numérique, dit signature aveugle, a été introduit par D. CHAUM dans un article intitulé "Blind Signatures for Untraceable
Payments" publié dans "Proceedings of CRYPTO'82, Plenum
Press, 1983, pp. 199-203.State of the art
A particular concept of digital signature, called blind signature, was introduced by D. CHAUM in an article entitled "Blind Signatures for Untraceable
Payments "published in" Proceedings of CRYPTO'82, Plenum
Press, 1983, pp. 199-203.
Un protocole de signature aveugle est un protocole cryptographique mettant en jeu deux entités, un "utilisateur" et un "émetteur", l'utilisateur faisant signer un message à l'émetteur, de telle manière que ce dernier n'obtienne aucune information sur le contenu du message qu'il signe. De plus, après avoir signé plusieurs messages, l'émetteur est incapable, à la vue d'une signature qu'il a contribué à créer, de déterminer lors de quelle exécution du protocole cette signature a été obtenue. A blind signature protocol is a cryptographic protocol involving two entities, a "user" and a "transmitter", the user sending a message to the issuer, so that the latter does not obtain any information on the content of the message he signs. Moreover, after having signed several messages, the sender is unable, at the sight of a signature that he helped to create, to determine at which execution of the protocol this signature was obtained.
Les protocoles de signature aveugle sont utilisés dans des applications nécessitant l'anonymat, telles que les élections électroniques ou la monnaie électronique. Dans les systèmes de paiement électronique anonyme, l'expression "pièce électronique" désigne une donnée signée numériquement par la banque (l'émetteur de monnaie électronique) . La fonction de signature utilisée par la banque détermine la valeur faciale de la pièce. Lors d'une phase dite de "retrait", l'utilisateur (le client) achète ces pièces électroniques. Pour garantir l'anonymat, les pièces retirées par l'utilisateur doivent être inconnues de la banque. A cette fin, cette dernière signe de manière aveugle des données que l'utilisateur crée de manière secrète. L'utilisateur se trouve ainsi en possession de pièces valides que la banque elle-même est incapable d'associer à l'utilisateur qui les a retirées. Blind signature protocols are used in applications that require anonymity, such as electronic elections or e-money. In anonymous electronic payment systems, the term "electronic document" refers to data digitally signed by the bank (the issuer of electronic money). The signature function used by the bank determines the face value of the coin. During a phase called "withdrawal", the user (the customer) buys these electronic parts. To ensure anonymity, parts removed by the user must be unknown to the bank. For this purpose, the latter blindly signs data that the user secretly creates. The user is thus in possession of valid parts that the bank itself is unable to associate with the user who removed them.
L'anonymat est parfait. Le paiement correspond ensuite à un transfert de pièces électroniques du client au commerçant. Ce dernier contacte alors la banque (cas du paiement en ligne), laquelle conserve, dans sa base de données, toutes les pièces non expirées qui ont déjà été dépensées, pour s'assurer que les pièces qui lui sont présentées n'ont pas déjà été dépensées lors d'une transaction antérieure. Les commerçants déposent ensuite à la banque, lors de la phase dite de "remise", les pièces qu'ils ont reçues en paiement, pour compensation de leur valeur.Anonymity is perfect. The payment then corresponds to a transfer of electronic parts from the customer to the merchant. The latter then contacts the bank (in the case of online payment), which keeps, in its database, all unexpired coins that have already been spent, to ensure that the coins presented to it do not already have spent in a previous transaction. The merchants then deposit at the bank, during the so-called "surrender" phase, the coins they have received in payment, for compensation of their value.
Divers modes de mise en oeuvre d'une signature aveugle ont été développés et décrits. On peut en trouver des exemples notamment dans l'article de D. Various modes of implementation of a blind signature have been developed and described. Examples can be found in the article by D.
CHAUM et T.P. PEDERSEN, intitulé "Wallet Databases with
Observers", publié dans Proceedings of Crypto'92,
Lecture Notes in Computer Science, vol. 740, Springer
Verlag, pp. 89-105, ainsi que dans l'article de T.CHAUM and TP PEDERSEN, entitled "Wallet Databases with
Observers ", published in Proceedings of Crypto'92,
Reading Notes in Computer Science, Vol. 740, Springer
Verlag, pp. 89-105, as well as in the article by T.
OKAMOTO, intitulé "Provably Secure and Practical
Identification Schemes and Corresponding Signature
Schemes", publié dans Proceedings of Crypto'92, Lecture
Notes in Computer Science, vol. 740, Springer Verlag, pp. 31-53. Le protocole d'authentification de Schnorr, dont dérivent les protocoles de signature aveugle utilisés dans les articles ci-dessus, est lui-même décrit dans l'article de C.P. SCHNORR, intitulé "Efficient Signature Generation by Smart Cards", publié dans Journal of Cryptology, 4(3) 1991, pp. 161-164.OKAMOTO, entitled "Provably Secure and Practical
Identification Schemes and Corresponding Signature
Schemes ", published in Proceedings of Crypto'92, Lecture
Notes in Computer Science, Vol. 740, Springer Verlag, pp. 31-53. The Schnorr authentication protocol, from which the blind signature protocols used in the above articles derive, is itself described in the article by CP SCHNORR, entitled "Efficient Signature Generation by Smart Cards", published in Journal of Cryptology, 4 (3) 1991, pp. 161-164.
Dans le protocole d'authentification de SCHNORR, et dans les schémas de signature aveugle qui en dérivent, l'émetteur E choisit au hasard une clef secrète SE, calcule une clef publique p=gSF, où g est un élément générateur connu de tous. Puis l'entité E publie sa clef publique P de façon que chacun la connaisse comme étant associée à l'identité de E. La clef publique P ne permet pas de retrouver la clef secrète SE que seul E connaît. En effet, la fonction exponentielle , qui permet de passer de SE à P, est difficilement inversible (la taille des paramètres est choisie de façon que le temps nécessaire pour retrouver
SE à partir de P soit trop long pour les ordinateurs disponibles à l'époque de la mise en oeuvre du protocole).In the SCHNORR authentication protocol, and in the blind signature schemes derived therefrom, the transmitter E randomly chooses a secret key SE, calculates a public key p = gSF, where g is a generator element known to all. Then the entity E publishes its public key P so that everyone knows it as being associated with the identity of E. The public key P does not find the secret key SE that only E knows. Indeed, the exponential function, which makes it possible to go from SE to P, is hardly invertible (the size of the parameters is chosen so that the time necessary to find
SE from P is too long for the computers available at the time of the implementation of the protocol).
Dans le schéma d'authentification de SCHNORR, l'entité E prouve à une entité utilisatrice U qu'elle connaît la clef secrète SE sans toutefois révéler celleci. Cette preuve constitue pour E un moyen de s'authentifier auprès de l'utilisateur U. In the SCHNORR authentication scheme, the entity E proves to a user entity U that it knows the secret key SE without revealing it. This proof is for E a way to authenticate to the user U.
Ce protocole d'authentification comprend une première opération où l'émetteur choisit au hasard un nombre x dans le groupe Zq, c'est-à-dire dans le corps des entiers modulo q où q est un nombre premier
(autrement dit x est compris entre 1 et q-l ) et élève son générateur g à la puissance x pour constituer un nombre t qui va lancer le protocole d'authentification.This authentication protocol comprises a first operation where the transmitter randomly chooses a number x in the group Zq, that is to say in the integer field modulo q where q is a prime number
(in other words x is between 1 and ql) and raises its generator g to the power x to form a number t that will launch the authentication protocol.
Ce nombre t est transmis à l'utilisateur qui poursuit le protocole en choisissant au hasard un nombre c dans Zq et en le transmettant à l'émetteur, qui calcule alors une réponse appropriée en utilisant sa clef secrète SE que lui seul connaît. Cette clef n'est évidemment pas transmise en l'état mais masquée par le nombre x que l'émetteur seul connaît. La réponse est alors y = x - cSE .This number t is transmitted to the user who continues the protocol by randomly choosing a number c in Zq and transmitting it to the transmitter, which then calculates an appropriate response using its secret key SE that only it knows. This key is obviously not transmitted in the state but hidden by the number x that the transmitter alone knows. The answer is then y = x - cSE.
L'utilisateur traite cette réponse en calculant, gy qui n est autre que g(x-cSE), soit gxg-cSE. L'utilisateur peut calculer aussi Pc, soit gCsE t de sorte que le produit gYpc est égal à gXgCSF gCSF , c'est-à-dire finalement t. The user treats this answer by calculating, gy which is none other than g (x-cSE), ie gxg-cSE. The user can also calculate Pc or gCsE t so that the product gYpc is equal to gXgCSF gCSF, that is to say finally t.
La vérification de l'égalité entre t et gYPc prouve à l'utilisateur que l'émetteur connaît bien la clef secrète SE. Par ailleurs, cette preuve est apportée sans que la clef SE ait été révélée à l'utilisateur. Le protocole peut donc se répéter autant de fois que l'on veut, à condition de changer le nombre x à chaque fois. The verification of the equality between t and gYPc proves to the user that the sender is familiar with the secret key SE. Moreover, this proof is provided without the SE key being revealed to the user. The protocol can be repeated as many times as you want, provided you change the number x each time.
On peut illustrer un tel protocole par un tableau, (représentation qui sera utilisée constamment dans la suite de la description) dans lequel la notation Zq désigne le corps des entiers modulo q, les flèches horizontales symbolisent la transmission de nombre(s) d'une entité à l'autre, une équation avec un point d'interrogation au-dessus du signe égal (=) signifie que l'entité vérifie que les deux membres de l'égalité sont bien égaux. Avec ces conventions, le protocole d'authentification qui vient d'être décrit, peut être représenté par le Tableau I ci-après. Such a protocol can be illustrated by a table, (representation which will be used constantly in the rest of the description) in which the notation Zq designates the body of integers modulo q, the horizontal arrows symbolize the transmission of number (s) of a Entity to another, an equation with a question mark above the equal sign (=) means that the entity verifies that the two members of the equality are equal. With these conventions, the authentication protocol that has just been described, can be represented by Table I below.
E U clefsecrète SE clef publique : p = gsE choisit x dans Zq calcule t = gx
EU secret keys SE public key: p = gsE chooses x in Zq calculates t = gx
<tb> <SEP> choisit <SEP> c <SEP> dans <SEP> Zq
<tb> <SEP> c
<tb> y=x-cSE
<tb> <SEP> y
<tb> <SEP> (=gYpC
<tb>
Tableau I
Ce protocole constitue une preuve de connaissance par l'émetteur de la clef secrète. On peut lier cette preuve à un message m, de façon à ce que ce protocole constitue en même temps une signature C du message m. <tb><SEP> chooses <SEP> c <SEP> in <SEP> Zq
<tb><SEP> c
<tb> y = x-cSE
<tb><SEP> y
<tb><SEP> (= gYpC
<Tb>
Table I
This protocol constitutes a proof of knowledge by the issuer of the secret key. This proof can be linked to a message m, so that this protocol constitutes at the same time a signature C of the message m.
En toute rigueur, l'émetteur E ne mériterait pas vraiment le nom de "signataire", car il ne peut être tenu pour responsable du message signé m puisqu'il l'ignore. C'est néanmoins la terminologie usuelle.Strictly speaking, the transmitter E does not really deserve the name of "signatory" because it can not be held responsible for the signed message m since he ignores it. This is nevertheless the usual terminology.
Un schéma de signature aveugle de ce type peut être illustré par le Tableau II avec les mêmes conventions, où m est le message à signer. Dans ce schéma, l'utilisateur choisit en outre au hasard deux nombres u et v dans Zq, et calcule un nombre t à partir du nombre t qu'il a reçu de l'émetteur, du générateur g de l'émetteur qui est connu de tous et de la clef publique P de ce même émetteur et en utilisant les nombres u et v comme exposants, soit t=tg'P~. A blind signature scheme of this type can be illustrated by Table II with the same conventions, where m is the message to be signed. In this scheme, the user also randomly chooses two numbers u and v in Zq, and calculates a number t from the number t that he has received from the transmitter, the generator g of the transmitter which is known of all and of the public key P of this same emitter and by using the numbers u and v as exponents, that is t = tg'P ~.
L'utilisateur choisit ensuite un nombre c, dit challenge, compris dans Zq et masque ce challenge en lui soustrayant le nombre u connu de lui seul pour obtenir un challenge masqué c=c-u. L'utilisateur transmet le challenge masqué c à l'émetteur.The user then chooses a number c, called challenge, included in Zq and masks this challenge by subtracting the number u known from him alone to obtain a masked challenge c = c-u. The user transmits the masked challenge c to the issuer.
E U clef secrète : SE message : m clefpublique P = gSF choisit x dans Zq calcule î = gx
EU secret key: SE message: m public key P = gSF chooses x in Zq calculates i = gx
<tb> <SEP> choisit <SEP> u, <SEP> v <SEP> dans <SEP> Zq
<tb> <SEP> calcule <SEP> t <SEP> = <SEP> rg'P"
<tb> <SEP> calcule <SEP> c=H(t, <SEP> m)
<tb> <SEP> calcule <SEP> c <SEP> = <SEP> c <SEP>
<tb> <SEP> ê
<tb> calcule <SEP> y <SEP> = <SEP> x <SEP>
<tb> <SEP> M >
<tb>
calcule y = y + v
t=gyPc
obtient la signature G(y, c, m)
Tableau II
Dans ce protocole, H est une fonction de hachage (ou de condensation) connue de tous. La signature a finalement obtenue est constituée par l'ensemble des nombres y, c et m. Une telle signature ne peut être reconnue par l'émetteur qui ne peut calculer ni y, ni c, puisqu'il ignore les paramètres de masquage Lt et v et ne peut reconnaître le message m, qu'il n'a jamais vu. <tb><SEP> chooses <SEP> u, <SEP> v <SEP> in <SEP> Zq
<tb><SEP> computes <SEP> t <SEP> = <SEP>rg'P"
<tb><SEP> computes <SEP> c = H (t, <SEP> m)
<tb><SEP> calculates <SEP> c <SEP> = <SEP> c <SEP>
<tb><SEP> ê
<tb> computes <SEP> y <SEP> = <SEP> x <SEP>
<tb><SEP>M>
<Tb>
calculate y = y + v
t = gyPc
gets the signature G (y, c, m)
Table II
In this protocol, H is a hash (or condensation) function known to all. The signature finally obtained is constituted by the set of numbers y, c and m. Such a signature can not be recognized by the sender, who can not calculate either y or c since he ignores the masking parameters Lt and v and can not recognize the message m he has never seen.
Les applications de la signature aveugle sont assez limitées, sauf à lui associer d'autres protocoles. Le but de la présente invention est justement de remédier à cet inconvénient pour élargir le champ d'application de tels protocoles. The applications of the blind signature are quite limited, except to associate other protocols. The object of the present invention is precisely to overcome this drawback to expand the scope of such protocols.
Exposé de l'invention
A cette fin, l'invention propose un procédé dans lequel l'émetteur prend connaissance d'une partie du message à signer. Sa cécité n'est donc plus totale mais partielle. On dira que le signataire, et par extension la signature, est "borgne".Presentation of the invention
For this purpose, the invention proposes a method in which the transmitter acquires a portion of the message to be signed. His blindness is no longer total but partial. It will be said that the signatory, and by extension the signature, is "one-eyed".
De façon plus précise, la présente invention a pour objet un procédé de retrait de signature numérique dans lequel une entité dite "émetteur" (E) échange avec une entité dite "utilisateur" (U) des informations selon un protocole permettant à l'utilisateur d'obtenir une signature (o) d'un message (u) à l'élaboration de laquelle l'émetteur a collaboré mais sans que ce dernier puisse la retrouver à partir des éléments connus de lui lors de ces échanges ni la lier, lorsqu'elle lui est présentée a posteriori, au retrait dont elle provient si l'émetteur a émis plusieurs signatures, ce procédé étant caractérisé par le fait que l'utilisateur ne communique à l'émetteur qu'une partie (M) du message à signer, partie que ce dernier incorpore dans des éléments d'information nécessaires à l'élaboration de la signature, qui une fois produite ne peut être vérifiée qu'à l'aide du message (p) entier, dont la partie (M) qui a été vue par l'émetteur. More specifically, the subject of the present invention is a digital signature removal method in which a so-called "transmitter" entity (E) exchanges information with a so-called "user" entity (U) according to a protocol enabling the user to obtain a signature (o) of a message (u) to the development of which the emitter has collaborated but without the latter being able to find it from the elements known to him during these exchanges or to link it, when it is presented to it retrospectively, to the withdrawal from which it originates if the issuer has issued several signatures, this process being characterized by the fact that the user only communicates to the issuer a part (M) of the message to be signed , part that it incorporates in information elements necessary for the development of the signature, which once produced can be verified only with the help of the message (p) integer, whose part (M) which has been seen by the issuer.
L'invention a également pour objet un procédé de présentation d'une signature borgne obtenue par le procédé qui vient d'être défini, à une entité tierce dite "tiers" qui vérifie cette signature. The subject of the invention is also a method for presenting a blind signature obtained by the method that has just been defined to a third party entity known as a "third party" that verifies this signature.
Exposé détaillé de modes particuliers de réalisation
Dans tous ce qui suit on se placera dans un groupe
Gq cyclique d'ordre q, où q est un entier premier, et dans lequel la détermination du logarithme est un problème difficile : trouver x, s'il existe, tel que ax=b est difficile.Detailed presentation of particular modes of realization
In all that follows we will place ourselves in a group
A cyclic gq of order q, where q is a prime integer, and in which the determination of the logarithm is a difficult problem: finding x, if it exists, such that ax = b is difficult.
Un exemple de retrait de signature borgne conforme à l'invention va d'abord être décrit. Il s'apparente au schéma de signature aveugle exposé plus haut (Tableau
II). Mais selon l'invention, le message à signer comprend deux parties, une premier partie M qui sera rendue visible à l'émetteur et une seconde partie m qui restera invisible (ou masquée) pour celui-ci. Dans l'exemple décrit, l'émetteur E possède une clef secrète
SE et deux clefs publiques Pl, P2 associées à cette même clef secrète par deux nombres générateurs giet g2 ; on a donc : Pi = g1SE P2 = g2SE
A la différence du schéma de signature aveugle décrit plus haut (Tableau II), l'utilisateur transmet à l'émetteur, au début du procédé, la partie visible M du message et l'émetteur insère cette partie du message dans ses paramètres, par exemple en calculant un nombre générateur gM défini à partir des générateurs gi et g2 par g,9t = g1 g2. An example of blind signature removal according to the invention will first be described. It is similar to the blind signature scheme discussed above (Table
II). But according to the invention, the message to be signed comprises two parts, a first part M which will be made visible to the transmitter and a second part m which will remain invisible (or masked) for it. In the example described, the transmitter E has a secret key
SE and two public keys Pl, P2 associated with this same secret key by two generating numbers giet g2; we have: Pi = g1SE P2 = g2SE
Unlike the blind signature scheme described above (Table II), the user transmits to the sender, at the beginning of the process, the visible part M of the message and the sender inserts this part of the message into its parameters, for example. example by calculating a generator number gM defined from the generators g1 and g2 by g, 9t = g1 g2.
C'est ce nombre g qui servira alors à calculer le nombre î et non plus le nombre g comme dans le tableau II. En tirant encore un nombre x au hasard, l'émetteur calculera g;t, et non plus gr
La suite des opérations restera sensiblement la même, à cette différence que l'utilisateur devra reconstituer le nombre t en tenant compte de la particularité de tM (et non plus de t) . Les opérations détaillées sont alors celles du tableau III.It is this number g which will then serve to calculate the number I and not the number g as in Table II. By still drawing a random number x, the transmitter will calculate g; t, and no longer
The sequence of operations will remain substantially the same, with the difference that the user will have to reconstruct the number t taking into account the peculiarity of tM (and no longer t). The detailed operations are then those of Table III.
E U message ,u . clefsecrète . SE partie visible : M clefs publiques . P1, P2 partie invisible : m générateurs : g1, g2 P1 = g1SE , P2 = g2SE
EU message, u. secret keys. SE visible part: M public keys. P1, P2 invisible part: m generators: g1, g2 P1 = g1SE, P2 = g2SE
<tb> <SEP> M
<tb> calcule <SEP> g,W, <SEP> = <SEP> g, <SEP> g2
<tb> choisit <SEP> x <SEP> dans <SEP> Zq
<tb> calcule <SEP> 1M <SEP> =
<tb> <SEP> tM
<tb> <SEP> calcule <SEP> PM <SEP> = <SEP> P,A'P,
<tb> <SEP> choisit <SEP> u, <SEP> v <SEP> dans <SEP> Zq
<tb> <SEP> calcule <SEP> t," <SEP> = <SEP> t^Mg,tl <SEP> Pgu
<tb> <SEP> calcule <SEP> C'H(ln <SEP> M, <SEP> m)
<tb> <SEP> calcule <SEP> c <SEP> = <SEP> c <SEP>
<tb> <SEP> c
<tb> calcule <SEP> y <SEP> = <SEP> x- <SEP> cS,.
<tb> <SEP> y
<tb>
calcule y = y + v
tM = gMyPMc
obtient la signature e(y, c, M, m)
Tableau III
La signature obtenue est formée des deux nombres y et c, connus du seul utilisateur, et du message u=(M, m), dont la première partie seule, M, est connue de l'émetteur. <tb><SEP> M
<tb> computes <SEP> g, W, <SEP> = <SEP> g, <SEP> g2
<tb> chooses <SEP> x <SEP> in <SEP> Zq
<tb> calculate <SEP> 1M <SEP> =
<tb><SEP> tM
<tb><SEP> computes <SEP> PM <SEP> = <SEP> P, A'P,
<tb><SEP> chooses <SEP> u, <SEP> v <SEP> in <SEP> Zq
<tb><SEP> calculates <SEP> t, "<SEP> = <SEP> t ^ Mg, tl <SEP> Pgu
<tb><SEP> computes <SEP>C'H (ln <SEP> M, <SEP> m)
<tb><SEP> calculates <SEP> c <SEP> = <SEP> c <SEP>
<tb><SEP> c
<tb> computes <SEP> y <SEP> = <SEP> x- <SEP> cS ,.
<tb><SEP> y
<Tb>
calculate y = y + v
tM = gMyPMc
gets the signature e (y, c, M, m)
Table III
The signature obtained is formed of the two numbers y and c, known only to the user, and the message u = (M, m), the first part of which alone, M, is known to the sender.
L'exploitation de cette signature s'effectue par un protocole de présentation auprès d'une troisième entité dit "Tiers" et notée T. Ce tiers calcule d'abord le produit gYsPM, autrement dit (glMg2)(PIMP2) Ce calcul est possible puisque le tiers reçoit y, c et M par la signature et qu'il connaît les clefs publiques PI, P2 ainsi que les générateurs gl, g2 de l'émetteur. Ce produit, qui n'est autre que le nombre tM calculé par l'utilisateur lors du retrait de la signature, permet au tiers de reformer la fonction H(tM, M, m) et de vérifier si le résultat est bien le nombre c contenu dans la signature. The exploitation of this signature is carried out by a presentation protocol with a third entity known as "Third Party" and denoted T. This third party first calculates the product gYsPM, in other words (glMg2) (PIMP2) This calculation is possible since the third party receives y, c and M by the signature and knows the public keys PI, P2 as well as the generators gl, g2 of the transmitter. This product, which is no other than the number tM calculated by the user during the withdrawal of the signature, allows the third party to reform the function H (tM, M, m) and to check if the result is the number c contained in the signature.
Ce protocole de présentation est illustré par le tableau IV suivant
This presentation protocol is illustrated by the following Table IV
<tb> <SEP> U <SEP> T
<tb> G(y, <SEP> C, <SEP> M, <SEP> m) <SEP> (y, <SEP> c, <SEP> M, <SEP> m) <SEP> tu <SEP> gMP.U
<tb> <SEP> c=H(t, <SEP> M, <SEP> m)
<tb>
Tableau IV
Le procédé qui vient d'être décrit peut s'appliquer au paiement électronique. Dans le cas d'un système de paiement, l'émetteur émet des signatures représentant des pièces électroniques. Les utilisateurs les emploient pour payer auprès des commerçants, lesquels jouent le rôle de tiers vérificateurs. La présentation de la pièce électronique peut donc s'assimiler à un paiement. Ces pièces doivent pouvoir être utilisées de façon anonyme, comme la monnaie fiduciaire classique, ce qui impose l'utilisation de signatures aveugles. <tb><SEP> U <SEP> T
<tb> G (y, <SEP> C, <SEP> M, <SEP> m) <SEP> (y, <SEP> c, <SEP> M, <SEP> m) <SEP> you <SEP> gMP.U
<tb><SEP> c = H (t, <SEP> M, <SEP> m)
<Tb>
Table IV
The method just described can be applied to electronic payment. In the case of a payment system, the issuer issues signatures representing electronic coins. Users use them to pay merchants, who act as third-party auditors. The presentation of the electronic part can thus be assimilated to a payment. These coins must be able to be used anonymously, like traditional fiduciary money, which imposes the use of blind signatures.
Avec une signature borgne conforme à l'invention, la partie visible (M) du message peut contenir diverses informations, comme un montant maximal, les dates d'émission et d'expiration de la pièce, un nombre maximal d'utilisations autorisées. La partie invisible m peut contenir des données relatives au paiement, notamment l'identité du tiers (T), la date et l'heure, la référence du bien acheté. With a blind signature according to the invention, the visible part (M) of the message can contain various information, such as a maximum amount, the date of issue and expiration of the piece, a maximum number of authorized uses. The invisible portion m may contain payment data, including the identity of the third party (T), the date and time, the reference of the purchased property.
Pour remédier au problème de rendu de monnaie, une solution possible est d'émettre des pièces de montant faible, ou même correspondant à la granularité de la monnaie (par exemple, des pièces de 1 centime exclusivement). Cependant, cette solution obligerait à émettre des quantités importantes de pièces. Une autre solution consiste à émettre des pièces utilisables plusieurs fois, et constituées d'une signature borgne. To remedy the problem of rendering money, a possible solution is to issue coins of small amount, or even corresponding to the granularity of the currency (for example, coins of 1 cent exclusively). However, this solution would require issuing large quantities of parts. Another solution is to issue usable parts several times, and consist of a blind signature.
La partie visible M du message peut alors contenir le nombre maximal d'utilisations autorisé et le montant maximal autorisé pour l'ensemble de ces utilisations.The visible portion M of the message may then contain the maximum number of uses allowed and the maximum amount allowed for all of these uses.
Le procédé de signature borgne qui vient d'être décrit peut être combiné avec tout procédé de signature "juste" dans lequel des traces du retrait et/ou de la présentation peuvent être insérées dans les protocoles afin, le cas échéant, pour pouvoir retrouver l'utilisateur d'une pièce donnée ou les pièces d'un utilisateur donne. En particulier, le procédé de signature borgne de l'invention peut être combiné à un procédé particulier de signature juste tel que celui qui est décrit et revendiqué dans la demande de brevet déposée le jour même du dépôt de la présente demande par le présent Demandeur, et intitulée "Procédé de signature numérique juste". The blind signature method which has just been described can be combined with any "just" signature method in which traces of the withdrawal and / or presentation can be inserted into the protocols in order, if necessary, to be able to find the user of a given part or parts of a given user. In particular, the blind signature method of the invention can be combined with a particular method of just signing such as that described and claimed in the patent application filed on the same day of the filing of the present application by the present Applicant, and entitled "Fair digital signature process".
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9802196A FR2775399B1 (en) | 1998-02-24 | 1998-02-24 | BORGNE DIGITAL SIGNATURE PROCESS |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9802196A FR2775399B1 (en) | 1998-02-24 | 1998-02-24 | BORGNE DIGITAL SIGNATURE PROCESS |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2775399A1 true FR2775399A1 (en) | 1999-08-27 |
FR2775399B1 FR2775399B1 (en) | 2000-03-17 |
Family
ID=9523280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR9802196A Expired - Fee Related FR2775399B1 (en) | 1998-02-24 | 1998-02-24 | BORGNE DIGITAL SIGNATURE PROCESS |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2775399B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005088900A1 (en) * | 2004-03-16 | 2005-09-22 | Matsushita Electric Industrial Co., Ltd. | Information security apparatus and information security system |
-
1998
- 1998-02-24 FR FR9802196A patent/FR2775399B1/en not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
ABE M ET AL: "How to date blind signatures", ADVANCES IN CRYPTOLOGY - ASIACRYPT'96 INTERNATIONAL CONFERENCE ON THE THEORY AND APPLICATIONS OF CRYPTOLOGY AND INFORMATION SECURITY. PROCEEDINGS, ADVANCES IN CRYPTOLOGY - ASIACRYPT '96., 3 November 1996 (1996-11-03), ISBN 3-540-61872-4, 1996, Berlin, Germany, Springer-Verlag, Germany, pages 244 - 251, XP002086620 * |
MIYAZAKI S ET AL: "A more efficient untraceable E-cash system with partially blind signatures based on the discrete logarithm problem", FINANCIAL CRYPTOGRAPHY. SECOND INTERNATIONAL CONFERENCE, FC'98 PROCEEDINGS, FINANCIAL CRYPTOGRAPHY. SECOND INTERNATIONAL CONFERENCE, FC'98. PROCEEDINGS, ANGUILLA, 23-25 FEB. 1998, ISBN 3-540-64951-4, 1998, Berlin, Germany, Springer-Verlag, Germany, pages 296 - 308, XP002086619 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005088900A1 (en) * | 2004-03-16 | 2005-09-22 | Matsushita Electric Industrial Co., Ltd. | Information security apparatus and information security system |
Also Published As
Publication number | Publication date |
---|---|
FR2775399B1 (en) | 2000-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6446052B1 (en) | Digital coin tracing using trustee tokens | |
EP0311470B1 (en) | Methods and systems to authenticate authorizations and messages with a zero knowledge-proof system and to provide messages with a signature | |
WO2003061193A1 (en) | Method and device for anonymous signature with a shared private key | |
EP1459479A2 (en) | Cryptographic system for group signature | |
FR2759226A1 (en) | PROTOCOL FOR VERIFYING A DIGITAL SIGNATURE | |
EP1192608A2 (en) | Electronic payment method and device | |
EP0878934B1 (en) | Public key identification method using two hash functions | |
EP1166496A1 (en) | Authentication and signature method for messages using reduced size of binary units of information content and corresponding systems | |
Schoenmakers | Security aspects of the Ecash™ payment system | |
Tewari et al. | Fully anonymous transferable ecash | |
JPH11508707A (en) | Restricted blind certificate on private key | |
EP1466304A1 (en) | Cryptographic revocation method using a chip card | |
Schoenmakers | Security Aspects of the Ecash™ Payment System | |
Varadharajan et al. | On the design of efficient RSA-based off-line electronic cash schemes | |
EP0731580B1 (en) | Method of payment in a data communications application and device for its implementation | |
Tewari et al. | Netcoin: A traceable P2P electronic cash system | |
FR2775399A1 (en) | Digital signature procedure based on blind signatures for use in cryptography and electronic payment systems | |
CN110992010B (en) | Digital currency issue total amount control method and verification method | |
WO2011030069A1 (en) | Method for generating a digital certificate | |
EP0743775B1 (en) | Method of zero-knowledge digital signatures, for creating a collision-resistant signature | |
FR2775400A1 (en) | Correct digital signature identification technique | |
EP0980607A1 (en) | Pseudo-random generator based on a hash coding function for cryptographic systems requiring random drawing | |
Luo et al. | An e-cash Scheme with Multiple Denominations and Transferability | |
Wang et al. | Bitcoin for E-Commerce: Principles and Applications | |
Zhang et al. | An anonymous digital cash and fair payment protocol utilizing smart card in mobile environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |