System and method for communicating encrypted messages using RSA with modular reduction to provide fast decryption
Abstract
The method involves key numbers "d" and "e" and a modulus number N such that "N" is the product of two factors "p" and "q" which are prime numbers N = pq and that ed = 1mod phi (N), where phi (N) is the indicator function of Euler.<BR />The method provides parts of encrypted messages and, to decrypt them, comprises: a module determination step to determine a decryption module chosen from "p" and "q", a modular reduction step to make a first modular reduction on the number "d" with a module equal to said decryption module "(p -1), (q-1) "to provide a reduced number, a reduction step to make a second modular reduction on each encrypted message part with a module equal to said decryption module in order to provide a reduced encrypted message part , an exponentiation step to perform a modular exponentiation on each reduced encrypted message part with a module equal to said decryption module and with an exponent equal to said reduced number in order to restore said message.<BR />Application: microcircuit cards

Term
Term ended
Projected expiry passed 26 July 2015, 11.2 years ago.
- Priority and filed
- Published
- Projected expiry
- Today
4 claims: 1 independent, 3 dependent
- 1REVENDICATIONS. 1) Système de communication de messages cryptés selon un procédé de type R.S.A. impliquant des nombres clés d et e et un nombre module N tel que N est le produit de deux facteurs p et q qui sont des nombres premiers N = p.q et que e.d = l mod , (N ), où φ(Ν) est la fonction indicateur d'Euler, système comportant, d'une part, au moins un dispositif de cryptage formé :- de moyens de découpage pour découper le message à crypter en au moins une partie de message à crypter, - de moyens d'exponentiation pour effectuer, sur chaque partie de message à crypter, une opération d'exponentiation modulaire de module N et avec un exposant égal à un premier desdits nombres clé, en vue de fournir une partie de message cryptée, et, d'autre part, au moins un dispositif de décryptage, caractérisé en ce que le dispositif de décryptage est formé : - de moyens de détermination de module pour déterminer un module de décryptage choisi parmi lesdits facteurs, - de premiers moyens de réduction modulaire pour faire une première réduction modulaire sur le nombre d avec un module égal audit module de décryptage diminué d'une unité pour fournir un nombre réduit, - de deuxièmes moyens de réduction pour faire une deuxième réduction modulaire sur chaque partie de message cryptée avec un module égal audit module de décryptage en vue de fournir une partie de message cryptée réduite, - de deuxièmes moyens d'exponentiation pour effectuer une exponentiation modulaire sur chaque partie de message cryptée réduite avec un module égal audit module de décryptage et avec un exposant égal audit nombre réduit en vue de rétablir ledit message.
- 22) Procédé de cryptage-décryptage utilisé dans le système de la revendication 1, procédé selon lequel pour crypter un message :- celui-ci est décomposé en parties de message à crypter, - chaque partie subit une opération d'exponentiation modulaire de module N et avec un exposant égal à un premier desdits nombres clé, pour fournir des parties de messages cryptées, et pour le décrypter : - les parties de messages cryptées subissent une opération d'exponentiation de décryptage pour fournir des parties de messages décryptées, caractérisé en ce que : - les parties de messages à crypter sont présentées sous forme de nombres inférieurs aux nombres p et q, - l'opération d'exponentiation de décryptage comporte : • une étape de détermination d'un module de décryptage choisi parmi lesdits facteurs, • une étape préalable pour faire une première réduction modulaire sur le nombre d avec un module égal audit module de décryptage diminué d'une unité pour fournir un nombre réduit, • une étape pour faire une deuxième réduction modulaire sur les parties de messages cryptées avec un module égal audit module de décryptage pour fournir des parties de messages cryptées réduites, • une étape d'exponentiation modulaire effectuée sur les parties de messages cryptées réduites avec un module égal audit module de décryptage et avec un exposant égal audit nombre réduit.
- 33) Dispositif utilisateur, tel que carte à puce, convenant à un système de la revendication 1 comportant un dispositif de cryptage formé :- de moyens de découpage pour découper le message à crypter en au moins une partie de message à crypter, - de moyens d'exponentiation pour effectuer, sur chaque partie de message à crypter, une opération d'exponentiation modulaire de module N et avec un exposant égal à un premier desdits nombres clé, en vue de fournir une partie de message cryptée, et au moins un dispositif de décryptage, caractérisé en ce que le dispositif de décryptage est formé : - de moyens de détermination de module pour déterminer un module de décryptage choisi parmi lesdits facteurs, - de premiers moyens de réduction modulaire pour faire une première réduction modulaire sur le nombre d avec un module égal audit module de décryptage diminué d'une unité pour fournir un nombre réduit, - de deuxièmes moyens de réduction pour faire une deuxième réduction modulaire sur chaque partie de message cryptée avec un module égal audit module de décryptage en vue de fournir une partie de message cryptée réduite, - de deuxièmes moyens d'exponentiation pour effectuer une exponentiation modulaire sur chaque partie de message cryptée réduite avec un module égal audit module de décryptage et avec un exposant égal audit nombre réduit en vue de rétablir ledit message.
- 44) Serveur convenant.à un système de la revendication 1 comportant un dispositif de cryptage et un dispositif de décryptage pour servir d'intermédiaires avec des dispositifs utilisateurs selon la revendication 3» caractérisé en ce que son dispositif de décryptage est formé :- de moyens de détermination de module pour déterminer un module de décryptage choisi parmi lesdits facteurs, - de premiers moyens de réduction modulaire pour faire une première réduction modulaire sur le nombre d avec un module égal audit module de décryptage diminué d'une unité en vue de fournir un nombre réduit, - de deuxièmes moyens de réduction pour faire une deuxième réduction modulaire sur chaque partie de message cryptée avec un module égal audit module de décryptage en vue de fournir une partie de message cryptée réduite, - de deuxièmes moyens d'exponentiation pour effectuer une exponentiation modulaire sur chaque partie de message cryptée réduite avec un module égal audit module de décryptage et avec un exposant égal audit nombre réduit en vue de rétablir ledit message.
Independent claims4
53 paragraphs, as filed
Description:
The present invention relates to a system for communicating encrypted messages according to an RSA-type method involving key numbers d and e and a modulus number N such that N is the product of two factors p and q which are prime numbers N = pq and that ed = l<sub>modf (N</sub>) where φ (Ν) is the indicator function of Euler, a system comprising on the one hand at least one encryption device formed:
- splitting means for splitting the message to be encrypted into at least one part of the message to be encrypted,
- exponentiation means for performing, on each part of the message to be encrypted, a modular exponentiation operation of modulus N and with an exponent equal to a first of said key numbers, with a view to providing an encrypted message part and of on the other hand at least one decryption device.
The invention also relates to a method implemented in the system, a user device, microcircuit card type comprising on the same medium an encryption device and a decryption device and a so-called trust server center for processing information between the different user devices.
A method of this kind is described in the article entitled Fast decipherement algorithm for a public-Key Cryptosystem with MM as authors. JJ Quisquater and C. Couvreur, published in the ELECTRONICS LETTERS review of OCTOBER 14, 1982. This process involves the use of the Chinese remainder theorem to obtain a rapid decryption without harming the qualities of the RSA process.
The present invention, also based on the Chinese Remainder Theorem, provides a system for which the decryption process is further improved to a very large extent with regard to the speed of the decryption process.
For this, such a system is remarkable in that it comprises at least one formed decryption device:
- modulus determination means for determining a decryption modulus chosen from among said factors,
- first modular reduction means to make a first modular reduction on the number d with a modulus equal to said decryption modulus reduced by one unit to provide a reduced number,
- second reduction means for making a second modular reduction on each part of the message encrypted with a module equal to said decryption module in order to provide a reduced part of the encrypted message,
second exponentiation means for performing modular exponentiation on each reduced encrypted message part with a modulus equal to said decryption modulus and with an exponent equal to said reduced number in order to restore said message. '
Thus, thanks to the measures recommended by the invention, it is no longer necessary to carry out the operation of combining the residues, see formula (1) of the aforementioned article.
The following description given with reference to the accompanying drawings, all given by way of non-limiting example, will make it clear how the invention can be implemented.
FIG. 1 shows a communication system according to the invention.
FIG. 2 shows an encryption flowchart according to the invention.
FIG. 3 shows a decryption flowchart according to the invention.
Figure 4 shows the schematic of a user device.
FIG. 5 shows a system according to the invention involving a so-called trusted server and a plurality of devices between users.
In Figure 1, reference 1 indicates the encryption device. The latter receives a message M, for example HELLO.
This message is divided into message parts to be encrypted by cutting means 3 These parts are made up of each of the letters that compose it and a series of digital codes is obtained, for example the digital codes in decimal M1 = 66, M2 = 79, M3 = 78, m4 = γ4, M5 = 79, m6 = 85, M7 = 82 which represent the ASCI codes of HELLO. Exponentiation means 5 perform exponentiations on these digital codes by taking parameters e and N according to measurements, the first of which follows directly from the invention:
- We take numbers p and q greater than 255: p = 263 and q = 311 hence N = pq = 81793 ·
- We choose e such that it is prime with p-1 and q-1 that is: e = 17.
- We now determine d: ed = 1<sub>MOD f (N)</sub>
In the case where p and q are prime <p (N) = (p-1). (Q-1) that is to say:
= l<sub>m</sub>od (406l0)
Among the ds which satisfy the above relation, we can take 5 ^ 943 · In principle d is not known at the level of the encryption device 1. The means 5 can then encode the message by performing on each of the aforementioned codes l '' modular exponentiation operation:
<sup>This</sup> = <sup>Mi 17</sup>mod (N) 1 = 1 - .. 7 hence the coded message comprising the encrypted parts:
Cl = 62302, C2 = 47322, C3 = 74978, C4 = 00285, C5 = 47322, c6 = 09270, C7 = 54110.
According to the invention, to decrypt this message, a decryption device 10 is provided. This device uses a first means for determining the decryption module from among the numbers p and q, one chooses, preferably the smallest, for s. '' save calculations, either:
P (= 263) of the second means perform the modular reduction operation on the number dd<sub>r</sub> = 5 ^ 9 ^ 3 mod <sub>262</sub> = 185
The encrypted message parts are then reduced, according to the module p.
VS<sub>r</sub>l = 62302 mod <sub>2&3 </sub>= 234 and respectively C<sub>r</sub>2 = 245, C<sub>r</sub>3 <sup>=</sup> 023, 0<sub>r</sub>4 = 022, C<sub>r</sub>5 = 245, C<sub>r</sub>6 = Ο65, C<sub>r</sub>7 = 195, hence the decrypted message parts: <sup>m</sup>i = Cr<sup>1 l85</sup>mod 263 = <sup>66</sup> “2 = C<sub>r</sub>2 <sup>l85</sup>moa 263 = 79 <sup>m</sup>3 “^ R3 <sup>5</sup>mod 263 “78“ 4 = cr4 <sup>l85</sup>mod 263 = 74 “5 = c<sub>r</sub>5 <sup>l85</sup>mOd 263 = 79 “6 = C<sub>r</sub>6 <sup>l85</sup>mod 263 = 85 m<sub>7</sub> = C<sub>r</sub>7 <sup>l85</sup>mod 263 = <sup>82</sup>
The message m is then restored by concatenation and by »transcription into usual characters by the final reconstitution means 4. If all went well, m = M.
The encryption device 1 and the decryption device 10 are in fact made from processors programmed to execute the flowcharts shown in FIGS. 2 and 3 below.
The flowchart of FIG. 2 explains the operation of the device 1. Box K1 indicates a test carried out on each part of the encrypted message. If this value exceeds that of the chosen decryption module (therefore the smallest among p and q), then, we declare that there is an error in box K2. Otherwise, we go to box K5 where the actual encryption operation is performed, that is to say a modular exponentiation. In this way, parts of encrypted messages Ci are obtained.
The flowchart of FIG. 3 shows the decryption operations performed by the decryption device 10. This flowchart shows in box K10 a preliminary reduction operation on the number d to provide a reduced key number dr. Box K12 is a modular reduction operation according to p performed on the encrypted message parts and box K14 is a modular exponentiation of modulus p and whose exponent is dr on the encrypted message parts.
The encryption and decryption devices can be inserted on the same medium to thus constitute a user device. The devices can then communicate with each other using the encryption method of the invention.
Figure 4 shows the structure of a user device. This device is based on a physically secure microcontroller such as, for example, the 83C852 manufactured by Philips. Such a microcontroller 31 is shown in FIG. 4 and made up from a microprocessor 32, a random access memory 33 and a read only memory 34 which notably contains operating instructions for implementing the invention, in particular the encryption and decryption operations already described. It also includes an EEPROM 35 to contain various data such as the secret key of the card, the public key of a third party with which it exchanges information, etc. It is also composed of a calculation unit 36 to take charge of the operations necessary for carrying out the cryptography functions, of an input / output management unit 37 also connected to an I / O input of the microcontroller. 31 The aforementioned elements of the microcontroller 31 are interconnected by a bus 38
Any additional detail can be found in the instructions for the aforementioned 83C852 microcontroller.
An important example of application of the invention is the transfer of DES key by means of RSA as mentioned in the article Threats of Privacy and Public Keys for protection by Jim Bidzos published in the document PROCEEDINGS OF COMPCON 91, 36th IEEE COMPUTER SOCIETY INTERNATIONAL CONFERENCE - February 25 to March 1, 1991 »San Fransisco NEW YORK (US). The protocol for the exchange of the session key DES between two users A and B via a public channel can be as follows.
Let {n<sub>TO</sub>, d<sub>TO</sub>} and N<sub>B</sub>, d<sub>B</sub>} the respective secret keys of users A and B.
For example A wants to transmit the session key K<sub>s</sub> to B.
- User A. m = K<sub>s</sub>
Encryption is performed using the public key e<sub>B </sub>^ ab <sup>= m</sup> B and we transfer the cryptogram C<sub>AB</sub> via the public channel.
- User B. receipt of cryptogram C<sub>AB </sub>decryption of the cryptogram m = C<sub>AB</sub><sup>d</sup>B use of the key K<sub>s</sub>
Usually K<sub>s</sub> is much less than an RSA key.
K<sub>s</sub> may be a DES session key of the order of 56 bits and p and q are of the order of 256 bits.
Many official organizations prohibit encryption of messages in public communications.
The invention is particularly applicable when, to avoid this prohibition, a trusted server SC is used.
This case has been shown in FIG. 5. This figure illustrates the case where a plurality of user devices A, B, .. X can communicate with one another through a trusted server SC. This SC server has all the knowledge to know, in clear, all the messages that the different users exchange.
By way of example, we explain the case where the user A wants to communicate a key DES K<sub>AB</sub> to user B. Then, A encrypts the key K<sub>AB</sub> using the public key e<sub>B</sub> the server SC which itself decrypts it as soon as it is received, then encrypts it with the public key e<sub>B</sub> of B. Finally B decrypts the cryptogram in order to find the key initially sent by A.
It can therefore be seen that in this case, the method applies equally well to the level of the decryption of the user B and to that of the server SC. Thus, the invention is used to obtain good availability of the server for a plurality of users. The gain in calculations provided by the invention is particularly appreciated.
3 sheets
Sheet 1 Sheet 2 Sheet 3
Every citation, both waysCites: the store holds 0 of 1
| Reference | Relation | Cited during |
|---|---|---|
| J.-J.QUISQUATER & C.COUVREUR: "FAST DECIPHERMENT ALGORITHM FOR RSA PUBLIC-KEY CRYPTOSYSTEM", ELECTRONICS LETTERS, vol. 18, no. 21, 14 October 1982 (1982-10-14), STEVENAGE GB, pages 905 - 907 | Non-patent | Search report |
| S.B.MOHAN & B.S.ADIGA: "FAST ALGORITHMS FOR IMPLEMENTING RSA PUBLIC KEY CRYPTOSYSTEM", ELECTRONICS LETTERS, vol. 21, no. 17, 15 August 1985 (1985-08-15), STEVENAGE GB, pages 761 | Non-patent | Search report |
7 members in 5 offices
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 9509085 | France | A | |
| FR19950009085 | – | – | – |
Members7
| Document | Office | Kind | |
|---|---|---|---|
| EP0756398A1 | European Patent Office (EPO) | A1 | |
| FR2737369A1This record | France | A1 | |
| JPH0946332A | Japan | A | |
| US5761310A | United States of America | A | |
| EP0756398B1 | European Patent Office (EPO) | B1 | |
| DE69612335D1 | Germany | D1 | |
| DE69612335T2 | Germany | T2 |
2 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Notification of lapseLapsedST | ST | |
| Transmission of propertyTP | TP |
Numbers
- Publication
- 2737369
- Publication, DOCDB
- 2737369
- Publication, EPODOC
- FR2737369
- Application
- 9509085
- Application, DOCDB
- 9509085
- Application, EPODOC
- FR19950009085
Titles2
- French
- SYSTEME DE COMMUNICATION DE MESSAGES CRYPTES SELON UN PROCEDE DE TYPE R.S.A.
- English
- COMMUNICATION SYSTEM OF ENCRYPTED MESSAGES ACCORDING TO AN RSA-TYPE PROCESS
Classification
- CPC, 2
- H04L9/302
- G06Q20/367
- IPC, 2
- G09C1 00
- H04L9 30