<B>Générateur électrique de signaux quasi-aléatoires pour appareils</B> cryptographiques La présente invention .a pour objet un générateur électrique de signaux quasi-aléatoires pour appareils cryptographiques formant des chiffres de clé, compre nant une pluralité -de compteurs binaires alimentés par un générateur d'impulsions électriques, de manière à engendrer à leurs sorties un certain nombre de chiffres binaires, et des ensembles décodeurs-permutateurs co- deurs formés d e circuits électriques de décodage, de per mutation et de codage desdits chiffres.
Des générateurs de ce type ont été décrits dans le brevet suisse No. 389 678. Dans les modes d'exécution décrits dans ledit brevet, les chiffres binaires engendrés par des compteurs binaires, dit compteurs d'avance, sont répartis en plusieurs groupes dont chacun est décodé, permuté, puis .de nouveau codé séparément avant d'être réunis aux autres, et chacun des ensembles décodeur- permutateur-codeur qui effectue ces opérations sur un groupe déterminé de sorties des compteurs comporte autant de sorties que d'entrées.
Les décodeurs sont constitués par exemple par des matrices à diodes. Le signal de sortie des décodeurs est transmis à un permutateur lui-même relié à des codeurs qui retransforment les signaux reçus du permutateur en un ensemble de signaux binaires. Plusieurs étages peu vent être prévus.
Le dispositif selon l'invention consiste en un généra teur électrique de signaux quasi-aléatoires, pour appa reils cryptographiques, formant des chiffres de clé, com prenant une pluralité de compteurs binaires alimentés par un générateur d'impulsions électriques, de manière à engendrer à leurs sorties un certain nombre de chiffres binaires, et des ensembles décodeurs-permutateurs co- deurs formés de circuits électriques de décodage, de per mutation et de codage desdits chiffres,
caractérisé par le fait que dans certains au moins desdits ensembles sur les fils de sortie des circuits permutateurs sont insérés des circuits logiques OU , de façon à rendre le nombre des sorties binaires de ces ensembles inférieur au nombre de leurs entrées binaires.
Cette disposition augmente la sécurité cryptographi- que, du fait qu'une configuration déterminée des sorties des divers ensembles décodeur-permutateur-codeur ainsi modifiées, peut provenir d'un nombre élevé de configurations distinctes de sorties correspondantes des compteurs d'avance.
Le dessin ci-annéxé représente, à titre d'exemple, une forme d'exécution de l'objet de l'invention et des varian tes de celles-ci: La fig. 1 représente un ensemble décodeur-permu- tateur-codeur , la fig. 2 donne le schéma de ladite forme d'éxécution dont les figures 3, 4 et 5 représentent des variantes d'exécution; la fig. 6 représente une réducteur.
A la fig. 1, on a représenté un décodeur 101 à quatre entrées binaires et à seize sorties (ces nombres ne sont nullement limitatifs). Les seize sorties du décodeur 101i sont connectées à un permutateur 102 à seize entrées et seize sorties. Ces dernières sont réparties en quatre groupes de quatre, dont chacun attaque un circuit logi que de somme ou circuit ou . Les quatres sorties des circuits ou 103, 104, 105 et 106 sont connectées à un codeur 107 à quatre entrées à ;deux sorties binaires.
Ces organes peuvent être réalisés suivant les indica tions du brevet précité.
La particularité du circuit que l'on va décrire en regard de la fig. 2 consiste dans la présence des circuits ou ; ceux-ci ont pour fonction de transmettre un signal à leur sortie chaque fois qu'il existe un signal sur l'une quelconque de leurs entrées. Par conséquent, plusieurs fils différents à l'entrée de l'ensemble,des sorties ou , donc plusieurs nombres binaires à l'entrée du décodeur 101, pourront aboutir au même nombre binaire à la sor tie du codeur 107.
Le générateur de symbols quasi-aléatoires ou géné rateur de clé de la fig. 2 comporte quatre compteurs binaires 1, 2, 3, 4, dont les comptes maximaux sont respectivement égaux à 7, 15, 29 et 31, dans l'exemple non limitatif décrit. Ces quatre compteurs sont alimentés par une pre mière section 5 d'une horloge 5 - 6 - 7 - 8.
Cette horloge, à laquelle sont appliqués les signaux d'un générateur de synchronisation 9, comporte en outre des sections 6, 7 et 8 dont le rôle apparaîtra :dans la suite. On a représenté, au-dessus des sorties correspon dantes, les impulsions engendrées par les diverses sec tions de ladite horloge.
Les trois sorties du compteur 1 sont respectivement connectées à trois décodeurs 10, 11, 12; les quatre sor ties du compteur 2 sont respectivement connectées aux quatre décodeurs 10, 11, 12 et 13. Quatre des sorties de chacun des compteurs 3 et 4 sont respectivement con nectées à ces quatre décodeurs tandis que la cinquième sortie du compteur 3 est en l'air, et que la cinquième sortie. du compteur 4 est connectée au décodeur 13.
Les décodeurs 10 à 13,à quatre entrées binaires et à seize sorties, attaquent des permutateurs 14 à 17, à seize entrées et à seize sorties. Ces dernières sorties sont divi sées en groupes de quatre .dont chacun attaque l'un des circuits logiques de somme (circuit ou ) 18 à 33.
On remarquera que, à l'exclusion des sections 6,7 et 8 de l'horloge, la partie du montage que l'on a décrite jusqu'ici est. du type décrit dans le brevet susvisé.
Les sorties des circuits ou 18, 22, 26 et 30 ne sont pas connectées, tandis que les sorties.,des autres circuits ou sont connectées à quatre compteurs auxiliaires respectifs 34 à 37 par l'intermédiaire de circuits logiques de produit (circuits et ) 38 à 49.
Les circuits et 38, 41, 44 et 47 sont reliées à la sortie de la section 6 de l'horloge, les circuits et 39, 42, 45 et 48 à la section 7, les circuits et 40, 43, 46 et 49 à la section 8.
Entre deux impulsions :d'avance principale produites par la section 5 de l'horloge, 1a section 6 produit une impulsion d'avance, la section 7 en produit deux et la section 8 en produit trois.
Les impulsions produites par les sections 6, 7 et 8 coïncident dans le temps, comme l'indique la fig. 2.
Il en résulte que l'apparition d'un signal sur les fils de sortie de circuits ou 18, 22, 26 et 30 ne produit aucune avance .des compteurs auxiliaires; que l'appari tion d'un signal sur les fils de sortie des circuits ou 19, 23, 27 et 31 fait respectivement avancer les compteurs auxiliaires d'un pas;
que l'apparition d'un signal sur les fils de sortie ou 20, 24, 28 et 32 fait avancer les compteurs auxiliaires de deux pas, et que l'apparition d'.un signal sur les fils de sortie des circuits ou 21, 25, 29 et 33 fait avancer les compteurs auxiliaires de trois pas.
On peut démontrer que, grâce à cette disposition, les 2$ = 256 combinaisons de sorties de l'étage des comp teurs auxiliaires 34 à 37 sont mathématiquement équi- probables, ce qui est important du point de vue de la sécurité cryptrographique.
On peut voir par ailleurs que chaque sortie finale du dispositif de la fig. 2 est déterminée à la fois par l'état des compteurs 1 à 4 et par la sortie précédente et que la période de l'appareil est en général égale à quatre fois celle des compteurs d'avance.
Les sorties des compteurs auxiliaires 34 à 37 peu vent directement constituer les sorties du générateur, ou encore, comme dans le cas de la figure, être reliées à un bloc 50 qui peut comporter .des ensembles décodeur- permutateur-codeur supplémentaires, éventuellement suivis d'un dispositif de réduction du nombre des sorties. On donnera plus loin un exemple de réalisation du bloc 50, illustré par 1a fig. 4.
Bien entendu, de nombreuses modifications du mon tage décrit peuvent être envisagées.
On pourrait, en particulier, réaliser les sections 5, 6, 7 et 8 de l'horloge représentée à la figure de manière telle que les premiers cycles de sections respectives ne coïncident pas dans le temps.
En plus de l'équiprobabilité des sorties, il est dési rable de réaliser l'équiprobabilité des avances, c'est-à- dire de s'arranger pour que, pour une sortie donnée de l'un des compteurs auxiliaires, une transition quelconque aboutisse indifféremment à l'un quelconque des chiffres 0,1,2,3ou4.
On peut obtenir ce résultat de diverses manières. L'une d'elles consiste à répartir inégalement, entre les différents circuits ou déjà mentionnés, les sorties des permutateurs. Elle est illustrée par la fig. 3, dans laquelle les mêmes éléments sont désignés par les mêmes numéros de référence qu'à la fig. 2.
On voit que les seize sorties de l'un quelconque des permutateurs, tel que 14., au lieu d'être également répar ties entre les quatre circuits ou correspondants, tels que 18 à 21, comme c'est le cas à la fig. 2, sont, à la fig. 3, réparties de la manière suivante:
Circuit ou 18 (non figuré) : zéro sortie circuit ou 19 : 7 sorties circuit ou 20 : 5 sorties circuit ou 21 : 4 sorties On peut montrer que cette répartition, ainsi que cer taines autres répartitions inégales, améliore l'équiproba- bilité des avances des compteurs 34 à 37.
La fig. 4 illustre à la fois une autre de ces réparti tions inégales (un - six - cinq - quatre) et une autre manière d'améliorer l'équiprobabilité des avances.
Bien entendu, on pourra utiliser d'autres répartitions des impulsions .d'avance auxiliaire, et les combiner à différentes répartitions des sorties des permutateurs.
A la fig. 5, on a représenté un dispositif susceptible de constituer 1a partie terminale (bloc 50) de l'un des ensembles des fig. 2 à 4.
Ce dispositif comprend .deux décodeurs 4/16, désig nés par legs numéros de référence 51 et 52, et connectés aux huit sorties .des compteurs 34 à 37 de la fig. 2.
Ces décodeurs sont suivis de deux permutateurs 53 et 54 à seize entrées et à seize sorties, ces dernières étant connectées, par groupe de quatre à des circuits ou 55 à 62.
Les sorties des circuits ou de rang un (à savoir: 55 et 59) ne sont pas connectées, tandis que les sorties des autres circuits ou sont connectées à deux comp teurs auxiliaires 63 et 64 de la manière suivante: sorties des circuits ou 56 et 60, par l'intermédiaire des cir cuits et respectifs 65 et 68, reliés à la section 71 d'une horloge à sept sections 5 - 6 - 7 - 8 - 71 - 72 - 73; sortie des circuits ou 57 et 61, par l'intermédiaire des cir cuits et respectifs 66 et 69, reliés à la section 72 de ladite horloge, et sorties des circuits ou 58 et 62, par l'intermédiaire des circuits et respectifs 67 et 70, reliés à la section 73 de l'horloge.
Les sections 5 à 8 de cette dernière sont celles qui ont été représentées à la fig. 2 et sont donc connectées de la même façon. Les sections supplémentaires 71 à 73 fournissent -des impulsions calées par exemple comme l'indique la fig. 5. Les compteurs auxiliaires 63 et 64 sont connectés à un décodeur 74, dont les sorties sont connectées à un permutateur 75, lui-même relié à un codeur 76.
On remarque que dans le montage de la fig. 5, les différentes entrées d'avance d'un même compteur auxi liaire sont reliées aux sorties d'un même permutateur, alors que, dans le dispositif<B>de</B> la fig. 1, elles provenaient de permutateurs différents. Cette combinaison a l'avan tage de rendre plus indépendantes les unes des autres les avances de ces compteurs auxiliaires.
Connectée à la suite du ,dispositif des fig. 2, 3 ou 4, elle assure l'équi- prob.abilité des couples de combinaisons de sortie de la clé.
Il est évident qu'un tel dispositif n'est pas limité à deux étages de compteurs auxiliaires connectés en série. Le réducteur de la fig. 6 comporte huit fils d'entrée principaux a à h issus d'un bloc de calcul principal 81, et neuf fils d'entrée auxiliaires issus d'un bloc de calcul auxiliaire 82. Ce dernier peut être constitué par un bloc analogue au bloc principal, ou simplement par un per- mutateur alimenté par le bloc principal.
Chaque fil d'en trée principal attaque trois circuits et , désignés par la même lettre que le fil d'entrée qui leur est associé, affec tée des indices 1, 2 -et 3 qui indiquent leur rang.
Les circuits et de rang 1, à savoir al b<B>.......</B> hl, sont encore attaqués par huit sorties d'un permuta- teur pl; de même, les circuits et a2 b2 <B>......</B> h2 sont attaqués par huit sorties d'un permutateur p2 et les cir cuits et as b, <B>.....</B> h3 sont attaqués par huit sorties d'un permutateur pg.
Dans l'exemple décrit, on a représenté des permuta- teurs à seize entrées et à seize sorties, et huit des sorties de chacun de ces permutateurs sont alors connectées à huit entrées (cette octuple connexion est symbolisée à la figure par un trait renforcé). L'emploi de permutateurs d'ordre seize est simplement destiné à permettre d'utili ser le même type de permutateurs dans l'ensemble de l'appareil cryptographique qui utilise le réducteur décrit, et n'a donc aucun caractère limitatif.
Les permutateurs p1 p2 p, sont connectés au bloc de calcul 82 par l'intermédiaire de décodeurs k1 k2 kg à trois entrées binaires et à huit sorties.
Les huit sorties des circuits et de rang un sont connectées à un circuit logique de somme (circuit ou ) de sorties s1 ; les huit sorties des circuits et de rang doux sont connectées à un circuit ou de sortie s2 et les huit sorties des circuits et de rang trois sont connec tées à un circuit ou de sortie s, .
La réalisation de chacun .des éléments du dispositif que l'on vient @de décrire est à la portée de l'homme de l'art, compte tenu en particulier des indications conte nues dans le brevet susvisé. Le fonctionnement de ce dispositif est le suivant: Une seule des sorties du déco deur Kl est excitée et ceci ouvre une seule des portes et d'indice 1. Le signal a à h appliqué à l'entrée de cette porte et ouverte se retrouve à la sortie s, De même, on retrouve en s1 et s2 l'un des signaux a à h.
Finalement, trois des signaux a à h sont appliquées aux sorties s1 s2 s, (éventuellement plusieurs fois le même) et ceci d'une façon qui dépend des nombres binaires fournis par le compteur 82.