WO1998023061A1 - Method for signing and/or authenticating electronic messages - Google Patents

Method for signing and/or authenticating electronic messages Download PDF

Info

Publication number
WO1998023061A1
WO1998023061A1 PCT/FR1997/002086 FR9702086W WO9823061A1 WO 1998023061 A1 WO1998023061 A1 WO 1998023061A1 FR 9702086 W FR9702086 W FR 9702086W WO 9823061 A1 WO9823061 A1 WO 9823061A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
message
keys
module
public
Prior art date
Application number
PCT/FR1997/002086
Other languages
French (fr)
Inventor
Jacques Stern
Françoise LEVY-DIT-VEHEL
David Naccache
Original Assignee
Gemplus S.C.A.
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 Gemplus S.C.A. filed Critical Gemplus S.C.A.
Priority to EP97947096A priority Critical patent/EP0940021A1/en
Priority to JP10523288A priority patent/JP2001503162A/en
Priority to CA002271989A priority patent/CA2271989A1/en
Publication of WO1998023061A1 publication Critical patent/WO1998023061A1/en

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/357Cards having a plurality of specified features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • G06Q20/40975Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
    • 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

Definitions

  • the present invention relates to a method for signing and / or authenticating electronic messages.
  • a smart card In order to preserve the exclusivity of certain services, a smart card generally includes digital keys, a digital key consisting of a string of digital characters which will be used by a calculation algorithm to sign or authenticate messages exchanged between the card and a verifier such as a reading terminal or a central authority, or else to authenticate the card used.
  • the messages can then be decrypted only by an organ possessing either a key equal to the encryption key (we then speak of symmetric cryptography), or a corresponding key (asymmetric cryptography) to the secret encryption key.
  • this involves signing messages sent by a card to a reading terminal or to a central authority; or again, it involves making a transaction (electronic check) and signing this transaction so that it can be verified first by the reading terminal in which the transaction is made, then by a central authority which manages the transactions.
  • the expressions "electronic signature” and “digital signature” will be used interchangeably, or the expressions “digital key” and “electronic key”.
  • signing using keys made up of digital channels is particularly suitable for signing messages transmitted electronically.
  • An electronic signature is calculated using a series of calculation rules defined by an algorithm and a set of parameters used in these calculations.
  • the signature allows both to ensure the identity of the signatory (because it involves a secret exponent specific to the signatory) and the integrity of the signed message (because it involves the message itself).
  • the algorithm allows on the one hand, to generate signatures and on the other hand, to verify signatures; operation called verification.
  • Authentication is a specific verification operation during which the terminal or the central authority verifies only a signature of the card, before any exchange of significant messages. During this procedure, the verifier sends any message to the card which returns it signed. The verifier can then authenticate the signature of this message. Authentication preferably involves a different digital key from that reserved for message signature / verification operations.
  • RSA signature generation involves a secret exponent.
  • the audit involves a public setting that corresponds to the 'secret exponent but is not identical to it.
  • Each user has a pair of exhibitors (secret, public). Public exhibitors can be known to everyone, while secret exhibitors are never revealed.
  • Congress has the ability to verify a user's signature using their public exponent, but only the owner of the secret exhibitor can generate a signature corresponding to the pair of exhibitors.
  • the RSA electronic keys comprise three parameters (N, e, d) called respectively module N, public exponent e, and secret exponent d.
  • the first two numbers (N, e) can be read on the smart card, where they are stored, and are called public parameters.
  • the secret exponent d is stored in a protected memory area of the card which cannot be read from the outside. Only the protected computing circuits of the card can access the secret exponent d for reading.
  • the electronic keys are installed in a card by programming an EEPROM read-only memory.
  • the public parameters (N, e) are located in an area of the EEPROM memory accessible for reading by a terminal.
  • the secret exponent d is located in a protected area of the EEPROM memory, the exponent d being supplied only to the processor of the card for its calculations.
  • Each parameter is made up of a whole number.
  • the length of module N is generally greater than or equal to 512 bits.
  • each parameter of a triplet (N, e, d) has on average a length of 512 bits.
  • the public exhibitor is often shorter in order to speed up the verification of the signature.
  • the smart card To obtain the signature S of a message M, by means of a key whose public parameters are (N, e, d), the smart card implements the following calculation:
  • M d modulo N S.
  • the card then transmits the pair (M, S), that is to say the message accompanied by its signature S.
  • the card transmits or the terminal will read the parameters (N, e) which were used to calculate the signature S of the message M.
  • the terminal then checks that M 'is equal to M.
  • the authentication operation between a card and a verifier consists for the card of proving its identity to the verifier.
  • the verifier sends a random X message to the card;
  • an RSA key has three binary numbers of 512 bits each. Note that a single key then occupies a memory space of 192 bytes.
  • Another function of the digital keys and the RSA algorithm is to preserve the confidentiality of an exchange of messages between the card and the terminal or the central authority.
  • Confidentiality is obtained by encryption and decryption of the messages exchanged.
  • the encryption of a message M is obtained by the RSA algorithm, by performing the following binary operation:
  • the card can thus decrypt the encrypted message C using the module N and the secret exponent d of its digital key.
  • EEPROM memory must then contain as many triples (Nl, el, dl) (N2, e2, d2) ..., (Ni, ei, di) as there are keys.
  • An object of the present invention is to optimize the memory space of a smart card and to simplify the operations of signature and authentication.
  • Another object of the invention is to guarantee the security and inviolability of digital coding.
  • only one digital key (N, el, dl) among the digital keys (N, el, dl), ..., (N, ei, di) comprising an identical module N can be used for encryption procedures and / or decryption.
  • a method for signing and / or authenticating electronic messages in which a calculation algorithm uses electronic keys in order to sign the messages and / or in order to authenticate the messages, keys being made up of strings of numeric characters and implanted on smart cards, a key comprising in particular a triplet (N, e, d) of whole numbers:
  • the invention is implemented by using a method in which, among the keys (N, e, d), (N, e ', d'), (N, e ", d") having a module ( N) identical, at most one key (N, e, d) is used for encryption and / or decryption of messages.
  • the invention is preferably carried out with a method in which the signature of a message (M) is preceded by a hashing operation.
  • the invention provides for producing an electronic chip card (Cl) comprising a memory containing electronic keys (N, e, d) used to sign and / or authenticate electronic messages, the keys (N, e, d) being consisting of strings of digital characters stored in the memory, a key (N, e, d) comprising in particular a triplet of whole numbers:
  • a secret exponent (d) two keys (NO, eO, dO), (NI, e3, d3), distinguished in that the triplet (N0, e0, d0) of a key is different from the triplet (Nl, e7 , d7) of the other key, characterized in that a key (N0, e0, d0) of the card comprises a module (NO) identical to the module (NO) of another key (N0, el, dl), (N0, e5, d5) of this card (Cl) or another card (C2).
  • Figure 1 shows a diagram of smart cards using a method of signing, verifying and / or authenticating electronic messages according to the invention.
  • Figure 1 schematically illustrates the implementation of several digital keys (NO, eO, dO) ... (NI, e3 ', d3') on two different cards with the method according to one invention.
  • a first smart card C1 is represented in two parts, a public part PI and a secret part SI, representing respectively the accessible area and the protected area of the read only memory.
  • a second smart card C2 is represented in a similar manner with a public part P2 and a secret part S2 representing the accessible and protected areas of its read-only memory.
  • a first series of parameters NO, NI, eO, eO ', el, el', e2, e2 ', e3, e3' is represented in the public part PI of the card Cl.
  • the first series corresponds to modules and public exhibitors stored in the accessible area of the read-only memory of the first card C1.
  • a second series of parameters d0, d0 ', dl, dl', d2, d2 ', d3, d3' is represented in the secret part SI of the card Cl.
  • the second series corresponds to secret exponents stored in the protected area of the read-only memory of the first card Cl.
  • the table below indicates two groups of digital keys formed for example by taking up the series of parameters of the cards C1 and C2 in FIG. 1 and the use of these keys for signature / verification, authentication and encryption operations. / decryption according to the invention.
  • the card Cl has six keys (N0, e0, d0), (N0, e0 ', d0'), (N0, el, dl), (NO, el ', dl '), (N0, e2, d2) and (N0, e2', d2 '), having the same module NO.
  • the authentication operations preferably use keys distinct from the signature / verification keys, even if these operations relate to the same service of the card.
  • each key having the common module NO can be associated with the use of a separate service.
  • the three keys (N0, e0, d0), (N0, el, dl) and (N0, e2, d2) can correspond to three bank accounts of the user of the Cl card.
  • Each pair of exhibitors ( e0, d0), (el, dl) and (e2, d2) is then associated with a separate electronic signature corresponding to each of the accounts.
  • the key (N0, e0, d0) is used for encryption-decryption operations.
  • the NO module is not used in two separate encryption-decryption keys. Conditions security and inviolability of encryption operations are then respected.
  • card C2 has four keys (N0, e4, d4), (NO, e4 ', d4'), (N0, e5, d5) and (N0, e5 ', d5') including the same module
  • hash algorithms are random functions that match binary strings, like a message M, with numbers less than an integer P, in a pseudo-random manner.
  • the result of the hash of the message M is thus a digest of fixed binary size, the size of the integer P.
  • a SHA hashing algorithm will be used, that is to say in accordance with the "Secure Hash Standard" standard published by the National Institute of Standards and Technology. Note that if we apply a hashing algorithm whose size of the results, that is to say the size of the integer P, is much smaller than the size of the modules NO, NI, ..., it is better to apply a repeated hash. During a repeated hash the message M is truncated into sub-messages m, m ', ... and each sub-message is treated in isolation by the hash algorithm.
  • numeric keys have parameters N, e, d of around 512 bits and the result of the hashing algorithm used gives results having a dimension of 128 or 160 bits, it will be preferable to apply a such repeated hashing.
  • a preferred embodiment of the invention provides for using a hash function h making call to the public exhibitor e and to the message M, noted in the following form:
  • H h (e . M), H being the result of the hash, ie the hashed message.
  • S e mod N h (e, M).
  • This hashing procedure has the advantage of giving significant security to the signature and authentication process.
  • a preferred embodiment of the invention also provides for using a complex encryption function f before encryption. We thus obtain a coding of order 2 with two distinct coding methods, which reinforces the security of encryption. Algorithms meeting data encryption standards such as Data Enscryption Standard (DES) algorithms can thus be used to perform a symmetric encryption function.
  • DES Data Enscryption Standard
  • an encryption function f calling on the message M to be encrypted and on a parameter k, and noted in the following form:
  • the function f admits an inverse function, noted f -1 , verifying the following relation:
  • the parameter k is preference obtained by hashing the public exponent e, according to the following relation: k ⁇ h (e)
  • the encrypted message F is therefore obtained, according to this embodiment, after the following calculation:
  • a final precaution will consist in limiting the number of smart cards and more precisely the number i of keys (N, ei, di) comprising an identical module N.
  • One of the particularly interesting applications of the method according to the invention is precisely the issue of cards in limited series comprising an identical module N.
  • This module used to recognize for example a group of users or a service used in common.
  • Another application of the method according to the invention is the implantation on the same card of several keys (N, ei, di) having the same module N to recognize the user or allow the recognition of a group of services offered by the same provider.
  • a particular application is the identification of cards before their personalization, that is to say before they are handed over to the user with keys specific to the user.
  • the memories of smart cards are initially loaded with transport keys to test and distinguish them in the middle of a batch.
  • Known cards include an identification number of the card, noted Id.
  • This identification number Id is for safety transmitted in the following signed form:
  • An advantage of the invention is the limitation of the memory size used by the digital keys in the EEPROM or ROM memory. It is thus possible to use components of reduced dimensions or to use the unoccupied memory area to store other data.
  • the terminal can store the module N common to several keys while avoiding recharging it when changing the key used.
  • the method according to the invention provides a significant saving in computation time during the generation of the digital keys since the N modules, having been the subject of complex calculations, can be used several times.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Signal Processing (AREA)
  • Finance (AREA)
  • Storage Device Security (AREA)

Abstract

The invention concerns the signing and/or authenticating of electronic messages in which a computing algorithm uses digital keys (N, e, d) implanted on chip cards; the keys comprising in particular an integer called module N. The method is characterised in that several keys (N, e, d), (N, e', d') comprise an identical module (N) and that these keys will be dedicated to the signature, verification and/or authentication of messages. The invention is particularly useful for identifying the user of the card keys or the identification of the services used by one or several users.

Description

PROCEDE DE SIGNATURE ET/OU D ' AUTHENTIFICATION DE MESSAGES ÉLECTRONIQUES. METHOD FOR SIGNING AND / OR AUTHENTICATING ELECTRONIC MESSAGES.
La présente invention concerne un procédé de signature et/ou d' authentification de messages électroniques .The present invention relates to a method for signing and / or authenticating electronic messages.
Elle est particulièrement destinée à être mise en oeuvre à l'aide d'un appareil portable à microprocesseur du type "carte à puce électronique".It is particularly intended to be implemented using a portable microprocessor device of the "electronic chip card" type.
Afin de préserver l'exclusivité de certains services, une carte à puce comporte généralement des clefs numériques, une clef numérique étant constituée par une chaîne de caractères numériques qui sera utilisée par un algorithme de calcul pour signer ou pour authentifier des messages échangés entre la carte et un organe vérifieur comme un terminal de lecture ou une autorité centrale, ou encore pour authentifier la carte utilisée.In order to preserve the exclusivity of certain services, a smart card generally includes digital keys, a digital key consisting of a string of digital characters which will be used by a calculation algorithm to sign or authenticate messages exchanged between the card and a verifier such as a reading terminal or a central authority, or else to authenticate the card used.
On peut également utiliser de telles clefs pour crypter les messages transmis. Les messages peuvent ensuite être décryptés uniquement par un organe possesseur soit d'une clef égale à la clef de cryptage (on parle alors de cryptographie symétrique) , soit d'une clef correspondante (cryptographie asymétrique) à la clef de cryptage secrète.One can also use such keys to encrypt the transmitted messages. The messages can then be decrypted only by an organ possessing either a key equal to the encryption key (we then speak of symmetric cryptography), or a corresponding key (asymmetric cryptography) to the secret encryption key.
Par exemple, il s'agit de signer des messages envoyés par une carte à un terminal de lecture ou à une autorité centrale ; ou encore, il s'agit de faire une transaction (chèque électronique) et de signer cette transaction pour qu'elle puisse être vérifiée d'abord par le terminal de lecture dans lequel est faite la transaction, ensuite par une autorité centrale qui gère les transactions. Par la suite, on utilisera indifféremment les expressions "signature électronique" et "signature numérique" ou bien les expressions "clef numérique" et "clef électronique". En effet, la signature à l'aide de clefs constituées de chaînes numériques se prête tout particulièrement à la signature de messages transmis par voie électronique.For example, this involves signing messages sent by a card to a reading terminal or to a central authority; or again, it involves making a transaction (electronic check) and signing this transaction so that it can be verified first by the reading terminal in which the transaction is made, then by a central authority which manages the transactions. Thereafter, the expressions "electronic signature" and "digital signature" will be used interchangeably, or the expressions "digital key" and "electronic key". Indeed, signing using keys made up of digital channels is particularly suitable for signing messages transmitted electronically.
Une signature électronique est calculée à l'aide d'une série de règles de calcul définies par un algorithme et un ensemble de paramètres utilisés dans ces calculs. La signature permet à la fois de s'assurer de l'identité du signataire (car elle fait intervenir un exposant secret propre au signataire) et l'intégrité du message signé (car elle fait intervenir le message lui-même). L'algorithme permet d'une part, de générer des signatures et d'autre part, de vérifier des signatures; opération appellée véri ication.An electronic signature is calculated using a series of calculation rules defined by an algorithm and a set of parameters used in these calculations. The signature allows both to ensure the identity of the signatory (because it involves a secret exponent specific to the signatory) and the integrity of the signed message (because it involves the message itself). The algorithm allows on the one hand, to generate signatures and on the other hand, to verify signatures; operation called verification.
L'authentification est une opération de vérification particulière au cours de laquelle le terminal ou l'autorité centrale vérifie seulement une signature de la carte, avant tout échange de messages significatifs. Au cours de cette procédure, l'organe vérifieur envoie un message quelconque à la carte qui le retourne signé. L'organe vérifieur peut alors authentifier la signature de ce message. L'authentification fait de préférence intervenir une clef numérique différente de celle réservée aux opérations de signature/vérification de messages.Authentication is a specific verification operation during which the terminal or the central authority verifies only a signature of the card, before any exchange of significant messages. During this procedure, the verifier sends any message to the card which returns it signed. The verifier can then authenticate the signature of this message. Authentication preferably involves a different digital key from that reserved for message signature / verification operations.
Le procédé de signature et d' authentification qui va être décrit est destiné en particulier à être utilisé avec un algorithme normalisé appelé RSA du nom des ses inventeurs (Rivest, Shamir et Adleman) dont on peut trouver une description dans le brevet US 4,405,829. La génération de signature RSA fait intervenir un exposant secret. La vérification fait intervenir un exposant public qui correspond à' l'exposant secret mais ne lui est pas identique. Chaque utilisateur possède une paire d'exposants (secret, public). Les exposants publics peuvent être connus de tous, alors que les exposants secrets ne sont jamais dévoilés. Toute personne a la capacité de vérifier la signature d'un utilisateur en se servant de l'exposant public de celui-ci, mais seul le possesseur de l'exposant secret peut générer une signature correspondant à la paire d'exposants .The signature and authentication process which will be described is intended in particular to be used with a standardized algorithm called RSA named after its inventors (Rivest, Shamir and Adleman), a description of which can be found in US Patent 4,405,829. RSA signature generation involves a secret exponent. The audit involves a public setting that corresponds to the 'secret exponent but is not identical to it. Each user has a pair of exhibitors (secret, public). Public exhibitors can be known to everyone, while secret exhibitors are never revealed. Anyone has the ability to verify a user's signature using their public exponent, but only the owner of the secret exhibitor can generate a signature corresponding to the pair of exhibitors.
Plus précisément, les clefs électroniques RSA comportent trois paramètres (N,e,d) appelés respectivement module N, exposant public e, et exposant secret d. Les deux premiers nombres (N,e) peuvent être lus sur la carte à puce, où ils sont mémorisés, et sont dénommés paramètres publics. En revanche, l'exposant secret d est mémorisé dans une zone mémoire protégée de la carte qui ne peut être lue de l'extérieur. Seuls les circuits de calcul protégés de la carte peuvent accéder en lecture à l'exposant secret d.More precisely, the RSA electronic keys comprise three parameters (N, e, d) called respectively module N, public exponent e, and secret exponent d. The first two numbers (N, e) can be read on the smart card, where they are stored, and are called public parameters. On the other hand, the secret exponent d is stored in a protected memory area of the card which cannot be read from the outside. Only the protected computing circuits of the card can access the secret exponent d for reading.
Les clefs électroniques sont implantées dans une carte en programmant une mémoire morte EEPROM. Les paramètres publics (N,e) sont implantés dans une zone de la mémoire EEPROM accessible en lecture par un terminal. Au contraire, l'exposant secret d est implanté dans une zone protégée de la mémoire EEPROM, l'exposant d n'étant fourni qu'au processeur de la carte pour ses calculs.The electronic keys are installed in a card by programming an EEPROM read-only memory. The public parameters (N, e) are located in an area of the EEPROM memory accessible for reading by a terminal. On the contrary, the secret exponent d is located in a protected area of the EEPROM memory, the exponent d being supplied only to the processor of the card for its calculations.
Chaque paramètre est constitué par un nombre entier numérique. La longueur du module N est généralement supérieure ou égale à 512 bits. En pratique, chaque paramètre d'un triplet (N,e,d) a en moyenne une longueur de 512 bits. Toutefois, l'exposant public e est souvent plus court afin d'accélérer la vérification de la signature.Each parameter is made up of a whole number. The length of module N is generally greater than or equal to 512 bits. In practice, each parameter of a triplet (N, e, d) has on average a length of 512 bits. However, the public exhibitor is often shorter in order to speed up the verification of the signature.
Nous allons rappeler dans ce qui suit le déroulement d'une opération de signature électronique, de vérification, d' authentification, de cryptage et de décryptage de messages dans le cas de l'utilisation de l'algorithme de calcul RSA.We will recall in what follows the progress of an operation of electronic signature, verification, authentication, encryption and decryption of messages in the case of the use of the RSA calculation algorithm.
Pour obtenir la signature S d'un message M, au moyen d'une clef dont les paramètres publics sont (N,e,d), la carte à puce met en oeuvre le calcul suivant :To obtain the signature S of a message M, by means of a key whose public parameters are (N, e, d), the smart card implements the following calculation:
Md modulo N = S. La carte émet alors le couple (M, S), c'est-à-dire le message accompagné de sa signature S. La carte émet ou le terminal va lire les paramètres (N,e) qui ont servi au calcul de la signature S du message M.M d modulo N = S. The card then transmits the pair (M, S), that is to say the message accompanied by its signature S. The card transmits or the terminal will read the parameters (N, e) which were used to calculate the signature S of the message M.
Le terminal peut alors vérifier la signature S en mettant en oeuvre le calcul suivant : Se mod N = M' .The terminal can then verify the signature S by implementing the following calculation: S e mod N = M '.
Le terminal vérifie alors que M' est égal à M.The terminal then checks that M 'is equal to M.
L'opération d' authentification entre une carte et un organe vérifieur consiste pour la carte à prouver son identité à l'organe vérifieur. Pour cela, l'organe vérifieur envoie un message X aléatoire à la carte ; la carte calcule la signature A de ce message à partir des paramètres (N',e',d') d'une autre clef RSA en mettant en oeuvre la relation suivante : Xd' mod N' = A.The authentication operation between a card and a verifier consists for the card of proving its identity to the verifier. For this, the verifier sends a random X message to the card; the card calculates the signature A of this message from the parameters (N ', e', d ') of another RSA key by implementing the following relation: X of mod N' = A.
L'organe vérifieur lit ou reçoit le module N' et l'exposant public e' et peut alors décoder un tel message aléatoire signé A pour obtenir le message X' en mettant en oeuvre la relation suivante : Ae mod N' = X' . L'authentification est alors effectuée par cet organe vérifieur en comparant X et X'. Si le message aléatoire X et le message décodé X' correspondent, la signature est authentifiée.The verifier reads or receives the module N 'and the public exponent e' and can then decode such a signed signed random message A to obtain the message X 'by implementing the following relation: A e mod N '= X'. Authentication is then carried out by this verifier by comparing X and X '. If the random message X and the decoded message X 'match, the signature is authenticated.
L'usurpation d'une signature est rendue impossible par 1 ' inaccessibilité de l'exposant secret d et par le fait que les trois paramètres (N,e,d) sont de grands nombres binaires. La quantité de calcul et le temps nécessaires pour trouver un exposant secret d solution des équations précédentes est considérable et elle rend tout à fait improbable sa découverte.The usurpation of a signature is made impossible by the inaccessibility of the secret exponent d and by the fact that the three parameters (N, e, d) are large binary numbers. The amount of computation and the time necessary to find a secret exponent of solution of the preceding equations is considerable and makes its discovery quite improbable.
Par exemple, sur les cartes à puces utilisées couramment, une clef RSA comporte trois nombres binaires de 512 bits chacun. On notera qu'une seule clef occupe alors une place mémoire de 192 Octets.For example, on commonly used smart cards, an RSA key has three binary numbers of 512 bits each. Note that a single key then occupies a memory space of 192 bytes.
Une autre fonction des clefs numériques et de l'algorithme RSA est de préserver la confidentialité d'un échange de messages entre la carte et le terminal ou l'autorité centrale.Another function of the digital keys and the RSA algorithm is to preserve the confidentiality of an exchange of messages between the card and the terminal or the central authority.
La confidentialité est obtenue par le cryptage et le décryptage des messages échangés. Le cryptage d'un message M est obtenu par l'algorithme RSA, en réalisant l'opération binaire suivante :Confidentiality is obtained by encryption and decryption of the messages exchanged. The encryption of a message M is obtained by the RSA algorithm, by performing the following binary operation:
Me mod N = C. Le cryptage est donc obtenu par une opération similaire à la signature, mais en utilisant alors l'exposant public e au lieu de l'exposant secret d. Réciproquement, le décryptage peut être représenté par l'opération binaire suivante :M e mod N = C. The encryption is therefore obtained by an operation similar to the signature, but then using the public exponent e instead of the secret exponent d. Conversely, decryption can be represented by the following binary operation:
Cd mod N = M. La carte peut ainsi décrypter le message crypté C l'aide du module N et de l'exposant secret d de sa clef numérique.C d mod N = M. The card can thus decrypt the encrypted message C using the module N and the secret exponent d of its digital key.
On notera que la confidentialité est préservée puisque le décryptage nécessite la connaissance de l'exposant secret d, dont la découverte est quasi- impossible comme on l'a vu.Note that confidentiality is preserved since decryption requires knowledge of the secret exponent d, whose discovery is almost impossible as we have seen.
De façon générale, tout triplet (N,e,d) de nombres entiers doit respecter la condition mathématique : e d = 1 mod E(N) où E(N), appelée "indicatrice d'Euler", désigne le nombre d'entiers premiers avec N et inférieurs à N.In general, any triplet (N, e, d) of whole numbers must respect the mathematical condition: e d = 1 mod E (N) where E (N), called "Euler's indicator", denotes the number d 'integers with N and less than N.
Dans la pratique, plusieurs clefs peuvent être implantées sur une carte à puce, chaque clef donnant l'accès à un service différent. La mémoire EEPROM doit alors contenir autant de triplets (Nl,el,dl) (N2,e2,d2) ... , (Ni, ei,di) qu'il y a de clefs.In practice, several keys can be installed on a smart card, each key giving access to a different service. The EEPROM memory must then contain as many triples (Nl, el, dl) (N2, e2, d2) ..., (Ni, ei, di) as there are keys.
Un inconvénient de l'utilisation de tels algorithmes pour des cartes à puce, dans le cas où plusieurs clefs sont prévues, est l'occupation d'une mémoire morte EEPROM de grande capacité. Selon l'exemple précédent, une carte disposant de dix clefs RSA de 192 Octets, nécessite une mémoire morte EEPROM d'environ 2 ko. Un autre inconvénient vient du grand nombre de clefs à générer du fait de la grande quantité de cartes à programmer sachant que chaque carte comporte plusieurs clefs. En effet, le temps de calcul est élevé lors de la conception des clefs numériques. Le choix de chaque module N et de chaque paire d'exposant (e,d) de chaque clef nécessite une série d'opérations complexes pour vérifier des conditions mathématiques garantissant la sûreté et l'inviolabilité. Un objet de la présente invention est d'optimiser l'espace mémoire d'une carte à puce et de simplifier les opérations de signature et d' authentification.A drawback of using such algorithms for smart cards, in the case where several keys are provided, is the occupation of a large capacity EEPROM read only memory. According to the previous example, a card having ten RSA keys of 192 bytes, requires an EEPROM read-only memory of approximately 2 kb. Another drawback comes from the large number of keys to be generated due to the large quantity of cards to be programmed, knowing that each card has several keys. Indeed, the computation time is high during the design of the digital keys. The choice of each module N and of each pair of exponents (e, d) of each key requires a series of complex operations to verify mathematical conditions guaranteeing safety and inviolability. An object of the present invention is to optimize the memory space of a smart card and to simplify the operations of signature and authentication.
Un autre objet de l'invention est de garantir la sûreté et l'inviolabilité du codage numérique.Another object of the invention is to guarantee the security and inviolability of digital coding.
De façon surprenante, ces objets sont atteints selon l'invention en utilisant des clefs numériques (N, el, dl) , (N, e2 ,d2) , ... , (N, ei ,di) comportant un module N identique, deux clefs se distinguant en ce que la paire d'exposants (el, dl) d'une clef est différent de la paire d'exposant (ei, di) d'une autre clef, et en réservant de telles clefs à des procédures de signature, de vérification et/ou d' authentification.Surprisingly, these objects are achieved according to the invention by using digital keys (N, el, dl), (N, e2, d2), ..., (N, ei, di) comprising an identical module N, two keys differing in that the pair of exponents (el, dl) of one key is different from the pair of exponents (ei, di) of another key, and by reserving such keys for procedures of signature, verification and / or authentication.
En particulier, seule une clef numérique (N,el,dl) parmi les clefs numériques (N, el , dl) , ... , (N, ei, di) comportant un module N identique pourra servir à des procédure de cryptage et/ou de décryptage.In particular, only one digital key (N, el, dl) among the digital keys (N, el, dl), ..., (N, ei, di) comprising an identical module N can be used for encryption procedures and / or decryption.
Selon l'invention, il est prévu d'utiliser un procédé de signature et/ou d' authentification de messages électroniques dans lequel un algorithme de calcul utilise des clefs électroniques afin de signer les messages et/ou afin d'authentifier les messages, les clefs étant constituées de chaînes de caractères numériques et implantées sur des cartes à puce, une clef comportant notamment un triplet (N,e,d) de nombres entiers :According to the invention, provision is made to use a method for signing and / or authenticating electronic messages in which a calculation algorithm uses electronic keys in order to sign the messages and / or in order to authenticate the messages, keys being made up of strings of numeric characters and implanted on smart cards, a key comprising in particular a triplet (N, e, d) of whole numbers:
- un module (N) ,- a module (N),
- un exposant public (e) et - un exposant secret (d) , deux clefs se distinguant en ce que le triplet (N,e,d) d'une clef est différent du triplet (N',e',d') de l'autre clef, le procédé étant caractérisé en ce que plusieurs clefs (N,e,d), (N,e',d') comportent un module (N) identique notamment afin de reconnaître un utilisateur ou une utilisation identique de la carte, et en ce que ces clefs sont consacrées à la signature, à la vérification et/ou à l'authentification de messages.- a public exponent (e) and - a secret exponent (d), two keys distinguished in that the triplet (N, e, d) of a key is different from the triplet (N ', e', d ') on the other key, the method being characterized in that several keys (N, e, d), (N, e ', d') have a identical module (N) in particular in order to recognize a user or an identical use of the card, and in that these keys are dedicated to the signature, verification and / or authentication of messages.
Selon une variante, l'invention est réalisée en utilisant un procédé dans lequel, parmi les clefs (N,e,d), (N,e',d'), (N,e",d") ayant un module (N) identique, au plus une clef (N,e,d) sert à un cryptage et/ou à un décryptage de messages.According to a variant, the invention is implemented by using a method in which, among the keys (N, e, d), (N, e ', d'), (N, e ", d") having a module ( N) identical, at most one key (N, e, d) is used for encryption and / or decryption of messages.
L'invention est réalisée de préférence avec un procédé dans lequel la signature d'un message (M) est précédée d'une opération de hachage.The invention is preferably carried out with a method in which the signature of a message (M) is preceded by a hashing operation.
Enfin l'invention prévoit de réaliser une carte (Cl) à puce électronique comportant une mémoire contenant des clefs électroniques (N,e,d) utilisées pour signer et/ou authentifier des messages électroniques, les clefs (N,e,d) étant constituées de chaînes de caractères numériques stockées dans la mémoire, une clef (N,e,d) comportant notamment un triplet de nombres entiers :Finally, the invention provides for producing an electronic chip card (Cl) comprising a memory containing electronic keys (N, e, d) used to sign and / or authenticate electronic messages, the keys (N, e, d) being consisting of strings of digital characters stored in the memory, a key (N, e, d) comprising in particular a triplet of whole numbers:
- un module (N)- a module (N)
- un exposant public (e) et- a public exhibitor and
- un exposant secret (d) deux clefs (NO, eO , dO) , (NI , e3 , d3 ) se distinguant en ce que le triplet (N0,e0,d0) d'une clef est différent du triplet (Nl,e7,d7) de l'autre clef, caractérisée en ce que une clef (N0,e0,d0) de la carte comporte un module (NO) identique au module (NO) d'une autre clef (N0,el,dl) , (N0,e5,d5) de cette carte (Cl) ou d'une autre carte (C2) .- a secret exponent (d) two keys (NO, eO, dO), (NI, e3, d3), distinguished in that the triplet (N0, e0, d0) of a key is different from the triplet (Nl, e7 , d7) of the other key, characterized in that a key (N0, e0, d0) of the card comprises a module (NO) identical to the module (NO) of another key (N0, el, dl), (N0, e5, d5) of this card (Cl) or another card (C2).
La réalisation de l'invention sera mieux comprise à la lecture de la description et des dessins qui vont suivre ; sur les dessins annexés : - la figure 1 représente un schéma de cartes à puce utilisant un procédé de signature, de vérification et/ou d' authentification de messages électroniques selon l'invention. La figure 1 illustre schématiquement l'implantation de plusieurs clefs numériques (NO , eO , dO) ... (NI , e3 ' , d3 ' ) sur deux cartes différentes avec le procédé selon 1' invention.The realization of the invention will be better understood on reading the description and the drawings which follow; in the accompanying drawings: - Figure 1 shows a diagram of smart cards using a method of signing, verifying and / or authenticating electronic messages according to the invention. Figure 1 schematically illustrates the implementation of several digital keys (NO, eO, dO) ... (NI, e3 ', d3') on two different cards with the method according to one invention.
Une première carte à puce Cl est représentée en deux parties, une partie publique PI et une partie secrète SI, représentant respectivement la zone accessible et la zone protégée de la mémoire morteA first smart card C1 is represented in two parts, a public part PI and a secret part SI, representing respectively the accessible area and the protected area of the read only memory.
EEPROM de la carte Cl.EEPROM of the Cl card.
Une seconde carte à puce C2 est représentée de façon analogue avec une partie publique P2 et une partie secrète S2 représentant les zones accessibles et protégées de sa mémoire morte.A second smart card C2 is represented in a similar manner with a public part P2 and a secret part S2 representing the accessible and protected areas of its read-only memory.
Une première série de paramètres NO, NI, eO, eO' , el, el' , e2 , e2 ' , e3 ,e3 ' est représentée dans la partie publique PI de la carte Cl. La première série correspond à des modules et à des exposants publics stockés dans la zone accessible de la mémoire morte de la première carte Cl.A first series of parameters NO, NI, eO, eO ', el, el', e2, e2 ', e3, e3' is represented in the public part PI of the card Cl. The first series corresponds to modules and public exhibitors stored in the accessible area of the read-only memory of the first card C1.
Une deuxième série de paramètres d0,d0' ,dl,dl' ,d2 ,d2 ' , d3 ,d3 ' est représentée dans la partie secrète SI de la carte Cl. La deuxième série correspond à des exposants secrets stockés dans la zone protégée de la mémoire morte de la première carte Cl.A second series of parameters d0, d0 ', dl, dl', d2, d2 ', d3, d3' is represented in the secret part SI of the card Cl. The second series corresponds to secret exponents stored in the protected area of the read-only memory of the first card Cl.
De même, sur la seconde carte C2 , dans la partie publique P2 , on voit une troisième série de paramètres N0,N1,N2, e4,e4' , e5,e5' , e6,e6' , e7 , e7 ' et, dans la partie secrète S2, une quatrième série de paramètres d4 , d4 ' , d5 , d5 ' , d6 , d6 ' , d7 , d7 ' . La troisième série de paramètres correspond à des modules et à des exposants publics stockés dans la zone accessible de la mémoire morte EEPROM, la quatrième série correspondant à des exposants secrets stockés dans la zone protégée de la mémoire morte EEPROM de la seconde carte C2.Similarly, on the second map C2, in the public part P2, we see a third series of parameters N0, N1, N2, e4, e4 ', e5, e5', e6, e6 ', e7, e7' and, in the secret part S2, a fourth series of parameters d4, d4 ', d5, d5', d6, d6 ', d7, d7'. The third set of parameters corresponds to modules and public exhibitors stored in the accessible area of the EEPROM read-only memory, the fourth series corresponding to secret exponents stored in the protected area of the EEPROM read-only memory of the second card C2.
Ces paramètres groupés en triplets (N,e,d) forment alors des clefs numériques permettant des opérations de signature/vérification, ou d'authentification ou de cryptage/décryptage précédemment décrites.These parameters grouped in triples (N, e, d) then form digital keys allowing operations of signature / verification, or authentication or encryption / decryption previously described.
Le tableau ci-après indique deux groupes de clefs numériques formées par exemple en reprenant les séries de paramètres des cartes Cl et C2 de la figure 1 et l'utilisation de ces clefs pour des opérations de signature/vérification, d ' authentification et de cryptage/décryptage selon l'invention.The table below indicates two groups of digital keys formed for example by taking up the series of parameters of the cards C1 and C2 in FIG. 1 and the use of these keys for signature / verification, authentication and encryption operations. / decryption according to the invention.
Figure imgf000012_0001
Dans la deuxième colonne intitulée clef numérique, on voit que la carte Cl comporte six clefs (N0,e0,d0), (N0,e0' ,d0') , (N0,el,dl), (NO , el ' , dl ' ) , (N0,e2,d2) et (N0,e2 ' ,d2 ' ) , ayant le même module NO. Les opérations d' authentification utilisent de préférence des clefs distinctes des clefs de signature/vérification, même si ces opérations concernent un même service de la carte.
Figure imgf000012_0001
In the second column titled digital key, we see that the card Cl has six keys (N0, e0, d0), (N0, e0 ', d0'), (N0, el, dl), (NO, el ', dl '), (N0, e2, d2) and (N0, e2', d2 '), having the same module NO. The authentication operations preferably use keys distinct from the signature / verification keys, even if these operations relate to the same service of the card.
Ces clefs de signature/vérification et d' authentification peuvent cependant avoir le même module. Ainsi, dans l'exemple du tableau, on a indiqué que parmi les six clefs de la carte Cl ayant le module NO, trois clefs (paires d'exposants (e0,d0), (el,dl) et (e2,d2)) sont consacrées aux opérations de signature/vérification, tandis que trois autres clefs (paires d'exposant (e0',d0') (el',dl') et (e2',d2')) sont consacrées à des authentifications .These signature / verification and authentication keys can however have the same module. Thus, in the example of the table, it was indicated that among the six keys of the card Cl having the module NO, three keys (pairs of exponents (e0, d0), (el, dl) and (e2, d2) ) are devoted to signature / verification operations, while three other keys (exponent pairs (e0 ', d0') (el ', dl') and (e2 ', d2')) are devoted to authentication.
De manière générale, chaque clef ayant le module commun NO peut être associée à l'utilisation d'un service distinct. Par exemple, les trois clefs (N0,e0,d0), (N0,el,dl) et (N0,e2,d2) peuvent correspondre à trois comptes bancaires de l'utilisateur de la carte Cl. Chaque paire d'exposants (e0,d0), (el,dl) et (e2,d2) est alors associée à une signature électronique distincte correspondant à chacun des comptes.In general, each key having the common module NO can be associated with the use of a separate service. For example, the three keys (N0, e0, d0), (N0, el, dl) and (N0, e2, d2) can correspond to three bank accounts of the user of the Cl card. Each pair of exhibitors ( e0, d0), (el, dl) and (e2, d2) is then associated with a separate electronic signature corresponding to each of the accounts.
Toutefois, comme l'indique la dernière colonne du tableau, il est prévu que seule une des six clefs comportant un module NO identique, la clef (N0,e0,d0) soit utilisée pour des opérations de cryptage- décryptage.However, as indicated in the last column of the table, it is intended that only one of the six keys comprising an identical NO module, the key (N0, e0, d0) is used for encryption-decryption operations.
Ainsi, le module NO n'est pas utilisé dans deux clefs de cryptage-décryptage distinctes. Les conditions de sûreté et d'inviolabilité des opérations de cryptage sont alors respectées.Thus, the NO module is not used in two separate encryption-decryption keys. Conditions security and inviolability of encryption operations are then respected.
La seconde partie du tableau indique que la carte C2 possède quatre clefs (N0,e4,d4), (NO , e4 ' , d4 ' ) , (N0,e5,d5) et (N0,e5',d5') comportant le même moduleThe second part of the table indicates that card C2 has four keys (N0, e4, d4), (NO, e4 ', d4'), (N0, e5, d5) and (N0, e5 ', d5') including the same module
NO. On voit ainsi qu'un module commun NO peut être prévu sur des cartes Cl, C2 différentes.NO. It can thus be seen that a common module NO can be provided on different cards C1, C2.
Cependant, comme le module NO est dans cet exemple utilisé par la clef (N0,e0,d0) de la carte Cl pour des opérations de cryptage-décryptage, aucune opération de cryptage-décryptage ne doit être effectuée par la clef (N0,e4,d4) ou la clef (N0,e4',d4') ou la clefHowever, as the module NO is in this example used by the key (N0, e0, d0) of the card Cl for encryption-decryption operations, no encryption-decryption operation must be performed by the key (N0, e4 , d4) or the key (N0, e4 ', d4') or the key
(N0,e5,d5) ou la clef (NO, e5', d5') de la seconde carte C2. Ce cas illustre une application de l'invention dans lequel un module identique NO est commun à plusieurs cartes. Par exemple, les clefs (N0,e0,d0) et (N0,e4,d4) correspondent à un même service ou une même application prévus pour ces cartes. Le tableau précédent montre une autre série de clefs (Nl,e3,d3), (NI , e3 ' , d3 ' ) , (Nl,e6,d6) et (NI, e6', d6') ayant un module NI identique. Dans cette autre série, seule la clef (Nl,e6,d6) attachée à la carte C2 permet des opérations de cryptage-décryptage. En somme selon une caractéristique du procédé selon l'invention, plusieurs clefs comportent un module identique et ces clefs sont consacrées à la signature et/ou à l'authentification de messages.(N0, e5, d5) or the key (NO, e5 ', d5') of the second card C2. This case illustrates an application of the invention in which an identical module NO is common to several cards. For example, the keys (N0, e0, d0) and (N0, e4, d4) correspond to the same service or the same application provided for these cards. The previous table shows another series of keys (Nl, e3, d3), (NI, e3 ', d3'), (Nl, e6, d6) and (NI, e6 ', d6') having an identical NI module. In this other series, only the key (Nl, e6, d6) attached to the card C2 allows encryption-decryption operations. In short, according to a characteristic of the method according to the invention, several keys comprise an identical module and these keys are dedicated to the signature and / or authentication of messages.
Et selon une variante du procédé selon l'invention, parmi de telles clefs ayant un module identique , au plus une clef sert à un cryptage et/ou à un décryptage de messages . Cependant, afin d'assurer le maximum de sécurité on prévoit des précautions dans le choix des exposants publics comme cela est détaillé dans la suite.And according to a variant of the method according to the invention, among such keys having an identical module, at most one key is used for encryption and / or decryption of messages. However, to ensure maximum security, precautions are taken in the choice of public exhibitors as detailed below.
Première précaution, une propriété mathématique va limiter le choix des exposants publics e0,...,ei relatifs à un module N identique.First precaution, a mathematical property will limit the choice of public exponents e0, ..., ei relating to an identical module N.
Chacun de ces exposants publics, noté ek, ne doit pas être un diviseur du plus petit commun multiple (en abrégé ppcm) des autres exposants publics : eQ, ... , ek_1,ek+i,ei relatifs au même module.Each of these public exhibitors, denoted ek, must not be a divisor of the least common multiple (in short ppcm) of the other public exhibitors: e Q , ..., e k _ 1 , ek + i, ei relating to the same module.
La réalisation de cette première précaution est en particulier obtenue en choisissant les exposants publics eθ,...,ei parmi les nombres premiers. En effet, il est mathématiquement impossible qu'un nombre premier soit diviseur d'un multiple d'autres nombres premiers.The realization of this first precaution is in particular obtained by choosing the public exponents eθ, ..., ei among the prime numbers. Indeed, it is mathematically impossible for a prime number to be a divisor of a multiple of other prime numbers.
Cependant, comme le calcul des nombres premiers de grande taille représente un nombre considérable de calculs, une autre méthode peut être suivie. Elle consiste à choisir les exposants publics e0,...,ei de façon aléatoire parmi de très grands nombres. On peut alors montrer que la probabilité de découverte des clefs est extrêmement faible. Cette démonstration ne rentre pas dans le cadre de la présente demande. A titre d'exemple cependant, considérons le choix de seize exposants e0,...,el6 de façon aléatoire parmi les nombres binaires de 180 bits ; Dans ce cas, la probabilité qu'un des exposants ek soit diviseur du ppcm des autres est d'une chance sur 270 chances. Selon un autre exemple, le choix de 256 exposants e0,...,256 parmi les nombres binaires de 512 bits correspond à une probabilité inférieure à 2~166. Cette méthode, bien que moins rigoureuse, permet d'obtenir une sûreté élevée tout en économisant du temps de calcul.However, since the calculation of large prime numbers represents a considerable number of calculations, another method can be followed. It consists in choosing the public exhibitors e0, ..., ei randomly among very large numbers. We can then show that the probability of finding the keys is extremely low. This demonstration is beyond the scope of this application. By way of example, however, let us consider the choice of sixteen exponents e0, ..., el6 randomly among the binary numbers of 180 bits; In this case, the probability that one of the ek exponents is a divisor of the ppcm of the others is one in 270 chances. According to another example, the choice of 256 exponents e0, ..., 256 among the binary numbers of 512 bits corresponds to a probability less than 2 ~ 166 . This method, although less rigorous, makes it possible to obtain high safety while saving calculation time.
Deuxième précaution, on prévoit de hacher les messages avant de les signer. Pour cela, on peut utiliser un algorithme de hachage de type connu. Cette complication multiplie le nombre d'opérations nécessaires pour découvrir les clefs numériques et rend cette éventualité tout à fait improbable. Typiquement les algorithmes de hachage sont des fonctions aléatoires faisant correspondre à des chaînes binaires, comme un message M, des nombres inférieurs à un entier P, de manière pseudo-aléatoire. Le résultat du hachage du message M est ainsi un condensé de taille binaire fixe, la taille de l'entier P.Second precaution, we plan to hash the messages before signing them. For this, we can use a known type hashing algorithm. This complication multiplies the number of operations necessary to discover the digital keys and makes this eventuality quite improbable. Typically hash algorithms are random functions that match binary strings, like a message M, with numbers less than an integer P, in a pseudo-random manner. The result of the hash of the message M is thus a digest of fixed binary size, the size of the integer P.
De façon avantageuse on utilisera un algorithme de hachage SHA, c'est-à-dire conforme à la norme "Secure Hash Standard" publiée par le National Institute of Standards and Technology. Notons que si l'on applique un algorithme de hachage dont la taille des résultats, c'est-à-dire la taille de l'entier P, est nettement inférieure à la taille des modules NO, NI,..., il est préférable d'appliquer un hachage répété. Lors d'un hachage répété le message M est tronqué en sous-messages m, m',... et chaque sous-message est traité isolément par l'algorithme de hachage.Advantageously, a SHA hashing algorithm will be used, that is to say in accordance with the "Secure Hash Standard" standard published by the National Institute of Standards and Technology. Note that if we apply a hashing algorithm whose size of the results, that is to say the size of the integer P, is much smaller than the size of the modules NO, NI, ..., it is better to apply a repeated hash. During a repeated hash the message M is truncated into sub-messages m, m ', ... and each sub-message is treated in isolation by the hash algorithm.
Par exemple, si les clefs numériques comportent des paramètres N,e,d d'environ 512 bits et que le résultat de l'algorithme de hachage utilisé donne des résultats ayant une dimension de 128 ou 160 bits, il sera préférable d'appliquer un tel hachage répété.For example, if the numeric keys have parameters N, e, d of around 512 bits and the result of the hashing algorithm used gives results having a dimension of 128 or 160 bits, it will be preferable to apply a such repeated hashing.
Un mode de réalisation préféré de l'invention prévoit d'utiliser une fonction h de hachage faisant appel à l'exposant public e et au message M, notée sous la forme suivante :A preferred embodiment of the invention provides for using a hash function h making call to the public exhibitor e and to the message M, noted in the following form:
H = h(e.M) , H étant le résultat du hachage, c'est à dire le message haché.H = h (e . M), H being the result of the hash, ie the hashed message.
Ainsi l'opération de signature précédée du hachage suit la relative suivante :Thus the signature operation preceded by the hash follows the following relative:
S=Hd mod N = (h (e, M))d mod N. Réciproquement, l'opération de vérification sera effectuée en vérifiant la relation suivante :S = H d mod N = (h (e, M)) d mod N. Conversely, the verification operation will be carried out by checking the following relation:
Se mod N = h(e, M) . Cette procédure de hachage a l'avantage de donner une sûreté importante au procédé de signature et d' authentification. Un mode de réalisation préféré de l'invention prévoit en outre d'utiliser une fonction complexe de chiffrement f avant le cryptage. On obtient ainsi un codage d'ordre 2 avec deux méthodes de codage distinctes, ce qui renforce la sûreté du cryptage. Des algorithmes répondant à des normes d'encryptage de données tel des algorithmes DES (Data Enscryption Standard) peuvent ainsi être utilisés pour réaliser une fonction f de chiffrement symétrique.S e mod N = h (e, M). This hashing procedure has the advantage of giving significant security to the signature and authentication process. A preferred embodiment of the invention also provides for using a complex encryption function f before encryption. We thus obtain a coding of order 2 with two distinct coding methods, which reinforces the security of encryption. Algorithms meeting data encryption standards such as Data Enscryption Standard (DES) algorithms can thus be used to perform a symmetric encryption function.
Par exemple, on peut choisir une fonction f de chiffrement, faisant appel au message M à chiffrer et à un paramètre k, et notée sous la forme suivante :For example, one can choose an encryption function f, calling on the message M to be encrypted and on a parameter k, and noted in the following form:
F = f(k,M) F étant le message chiffré.F = f (k, M) F being the encrypted message.
Etant symétrique, la fonction f admet une fonction inverse, notée f-1, vérifiant la relation suivante :Being symmetrical, the function f admits an inverse function, noted f -1 , verifying the following relation:
M = f_1(k,M) Pour rendre l'opération de chiffrement plus complexe, donc plus sûre, le paramètre k est de préférence obtenu par hachage de l'exposant public e, selon la relation suivante : k ≈ h(e) Le message chiffré F est donc obtenu, selon ce mode de réalisation, après le calcul suivant :M = f _1 (k, M) To make the encryption operation more complex, therefore more secure, the parameter k is preference obtained by hashing the public exponent e, according to the following relation: k ≈ h (e) The encrypted message F is therefore obtained, according to this embodiment, after the following calculation:
F = f (h(e) ,M) Finalement, l'opération de chiffrement-cryptage correspond à la relation suivante :F = f (h (e), M) Finally, the encryption-encryption operation corresponds to the following relationship:
C= Fe mod N = [f(h(e),M)]e mod N où C est le message chiffré puis crypté comme établi précédemment.C = F e mod N = [f (h (e), M)] e mod N where C is the encrypted message then encrypted as previously established.
Réciproquement, l'opération de décryptage- déchiffrement est effectuée selon le calcul suivant :Conversely, the decryption-decryption operation is carried out according to the following calculation:
M = f-1(h(e) ,Cd mod N) La démonstration de la sûreté du procédé et le calcul particulièrement complexe des probabilités infinitésimale de découverte des clefs ne sera pas détaillé dans la présente demande.M = f -1 (h (e), C d mod N) The demonstration of the safety of the process and the particularly complex calculation of the infinitesimal probabilities of discovery of the keys will not be detailed in the present request.
Une dernière précaution consistera à limiter le nombre de cartes à puce et plus précisément le nombre i des clefs (N,ei,di) comportant un module N identique .A final precaution will consist in limiting the number of smart cards and more precisely the number i of keys (N, ei, di) comprising an identical module N.
Une des applications particulièrement intéressante du procédé selon l'invention est justement l'émission de cartes en série limitée comportant un module N identique. Ce module servant à reconnaître par exemple un groupe d'utilisateurs ou un service utilisé en commun.One of the particularly interesting applications of the method according to the invention is precisely the issue of cards in limited series comprising an identical module N. This module used to recognize for example a group of users or a service used in common.
L'utilisation de clefs comportant un même module permet d'envisager de pouvoir signer au nom d'un groupe tout en distinguant l'identité de chaque signataire avec l'exposant utilisé.The use of keys comprising the same module makes it possible to envisage being able to sign on behalf of a group while distinguishing the identity of each signatory with the exhibitor used.
Une autre application du procédé selon l'invention est l'implantation sur une même carte de plusieurs clefs (N,ei,di) ayant le même module N pour reconnaître l'utilisateur ou permettre la reconnaissance d'un groupe de services offert par un même prestataire.Another application of the method according to the invention is the implantation on the same card of several keys (N, ei, di) having the same module N to recognize the user or allow the recognition of a group of services offered by the same provider.
Enfin, une application particulière est l'identification des cartes avant leur personnalisation c'est-à-dire avant leur remise à l'utilisateur avec des clefs propres à l'utilisateur. Dans la pratique, les mémoire des cartes à puce sont initialement chargées avec des clefs de transport pour les tester et les distinguer au milieu d'un lot. Les cartes connues comportent un numéro d'identification de la carte, noté Id.Finally, a particular application is the identification of cards before their personalization, that is to say before they are handed over to the user with keys specific to the user. In practice, the memories of smart cards are initially loaded with transport keys to test and distinguish them in the middle of a batch. Known cards include an identification number of the card, noted Id.
Ce numéro d'identification Id est par sécurité transmis sous la forme signée suivante :This identification number Id is for safety transmitted in the following signed form:
S(Id) = Idd odulo N (N,e,d) étant les paramètres de la clef appelée clef de transport. Lors de la personnalisation, cette clef est remplacée par une nouvelle clef propre à l'utilisateur.S (Id) = Id d odulo N (N, e, d) being the parameters of the key called transport key. During personalization, this key is replaced by a new user-specific key.
On pourra avec le procédé selon l'invention réutiliser le module N déjà stocké dans la clef de transport en modifiant seulement le couple d'exposants (e,d).With the method according to the invention, it will be possible to reuse the module N already stored in the transport key by modifying only the pair of exhibitors (e, d).
Un avantage de l'invention est la limitation de la taille mémoire utilisée par les clefs numériques dans la mémoire morte EEPROM ou ROM. On peut ainsi utiliser des composants de dimensions réduites ou utiliser la zone mémoire inoccupée pour stocker d'autres données.An advantage of the invention is the limitation of the memory size used by the digital keys in the EEPROM or ROM memory. It is thus possible to use components of reduced dimensions or to use the unoccupied memory area to store other data.
Un autre avantage du procédé selon l'invention et de réduire les échanges entre une carte et le terminal ou l'autorité centrale. En effet, le terminal peut stocker le module N commun à plusieurs clefs en évitant de le recharger lors d'un changement de la clef utilisée.Another advantage of the method according to the invention and of reducing the exchanges between a card and the terminal or the central authority. Indeed, the terminal can store the module N common to several keys while avoiding recharging it when changing the key used.
Enfin, le procédé selon l'invention procure un gain de temps de calcul important lors de la génération des clefs numériques puisque les modules N, ayant fait l'objet de calculs complexes, peuvent être utilisés plusieurs fois. Finally, the method according to the invention provides a significant saving in computation time during the generation of the digital keys since the N modules, having been the subject of complex calculations, can be used several times.

Claims

REVENDICATIONS
1. Procédé de signature, de vérification et/ou d'authentification de messages électroniques dans lequel un algorithme de calcul utilise des clefs électroniques afin de signer les messages et/ou afin d'authentifier les messages, les clefs étant constituées de chaînes de caractères numériques et implantées sur des cartes à puce, une clef comportant notamment un triplet (N,e,d) de nombres entiers :1. Method for signing, verifying and / or authenticating electronic messages in which a calculation algorithm uses electronic keys in order to sign messages and / or in order to authenticate messages, the keys being made up of character strings numerical and installed on smart cards, a key comprising in particular a triplet (N, e, d) of whole numbers:
- un module (N) , - un exposant public (e) et- a module (N), - a public exhibitor and
- un exposant secret (d) , deux clefs se distinguant en ce que le triplet (N,e,d) d'une clef est différent du triplet (N',e',d') de l'autre clef, le procédé étant caractérisé en ce que plusieurs clefs (N,e,d), (N,e',d') comportent un module (N) identique notamment afin de reconnaître un utilisateur ou une utilisation identique de la carte, et en ce que ces clefs sont consacrées à la signature, à la vérification et/ou à l'authentification de messages.- a secret exponent (d), two keys distinguished in that the triplet (N, e, d) of one key is different from the triplet (N ', e', d ') of the other key, the method being characterized in that several keys (N, e, d), (N, e ', d') comprise an identical module (N) in particular in order to recognize a user or an identical use of the card, and in that these keys are dedicated to signing, verifying and / or authenticating messages.
2. Procédé selon la revendication 1 dans lequel une opération de signature d'un message (M) avec une clef (N,e,d) consiste à calculer un message signé (S) en fonction (g(M,N,d)) du message (M), du module (N) et de l'exposant secret (d) de la clef (N,e,d) et/ou dans lequel une opération de vérification consiste à calculer un message vérifié (M') en fonction (g(S,N,e)) d'un message signé (S), du module (N) et de l'exposant public (e) de la clef (N,e,d). 2. Method according to claim 1 wherein an operation of signing a message (M) with a key (N, e, d) consists in calculating a signed message (S) as a function (g (M, N, d) ) of the message (M), of the module (N) and of the secret exponent (d) of the key (N, e, d) and / or in which a verification operation consists in calculating a verified message (M ') as a function (g (S, N, e)) of a signed message (S), of the module (N) and of the public exponent (e) of the key (N, e, d).
3. Procédé selon la revendication 1 ou 2 dans lequel une opération d' authentification d'un message (A) avec une clef (N' , e', d') consiste à transmettre un message aléatoire (X) , à recevoir un message aléatoire signé (A) , à calculer un message authentifié (X') en fonction (g(A,N',e')) du message aléatoire signé (A), du module (N') et de l'exposant public (e') de la clef (N',e',d') et à comparer le message authentifié (X') au message aléatoire (X).3. Method according to claim 1 or 2 wherein an authentication operation of a message (A) with a key (N ', e', d ') consists in transmitting a random message (X), in receiving a message signed random message (A), calculating an authenticated message (X ') as a function (g (A, N', e ')) of the signed random message (A), of the module (N') and of the public exponent ( e ') of the key (N', e ', d') and compare the authenticated message (X ') to the random message (X).
4. Procédé selon l'une des revendications précédentes, dans lequel, parmi les clefs (N,e,d) , (N,e' ,d' ) , (N,e",d") ayant un module (N) identique, au plus une clef (N,e,d) sert à un cryptage et/ou à un décryptage de messages.4. Method according to one of the preceding claims, wherein, among the keys (N, e, d), (N, e ', d'), (N, e ", d") having a module (N) identical, at most one key (N, e, d) is used for encryption and / or decryption of messages.
5. Procédé selon la revendication 4 dans lequel une opération de cryptage d'un message (M), avec la clef (g(M,N,e)) consiste à calculer un message crypté (C) en fonction (g(C,N,d)) du message (M), du module (N) et de l'exposant public (e) de la clef (N,e,d) et/ou dans lequel une opération de décryptage avec la clef (N,e,d) consiste à calculer un message décrypté (M) en fonction (g(C,N,d)) d'un message crypté (C) , du module (N) et de l'exposant secret (d) de la clef (N,e,d) .5. Method according to claim 4 in which an operation of encryption of a message (M), with the key (g (M, N, e)) consists in calculating an encrypted message (C) as a function (g (C, N, d)) of the message (M), of the module (N) and of the public exponent (e) of the key (N, e, d) and / or in which a decryption operation with the key (N, e, d) consists in calculating a decrypted message (M) as a function (g (C, N, d)) of an encrypted message (C), of the module (N) and of the secret exponent (d) of the key (N, e, d).
6. Procédé selon la revendication 4 ou 5 , dans lequel une opération de cryptage est précédée d'un chiffrement et/ou dans lequel une opération de décryptage est suivie d'une déchiffrement, une opération de chiffrement ou de déchiffrement mettant en oeuvre une fonction inversible (f, f-1) et l'exposant public (e) . 6. Method according to claim 4 or 5, in which an encryption operation is preceded by an encryption and / or in which a decryption operation is followed by a decryption, an encryption or decryption operation implementing a function invertible (f, f -1 ) and the public exponent (e).
7. Procédé selon l'une des revendications précédentes dans lequel la signature du message (M) est précédée d'une opération de hachage.7. Method according to one of the preceding claims wherein the signature of the message (M) is preceded by a hash operation.
8. Procédé selon l'une des revendications précédentes dans lequel, parmi les exposants publics (el, e2 , ... , ei) des clefs (N,el,dl), (N, e2 , d2) , ... , (N, ei , di) comportant un module (N) identique, chacun (ek) de ces exposants publics n'est pas un diviseur du plus petit commun multiple des autres exposants publics (el , e2 , ... , ek-l , ek+l , ... , ei) relatifs au module (N) identique.8. Method according to one of the preceding claims, in which, among the public exponents (el, e2, ..., ei) of the keys (N, el, dl), (N, e2, d2), ..., (N, ei, di) comprising an identical module (N), each (ek) of these public exhibitors is not a divisor of the least common multiple of the other public exhibitors (el, e2, ..., ek-l , ek + l, ..., ei) relative to the identical module (N).
9. Carte à puce mettant en oeuvre un procédé selon l'une des revendications précédentes.9. Chip card implementing a method according to one of the preceding claims.
10. Carte (Cl) à puce électronique comportant une mémoire contenant des clefs électroniques (N,e,d) utilisées pour signer et/ou authentifier des messages électroniques, les clefs (N,e,d) étant constituées de chaînes de caractères numériques stockées dans la mémoire, une clef (N,e,d) comportant notamment un triplet de nombres entiers :10. Chip card (Cl) comprising a memory containing electronic keys (N, e, d) used to sign and / or authenticate electronic messages, the keys (N, e, d) consisting of strings of digital characters stored in memory, a key (N, e, d) comprising in particular a triplet of whole numbers:
- un module (N) - un exposant public (e) et- a module (N) - a public exhibitor and
- un exposant secret (d) deux clefs (NO , eO , dO) , (NI , e3 , d ) se distinguant en ce que le triplet (N0,e0,d0) d'une clef est différent du triplet (Nl,e3,d3) de l'autre clef, caractérisée en ce que une clef (N0,e0,d0) de la carte comporte un module (N0) identique au module (N0) d'une autre clef (N0,el,dl) , (N0,e5,d5) de cette carte (Cl) ou d'une autre carte (C2) . - a secret exponent (d) two keys (NO, eO, dO), (NI, e3, d) being distinguished in that the triplet (N0, e0, d0) of a key is different from the triplet (Nl, e3 , d3) of the other key, characterized in that a key (N0, e0, d0) of the card comprises a module (N0) identical to the module (N0) of another key (N0, el, dl), (N0, e5, d5) of this card (Cl) or another card (C2).
PCT/FR1997/002086 1996-11-20 1997-11-20 Method for signing and/or authenticating electronic messages WO1998023061A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP97947096A EP0940021A1 (en) 1996-11-20 1997-11-20 Method for signing and/or authenticating electronic messages
JP10523288A JP2001503162A (en) 1996-11-20 1997-11-20 Electronic message signing and / or authentication method
CA002271989A CA2271989A1 (en) 1996-11-20 1997-11-20 Method for signing and/or authenticating electronic messages

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9614158A FR2756122B1 (en) 1996-11-20 1996-11-20 METHOD FOR SIGNING AND / OR AUTHENTICATING ELECTRONIC MESSAGES
FR96/14158 1996-11-20

Publications (1)

Publication Number Publication Date
WO1998023061A1 true WO1998023061A1 (en) 1998-05-28

Family

ID=9497820

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR1997/002086 WO1998023061A1 (en) 1996-11-20 1997-11-20 Method for signing and/or authenticating electronic messages

Country Status (5)

Country Link
EP (1) EP0940021A1 (en)
JP (1) JP2001503162A (en)
CA (1) CA2271989A1 (en)
FR (1) FR2756122B1 (en)
WO (1) WO1998023061A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19848378A1 (en) * 1998-09-05 2000-03-09 Orga Kartensysteme Gmbh Microprocessor-aided portable data medium for exchanging data through a data exchange device runs an RSA encoding algorithm for creating a verifiable digital signature for a message
DE19952944A1 (en) * 1999-11-03 2001-05-23 Siemens Ag Access authorization method for computer or similar system
WO2016057086A3 (en) * 2014-06-10 2016-06-02 Qualcomm Incorporated Common modulus rsa key pairs for signature generation and encryption/decryption

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2803961B1 (en) 2000-01-19 2002-03-15 Ghislain Moret SYSTEM FOR SECURING TRANSACTIONS DURING CORRESPONDENCE PURCHASES

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0624014A2 (en) * 1993-05-05 1994-11-09 Addison M. Fischer Personal date/time notary device
FR2718309A1 (en) * 1994-03-31 1995-10-06 Korea Telecommunication Identification exchange and electronic signature generation method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0624014A2 (en) * 1993-05-05 1994-11-09 Addison M. Fischer Personal date/time notary device
FR2718309A1 (en) * 1994-03-31 1995-10-06 Korea Telecommunication Identification exchange and electronic signature generation method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19848378A1 (en) * 1998-09-05 2000-03-09 Orga Kartensysteme Gmbh Microprocessor-aided portable data medium for exchanging data through a data exchange device runs an RSA encoding algorithm for creating a verifiable digital signature for a message
DE19848378C2 (en) * 1998-09-05 2000-11-30 Orga Kartensysteme Gmbh Method for verifying the digital signature of a message
DE19952944A1 (en) * 1999-11-03 2001-05-23 Siemens Ag Access authorization method for computer or similar system
WO2016057086A3 (en) * 2014-06-10 2016-06-02 Qualcomm Incorporated Common modulus rsa key pairs for signature generation and encryption/decryption
US9949115B2 (en) 2014-06-10 2018-04-17 Qualcomm Incorporated Common modulus RSA key pairs for signature generation and encryption/decryption

Also Published As

Publication number Publication date
EP0940021A1 (en) 1999-09-08
CA2271989A1 (en) 1998-05-28
FR2756122B1 (en) 1999-02-12
JP2001503162A (en) 2001-03-06
FR2756122A1 (en) 1998-05-22

Similar Documents

Publication Publication Date Title
EP0675614B1 (en) Apparatus for the secure exchange of data according to the RSA method limited to digital signatures and message verification and smart card containing such an apparatus
US6178507B1 (en) Data card verification system
EP1151576B1 (en) Public and private key cryptographic method
FR2759226A1 (en) PROTOCOL FOR VERIFYING A DIGITAL SIGNATURE
EP0311470B1 (en) Methods and systems to authenticate authorizations and messages with a zero knowledge-proof system and to provide messages with a signature
WO2003056750A2 (en) Cryptographic system for group signature
FR2713419A1 (en) A method of generating DSA signatures with low cost portable devices.
FR2892252A1 (en) METHOD AND DEVICE FOR CREATING A GROUP SIGNATURE AND METHOD AND DEVICE FOR VERIFYING AN ASSOCIATED GROUP SIGNATURE.
EP1791292A1 (en) Personalisation of an electronic circuit
WO2000062477A1 (en) Authentication and signature method for messages using reduced size of binary units of information content and corresponding systems
FR2763451A1 (en) PUBLIC KEY IDENTIFICATION METHOD USING TWO HASH FUNCTIONS
EP1400056B1 (en) Cryptographic authentication process
FR2699300A1 (en) Authentication of terminal by server - using signature algorithm in terminal to encode random number sent by server and validating returned signature
WO2013093373A1 (en) Authentication method between a reader and a radio tag
EP1240630A1 (en) Method for authenticating a portable object, corresponding portable object, and apparatus therefor
WO1998023061A1 (en) Method for signing and/or authenticating electronic messages
FR2877453A1 (en) SECURE DELEGATION METHOD OF CALCULATING A BILINE APPLICATION
EP4012972A1 (en) Method for selective disclosure of data via a blockchain
FR3070516B1 (en) METHOD FOR AUTHENTICATING A USER FROM AN AUTHENTICATION SERVER
WO1998010563A2 (en) Instrument for making secure data exchanges
FR2786049A1 (en) Information transmission dynamic key encryption coding technique having defined word generated key encryption used and receiver generation same key decoding producing.
Sain et al. An improved two factor user authentication framework based on captcha and visual secret sharing
FR2948839A1 (en) METHOD FOR SECURELY AUTHENTICATING ACCESS TO FIGURE DATA
M’Raıhi et al. Couponing scheme reduces computational power requirements for dss signatures
FR3100411A3 (en) Cryptography process

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP SG US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1997947096

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2271989

Country of ref document: CA

WWP Wipo information: published in national office

Ref document number: 1997947096

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP

Ref document number: 1998523288

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 09308369

Country of ref document: US

WWW Wipo information: withdrawn in national office

Ref document number: 1997947096

Country of ref document: EP