Brevet FR2496303A1 — publié le 19820618

La présente invention concerne les systèmes de chiffrement ou chiffrage de données à clé publique du type RSA. L'invention concerne les systèmes de chiffrage à clé publique qui emploient la technique de chiffrage de données du type RSA qu'on appelle chiffrage "à permutation unidirectionnelle avec trappe". L'invention porte plus par- ticulièrement sur un procédé et un dispositif employant un microprocesseur existant à l'heure actuelle dans le commer- ce, pour générer les nombres premiers aléatoires élevés satisfaisant les exigences de ce qu'on appelle la "permuta- tion unidirectionnelle. avec trappe", qui interviennent dans un système de chiffrage de données à clé publique du type RSA. Le chiffrage de données à clé publique, qui est maintenant bien connu, a été proposé à l'origine par Diffie et Hellman, "New Directions In Cryptography," I.E.E.E. Transactions on Information Theory (novembre 1976), et per-_ fectionné par Rivest, Shamir et Adelman, "A Method for Obtaining Digital Signatures in Public-Key Crypto Systems," MIT Technical Memo LCS/TM82 (aoûat 1977). La raison fonda- mentale conduisant à l'utilisation du système de chiffrage à clé publique consiste en ce qu'il garantit à la fois la sécurité de l'information qui est transférée sur une ligne de transmission de données, et l'identité de l'émetteur, tout en faisant en sorte qu'un récepteur soit incapable de "falsifier" une transmission pour la faire apparaître comme une transmission d'un abonné branché sur la ligne de trans- mission de données. On peut parvenir à ces résultats sou- haitables avec le chiffrage de données à clé publique sans qu'il soit nécessaire de conserver une liste de clés secrè- tes spécifiques à chaque abonné branché sur la ligne de transmission de données, ni de remettre physiquement de façon périodique ou de transmettre par d'autres moyens sûrs des clés secrètes aux divers abonnés branchés sur la ligne de transmission de données. Par l'utilisation de ce qu'on appelle les "permutations unidirectionnelles avec trappe ouverte", on peut émettre des données d'un émetteur vers un récepteur sous une forme chiffrée en utilisant une clé de chiffrage ronEu p:ubll.-...a.ç. publique, en faisant simultanément en sorte qu'un écouteur indiscret branché sur la ligne soit incapable de décrypter le message avant qu'il se soit écoulé une durée si longue qu'elle garantit la sécurité du message chiffré. Ce procédé de chiffrage à clé publique développé par Rivest, Shamir & Adelman, et désigné maintenant de façon générale par le sigle RSA, est basé sur l'utilisation de deux nombres premiers extrêmement grands qui satisfcnt le critère de la "permutation unidirectionnelle avec trappe". Une telle fonction de permutation permet à l'émetteur de chiffrer le message en utilisant une clé de chiffrage non secrète, mais elle ne permet pas à un écouteur indiscret de décrypter le message par les techniques de décryptement, avant qu'une durée suffisamment longue se soit écoulée. Ceci est dû au fait que pour un nombre composite formé par le produit de deux nombres premiers très grands, le temps de calcul nécessaire pour mettre en facteur ce nombre composite est trop long pour être acceptable. Un autre procédé de chiffra- ge à clé publique a été suggéré dans la revue "Electronics" du 5 juin1980, pages 96, 97, pour la transmission de clés standard du NBS. Ce procédé n'utilise pas la technique RSA mais emploie plutôt une technique de chiffrage à clé publi- que similaire à celles proposées antérieurement à la techni- que RSA, par exemple par Hellman, et il pose certains pro- blèmes de sécurité qui n'existent pas avec la technique RSA. Le système RSA présente de façon générale les caractéristiques suivantes. En supposant que le récepteur du message se trouve au terminal A, ce terminalA calcule tout d'abord deux nombres premiers aléatoires très élevés p, q. Il calcule ensuite le produit de p et q, ce qui cons- titue la valeur n. Il sélectionne ensuiteun nombre entier aléatoi- re élevé e qui a la propriété consistant en ce que le plus grand commun diviseur de e et-du produit de (p - 1) et (q - 1) est 1, c'est-à-dire: PGCD [e, (p - 1) (q - 1)] =! En d'autres termes, e est un nombre aléatoire élevé qui est premier vis-à-vis du produit de (p - 1) et (q - 1). On cal- cule ensuite un entier d qui est "l'inverse multiplicatif" de e, modulo (p - 1) (q - 1). Autrement dit: e*d, 1 [mod (p - 1) (q - 1)]. Le terminal A transmet n et e vers l'autre terminal, qu'on appelle terminal B, en clair, sans chiffrage, ou bien on fait connaître publiquement une liste de n et e pour chaque terminal, y compris le terminal A. Le terminal B réagit en chiffrant et en émettant un message M en une émission chif- frée C de la manière suivante: C e E (M) a Me (mod n). On comprend évidemment que chaque caractère transmis dans le réseau de transmission de données est codé sous la forme d'un nombre avant tout chiffrage, et qu'après déchiffrement, on obtient un nombre identique qui correspond au caractère identique. On comprend en outre que le message M à chiffrer peut etre un seul nombre binaire ayantpar exempleune lon- gueur de 25 multiplets, c'est-à-dire 336 bits, chaque groupe de 3 ou 4 bits,par exemplereprésentant le codage d'un carac- tère particulier dans le message M. Lorsque le message chiffré C est reçu et déchiffré en utilisant la technique RSA, on obtient le nombre binaire identique à 25 multiplets, à partir duquel on peut décoder d'une manière bien connue les caractères de données codés du message M. Le terminal B émet ensuite le message chiffré C. Le terminal A accomplit ensuite sur le message codé reçu C l'opération suivante: (C)d (mod n) Du fait de la nature particulière des nombres premiers aléatoires élevés qui sont sélectionnés, cette "permutation unidirectionnelle avec trappe ouverte" donne le message identique M. Cependant, un écouteur indiscret branché sur la ligne,qui reçoit ou connaît par ailleurs les nombres n et e transmis de façon publique,ne peut pas décoder le message qui est émis par le terminal B sans connaître le nombre d. Ainsi, la transmission du terminal B vers le terminal A, après réception ou connaissance au terminal B des nombres n et e calculés au terminal A ou pour ce terminal, présente une sécurité totale. En outre, du fait que l'émetteur du message et le récepteur prévu pour le message ont chacun un couple particulier de nombres n et e, l'émetteur comme le récepteur peuvent assurer l'authentification de l'autre par une "signature" chiffrée, cette signature étant chiffrée en utilisant leurs nombres n et e distincts et déchiffrée en utilisant leurs nombres d distincts. De cette manière, l'émetteur comme le récepteur peuvent assurer l'authentifi- cation de l'origine et du point d'aboutissement du message particulier. Ceci est extrêmement important dans des appli- cations telles que le courrier électronique chiffré utilisé pour des transactions commerciales, dans lesquelles il est vital d'avoir la preuve de l'identité de l'émetteur et du récepteur. L'utilisation d'un tel système de chiffrage à clé publique RSA était cependant limitée dans le passé aux ter- minaux émetteurs et récepteurs ayant accès à des ordinateurs de grande puissance. Ceci est dû au fait que la génération des nombres premiers aléatoires élevés qui sont nécessaires n'était réalisable de façon pratique qu'avec des ordina- teurs de grande puissance. Ceci vient du fait que les nom- bres aléatoires p et q doivent être extrêmement élevés. Par exemple, comme l'expliquent Rivest, Shamir & Adelman dans le document précité, il existe un algorithme de mise en facteurs, appelé algorithme de Schroeppel, pour mettre un nombre n en facteurs. Pour un nombre n ayant par exemple une longueur de 50 chiffres, l'algorithme de Schroeppel permet de mettre n-en facteurs en 3,9 heures, avec un ordinateur de grande puissance. La mise en facteurs de n est la technique la plus commode que peut utiliser un décrypteur pour percer le code de chiffrage RSA. Si on augmente la longueur de n jusqu'à 100 chiffres, le temps de calcul nécessaire pour effectuer une mise en facteurs complète avec l'algorithme de Schroeppel s'élève jusqu'à 73 ans. On considère généralement qu'une durée d'environ 1 000 ans constitue un temps de décryptewent par calcul offrant une sécurité totale pour un message chiffré. Ceci nécessite-un nombre n d'une longueur d'environ 120 chiffres. Du fait que n résulte du produit de deux nombres premiers élevés p et q, le produit de p et q aura un nombre de chiffres égal à la somme des chiffres de p et q. Par conséquent, p et q doivent être des nombres pre- miers aléatoires élevés ayant chacun environ 60 chiffres pour conduire à une durée de décxyptement d'environ 1 000 ans, en utilisant par exemple l'algorithme de Schroeppel. Une bonne règle approximative consiste à considérer qu'il faut un multiplet de huit bits pour chaque groupe de 2,5 chiffres dans un nombre décimal, c'est-à-dire que 60 chiffres con- duisent à 24 multiplets. Le procédé de recherche de nombres premiers aléa- toires élevés qui est indiqué dans la technique RSA nécessi- te l'évaluation de a P1 (mod P) pour 100 nombres aléatoires a inférieurs à P. Si pour n'importe quel nombre a, a 1(mod P) n'est pas égal à 1, on doit choisir un autre nombre P et commencer une autre itération de 100 exponentiations modulo P. Pour le traitement d'une représentation binaire numérique de nombres décimaux sur un microprocesseur du commerce, cha- que exponentiation nécessite une multiplication et une divi- sion en précision accrue pour chaque bit de l'exposant et une multiplication et une division supplémentaires pour cha- que bit 1. Ainsi, pour chaque p et q, qui doivent être de l'ordre de 184 bits (23 multiplets) pour que le produit p x q ait approximativement la longueur de 50 multiplets qui est nécessaire, chaque exponentiation prend en moyenne 92 secondes sur un microprocesseur telv par exemplequ'un micro- processeur Intel 8085. En testant la technique RSA, on a trouvé que la plupart du temps, chaque fois que 3 1 (mod P) est égal à 1, aP 1 (mod P) est également égal à 1, pour chaque choix de o choisie égale à 3 et les 99 valeurs restantes étaient choi- sies de façon aléatoire.- Il faut tester environ 120 valeurs de P avant d'en trouver une qui soit satisfaisante. Le temps nécessaire pour trouver un tel P en utilisant les micropro- cesseurs du commerce est en moyenne d'environ 3 heures. Du fait que 4 nombres premiers distincts sont nécessaires pour la mise en oeuvre de la technique RSA, il faut 12 heures pour trouver les 4 nombres premiers avec une probabilité de ' 1/2. Pour la probabilité recommandée de 2 100, le temps nécessaire s'élève à 1 200 heures. Le chiffrage à clé publique est extremement utile aussi bien pour des signatures particulières destinées à l'authentification de messages, que pour émettre sur des canaux non protégés les changements périodiques de clés de chiffrage, par exemple les clés standard du NBS. Dans cette dernière application, on supprime ainsi la nécessité d'une clé maîtresse utilisée pour chiffrer les changements pério- diques de la clé standard. La nécessité de transmettre la clé maîtresse sur un canal protégé ou de la transporter phy- siquement par courrier ou par des moyens similaires est ainsi supprimée. En l'absence du chiffrage à clé publique, chaque abonné doit disposer de la clé maîtresse. Bien que la clé maîtresse ne change pas souvent, chaque fois qu'un nou- vel abonné est branché sur la ligne de transmission de données chiffrées, une clé maîtresse doit être envoyée à cet abonné d'une certaine manière sure. Chacun de ces transferts, même effebtué sur un canal protégé ou par livraison manuelle physique, fait apparaître un risque de viol du secret, nécessitant ainsi de changer la clé maîtresse pour tous les abonnés, lorsque le viol du secret est découvert et s'il est découvert,etde mettre la clé maîtresse entre les mains de chaque abonné d'une manière sûre. Avec le chiffrage à clé publique, les clés standard, qui changent périodiquement, peuvent être émises vers chaque abonné sur des canaux non protégés, avec une clé publique connue publiquement. Bien que cette clé soit connue publiquement, le décryptement est impossible par toute autre personne que l'abonné considéré. L'utilité d'un système de chiffrage de données à clé publi- que pour l'authentification de messageset la transmission de cléSstandard est décrite de façonr plus complète dans l'ouvra- ge de Hellman, intitulé "The Mathematics of Public-Key Cryptography," Scientific American, Vol. 241 (1979). Ces avantages du chiffrage à clé publique permet- tront le développement, de l'utilisation du chiffrage, en utilisant par exemple les clés standard du NBS, pour des transferts de message par des moyens électroniques dans les applications commerciales, dans lesquelles la sécurité et l'authentification de l'émetteur et du récepteur sont crucia- les. Cependant, à l'heure actuelle, un temps élevé de démar- rage ou d'accès à un ordinateur de grande puissance est nécessaire pour venir "en ligne" dans un tel système de chiffrage de données, utilisant le chiffrage à clé publique de type RSA pour le transfert et la réception de clés stan- dard ou de signatures. Il existe une alternative consistant à remettre manuellement les nombres premiers élevés générés de façon aléatoire qui sont particuliers à chaque abonné. Cependant, ceci nécessite également un transfert physique, avec risque de viol du secret, par certains moyens sûrs dont la sûreté ne peut pas toujours être garantie. Ceci nécessite également que la station centrale qui génère et fournit la clé "secrète" pour le déchiffrement à clé publisue coinaisse cette clé de déchiffrement au moins un certain temps avant de transmettre cette clé à un abonné. Ceci constitue une autre voie possible de viol du secret. -Il est donc de beaucoup préférable que chaque abonné soit capable de générer ses propres nombres premiers élevés, sélectionnés de façon aléatoire. A l'heure actuelle, la réalisation de ceci nécessite l'accès à un ordinateur dé grande puissance, ou douze à vingt heures de temps de calcul sur un microprocesseur actuellement disponible dans le com- merce. Même avec douze à vingt heures de temps de calcul sur le microprocesseur, en utilisant la technique d'exponentia- tion suggérée par Rivest, Shamir et Adelman, les nombres générés n'ont qu'une probabilité de 50% d'être premiers. Le seul moyen de contr8ler que les nombres sont premiers con- siste à essayer de chiffrer et de déchiffrer un message en utilisant les nombres premiers générés, avec la technique -100 RSA. Pour la probabilité recommandée de 2, ceci nécessite environ 1 200 heures de temps de calcul sur les microproces- seurs qui sont actuellement disponibles dans le commerce. Il existe donc un besoin considérable de disposer d'un système de chiffrage de données à clé publique du type RSA, dans lequel un abonné ne disposant que d'un micropro- cesseur du genre actuellement disponible dans le commerce, puisse venir "en ligne" en une durée relativement courte, en générant les nombres premiers nécessaires en quelques heures, au lieu de plusieurs douzaines d'heures. L'utilisation d'un programme de calcul de PGCD con- formément à l'invention, pour éliminer des nombres composites sans exponentiation, en association avec un procédé original pour former une séquence de nombres premiers, permet de réduire ce temps à environ 2 heures, du fait que le nombre d'exponentiations nécessaires est réduit de 120 à 20 pour chaque nombre P testé. De plus, 2 nombres premiers seulement sont nécessaires, au lieu de 4 dans la technique RSA classi- que, comme il a été indiqué précédemment. De plus, du fait que la séquence de nombres premiers est générée sous la forme (hP + 1), si on trouve un nombre hP + 1 qui est premier et qui a une longueur suffisante, en tant que l'un des nombres premiers aléatoires élevés p ou q de la technique RSA, la valeur de p - 1 (ou q - 1), c'est-à-dire hP, présentera éga- lement un facteur premier élevé, satisfaisant les exigences de la technique RSA. Ainsi, il suffit de tester le caractère de nombre premier de hP + 1, ce qui élimine l'un des tests néoessaires du caractère premier pour chacun des nombres p et q dans la technique RSA. Par conséquent, conformément à. l'invention, on doit tester le caractère premier de deux nombres aléatoires élevés de la forme hP + 1, au lieu de quatre nombres comme c'est le cas avec la procédure suggérée dans la technique RSA. Le programme de calcul de PGCD élimi- ne la plupart des nombres non premiers. Le programme de cal- cul de PGCD fait appel à l'utilisation d'un nombre composite pré-calculé qui est égal au produit du premier nombre sélec- tionné, par exemple 34, des nombres premiers connus, c'est-à-dire jusqu'à 139 ou moins, pour déterminer si le PGCD de ce nombre composite et du nombre testé est égal à 1. Le fait que le PGCD soit égal à 1 est une condition néces- saire mais non suffisante du caractère premier du nombre qui est testé. Ainsi, si le PGCD n'est pas égal à 1, le nom- bre peut être éliminé en tant que choix d'un nombre premier, sans qu'il soit nécessaire d'effectuer les tests supplémen- taires de détermination du caractère premier. Les tests supplémentaires de détermination du caractère premier, con- formément à l'invention, font appel aux identités d'Euler, et consistent à déterminer si les deux relations suivantes sont vérifiées: 2hP 1 (mod hP+1) 2h i (mod hP+1) La raison qui fait que le programme de calcul de PGCD trouve la plupart des nombres non premiers consiste en ce qu'un échantillon pris au hasard de nombres entiers impairs compor- te 1/3 de nombres entiers divisibles par 3, 1/5 de nombres divisibles par 5, etc. Des tests effectués par les inven- teurs ont montré qu'on doit choisir conformément à l'inven- tion environ 140 nombres aléatoires hP + 1 d'une longueur de 23 multiplets, avant de trouver un nombre premier. En utili- sant un échantillon d'une taille égale à 140, 1/139 ou 1 des nombres de l'échantillon doit être divisible par 139, qui est le plus grand nombre premier ne dépassant pas 140. Si le nombre échantillon est divisible par l'un quelconque des nombres premiers allant jusqu'à 139, un nombre composite ayant ce nombre premier comme facteur aura par rapport au nombre échantillon un PGCD différent de 1. En utilisant un nombre composite égal au produit de la totalité des 34 nom-' bres premiers- jusqu'à 139, le test de PGCD détermine si l'échantillon est divisible par l'un de ces nombres entiers. L'invention porte donc sur un procédé et un dispo- sitif employant un microprocesseur du commerce pour sélec- tionner les nombres premiers aléatoires élevés qui sont nécessaires pour le chiffrage à clé publique du type RSA. L'invention porte plus particulièrement sur un système de génération de nombres premiers élevés qui est destiné à être utilisé dans un système de chiffrage à clé publique, pour déterminer les nombres premiers aléatoires élevés, en géné- rant une séquence de nombres premiers hP+1, dans laquelle P est initialement un nombre premier connu choisi au hasard, d'une longueur courte par rapport à la taille d'environ 23 multiplets du nombre premier désiré sélectionné de façon aléatoire. Les nombres successifs de la séquence présentent la relation hP+1 par rapport au nombre premier précédent P dans la séquence, le nombre h étant sélectionné initialement de façon à avoir un nombre de multiplets approximativement égal à la moitié de celui de P. Le programme de calcul de PGCD contrôle initialement les valeurs de hP+l pour éliminer la nécessité de contr8ler le nombre hP+1 avec les tests de caractère premier, par exponentiation modulo (hP+!), pour un nombre élevé ayant la valeur n=hP+l, lorsque h est incré- menté pour prendre la valeur h+2, jusqu'à ce qu'on détermine que la vaieur de n correspond à un nombre premier, pour u n donné dans la séquence. Le procédé et le dispositif originaux employant l'élimination par "PGCD", avec la génération d'une séquence de nombres premiers hP+i, jusqu'à ce qu'on atteigne un nom- bre premier de longueur suffisante, ce nombre premier hP+l étant également de la forme précise oui est nécessaire pour le chiffrage à clé publique du type RSA et étant un nombre premier de façon certaine, et non un nombre sélectionné comme ayant une forte probabilité d'être premier, comme c'est le cas avec la détermination de nombres premiers par exponentiation pure, font que la génération de nombres pre- miers de longueur appropriée sur un microprocesseur devient réalisable au point de vue commercial pour les systèmes RSA. Les problèmes énumérés dans ce qui précède ne constituent pas une liste exhaustive, et sont plut8t quelques-uns des nombreux problèmes qui tendent à nuire à l'efficacité des procédés et dispositifs eonnus précédemment pour générer des nombres premiers aléatoires élevés qui sont destinés à être utilisés dans le chiffrage à clé publique du type RSA. D'autres problèmes susceptibles de retenir l'atten- tion peuvent également exister. Cependant, ceux présentés ci-dessus suffisent à démontrer que les procédés et disposi- tifs qui sont apparus dans l'art antérieur pour générer des nombres premiers aléatoires pour le chiffrage à clé publique du type RSA, n'ont pas donné entièrement satisfaction. L'invention sera mieux comprise à la lecture de la description qui va suivre d'un mode de réalisation et en se il référant aux dessins annexés sur lesquels La figure 1 représente un organigramme des opéra- tions accomplies par le microprocesseur pour sélectionner les nombres premiers aléatoires élevés qui sont nécessaires pour l'utilisation dans le chiffrage à clé publique du type RSA; La figure 2 est un schéma synoptique du système de chiffrage à clé publique correspondant à l'invention. On va maintenant considérer la figure 1 qui montre un organigramme pour un microprocesseur du commerce, par exemple un microprocesseur Intel 8085, ayant pour but de déterminer les nombres premiers aléatoires très élevés qui sont nécessaires pour le chiffrage à clé publique du type RSA. L'homme de l'art notera que d'autres circuits intégrés complexes ou des combinaisons de ceux-ci qui ne constituent pas des microprocesseurs, dans l'acception habituelle du terme, pourraient être câblés ensemble ou avec d'autres com- posants de circuit pour remplir la meme fonction que le microprocesseur décrit ici, et sans nécessiter un gros ordi- nateur ou un mini-ordinateur programmé. On connatt par exem- ple une puce de circuit intégré complexe qui est utilisable pour effectuer l'opération d'exponentiation dans la techni- que RSA. On pourrait utiliser cette même puce dans un circuit destiné à accomplir une opération d'exponentiation identique ou similaire dans le cadre du procédé et du dispositif de l'invention. D'autres composants de circuit bien connus, par exemple des registres, des registres à décalage, des addi- tionneurs et des multiplicateurs, peuvent être câblés ensem- ble, d'une manière connue et conformément à ce qu'indique l'invention, pour mettre en oeuvre le procédé de l'invention avec un dispositif qui, sans être ce qu'on appelle habituel- lement un microprocesseur, remplit la même fonction, sans être pour autant un gros ordinateur ou un mini-ordinateur programmé. Ces composants, y compris la puce de circuit d'exponentiation, pourraient être tous placés sur le même circuit intégré complexe, conçu spécialement pour mettre en oeuvre uniquement le procédé de l'invention, ou sur un cer- tain nombre de puces de circuit intégré complexe séparées, chacune d'elles étant connectée électriquement à une ou plu- sieurs autres, et chacune d'elles étant conçue spécialement pour la mise en oeuvre d'une ou de plusieurs des opérations du processus de l'invention. Cette puce unique de circuit intégré complexe, ou' ce groupe de puces de circuit intégré complexe,pourrait comporter des moyens de commande câblés sur la puce, ou pourrait être associé à des moyens de commande séparés, comme par exemple un séquenceur logique ou une machine à séquence d'états, câblé de façon à produire une séquence de signaux de commande, ces signaux de commande pouvant également être affectés par le résultat d'opérations intermédiaires dans le processus. Sur la base de la descrip- tion de l'invention, l'homme de l'art sera capable de conce- voir les moyens de commande d'un microprocesseur du commerce ou sera capable d'assembler d'autres composants consistant en circuits intégrés complexes, avec des moyens de commande associés, incorporés ou externes, à la manière du dispositif de l'invention et pour mettre en oeuvre le processus de l'in- vention. Dans les revendications, l'expression "circuit inté- gré complexe" est prise dans un sens qui englobe à la fois les microprocesseurs du commerce et un assemblage d'un ou de plusieurs composants consistant en circuits intégrés comple- xes, câblés de façon à remplir une fonction particulière ou une séquence de fonctions particulières, en compagnie de moyens de commande associés, incorporés ou externes, et qui n'englobe pas un gros ordinateur ou un mini-ordinateur pro- grammé. On va maintenant considérer le mode de réalisation préféré utilisant un microprocesseur. En commençant à la case de départ iOle microprocesseur est construit de façon à choisir au hasard, à la case 12, un nombre premier parmi les nombres premiers connus ayant une longueur qui est par exem- ple de deux multiplets de huit bits, c'est-à-dire une lon- gueur d'environ cinq chiffres décimaux. L'étape A, en 13 sur la figure 1, indique ensuite que le microprocesseur est con- çu de façon à choisir, dans la case 14 de la figure 1, un nombre aléatoire h ayant un nombre de multiplets égal à la moitié de celui de P, c'est-à-dire initialement un multiplet. De plus, le nombre h est sélectionné de façon à 8tre pair et à satisfaire la relation 2 case 16 de la figure 1. Le microprocesseur accomplit ensuite un programme de calcul de plus grand commun diviseur (PGCD) dans le losange 17, et il détermine si la relation PGCD [(hP + 1), (x)], 1 est vérifiée ou non. Dans cette relation, x est un nombre composite qui est constitué par le produit du p mier nombre sélectionné, par exemple trente-quatre, parmi les nombres premiers, c'est-à-dire 2, 3, 5, 7, 11,... 139. S'il est déterminé à la case 17 que le PGCD est égal à 1, l'étape D en 19 sur la figure I est accomplie dans le micro- processeur, comme l'indique la case 20, ce qui fait que la valeur E est fixée à 2 [mod (hP+l)], et cette valeur E est testée dans le losange 21 pour déterminer si elle est égale à 1. Si E est égal à 1, ce qui est déterminé dans le losan- ge 21, une nouvelle valeur de E est fixée dans la case 22 à 2h [mod (hP+1) ], et cette valeur est testée dans le losange 23 pour déterminer si E est égal à 1. Si E n'est pas égal à 1, on a déterminé que hP+l est un nombre premier. Ainsi, chaque valeur de N qui est établie à la case 16 sera testée à l'étape D pour déterminer s'il s'agit d'un nombre premier, mais uniquement si-le PGCD de N et x est égal à 1, ce qui est déterminé dans le losange 17. Si E est égal à 1 dans le losange 21 et n'est pas égal à 1 dans le losange 23, N est un nombre premier. Si le PGCD de n'importe quel nombre N qui est testé n'est pas égal à 1, ce qui est déterminé dans le losange 17, ou si E est égal à 1 dans la détermination faite dans le losange 21 ou est égal à 1 dans la détermina- tion faite dans le losange 23, le microprocesseur exécute l'étape C en 24 sur la figure 1, qui incrémente h dans la case 25 pour lui donner une nouvelle valeur égale à h + un nombre pair quelconque, de préférence 2. Une nouvelle valeur de N = hP + 1 est ensuite calculée à l'étape B dans la case 16 en utilisant la valeur incrémentée h, h + 2, et la détermination du PGCD est effectuée dans le losange 17, ce qui conduit au déclenche- ment de J'étape D si le PGCD usL égal. 5 ,,u d i:applica- tion d'un nouvel incrément h à l'étape C, si ie PGCD n'est pas égal à 1. Une fois qu'on a trouvé un nombre N qui a été reconnu comme étant un nombre premier, c'est-à-dire lorsque le microprocesseur a exécuté le programme correspondant à l'organigramme jusqu'au losange 23 et lorsque E 4 1, le microprocesseur passe de l'étape correspondant au losange 23 à la case 30, dans laquelle P est fixzé égal à N. Le nombre P est ensuite testé dans Je losange 32 pour déterminer si P a une longueur supérieure ou égale à 19 multiplets. Dans la négative, le microprocesseur retourne à l'étape A à laquelle une nouvelle valeur de h est sélectionnée de façon aléatoire, et cette valeur a un nombre de multiplets égal à la moitié de celui du nombre P dans la séquence de nombres premiers qui vient d'être déterminée, c'est-à-dire le nombre premier cou- rant dans la séquence de nombres premiers qui est calculée. On peut voir que la séquence de nombres premiers que génère le microprocesseur progresse relativement rapide- ment jusqu'à la longueur de 23 multiplets. Ceci est dû au fait qu'après avoir trouvé chaque P dans la séquence, du fait qu'on a déterminé qu'il s'agit d'un nombre premier, on sélectionne le nombre premier suivant dans la séquence en utilisant le nombre P courant et un nombre h ayant un nombre de multiplets égal à la moitié de celui du nombre P courant. Ainsi, par exemple, le produit hP du premier nombre testé aura une longueur de trois multiplets, c'est-à-dire la somme de deux multiplets pour P et d'un multiplet pour h. Pour le nombre premier suivant de la séquence, le produit hP aura une longueur de quatre multiplets, c'est-àdire la somme de trois multiplets pour le premier nombre P déterminé conformé- ment au procédé ci-dessus, c'est-à-dire le nombre P courant au moment considéré, et d'un multiplet pour h. Le produit hP suivant dans la séquence aura une longueur de six multiplets (quatre multiplets pour le P courant et deux pour h), la valeur suivante de hP aura neuf multiplets (six multiplets pour le P courant et trois pour h), la valeur suivante de *: aura treize multiplets.(neuf multiplets pour le P courant et quatre pour h) et le nombre premier immédiatement suivant de la séquence aura dix-neuf multiplets pour la valeur de hP (treize pour le P courant et six pour h). A ce point, la sélection pour la valeur de h d'une longueur égale à la moi- tié du nombre de multiplets du P courant entraînera une augmentation du nombre de multiplets jusqu'à environ vingt- sept multiplets. Cependant, il est nécessaire d'atteindre seulement une longueur de vingt-trois multiplets, pour l'utilisation du nombre composite formé par deux nombres I 10 premiers aléatoires, généré conformément à l'invention dans un système RSA ayant un temps de calcul de sécurité pour le décryptement d'environ 1 000 ans. Par conséquent, le micropro- cesseur est conçu de façon à réduire la taille du nombre h sélectionné de façon aléatoire, c'est-à-dire son nombre de muiltiplets, lorsqu'on déterinde que le P oeurant a un nobre de multiplets supérieur ou égal à dix-neuf, mais inférieur à la longueur désirée de vingt-trois multiplets, ou plus. Ceci est réalisé par les opérations qui sont accomplies dans les losanges 32 et 34, et on voit que le microprocesseur est conçu de façon à passer du losange 32 au losange 34 si on détermine que le P courant dans la séquence a une longueur de dix-neuf multiplets ou plus. Dans le losange 34, si on détermine que le P courant de la séquence n'a pas une lon- gueur de vingt-trois multiplets ou plus, le microprocesseur passe à l'étape correspondant à la case 36, dans laquelle h est limité à une longueur qui est par exemple de quatre multiplets, pour être utilisé dans l'étape B, au lieu d'accomplir l'étape A dans la case 14, dans laquelle la lon- gueur de h est normalement choisie à la moitié du nombre de multiplets du P courant. Ayant ainsi trouvé dans la séquence de nombres P qui est produite conformément à l'organigramme de microprocesseur représenté sur la figure 1, un P qui satisfait les conditions du losange 34, c'est-àdire que ce nombre P a une longueur de vingt-trois multiplets ou plus, le microprocesseur passe à l'ordre d'arrêt 40 et le nombre P courant qui existe au moment de l'ordre d'arrêt constitue la valeur de sortie prise en tant que nombre premier aléatoire élevé, utile pour mettre en oeuvre le chiffrage à clé publi- que du type RSA. Ce nombre premier aléatoire élevé est appliqué à l'entrée du reste du système complet décrit ci-dessous, pour générer et employer des clés de chiffrage/ déchiffrement. On va maintenant considérer la figure 2 qui repré- sente un système de chiffrage de d6onnées à clé publique con- forme à l'invention. Un premier terminal, le terminal A, comprend un microprocesseur générateur de nombres premiers aléatoires élevés, 50, un microprocesseur générateur de clés de chiffrage/déchiffrement, 52, et un microprocesseur * de chiffrage/déchiffrement 54. On notera que les micropro- cesseurs 50, 52 et 54 sont représentés sous une forme-sépa- rée pour les besoins de la description et de la représenta- tion, mais pourraient consister en un seul microprocesseur construit de façon à accomplir les diverses fonctions, comme l'indique le fait qẻ les microprocesseurs 50, 52 et 54 sont situés à l'intérieur du cadre en pointillés 56. Le micropro- cesseur générateur de nombres premiers aléatoires élevés 50 est construit de façon à accomplir les étapes indiquées ci-dessus, afin de générer un nombre premier aléatoire élevé Pl, et de façon à répéter ces étapes pour générer un second nombre premier aléatoire élevé ql. La figure montre schémati- quement que ces nombres sont appliqués respectivement par les lignes 58 et 60 au microprocesseur générateur de clés de chiffrage/déchiffrement 52. Le microprocesseur générateur de clés de chiffrage/déchiffrement 52 calcule la valeur de n1 sous la forme du produit de P1 et ql, la valeur de el, c'est-à-dire la valeur dont le plus grand commun diviseur (PGCD) avec (P1 - 1) (ql - 1) est égal à 1; et la valeur de d1 sous la forme de l'inverse multiplicatif de e1, modulo (pl - 1) (ql - 1), c'est-à-dire dl*e1 = i [mod (p - 1) (q - 1)]. La figure montre schématiquement que les valeurs de dl, e1 et n1 sont appliquées au microprocesseur de chif- frage/déchiffrement 54 par des lignes respectives 62, 64 et 66. Le microprocesseur de chiffrage/déchiffrement 54 applique à un émetteurrécepteur 74 pour le terminal A les valeurs de et ni, par une ligne 68. On notera que les valeurs de e1 et ni pourraient être appliquées directement à partir du microprocesseur générateur de clés de chiffrage/ déchiffrement 52, comme le montrent respectivement les lignes en pointillés 72 et 74. Les valeurs de e1 et n1 sont émises par l'émetteurrécepteur 70 situé au terminal A vers un émetteur-récepteur 76 situé au terminal B, comme il est indiqué schématiquement par une ligne 78. - L'émetteur-récepteur 76 qui se trouve au terminal B applique les valeurs de e1 et n1 à un microprocesseur de chiffrage/déchiffrement 82 du terminal B, par une ligne 80. Un message M est appliqué au microprocesseur de chiffrage/ déchiffrement 82 au terminal B, et ce microprocesseur génère le message chiffré C égal à met (mod n1), et il applique le message chiffré à l'émetteur-récepteur 76 du terminal B, par une ligne 86. Le message chiffré C est émis du terminal B vers le terminal A, au moyen de l'émetteur-récepteur 76, comme l'indique une ligne 88, et ce message est reçu par l'émetteur-récepteur 70 du terminal A puis transmis au micro- processeur de chiffrage/déchiffrement 54 du terminal A. Le microprocesseur de chiffrage/déchiffrement 54 accomplit sur le message chiffré C une opération de déchiffrement de la forme cdl (mod n)> M, c'est-à-dire: (M e (mod n))dl (mod n1), M. Dans le cas o le message M est constitué par les clés de chiffrage/déchiffrement standard, par exemple les clés standard du NBS, ces clés sont appliquées par une ligne 102 à un chiffreur/déchiffreur 104, qui peut être n'importe quel chiffreur/déchiffreur approprié, par exemple celui qui est représenté dans la demande de brevet U.S. 108 039 déposée le 28 décembre 1979. On notera également que le message M pourrait être une signature d'authentifica- tion, propre au terminal B, lorsque le système est utilisé pour l'authentification de la réception et de l'émission de messages. On voit également que le terminal B comporte un microprocesseur générateur de nombres premiers aléatoires élevés 108 et un microprocesseur générateur de clés de chiffrage/déchiffrementlo6.Commeles éléments correspondants du terminal A, ces microprocesseurs 106, 108, associés au microprocesseur de chiffrage/dèchiffrement 82, peuvent être constitués par un seul microprocesseur construit de façon à accomplir les diverses fonctions, comme l'indique le fait que les microprocesseurs 106, 108 et 82 sont situés à l'inte- rieur du cadre en pointillés 110. Le microprocesseur gnrAra- teur de nombres premiers aléatoires élevés 108 génère deux rombres premiers élevés P2 et q2 qui sont appliqués au micro- processeur générateur de clés de chiffrage/déchiffrement 106, qui génère les valeurs d2. e2 et n2 propres au terminal B, et les applique au microprocesseur de chiffrage/déchiffre- ment 82. Ces valeurs de d2, e2 et n2 peuvent alors être uti- lisées par le terminal B de la même manière que les valeurs dl, e1 et n1 envisagées ci-dessus en relation avec le termi- nal A. On notera en outre qu'on peut supprimer la néces- sité de transmettre-les valeurs de e1 et nI pour le terminal. A ou de e2 et n2 pour le terminal B, en utilisant une liste connue publiquement de valeurs de e et n pour chaque termi- nal de données d'abonné. Du fait que ces valeurs peuvent être connues de façon publique, il n'y a aucune nécessité de transmettre ou d'expédier par des moyens de sécurité la liste des valeurs de e et-n pour les divers abonnés branchés sur la ligne de transmission de données. On voit que le fait de construire un système de chiffrage-de données à clé publique conformément à l'inven- tion procure certains avantages importants. En particulier, pour la première fois, un abonné branché sur une ligne de transmission de données chiffrées qui n'a pas accès à un ordinateur de grande puissance peut venir "en ligne" avec des valeurs de e et n propres à cet abonné, générées de façon sûre par l'abonné chez lui, en un temps relativement court, en utilisant un microprocesseur pour générer les nombres premiers aléatoires élevés p et q. Dans le passé, les microprocesseurs étaient incapables de générer en moins d'environ 1 200 heures les nombres premiers aléa- toires élevés nécessaires, ayant à la fois la longueur de sécurité désirée vis-à-vis du décryptementet la probabilité recommandée d'être premiers. Ainsi, en quelques neures seule- ment, on peut installer un nouveau système de chiffrage de données d'abonné, comprenant le microprocesseur générateur de nombres premiers aléatoires élevés conforme à l'invention, et élaborer un message de test chiffré, pour contrôler le bon fonctionnement du système et le caractère premier des nombres premiers aléatoires élevés qui sont générés. L'in- vention supprime ainsi la nécessité d'accéder à un ordina- teur de grande puissance ou de transmettre de façon sûre, à partir d'une station centrale, les valeurs de d, e et n pour un nouvel abonné, cette transmission présentant toujours un. certain risque de viol du secret. L'invention développe con- sidérablement l'accès aux systèmes de chiffrage de données à clé publique pour des abonnés qui doivent nécessairement utiliser des microprocesseurs du fait qu'ils n'ont pas la possibilité d'accéder dans des conditions de sécurité à un ordinateur de grande puissance. En outre, le système de l'invention permet à un utilisateur de changer périodique- ment les valeurs de d, e et n, qui peuvent ensuite être uti- lisées dans le système, en utilisant simplement des micro- processeurs ou d'autres circuits intégrés complexes cou- rants. Les valeurs de e et n sont alors soit transmises directement sur des lignes de transmission publiques vers un autre terminal, dans le but de déclencher l'émission par ce terminal d'un message chiffré utilisant les valeurs de e et n ainsi transmises, soit incorporées dans une version mise à jour de la liste de valeurs de e et n, bonnue publiquement, pour les divers abonnés branchés sur la ligne de transmis- sion de données. En outre, le.microprocesseur construit con- formément à l'invention génère des nombres premiers aléatoi- res élevés p et q dont on est certain qu'ils sont premiers et qu'ils ont une longueur de sécurité de décryptement désirée. De plus, il suffit de contrôler le-caractère premier de deux nombres ayant la longueur désirée, au lieu des quatre nombres caractéristiques. pour le chiffrage de données à clé publique du type RSA. La description de l'invention faite ci-dessus porte sur un mode de réalisation préféré particulier, conformément à la pratique des brevets et dans un but d'explication et d'illustration. On notera cependant que de nombreuses modi- fications peuvent être apportées au dispositif et au procédé décrits, sans sortir du cadre de l'invention. Par exemple, les tests exponentiels du caractère premier peuvent 8tre effectués dans l'ordre indiqué dans l'organigramme du micro- processeur ou ils peuvent être effectués dans l'ordre inver- se, pour autant qu'on détermine que 2 h mod (hP+1)] est égal à 1 et que 2h [mod (hP+1)] n'est pas égal à 1. De plus, la longueur de 23 multiplets pour la clé qui est sélection- née finalement est choisie de façon à donner un temps de calcul de sécurité vis-à-vis du décryptrment d'environ 1 000 ans, mais on peut la modifier de la manière désirée pour obtenir des temps de calcul de sécurité vis-à-vis du décryptement plus longs ou plus courts. En outre, l'étape qui consiste à réduire le nombre de multiplets du nombre h - choisi de façon aléatoire, une fois que P a atteint un cer- tain nombre de multiplets, inférieur au nombre de multiplets de sécurité de décryptaeant pour P, est utilisée pour optimi- ser la réduction du temps de calcul total nécessaire pour obtenir un nombre P ayant le nombre de multiplets de sécuri- té de décrxteont désiré, comme le montre la figure 1. On peut cependant supprimer cette-étape et, à titre d'exemple, - dans le cas représenté sur la figure 1, dans lequel h est choisi initialement de façon à avoir un nombre de multiplets égal à la moitié de celui du nombre P déterminé précédem- ment, on pourrait avantageusement fixer à 27 le nombre de multiplets final pour P. Dans ce cas, lorsque P atteint une longueur de 19 multiplets, on sélectionne le nombre h immé- diatement suivant avec une longueur de 9 multiplets, ce qui donne le nombre de multiplets désiré, c'est-à-dire 27. De plus, la sélection pour la longueur de h d'un nombre de mul- tiplets égal à la moitié de celui du nombre premier courant P dans la séquence de nombres premiers constitue un moyen commode pour augmenter de façon relativement rapide le nom- bre de multiplets total de hP+1, afin d'atteindre le nombre de multiplets de sécurité de décrypteront désiré, égal par exemple à 23, dans le cas de la figure 1. On notera qu'on pourrait sélectionner-h de façon qu'il ait par exemple le même nombre de multiplets (à condition d'avoir h tiers du nombre de multiplets du P courant, dans la séquen- ce de nombres premiers, ou n'importe quelle autre fraction désirée de la longueur de P, à condition d'avoir h CP. Dans l'exemple de la figure 1, le P initial de la séquence est sélectionné de façon aléatoire. Ceci ajoute un caractère aléatoire supplémentaire au nombre P déterminé finalement qui a la longueur de sécurité de décryptement désirée. Il n'est cependant pas nécessaire que le P initial soit un nombre sélectionné de façon aléatoire, du fait que h est également choisi au hasard pour chaque génération d'un nom- bre premier dans la séquence de nombres premiers. REVENDICATIONS 1. Système de chiffrage/déchiffrement de données à clé publique, comportant plusieurs terminaux, caractérisé en ce qu'un terminal comprend: un émetteur-récepteur (70) capable de recevoir un message chiffré qui a été chiffré en utilisant une clé de chiffrage non secrete qui est particu- lière au terminal considéré; un dispositif de chiffrage/ déchiffrement qui est connecté à l'émetteur-récepteur et qui est conçu de façon à déchiffrer le message chiffré en uti- lisant une clé de déchiffrement secrète; un générateur de clés de chiffrage/dachiffrement (52) qui est connecté au dispositif de chiffrage/déchiffrement et qui est conçu de façon à générer des clés secrètes et non secrètes en utili- sant une paire de nombres premiers élevés et sélectionnés de façon aléatoire; un générateur de nombres premiers aléatoi- res élevés (50), comprenant un circuit intégré complexe, branché au générateur de clés et conçu de façon à fournir au générateur de clés la paire de nombres premiers aléatoires élevés ayant une longueur désirée, le circuit intégré com- plexe étant construit de façon à accomplir les opérations suivantes pour sélectionner chaque nombre de la paire de nom- bres premiers aléatoires élevés: en partant d'un nombre P, qui est un nombre premier connu ayant une longueur relative- ment courte en comparaison de la longueur désirée, on forme une séquence de nombres premiers de la forme hP+l, dans laquelle P est le nombre premier courant dans la séquence de nombres premiers, en sélectionnant de façon aléatoire un nombre h et en formant hP+l et en effectuant sur hP+l un test indiquant si c'est un nombre premier, en déterminant tout d'abord si le plus grand commun diviseur (PGCD) de (hP+l), (x) est égal à 1, en désignant par x un nombre com- posite formé par le produit de tous les nombrespremiers connus inférieurs ou égaux à un nombre premier connu sélec- tionné, et si le PGCD est égal à 1, on détermine si on a à la fois 2hP-1 [mod (hP+l)] et 2h#1 [mcd (hP+l)], tandis que si le PGCD n'est pas égal à 1, on incrémente h pour former un nouveau hP+l, et si le PGCD est égal à 1 mais si 2 hP1 [mod (hP+1)] ou 2hai [mod (hP+1)], on incrémente h pour former un nouveau hP+1, tandis que si 2hP=1 [mod (hP+1)] et 2hel [mod (hP+ 1)], on détermine si la longueur de-hP+1 est supérieure ou égale à la longueur désirée, et si elle est supérieure ou égale à la longueur désirée, on prend hP+i comme valeur de sortie pour le nombre premier aléatoire élevé qui est appliqué au générateur de clés de chiffrage/ déchiffrement, et si elle n'est pas supérieure ou égale à la longueur désirée, on place hP+i dans la séquence de nom- bres premiers et on répète les étapes ci-dessus en utili- sant hP+l en tant que nouveau P et en commençant par sélec- tionner un nouveau h, de la manière indiquée précédemment. 2. Système de chiffrage de données à clé publique selon la revendication 1, caractérisé en ce que le circuit intégré complexe est construit de façon à sélectionner le h initial, pour la formation de chaque nombre premier succes- sif dans la séquence de nombres premiers, de façon qu'il ait une longueur qui soit environ la moitié de celle du nombre premier courant dans la séquence de nombres premiers. 3. Système de chiffrage de données à clé publique selon la revendication 1, caractérisé en ce que le circuit intégré complexe est construit de façon à déterminer en outre si la longueur de hP+i est comprise dans une plage présélectionnée par rapport à la longueur désirée, si elle n'est pas supérieure ou égale à la longueur désirée, et, dans le cas o elle est comprise dans la plage présélection- née et n'est pas supérieure ou égale à la longueur désirée, le circuit intégré sélectionne le h initial suivant avec une longueur sélectionnée inférieure à la moitié environ de la longueur du nombre premier courant dans la séquence de nom- bres premiers, mais avec une longueur suffisante pour que le nombre premier suivant dans la séquence de nombres pre- miers ait une longueur supérieure ou égale à la longueur désirée. 4. Système de chiffrage de données à clé publique selon la revendication 3, caractérisé en ce que la longueur désirée est de 23 multiplets de huit bits chacun. 5. Système de chiffrage de données à clé publique selon la revendication 4, caractérisé en ce que la plage présélectionnée est de 4 multiplets de huit bits chacun. 6. Système de chiffrage de données à clé publique selon la revendication 5, caractérisé en ce que la longueur sélectionnée est de 4 multiplets. 7. Système de chiffrage de données à clé publique selon la revendication 1, caractérisé en ce que: la clé non secrète est constituée par des nombres (e, n) qui sont tels que la forme chiffrée d'un messageM soit Me (mod n); la clé secrète est un nombre d tel que la forme déchiffrée de la forme chiffrée du message M soit (Me (mod n))d (mod n); n est le produit de deux nombres premiers aléatoi- res élevés p et q, ayant chacun une longueur désirée, de telle façon que n ait une longueur de sécurité de dzécryptement appropriée, afin d'assurer lasécurité de n vis-à-vis du décryptent, pour un temps de calcul de décrypteent désiré; e est un nombre entier qui est sélectionné de façon que le PGCD de [(e), (p-1) (q-1)] soit égal à i; et e*d1 [mod (p-1) (q-i)]. 8. Système de chiffrage de données à clé publique selon la revendication 7, caractérisé en ce que le temps de calcul de déc:yptenet désirx est d'environ 1 000 ans. 9. Système de chiffrage de données à clé publique selon la revendication 8, caractérisé en ce que p et q ont au moins une longueur de 23 multiplets et n a au moins une longueur de 46 multiplets. 10. Système de chiffrage de données à clé publi- que comportant plusieurs terminaux, caractérisé en ce qu'un terminal comprend: un émetteur-récepteur (70) destiné à recevoir des messages chiffrés qui sont chiffrés en utili- sant une clé de chiffrage non secrète qui est particulière au terminal; un dispositif de chiffrage/déchiffrement (54) qui est destiné à déchiffrer le message chiffré en utili- sant une clé de déchiffrement secrète; un générateur de clés de chiffrage/déchiffrement (52) qui est branché au dis- positif de chiffrage/déchiffrement, et qui est destiné à générer les clés secrètes et non secrètes en utilisant une paire de nombres premiers élevés sélectionnés de façon aléa- toire; un générateur de nombres premiers aléatoires élevés (50), comprenant un circuit intégré complexe, qui est bran- ché au générateur de clés de chiffrage/déchiffrement, et qui est destiné à générer séparément chaque nombre de la paire de nombres premiers élevés sélectionnés de façon aléatoire, chacun de ces nombres ayant une longueur désirée, le circuit intégré complexe comprenant: des moyens de sélection de nombres premiers aléatoires destinés à sélection- ner un nombre premier P, à partir des nombres premiers connus ayant une longueur relativement courte en comparaison de la longueur désirée; des moyens de génération de séquen- ce de nombres premiers, destinés à générer une séquence de nombres premiers en partant du nombre premier P sélectionné par les moyens de sélection de nombres premiers, ces moyens de génération de séquence de nombres premiers comprenant des moyens de sélection destinés à sélectionner un nombre h aléatoire et à former la quantité hP+i, dans laquelle P est le nombre premier courant dans la séquence calculée de nom- bres premiers, et est initialement le nombre P qui est sélectionné par les moyens de sélection de noabres premiers; des moyens de test de plus grand commun diviseur (PGCD) destinés à effectuer un test pour déterminer si le PGCD de (x), (hP+i) est égal à 1, en désignant par x un nombre com- posite formé par le produit des nombres premiers connus inférieurs ou égaux à un nombre premier connu sélectionné, des moyens de-test du caractère premier qui, lorsque les moyens de test de PGCD déterminent que le PGCD est égal à hP_ 1, déterminent si on a à la fois 2 =1 Lmod (hP+1)] et 2htî [mod (hP+1)]; des moyens d'augmentation qui, sous l'effet de la détermination par les moyens de test de PGCD que le PGCD n'est pas égal à 1, ou de la détermination par les moyens de test de caractèrepweflILrqoe 2hP l [mod (hP+l)3 ou que 2h--1 Lmod (hP+I)], incrémentent h et forment un nou- veau hP+l et déclenchent la détermination qu'effectuent les moyens de test de PGCD, en ce qui concerne le nouveau hP+i; des moyens de détermination de longueur qui réagissent à la détermination par les moyens de test de caractère premier du fait que 2hP-1 Lmod (hP+l)j et 2 î1 [mod (hP+i)3, en déterminant si la longueur de hP+l est supérieure ou égale à la longueur désirée; et des moyens de mise en place dans la séquence qui, sous l'effet de la détermination par les moyens de détermination de longueur du fait que la longueur de hP+l n'est pas supérieure ou égale à la longueur désirée, placent hP+l dans la séquence de nombres premiers et déclenchent la sélection par les moyens de sélecticn d'un nouveau h, pour former un nouveau hP+1, dans lequel P est le hP+L déterminé précédemment comme étant premier mais non supé- rieur ou égal à la longueur désirée; et des moyens de sor- tie qui sont branchés au générateur de séquence de nombres premiers et qui réagissent à la détermination par les moyens de détermination de longueur du fait qu'un hP+1 respectif est supérieur ou égal à la longueur désirée, en sélectionnant le hP+l respectif en tant que valeur de sortie du générateur de clés de chiffrage/déchiffrement, consti- tuant l'un des nombres premiers élevés nécessaires, sélec- tionnés de façon aléatoire, ayant la longueur désirée. 11. Système de chiffrage de données à clé publi- que selon la revendication 10, caractérisé en ce que les moyens de sélection comprennent des moyens destinés à sélectionner chaque h initial qui est pair et qui a une lon- gueur égale à la moitié environ de la longueur du nombre -premier courant dans la séquence de nombres premiers. 12. Système de chiffrage de données à clé publi- que selon la revendication 10, caractérisé en ce que les moyens de détermination de longueur comprennent des moyens destinés à déterminer si le hP+l respectif--est compris dans une plage présélectionnée par rapportà la longueur désirée, s'il n'est pas supérieur ou égal à la longueur désirée, et qui, s'il est compris dans la plage présélectionnée mais n'est pas supérieur ou égal à la longueur désirée, déclenchent la sélection par les moyens de sélection d'un nouveau h ini- tial ayant une longueur inférieure à environ la moitié de la longueur du nombre premier-courant dans la séquence de nombres premiers, mais suffisante pour que le nombre premier suivant dans la séquence de nombres premiers ait une lon- gueur supérieure ou égale à la longueur désirée. 13. Système de chiffrage de données à clé publi- que selon la revendication 12, caractérisé en longueur désirée est de 23 multiplets. 14. Système de chiffrage de données que selon la revendication 13, caractérisé en plage présélectionnée est de 4 multiplets. 15. Système de chiffrage de données que selon la revendication 14, caractérisé en longueur sélectionnée est de 4 multiplets. 16. Système de chiffrage de données que selon la revendication 10, caractérisé en ce que la à clé publi- ce que la à clé publi- ce que la à clé publi- ce que: la clé de chiffrage non secrète consiste en nombres (e, n) tels que la forme chiffrée d'un message M soit Me (mod n); la clé de déchiffrement secrète est un nombre d tel que la forme déchiffrée de la forme chiffrée du message M soit (Me (mod n)) d (mod n); n est le produit de deux nombres premiers élevés sélectionnés de façon aléatoire, p et q, ayant chacun une longueur désirée, de telle façon que n ait une longueur de sécurité de décrypteent apprprie, afin que n garantisse la sécurité vis-à-vis du décryptment pour un temps de calculde décryptement désiré; e est un nombre entier qui est sélectionné de façon que le PGCD de [(e), (p-1) (q-l)] soit égal à 1; et e*d1r [mod (p-l) (q-1)]. 17. Système de chiffrage de données à clé publi- que selon la revendication 16, caractérisé en ce que le temps de calcul de décryptement désiré est d'environ 1 000 ans. 18. Système de chiffrage de données à clé publi- que selon la revendication 17, caractérisé en ce que p et q ont au moins une longueur de 23 multiplets et n a au moins une longueur de 46 multiplets. 19. Système de chiffrage de données à clé publi- que selon l'une quelconque des revendications 1 à 18, caractérisé en ce que p est sélectionné initialement de façon aléatoire parmi les nombres premiers connus ayant une longueur relativement courte en comparaison de la longueur désirée. 20. Système de chiffrage de données à clé publique selon l'une quelconque des revendications 1 à 18, caractérisé en ce que le nombre premier connu sélectionné est 139. 21. Générateur de nombres premiers aléatoires élevés (50) destiné à être utilisé dans un système de chiffrage de données à clé publique employant la technique de chiffrage de données à clé publique du type RSA, ce générateur ayant pour but de générer des nombres premiers élevés sélectionnés de façon aléatoire qui sont nécessaires au chiffrage de données à clé publique du type RSA, chacun de ces nombres ayant une longueur désirée et le générateur de nombres premiers aléatoires comprenant un circuit intégré complexe, le générateur. étant caractérisé en ce que le circuit intégré complexe est destiné à effectuer les opérations suivantes pour sélectionner chacun des nombres premiers aléatoires élevés nécessaires, ces opé- rations consistant, en partant d'un nombre premier P, qui est un nombre premier connu ayant une longueur rela- tivement courte en comparaison de la longueur souhaitée, à former une séquence de nombres premiers sous la forme hP+1, dans laquelle P est le nombre premier courant dans la séquence calculée de nombres premiers, par sélection d'un nombre h aléatoire et formation de la quantité hP+1, à tester le caractère premier de hP+1 en détena/ant d'abord, si le plus grand commun diviseur FGCD) de /ThP+1), (x)7 est égal à un, x étant un nombre composite formé par le produit de nombres premiers connus inférieurs ou égaux à un nombre premier connu sélectionné, et si le PGCD est égal à 1, en déterminant si on a à la fois 2hP =_ 1 /mod (hP+1)7, et 2h 1 /_mod (hP+1)7, et si le PGCD n'est pas égal à 1, ou si le PGCD est égal à 1, avec cependant 2hP* 1 /mod 'hP+1)7 ou 2h _ 1 /_mod (hP+1)7, en incrémentant h pour former une nouvelle quantité hP+1, mais si on a à la fois 2hP_ 1 /_mod (hP+1)7 et 2h 1 /mod (hP+1)7, en déterminant si hP+1 est supérieur ou égal à la longueur souhaitée et s'il est supérieur ou égal à la longueur souhaitée, en prenant hP+1 comme l'un des nombres premiers élevés nécessaires, sélectionnés de manière aléatoire et, s'il n'est pas supérieur ou égal à la longueur souhaitée, en plaçant hP+1 dans la séquence de nombres premiers et en répétant les opérations précédentes avec hP+1 comme nouvelle valeur de P et en commençant par sélectionner une nouvelle valeur de h comme indiqué précédemment. - 22. Générateur de nombres przi-ers aléatoires élevés (50) destiné à être utilisé dans un système de chiffrage de données à clé publique employant la technique de chiffrage de données à clé publique du type RSA, ce générateur ayant pour but de générer des nombres premiers élevés sélectionnés de façon aléatoire oui sont nécessaires pour le chiffrage de données à clé publique _u type RSA, chacun de ces nombres ayant une longueur désirée et le générateur de nombres premiers aléatoires comprenant un circuit intégré complexe destiné à générer les nombres pre- miers aléatoires, caractérisé en ce que le circuit intégré complexe comprend: des moyens de sélection de nombres pre- miers aléatoires destinés à sélectionner un nombre premier P, à partir des nombres premiers connus ayant une longueur relativement courte en comparaison de la longueur désirée; des moyens de génération de séquence de nombres premiers, destinés à générer une séquence de nombres premiers en par- tant du nombre premier P sélectionné par les moyens de sélection de nombres premiers, ces moyens de génération de séquence de nombres premiers comprenant: des moyens de sélection destinés à sélectionner un nombre h aléatoire et à former la quantité hP+i, dans laquelle P est le nombre premier courant dans la séquence calculée de nombres pre- miers, et est initialement le nombre P qui est sélectionné par les moyens de sélection de nombres premiers;; des moyens de test de plus grand commun diviseur (PGCD) destinés à effectuer un test pour déterminer si le PGCD de[(x), (hP+1i est égal à 1, en désignant par x un nombre composite formé par le produit des nombres premiers connus inférieurs ou égaux à un nombre premier connu sélectionné; des moyens de test du caractère premier qui, lorsque les moyens de test de PGCD déterminent que le PGCD est égal à 1, déterminent si on a à la fois 2 hP1 [mod (hP+l)] et 2hr1 [mod (hP+1)] ; des moyens d'augmentation qui; sous l'effet de la détermina- tion par les moyens de test de PGCD que le PGCD n'est pas égal à 1, ou de la détermination par les moyens de test de caractère premier que2hP l mod (hP+l)]ou que 2hz1 \mod (hP+1)], incrémentent h et forment un nouveau hP+ l et déclenchent la détermination qu'effectuent les moyens de test de PGCD, en ce qui concerne le nouveau hP+1; des moyens de détermination de longueur qui réagissent à la détermination par les moyens de test de caractère premier du fait que 2hPz1 [mod (hP+1)3 et 2h#i [mod (hP+1)], en - déterminant si la longueur de hP+l est supérieure ou égale à la longueur désirée; et des moyens de mise en place dans la séquence qui, sous l'effet de la détermination par les moyens de détermination de longueur du fait que la longueur de hP+i n'est pas supérieure ou égale à la longueur désirée, placent hP+i dans la séquence de nombres premiers et déclen- chent la sélection par les moyens de sélection d'un nouveau h, pour former un nouveau hP+l, dans lequel P est le hP+i déterminé précédemment comme étant premier mais non supé- rieur ou égal à la longueur désirée; et des moyens de sor- tie qui, sous l'effet de la détermination par les moyens de détermination de longueur du fait qu'un hP± respectif est supérieur ou égal à la longueur désirée, sélectionnent le hP+i respectif en tant que l'un des nombres premiers élevés sélectionnés de façon aléatoire qui sont nécessaires pour le chiffrage de données à clé publique du type RSA.