FR2846497A1 - Communal software word encryption key function having two units with register/first multiplexer/inverter and second multiplexer transmitting digital words with rotator separating words/second inverter - Google Patents

Communal software word encryption key function having two units with register/first multiplexer/inverter and second multiplexer transmitting digital words with rotator separating words/second inverter Download PDF

Info

Publication number
FR2846497A1
FR2846497A1 FR0216914A FR0216914A FR2846497A1 FR 2846497 A1 FR2846497 A1 FR 2846497A1 FR 0216914 A FR0216914 A FR 0216914A FR 0216914 A FR0216914 A FR 0216914A FR 2846497 A1 FR2846497 A1 FR 2846497A1
Authority
FR
France
Prior art keywords
data
encryption
decryption
sep
multiplexer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR0216914A
Other languages
French (fr)
Other versions
FR2846497B1 (en
Inventor
Sang Joon Nam
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Hynix Inc
Original Assignee
Hynix Semiconductor Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hynix Semiconductor Inc filed Critical Hynix Semiconductor Inc
Publication of FR2846497A1 publication Critical patent/FR2846497A1/en
Application granted granted Critical
Publication of FR2846497B1 publication Critical patent/FR2846497B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

The encryption key control unit has up and down digital word operations using initial values. Each of the first and second units has a register and first multiplexer with a first inverter. A second multiplexer transmits digital words with a rotator separating the words and a second inverter.

Description

<Desc/Clms Page number 1> <Desc / Clms Page number 1>

La présente invention se rapporte à un dispositif de formation de clefs pour un algorithme standard de cryptage de données et, en particulier, à un dispositif de formation de clefs perfectionné pour un algorithme standard de cryptage de données qui peut fournir des clefs pour cryptage et décryptage dans un logiciel commun.  The present invention relates to a key-forming device for a standard data encryption algorithm and, in particular, to an improved key-forming device for a standard data encryption algorithm that can provide keys for encryption and decryption. in a common software.

C'est ainsi un objet principal de la présente invention que de mettre en #uvre une partie de formation de clefs pour un algorithme standard de cryptage de données qui peut être appliqué à toutes sortes de systèmes de cryptage dans un équipement matériel de type optimal.  It is thus a principal object of the present invention to implement a key training part for a standard data encryption algorithm that can be applied to all kinds of encryption systems in optimal hardware equipment.

Un autre objet de la présente invention est de mettre en #uvre un dispositif de formation de clefs pour cryptage et un dispositif de formation de clefs pour décryptage dans un logiciel commun pour un algorithme standard de cryptage de données.  Another object of the present invention is to implement an encryption keying device and a key decrypting device in a common software for a standard data encryption algorithm.

De manière à réaliser les objets décrits ci-dessus de la présente invention, il est créé un dispositif de formation de clefs pour un algorithme standard de cryptage de données comprenant une unité de commande de clef pour produire une donnée montante et une donnée descendante en effectuant des opérations pour cryptage et décryptage par l'utilisation d'une valeur de clef initiale ; une première unité de décalage pour décaler la donnée montante dans une première direction ; une seconde unité de décalage pour décaler la donnée descendante dans la première direction ; et une unité de formation de clefs pour produire des clefs pour le cryptage et le décryptage pour l'algorithme standard de cryptage de données en effectuant un Choix 2 Permuté de l'algorithme standard de cryptage de données par l'utilisation des données décalées dans la première unité de décalage et la seconde unité de décalage, caractérisé en ce que chacune des première et seconde unités de décalage comprend : un registre, un premier multiplexeur pour transmettre de manière sélective au registre soit la donnée montante  In order to achieve the above-described objects of the present invention, a key-forming device is created for a standard data encryption algorithm comprising a key control unit for producing up-data and down-data by performing operations for encryption and decryption by the use of an initial key value; a first shift unit for shifting the ascending data in a first direction; a second shift unit for shifting the descending data in the first direction; and a key training unit for generating keys for encryption and decryption for the standard data encryption algorithm by performing a Switched Choice 2 of the standard data encryption algorithm by using the shifted data in the data encryption algorithm. first shift unit and the second shift unit, characterized in that each of the first and second shift units comprises: a register, a first multiplexer for selectively transmitting to the register either the rising data

<Desc/Clms Page number 2><Desc / Clms Page number 2>

soit la donnée descendante et une donnée de contreréaction ; une première unité de disposition inverse pour disposer de manière inverse les données du registre ; un second multiplexeur pour transmettre les données du registre pendant le cryptage et transmettre les données de la première unité de disposition inverse pendant le décryptage ; un rotateur pour décaler les données du second multiplexeur dans une première direction en unités de bits ; une seconde unité de disposition inverse pour disposer de manière inverse les données du rotateur ; et un troisième multiplexeur pour transmettre au premier multiplexeur les données du rotateur en tant que données de contre-réaction au cours du cryptage, et transmettre au premier multiplexeur les données de la seconde unité de disposition inverse en tant que données de contreréaction pendant le décryptage.  either the descending data and a counter-reaction data; a first inverse disposition unit for reverse arranging the register data; a second multiplexer for transmitting the register data during encryption and transmitting the data of the first reverse disposition unit during decryption; a rotator for shifting the data of the second multiplexer in a first direction in bit units; a second inverse disposition unit for reverse arranging the rotator data; and a third multiplexer for transmitting to the first multiplexer the rotator data as feedback data during encryption, and transmitting to the first multiplexer the data of the second reverse disposition unit as the counteraction data during decryption.

Conformément à un autre aspect de la présente invention, il est prévu un dispositif de formation de clefs pour un algorithme standard de cryptage de données comprenant : une unité de commande de clef pour produire une donnée montante et une donnée descendante en effectuant des opérations pour cryptage et décryptage par l'utilisation d'une valeur de clef initiale ; une première unité de décalage pour décaler la donnée montante ; une seconde unité de décalage pour décaler la donnée descendante ; et une unité de formation de clefs pour produire des clefs pour le cryptage et le décryptage pour l'algorithme standard de cryptage de données en effectuant un Choix 2 Permuté de l'algorithme standard de cryptage de données par l'utilisation des données décalées dans la première unité de décalage et la seconde unité de décalage, caractérisé en ce que chacune des première et seconde unités de décalage comprend : un registre ; un multiplexeur pour transmettre au registre de manière sélective soit la donnée montante soit la donnée descendante et une donnée de contre-réaction ; et un rotateur pour décaler les données du registre dans une première direction en unités de bits pendant le cryptage  In accordance with another aspect of the present invention, there is provided a key-forming device for a standard data encryption algorithm comprising: a key control unit for producing a rising data and a descendant data by performing operations for encryption and decryption by using an initial key value; a first shift unit for shifting up data; a second shift unit for shifting the descending data; and a key training unit for generating keys for encryption and decryption for the standard data encryption algorithm by performing a Switched Choice 2 of the standard data encryption algorithm by using the shifted data in the data encryption algorithm. first shift unit and the second shift unit, characterized in that each of the first and second shift units comprises: a register; a multiplexer for selectively transmitting to the register either the rising data or the falling data and a feedback data; and a rotator for shifting the register data in a first direction in bit units during encryption

<Desc/Clms Page number 3><Desc / Clms Page number 3>

et le décryptage, et transmettre au multiplexeur les données résultantes en tant que données de contreréaction.  and decrypting, and transmitting to the multiplexer the resulting data as feedback data.

L'invention sera mieux comprise, et d'autres buts, caractéristiques, détails et avantages de celle-ci apparaîtront plus clairement au cours de la description explicative qui va suivre faite en référence aux dessins annexés donnés uniquement à titre d'exemple illustrant des modes de réalisation de l'invention et dans lesquels : - la figure 1 est un organigramme montrant un algorithme standard de cryptage de données de type général ; - la figure 2 est une vue montrant une comparaison de dimensions de décalage pendant le cryptage et le décryptage de l'algorithme standard de cryptage de données de la figure 1 ; - la figure 3 est un schéma synoptique illustrant un dispositif de formation de clef conforme à un premier mode de réalisation de la présente invention ; - la figure 4 est un schéma synoptique illustrant une unité de commande de clef de la figure 3 ; - la figure 5 est un schéma synoptique illustrant un dispositif de formation de clefs conforme à un second mode de réalisation de la présente invention ; et - la figure 6 est un schéma synoptique illustrant un dispositif de formation de clefs conforme à un troisième mode de réalisation de la présente invention.  The invention will be better understood, and other objects, features, details and advantages thereof will appear more clearly in the following explanatory description made with reference to the accompanying drawings given solely by way of example illustrating the modes. embodiment of the invention and in which: - Figure 1 is a flowchart showing a standard general data encryption algorithm; FIG. 2 is a view showing a comparison of offset dimensions during encryption and decryption of the standard data encryption algorithm of FIG. 1; FIG. 3 is a block diagram illustrating a key forming device according to a first embodiment of the present invention; FIG. 4 is a block diagram illustrating a key control unit of FIG. 3; FIG. 5 is a block diagram illustrating a key forming device according to a second embodiment of the present invention; and FIG. 6 is a block diagram illustrating a key forming device according to a third embodiment of the present invention.

En se référant à la figure 1, on a représenté un algorithme standard de cryptage de données de type général qui comprend une partie de cryptage de données 10 et une partie de formation de clefs 20..  Referring to FIG. 1, there is shown a standard general purpose data encryption algorithm which includes a data encryption portion 10 and a key formation portion 20.

La partie de cryptage de données 10 combine de manière initiale des données d'entrée à 64 bits, les divise en données de droite/gauche à 32 bits, répète seize fois un arrondi pour actionner une fonction f et une opération OU exclusif en utilisant des clefs à 48 bits (Ki, i = 1,..., 16) en provenance de la partie de formation de clefs 20 et échange des données  The data encryption portion 10 initially combines 64-bit input data, divides them into 32-bit right / left data, repeats 16-fold rounding to operate a function f and exclusive-OR operation using 48-bit keys (K i, i = 1, ..., 16) from the key-forming portion 20 and data exchange

<Desc/Clms Page number 4><Desc / Clms Page number 4>

droite/gauche dans chaque arrondi, en effectuant ainsi un cryptage.  right / left in each round, thus performing encryption.

Le fonctionnement de la partie de formation de clefs 20 pour le cryptage va maintenant être expliqué en se référant à la figure 1.  The operation of the key forming part 20 for encryption will now be explained with reference to FIG.

Une clef initiale est composée de 64 bits, et un bit de parité est compris dans chaque position multiple de 8 dans une rangée de bits. Ainsi, le bit de parité est réglé de manière que chaque octet puisse présenter un nombre impair de '1'.  An initial key is composed of 64 bits, and a parity bit is included in each position multiple of 8 in a row of bits. Thus, the parity bit is set so that each byte can have an odd number of '1'.

On effectue tout d'abord le Choix 1 Permuté sur les 64 bits de clef d'origine.  First, Switched Choice 1 is performed on the original 64-bit key.

Ici, les bits de parité sont exclus, et seuls 56 bits sont utilisés pour le Choix 1 Permuté.  Here, the parity bits are excluded, and only 56 bits are used for the Choice 1 Swapped.

Le tableau 1 montre un état de disposition des bits de la clef initiale conforme au Choix 1 Permuté.  Table 1 shows a disposition state of the bits of the initial key conforming to the Choice 1 Switched.

TABLEAU 1

Figure img00040001
TABLE 1
Figure img00040001

<tb>
<tb> 57 <SEP> 49 <SEP> 41 <SEP> 33 <SEP> 25 <SEP> 17 <SEP> 9
<tb> 1 <SEP> 58 <SEP> 50 <SEP> 42 <SEP> 34 <SEP> 26 <SEP> 18
<tb> 10 <SEP> 2 <SEP> 59 <SEP> 51 <SEP> 43 <SEP> 35 <SEP> 27
<tb> 19 <SEP> 11 <SEP> 3 <SEP> 60 <SEP> 52 <SEP> 44 <SEP> 36
<tb> 63 <SEP> 55 <SEP> 47 <SEP> 39 <SEP> 31 <SEP> 23 <SEP> 15
<tb> 7 <SEP> 62 <SEP> 54 <SEP> 46 <SEP> 38 <SEP> 30 <SEP> 22
<tb> 14 <SEP> 6 <SEP> 61 <SEP> 53 <SEP> 45 <SEP> 37 <SEP> 29
<tb> 21 <SEP> 13 <SEP> 5 <SEP> 28 <SEP> 20 <SEP> 12 <SEP> 4
<tb>
<Tb>
<tb> 57 <SEP> 49 <SEP> 41 <SEP> 33 <SEP> 25 <SEP> 17 <SEP> 9
<tb> 1 <SEP> 58 <SEP> 50 <SEP> 42 <SEP> 34 <SEP> 26 <SEP> 18
<tb> 10 <SEP> 2 <SEP> 59 <SEP> 51 <SEP> 43 <SEP> 35 <SEP> 27
<tb> 19 <SEP> 11 <SEP> 3 <SEP> 60 <SEP> 52 <SEP> 44 <SEP> 36
<tb> 63 <SEP> 55 <SEP> 47 <SEP> 39 <SEP> 31 <SEP> 23 <SEP> 15
<tb> 7 <SEP> 62 <SEP> 54 <SEP> 46 <SEP> 38 <SEP> 30 <SEP> 22
<tb> 14 <SEP> 6 <SEP> 61 <SEP> 53 <SEP> 45 <SEP> 37 <SEP> 29
<tb> 21 <SEP> 13 <SEP> 5 <SEP> 28 <SEP> 20 <SEP> 12 <SEP> 4
<Tb>

Comme montré au tableau 1, le premier bit obtenu par le Choix 1 Permuté est équivalent au 57e bit de la clef initiale, et le second bit de la valeur résultante est équivalent au 49e bit de la clef initiale. Ainsi, le Choix 1 Permuté change l'état de la disposition des bits à l'exclusion des bits de parité de la clef initiale. As shown in Table 1, the first bit obtained by the Permitted Choice 1 is equivalent to the 57th bit of the initial key, and the second bit of the resultant value is equivalent to the 49th bit of the initial key. Thus, the Switched Choice 1 changes the state of the bit disposition to the exclusion of the parity bits of the initial key.

Après cela, les résultats du Choix 1 Permuté sont divisés par 28 bits et définis en tant que CO et DO.  After that, the results of the Switched Choice 1 are divided by 28 bits and defined as CO and DO.

Un arrondi de décalage est effectué de manière séquentielle sur la base des CO et DO définis ci-dessus.  Offset rounding is performed sequentially based on the CO and OD defined above.

<Desc/Clms Page number 5> <Desc / Clms Page number 5>

Lorsqu'il est présumé que les résultats de chaque arrondi de décalage sont définis en tant que Ci et Di et que la condition 'i = 1, ..., 16' est satisfaite, les résultats de chaque arrondi de décalage Ci et Di sont déterminés conformément à une dimension de décalage définie au tableau 2. When it is assumed that the results of each shift rounding are defined as Ci and Di and that the condition 'i = 1, ..., 16' is satisfied, the results of each shift round Ci and Di are determined according to an offset dimension defined in Table 2.

Tableau 2

Figure img00050001
Table 2
Figure img00050001

<tb>
<tb> 1 <SEP> 1 <SEP> 2 <SEP> 3 <SEP> 4 <SEP> 5 <SEP> 6 <SEP> 7 <SEP> 8 <SEP> 9 <SEP> 10 <SEP> 11 <SEP> 12 <SEP> 13 <SEP> 14 <SEP> 15 <SEP> 16
<tb> Dimension <SEP> de <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 1 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 1
<tb> @écalage
<tb>
<Tb>
<tb> 1 <SEP> 1 <SEP> 2 <SEP> 3 <SEP> 4 <SEP> 5 <SEP> 6 <SEP> 7 <SEP> 8 <SEP> 9 <SEP> 10 <SEP> 11 <SEP > 12 <SEP> 13 <SEP> 14 <SEP> 15 <SEP> 16
<tb> Dimension <SEP> of <SEP> 1 <SEP> 1 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 1 <SEP> 2 <SEP > 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 2 <SEP> 1
<tb> @ hulling
<Tb>

Ainsi, Cl et Dl sont produis en décalant CO et DO de 1 bit, C2 et D2 sont produits en décalant Cl et Dl de 1 bit, et C3 et D3 sont produits en décalant C2 et D2 de 2 bits. Thus, C1 and D1 are produced by shifting CO and DO by 1 bit, C2 and D2 are produced by shifting C1 and D1 by 1 bit, and C3 and D3 are produced by shifting C2 and D2 by 2 bits.

Ci (i = 1, ..., 16) et Di (1 = 1, ... , 16) peuvent être obtenus de la même manière.  Ci (i = 1, ..., 16) and Di (1 = 1, ..., 16) can be obtained in the same way.

Après cela, on effectue le Choix 2 Permuté en utilisant Ci (i = 1, ..., 16) et Di (i = 1, ..., 16) de chaque arrondi de décalage, en obtenant ainsi les clefs Ki pour le cryptage.  After that, we make Choice 2 Switched using Ci (i = 1, ..., 16) and Di (i = 1, ..., 16) of each offset rounding, thus obtaining the keys Ki for the encryption.

Le tableau 3 montre un état de disposition des bits conforme au Choix 2 Permuté.  Table 3 shows a disposition status of the bits in accordance with Choice 2 switched.

Tableau 3

Figure img00050002
Table 3
Figure img00050002

<tb>
<tb> 14 <SEP> 17 <SEP> 11 <SEP> 24 <SEP> 1 <SEP> 5
<tb> 3 <SEP> 28 <SEP> 15 <SEP> 6 <SEP> 21 <SEP> 10
<tb> 23 <SEP> 19 <SEP> 12 <SEP> 4 <SEP> 26 <SEP> 8
<tb> 16 <SEP> 7 <SEP> 27 <SEP> 20 <SEP> 13 <SEP> 2
<tb> 41 <SEP> 52 <SEP> 31 <SEP> 37 <SEP> 47 <SEP> 55
<tb> 30 <SEP> 40 <SEP> 51 <SEP> 45 <SEP> 33 <SEP> 48
<tb> 44 <SEP> 49 <SEP> 39 <SEP> 56 <SEP> 34 <SEP> 53
<tb> 46 <SEP> 42 <SEP> 50 <SEP> 36 <SEP> 29 <SEP> 32
<tb>
<Tb>
<tb> 14 <SEP> 17 <SEP> 11 <SEP> 24 <SEP> 1 <SEP> 5
<tb> 3 <SEP> 28 <SEP> 15 <SEP> 6 <SEP> 21 <SEP> 10
<tb> 23 <SEP> 19 <SEP> 12 <SEP> 4 <SEP> 26 <SEP> 8
<tb> 16 <SEP> 7 <SEP> 27 <SEP> 20 <SEP> 13 <SEP> 2
<tb> 41 <SEP> 52 <SEP> 31 <SEP> 37 <SEP> 47 <SEP> 55
<tb> 30 <SEP> 40 <SEP> 51 <SEP> 45 <SEP> 33 <SEP> 48
<tb> 44 <SEP> 49 <SEP> 39 <SEP> 56 <SEP> 34 <SEP> 53
<tb> 46 <SEP> 42 <SEP> 50 <SEP> 36 <SEP> 29 <SEP> 32
<Tb>

De manière identique au Choix 1 Permuté, le Choix 2 Permuté change l'état de disposition des bits de Ci et de In a similar way to the Choice 1 Switched, the Switched Choice 2 changes the disposition status of the bits of Ci and

<Desc/Clms Page number 6><Desc / Clms Page number 6>

Di comme montré au tableau 3, en produisant ainsi 48 bits de clefs Ki correspondant à chaque arrondi de décalage.  Di as shown in Table 3, thereby producing 48 key bits Ki corresponding to each offset rounding.

Les clefs Ki (i = 1,..., 16) ainsi produites sont appliquées à la partie de cryptage de données 10 de l'algorithme standard de cryptage de données.  Keys K i (i = 1, ..., 16) thus produced are applied to the data encryption portion 10 of the standard data encryption algorithm.

Dans le décryptage, on répète dans un ordre inverse le protocole mentionné ci-dessus, à savoir à partir de C16 et D16 pour produire les clefs. Ici, on a exécuté un décalage à droite.  In decryption, the above mentioned protocol is repeated in reverse order, namely from C16 and D16 to produce the keys. Here, we performed a shift to the right.

La figure 2 montre la comparaison des dimensions de décalage pendant le cryptage et le décryptage. Comme montré à la figure 2, la dimension de décalage de Cl à C16 dans le cryptage est identique à la dimension de décalage de C16 à Cl dans le décryptage.  Figure 2 shows the comparison of offset dimensions during encryption and decryption. As shown in FIG. 2, the offset dimension of C1 to C16 in the encryption is the same as the offset dimension of C16 to C1 in decryption.

De manière à mettre en #uvre l'algorithme standard de cryptage de données de la figure 1 dans un équipement matériel, on forme de manière individuelle un bloc de cryptage et un bloc de décryptage. Cependant, en considérant que l'algorithme répété est appliqué à chaque bloc, on utilise de manière individuelle les mêmes éléments constitutifs dans chaque bloc. En conséquence, un grand nombre d'éléments constitutifs et un grand espace sont nécessaires pour mettre en #uvre l'équipement matériel pour l'algorithme standard de cryptage de données, ce qui diminue le caractère efficient de la conception de l'équipement matériel.  In order to implement the standard data encryption algorithm of FIG. 1 in a hardware device, an encryption block and a decryption block are individually formed. However, considering that the repeated algorithm is applied to each block, the same constituent elements in each block are used individually. As a result, a large number of components and a large space are required to implement the hardware equipment for the standard data encryption algorithm, which decreases the efficiency of the design of the hardware equipment.

Un dispositif de formation de clefs pour un algorithme standard de cryptage de données conforme aux modes de réalisation préférés de la présente invention va maintenant être décrit en détail en se référant aux figures 3 à 6.  A key training device for a standard data encryption algorithm according to the preferred embodiments of the present invention will now be described in detail with reference to Figs. 3-6.

La figure 3 est un schéma synoptique illustrant la structure d'un équipement matériel pour la formation de clefs pour le cryptage et le décryptage pour l'algorithme standard de cryptage de données conforme à un premier mode de réalisation de la présente invention.  Fig. 3 is a block diagram illustrating the structure of a hardware equipment for key formation for encryption and decryption for the standard data encryption algorithm according to a first embodiment of the present invention.

Le dispositif de formation de clefs comprend trois paires de multiplexeurs 310,312, 314,316, 318 et 320,  The key-forming device comprises three pairs of multiplexers 310,312, 314,316, 318 and 320,

<Desc/Clms Page number 7><Desc / Clms Page number 7>

une paire de rotateurs 326 et 328, une paire de registres 322 et 324 et deux paires d'unités de disposition inverse 330,332, 334 et 336, lesquelles sont divisées en une partie pour calculer les bits Ci de gauche et une partie pour calculer les bits Di de droite.  a pair of rotators 326 and 328, a pair of registers 322 and 324 and two pairs of inverse disposition units 330,332, 334 and 336, which are divided into a portion for calculating the leftmost bits Ci and a portion for calculating the bits Di right.

Conformément au premier mode de réalisation de l'invention, le dispositif de formation de clefs calcule des clefs par division pour donner Ci et Di afin d'obtenir de manière efficiente les clefs, et il réduit un grand nombre d'éléments de calcul afin d'optimiser la structure de l'équipement matériel.  According to the first embodiment of the invention, the key-forming device calculates keys by division to give Ci and Di in order to efficiently obtain the keys, and it reduces a large number of calculation elements in order to obtain the keys. optimize the structure of the equipment.

En outre, l'unité de formation de clefs comprend une unité de commande de clef 340 pour recevoir une valeur de clef initiale K, délivrer Cl et D1 pendant le cryptage, et délivrer C16 et D16 pendant le décryptage, ainsi qu'une unité de formation de clefs 338 pour produire des clefs en utilisant les Ci et Di calculés.  In addition, the key formation unit comprises a key control unit 340 for receiving an initial key value K, outputting C1 and D1 during encryption, and outputting C16 and D16 during decryption, as well as a decoder unit. forming keys 338 to produce keys using the calculated Ci and Di.

L'unité de commande de clef 340 peut être constituée comme montré à la figure 4. Par conséquent, dans le cryptage, une unité de Choix 1 Permuté 350 effectue le Choix 1 Permuté en utilisant 64 bits de clef initiale K, et divise par 28 bits la clef K à 64 bits obtenue pour donner CO et DO, et des dispositifs de décalage 354 et 358 délivrent respectivement Cl et Di en décalant à gauche CO et DO de 1 bit. En outre, dans le décryptage, l'unité de commande de clef 340 divise la clef K initiale en CO et DO après le Choix 1 Permuté, et délivre CO et DO respectivement en tant que C16 et D16. Les multiplexeurs 352 et 356 délivrent Cl et D1 ou C16 et D16 conformément à un signal A de décision de cryptage décryptage.  The key control unit 340 may be constituted as shown in FIG. 4. Therefore, in the encryption, a Choice 1 Switched unit 350 performs the Switched Choice 1 using 64 bits of the initial key K, and divides by 28 The 64 bit key K obtained to give CO and DO, and shifters 354 and 358 respectively deliver Cl and Di by shifting left CO and DO by 1 bit. In addition, in decryption, the key control unit 340 divides the initial key K into CO and DO after the swapped Choice 1, and delivers CO and OD respectively as C16 and D16. The multiplexers 352 and 356 deliver C1 and D1 or C16 and D16 according to an encryption decryption decision signal A.

A ce point, si C16 et C17 sont produits en décalant CO et DO comme montré à la figure 2, CO et DO ont 28 bits et leur dimension de décalage est de 28 bits et, ainsi, CO et DO ont les mêmes valeurs que C16 et D16. CO et DO sont en conséquence délivrés en tant que C16 et D16 pendant le décryptage.  At this point, if C16 and C17 are produced by shifting CO and DO as shown in Figure 2, CO and DO have 28 bits and their offset dimension is 28 bits and so CO and DO have the same values as C16 and D16. CO and DO are therefore delivered as C16 and D16 during decryption.

<Desc/Clms Page number 8> <Desc / Clms Page number 8>

Il en résulte que, lorsque la clef K initiale est appliquée à l'unité de commande de clef 340, l'unité de commande de clef 340 délivre Ci et Di (Ci et Dl dans le cryptage, et C16 et D16 dans le décryptage) en effectuant les opérations mentionnées précédemment.  As a result, when the initial key K is applied to the key control unit 340, the key control unit 340 outputs Ci and Di (Ci and Dl in the encryption, and C16 and D16 in the decryption). by performing the operations mentioned above.

Après cela, les multiplexeurs 310 et 312 enregistrent Ci et Di à partir de l'unité de commande de clef 340 respectivement sur les registres 322 et 324 conformément à un signal de sélection S. Les registres 322 et 324 transmettent, aux multiplexeurs 314 et 316 et aux unités de disposition inverse 330 et 332, les Ci et Di enregistrés. Les unités de disposition inverse 330 et 332 modifient la disposition de Ci et Di provenant des registres 322 et 324, et les transmettent aux multiplexeurs 314 et 316.  After that, the multiplexers 310 and 312 record Ci and Di from the key control unit 340 respectively on the registers 322 and 324 in accordance with a selection signal S. The registers 322 and 324 transmit to the multiplexers 314 and 316 and the reverse disposition units 330 and 332, the registered Ci and Di. The inverse disposition units 330 and 332 modify the arrangement of Ci and Di from the registers 322 and 324, and transmit them to the multiplexers 314 and 316.

Ainsi, les multiplexeurs 314 et 316 reçoivent Ci et Di respectivement à partir des registres 322 et 324 et des unités de disposition inverse 330 et 332. A ce point, Ci et Di transmis à partir des registres 332 et 324 et des unités de disposition inverse 330 et 332 présentent différents états de disposition.  Thus, multiplexers 314 and 316 receive Ci and Di respectively from registers 322 and 324 and reverse disposition units 330 and 332. At this point, Ci and Di transmitted from registers 332 and 324 and reverse disposition units 330 and 332 have different disposition states.

Il est à ce point possible de produire le signal de décision A de cryptage décryptage, le signal de sélection S ou un signal de commande de dimension de décalage B qui vont être expliqués plus loin et qui sont fournis par un moyen de commande prédéterminé (non représenté) pour commander le cryptage et le décryptage. Dans le cas où le multiplexeur 310 est conçu pour déterminer de l'existence/absence de signaux à partir de l'unité de commande de clef 340 et du multiplexeur 318 et pour effectuer l'opération de sélection, le signal de sélection S n'a pas besoin d'être appliqué de manière externe. En outre, lorsque le rotateur 326, lequel sera expliqué plus loin, est conçu pour un compteur d'arrondi, le signal B de commande de dimension de décalage n'a pas besoin non plus d'être appliqué de manière externe.  It is at this point possible to produce the deciphering encryption decision signal A, the selection signal S or an offset size control signal B which will be explained later and which are provided by a predetermined control means (no shown) to control encryption and decryption. In the case where the multiplexer 310 is designed to determine the existence / absence of signals from the key control unit 340 and the multiplexer 318 and to perform the selection operation, the selection signal S n ' does not need to be applied externally. In addition, when the rotator 326, which will be explained later, is designed for a rounding counter, the shift size control signal B does not need to be applied externally either.

Les multiplexeurs 314 et 316 déterminent de produire des clefs pour le cryptage ou des clefs pour le  The multiplexers 314 and 316 determine to produce keys for the encryption or keys for the

<Desc/Clms Page number 9><Desc / Clms Page number 9>

décryptage conformément au signal de décision A de cryptage décryptage. Les multiplexeurs 314 et 316 reçoivent Ci et Di depuis les registres 322 et 324 pour produire les clefs pour le cryptage, reçoivent Ci et Di depuis les unités de disposition inverse 330 et 332 pour produire les clefs pour le décryptage, et ils les transmettent vers les rotateurs 326 et 328.  decryption according to the decryption encryption decision signal A. The multiplexers 314 and 316 receive Ci and Di from the registers 322 and 324 to produce the keys for encryption, receive Ci and Di from the reverse disposition units 330 and 332 to produce the keys for decryption, and transmit them to the encryption keys. rotators 326 and 328.

A ce point, les rotateurs 326 et 328 décalent Ci et Di transmis à partir des multiplexeurs 314 et 316 dans une première direction prédéterminée. Dans le cas du décalage à gauche, les bits les plus significatifs (BPS) des rotateurs 326 et 328 sont amenés à tourner pour former les bits les moins significatifs (BMS) et sont ensuite appliqués.  At this point, the rotators 326 and 328 shift Ci and Di transmitted from the multiplexers 314 and 316 in a first predetermined direction. In the case of the shift to the left, the most significant bits (BPS) of the rotators 326 and 328 are rotated to form the least significant bits (BMS) and are then applied.

A ce point, les rotateurs 326 et 328 commandent les dimensions de décalage de Ci et Di selon le signal B de commande de dimension de décalage qui est appliqué.  At this point, the rotators 326 and 328 control the offset dimensions of Ci and Di according to the offset dimension control signal B that is applied.

Les Ci et Di décalés sont transmis vers les multiplexeurs 318 et 320 et les unités de disposition inverse 334 et 336. Les unités de disposition inverse 334 et 336 changent l'état de disposition de Ci et Di en provenance des rotateurs 326 et 328, et ils transmettent Ci et Di vers les multiplexeurs 318 et 320.  The offset Ci and Di are transmitted to the multiplexers 318 and 320 and the reverse disposition units 334 and 336. The reverse disposition units 334 and 336 change the disposition state of Ci and Di from the rotators 326 and 328, and they transmit Ci and Di to the multiplexers 318 and 320.

Les multiplexeurs 318 et 320 reçoivent Ci et Di respectivement à partir des rotateurs 326 et 328 et des unités de disposition inverse 334 et 336. A ce point, Ci et Di transmis à partir des rotateurs 326 et 328 et des unités de disposition inverse 330,332 présentent différents états de disposition.  The multiplexers 318 and 320 receive Ci and Di respectively from the rotators 326 and 328 and the reverse disposition units 334 and 336. At this point, Ci and Di transmitted from the rotators 326 and 328 and the reverse disposition units 330, 322 present different states of disposition.

Après cela, les multiplexeurs 318 et 320 déterminent de produire les clefs pour le cryptage ou les clefs pour le décryptage conformément au signal de décision A de cryptage décryptage. Les multiplexeurs 318 et 320 sélectionnent Ci et Di des rotateurs 326 et 328 pour produire les clefs pour le cryptage, sélectionnent Ci et Di des unités de disposition inverse 334, 336 pour produire les clefs pour le décryptage, et ils  After that, the multiplexers 318 and 320 determine to produce the keys for encryption or keys for decryption according to the decryption encryption decision signal A. The multiplexers 318 and 320 select Ci and Di from the rotators 326 and 328 to produce the keys for encryption, select Ci and Di from the reverse disposition units 334, 336 to produce the keys for decryption, and they

<Desc/Clms Page number 10><Desc / Clms Page number 10>

transmettent, vers les multiplexeurs 310 et 312, les Ci et Di sélectionnés.  transmit, to the multiplexers 310 and 312, the selected Ci and Di.

Les multiplexeurs 310 et 312 enregistrent sur les registres 332 et 334 les Ci et Di qui ont été transmis, et le protocole mentionné précédemment est répété pour calculer Ci et Di jusqu' à C16 et D16 pendant le cryptage et calculer C16 et D16 jusqu'à Cl et D1 pendant le décryptage.  The multiplexers 310 and 312 record on the registers 332 and 334 the Ci and Di which have been transmitted, and the aforementioned protocol is repeated to calculate Ci and Di up to C16 and D16 during the encryption and to calculate C16 and D16 up to Cl and D1 during decryption.

L'unité de formation de clefs 338 effectue le Choix 2 Permuté en utilisant Ci et Di enregistrés sur les registres 332 et 324, en obtenant ainsi Ki.  The key formation unit 338 performs the Choice 2 Switched using Ci and Di recorded on registers 332 and 324, thereby obtaining Ki.

Le processus mentionné ci-dessus va maintenant être brièvement expliqué. Les multiplexeurs 314 à 320 reçoivent Ci et Di à partir des registres 322 et 324 ou des rotateurs 326 et 328 pendant le cryptage conformément au signal de décision A de cryptage décryptage, et ils reçoivent les Ci et Di disposés de manière inverse à partir des unités de disposition inverse 330 à 336 pendant le décryptage, en triant ainsi les données selon le cryptage et le décryptage.  The process mentioned above will now be briefly explained. The multiplexers 314 to 320 receive Ci and Di from the registers 322 and 324 or rotators 326 and 328 during encryption according to the decryption encryption decision signal A, and receive the Ci and Di arranged in reverse order from the units. in reverse disposition 330 to 336 during decryption, thus sorting the data according to encryption and decryption.

Les rotateurs 326, et 328 confirment les dimensions de décalage quel que soit le cryptage ou le décryptage, et reçoivent le signal B de commande de dimension de décalage communément utilisé parce que la dimension de décalage de Cl et D1 à C16 et D16 est identique à la dimension de décalage de C16 et D16 à Cl et D1 comme montré à la figure 2.  The rotators 326, and 328 confirm the offset dimensions regardless of the encryption or decryption, and receive the commonly used offset size control signal B because the offset dimension of C1 and D1 to C16 and D16 is the same. the shift dimension of C16 and D16 to C1 and D1 as shown in Figure 2.

En outre, les unités de disposition inverse 330 à 336 sont formées de manière que les rotateurs 326 et 328 qui décalent Ci et Di dans une première direction puissent être utilisés en commun pour le cryptage et le décryptage. En conséquence, le cryptage et le décryptage peuvent être mis en #uvre dans le même équipement matériel.  Further, the inverse disposition units 330 to 336 are formed so that rotators 326 and 328 that shift Ci and Di in a first direction can be used in common for encryption and decryption. As a result, encryption and decryption can be implemented in the same hardware equipment.

Par ailleurs, le dispositif de formation de clefs peut être modifié comme montré à la figure 5. Un second mode de réalisation de la figure 5 modifie les rotateurs 326 et 328 du premier mode de réalisation de la figure 3  Furthermore, the key-forming device can be modified as shown in FIG. 5. A second embodiment of FIG. 5 modifies the rotators 326 and 328 of the first embodiment of FIG.

<Desc/Clms Page number 11><Desc / Clms Page number 11>

comme décrit ci-dessus. Le dispositif de formation de clefs de la figure 5 présente la même structure que le dispositif de formation de clefs de la figure 3, à l'exception que les rotateurs 326 et 326 comprennent des compteurs incorporés (non représentés) pour décaler Ci et Di dans chaque arrondi conformément à une dimension de décalage nécessaire. Par conséquent, le signal B de commande de dimension de décalage n'a pas besoin d'être appliqué extérieurement, différemment de la figure 3.  as described above. The key-forming device of FIG. 5 has the same structure as the key-forming device of FIG. 3, except that the rotators 326 and 326 comprise built-in counters (not shown) for shifting Ci and Di in each rounded according to a necessary offset dimension. Therefore, the shift size control signal B need not be applied externally, differently from FIG. 3.

Le dispositif de formation de clefs pour l'algorithme standard de cryptage de données peut également être mis en #uvre comme montré à la figure 6.  The keying device for the standard data encryption algorithm can also be implemented as shown in FIG. 6.

Comme illustré à la figure 6, le dispositif de formation de clefs comprend une paire de multiplexeurs 410 et 420, une paire de registres 430 et 440, et une paire de rotateurs 450 et 460. De manière identique au premier mode de réalisation décrit ci-dessus, le dispositif de formation de clefs est divisé en une partie pour calculer Ci et une partie pour calculer Di afin d'augmenter le caractère efficient dans le calcul et réduire la charge de la structure de l'équipement matériel.  As illustrated in FIG. 6, the key-forming device comprises a pair of multiplexers 410 and 420, a pair of registers 430 and 440, and a pair of rotators 450 and 460. In a manner identical to the first embodiment described below, above, the key-forming device is divided into a part to calculate Ci and a part to calculate Di in order to increase the efficiency in the calculation and to reduce the load of the structure of the equipment equipment.

Le dispositif de formation de clefs comprend en outre une unité de commande de clef 480 pour recevoir une valeur de clef initiale K, délivrer Cl et D1 pendant le cryptage et délivrer C16 et D16 pendant le décryptage, ainsi qu'une unité de formation de clefs 470 pour produire des clefs en utilisant les Ci et Di calculés.  The key-forming device further comprises a key control unit 480 for receiving an initial key value K, outputting Cl and D1 during encryption, and outputting C16 and D16 during decryption, as well as a key-forming unit. 470 to produce keys using the calculated Ci and Di.

Dans le cryptage, l'unité de commande de clef 480 effectue le Choix 1 Permuté en utilisant la clef K initiale, divise la clef K obtenue en CO et DO, décale à gauche CO et DO de 1 bit et délivre Cl et Dl. Dans le décryptage, l'unité de commande de clef 480 divise la clef K obtenue en CO et DO après le Choix 1 Permuté, et les délivre en tant que C16 et D16. Les opérations respectives pour le cryptage et le décryptage sont déterminées conformément à un signal de décision A de cryptage décryptage.  In the encryption, the key control unit 480 performs the Choice 1 Switched using the initial key K, divides the key K obtained in CO and DO, shifts to the left CO and DO of 1 bit and delivers C1 and D1. In decryption, the key control unit 480 divides the key K obtained in CO and DO after the swapped Choice 1, and outputs them as C16 and D16. The respective operations for encryption and decryption are determined in accordance with a deciphering encryption decision signal A.

<Desc/Clms Page number 12> <Desc / Clms Page number 12>

A ce point, si C16 et D16 sont produits en décalant CO et DO comme montré à la figure 2, CO et DO ont 23 bits et leur dimension de décalage est de 28 bits et, ainsi, CO et DO ont les mêmes valeurs que les C16 et D16. En conséquence, CO et DO sont délivrés en tant que C16 et D16 pendant le décryptage.  At this point, if C16 and D16 are produced by shifting CO and DO as shown in Figure 2, CO and DO have 23 bits and their offset dimension is 28 bits, and so CO and DO have the same values as the C16 and D16. As a result, CO and DO are delivered as C16 and D16 during decryption.

Par ailleurs, l'unité de formation de clefs 470 effectue le Choix 2 Permuté en utilisant les Ci et Di calculés, en produisant ainsi des clefs.  On the other hand, the key formation unit 470 performs the Switched Choice 2 using the calculated Ci and Di, thereby producing keys.

Lorsque la clef K initiale pour produire les clefs pour le cryptage et le décryptage est appliquée à l'unité de commande de clef 480, l'unité de commande de clef 480 délivre Ci et Di (Ci et Dl dans le cryptage, et C16 et D16 dans le décryptage) en effectuant les opérations mentionnées ci-dessus.  When the initial key K for generating the keys for encryption and decryption is applied to the key control unit 480, the key control unit 480 outputs Ci and Di (Ci and Dl in the encryption, and C16 and D16 in decryption) by performing the operations mentioned above.

Après cela, les multiplexeurs 410 et 420 enregistrent respectivement sur les registres 430 et 440 les Ci et Di transmis, et les rotateurs 450 et 460 reçoivent respectivement Ci et Di enregistrés sur les registres 430 et 440.  After that, the multiplexers 410 and 420 respectively record on the registers 430 and 440 the transmitted Ci and Di, and the rotators 450 and 460 respectively receive Ci and Di recorded on the registers 430 and 440.

Les rotateurs 450 et 460 décalent à gauche Ci et Di pendant le cryptage, et décalent à droite Ci et Di pendant le décryptage. # ce point, les BPS et BMS sont amenés à tourner et sont appliqués respectivement en tant que BMS et BPS.  The rotators 450 and 460 shift left Ci and Di during encryption, and shifts right Ci and Di during decryption. At this point, the BPS and BMS are rotated and are respectively applied as BMS and BPS.

Ainsi, les rotateurs 450 et 460 peuvent effectuer un décalage bidirectionnel, et la direction de décalage est déterminée conformément au cryptage et au décryptage.  Thus, the rotators 450 and 460 can perform a bidirectional shift, and the offset direction is determined according to the encryption and decryption.

La décision de cryptage et de décryptage des rotateurs 450 et 460 et les dimensions de décalage résultants sont déterminées conformément au signal de décision A de cryptage décryptage et au signal de commande B de dimension de décalage en tant que signaux pour commander le dispositif de formation de clefs dans le mode de réalisation de la structure de l'équipement matériel de l'algorithme standard de cryptage de données.  The decision of encryption and decryption of the rotators 450 and 460 and the resulting offset dimensions are determined in accordance with the deciphering encryption decision signal A and the shift dimension control signal B as signals for controlling the training device. keys in the embodiment of the hardware equipment structure of the standard data encryption algorithm.

Ainsi, les rotateurs 450 et 460 déterminent une direction de décalage conformément au signal de décision  Thus, the rotators 450 and 460 determine an offset direction in accordance with the decision signal

<Desc/Clms Page number 13><Desc / Clms Page number 13>

A de cryptage décryptage et au nombre de bits de décalage conformément au signal de commande B de dimension de décalage, et décalent Ci et Di en provenance des registres 430 et 440 dans la direction de décalage en utilisant un compteur interne ou un compteur externe (non représentés) .  A decryption encryption and the number of offset bits according to the shift dimension control signal B, and shift Ci and Di from the registers 430 and 440 in the offset direction using an internal counter or an external counter (no represented).

Les valeurs décalées sont appliquées aux multiplexeurs 410 et 420, et le processus décrit cidessus est répété pour calculer Cl et Dl à C16 et D16 pendant le cryptage et calculer C16 et D16 à Cl et Dl pendant le décryptage.  The shifted values are applied to multiplexers 410 and 420, and the process described above is repeated to calculate C1 and D1 through C16 and D16 during encryption and to calculate C16 and D16 at C1 and D1 during decryption.

À ce point, le dispositif de formation de clefs 470 effectue le Choix 2 Permuté en utilisant Ci et Di enregistrés sur les registres 430 et 440, en obtenant ainsi Ki.  At this point, the key forming device 470 performs the Choice 2 Switched using Ci and Di recorded on registers 430 and 440, thereby obtaining K i.

Conformément à un troisième mode de réalisation selon la figure 6, les rotateurs 450 et 460 comprennent des compteurs pour différemment utiliser le signal de commande B de dimension de décalage.  According to a third embodiment according to FIG. 6, the rotators 450 and 460 comprise counters for differently using the shift dimension control signal B.

Comme énoncé plus haut, conformément à la présente invention, le dispositif de formation de clefs pour l'algorithme standard de cryptage de données optimise la structure de l'équipement matériel en extrayant des points de décalage communs de l'algorithme standard de cryptage de données dans le cryptage et le décryptage. Un décalage unidirectionnel ou un décalage bidirectionnel est utilisé en commun pendant le cryptage et le décryptage, en optimisant ainsi la zone de la structure de l'équipement matériel.  As stated above, according to the present invention, the key-forming device for the standard data encryption algorithm optimizes the hardware equipment structure by extracting common offset points from the standard data encryption algorithm. in encryption and decryption. A unidirectional offset or bi-directional offset is used in common during encryption and decryption, optimizing the area of the hardware equipment structure.

L'invention n'est pas limitée aux exemples de réalisation représentés et décrits en détails car diverses modifications peuvent y être apportées sans sortir de son cadre. The invention is not limited to the exemplary embodiments shown and described in detail since various modifications can be made without departing from its scope.

Claims (8)

REVENDICATIONS 1. Dispositif de formation de clefs pour un algorithme standard de cryptage de données comprenant : une unité de commande de clef pour produire une donnée montante et une donnée descendante en effectuant des opérations pour cryptage et décryptage par l'utilisation d'une valeur de clef initiale ; une première unité de décalage pour décaler la donnée montante dans une première direction ; une seconde unité de décalage pour décaler la donnée descendante dans la première direction ; et une unité de formation de clefs pour produire des clefs pour le cryptage et le décryptage pour l'algorithme standard de cryptage de données en effectuant un Choix 2 Permuté de l'algorithme standard de cryptage de données par l'utilisation des données décalées dans la première unité de décalage et la seconde unité de décalage, caractérisé en ce que chacune des première et seconde unités de décalage comprend : un registre ; un premier multiplexeur pour transmettre de manière sélective au registre soit la donnée montante soit la donnée descendante et une donnée de contre-réaction ; une première unité de disposition inverse pour disposer de manière inverse les données du registre ; un second multiplexeur pour transmettre les données du registre pendant le cryptage et transmettre les données de la première unité de disposition inverse pendant le décryptage ; un rotateur pour décaler les données du second multiplexeur dans une première direction en unités de bits ; une seconde unité de disposition inverse pour disposer de manière inverse les données du rotateur ; et un troisième multiplexeur pour transmettre au premier multiplexeur les données du rotateur en tant que A key training device for a standard data encryption algorithm comprising: a key control unit for producing a rising data and a descendant data by performing operations for encryption and decryption by using a key value initial ; a first shift unit for shifting the ascending data in a first direction; a second shift unit for shifting the descending data in the first direction; and a key training unit for generating keys for encryption and decryption for the standard data encryption algorithm by performing a Switched Choice 2 of the standard data encryption algorithm by using the shifted data in the data encryption algorithm. first shift unit and the second shift unit, characterized in that each of the first and second shift units comprises: a register; a first multiplexer for selectively transmitting to the register either the upstream data or the downlink data and a feedback data; a first inverse disposition unit for reverse arranging the register data; a second multiplexer for transmitting the register data during encryption and transmitting the data of the first reverse disposition unit during decryption; a rotator for shifting the data of the second multiplexer in a first direction in bit units; a second inverse disposition unit for reverse arranging the rotator data; and a third multiplexer for transmitting to the first multiplexer the rotator data as <Desc/Clms Page number 15><Desc / Clms Page number 15> données de contre-réaction pendant le cryptage, et transmettre au premier multiplexeur les données de la seconde unité de disposition inverse en tant que données de contre-réaction pendant le décryptage.  feedback data during encryption, and transmitting to the first multiplexer the data of the second reverse layout unit as feedback data during decryption. 2. Dispositif selon la revendication 1, caractérisé en ce que l'unité de commande de clef effectue un Choix 1 Permuté de l'algorithme standard de cryptage de données en utilisant la valeur de clef initiale, divise la valeur de clef obtenue en une donnée montante initiale et une donnée descendante initiale, produit la donnée montante et la donnée descendante en décalant à gauche la donnée montante initiale et la donnée descendante initiale de 1 bit pendant le cryptage, et produit la donnée montante initiale et la montée descendante initiale en tant que donnée montante et donnée descendante pendant le décryptage.  2. Device according to claim 1, characterized in that the key control unit performs a Choice 1 Switched from the standard data encryption algorithm using the initial key value, divides the key value obtained into a given data. initial upstream and downstream data, produces the upstream data and the downward data by shifting the initial upstream data and the initial 1-bit downward data to the left during the encryption, and produces the initial upstream data and the initial downward as rising data and descending data during decryption. 3. Dispositif selon la revendication 1, caractérisé en ce que l'unité de commande de clef, le second multiplexeur et le troisième multiplexeur déterminent le cryptage et le décryptage conformément à un signal de décision de cryptage décryptage de l'algorithme standard de cryptage de données.  3. Device according to claim 1, characterized in that the key control unit, the second multiplexer and the third multiplexer determine the encryption and decryption according to an encryption decision signal decryption of the standard encryption algorithm. data. 4. Dispositif selon la revendication 1, caractérisé en ce que le rotateur utilise soit le compteur iriterne soit le compteur externe, et détermine une dimension de décalage et la traite conformément à un signal de commande de dimension de décalage de l'algorithme standard de données.  4. Device according to claim 1, characterized in that the rotator uses either the iriterne counter or the external counter, and determines an offset dimension and processes it according to an offset dimension control signal of the standard data algorithm. . 5. Dispositif de formation de clefs pour un algorithme standard de cryptage de données, comprenant : une unité de commande de clef pour produire une donnée montante et une donnée descendante en effectuant des opérations pour cryptage et décryptage par l'utilisation d'une valeur de clef initiale ; une première unité de décalage pour décaler la donnée montante ; une seconde unité de décalage pour décaler la donnée descendante ; et  A key training device for a standard data encryption algorithm, comprising: a key control unit for producing a rising data and a descendant data by performing operations for encryption and decryption by the use of a data encryption value; initial key; a first shift unit for shifting up data; a second shift unit for shifting the descending data; and <Desc/Clms Page number 16><Desc / Clms Page number 16> une unité de formation de clefs pour produire des clefs pour le cryptage et le décryptage pour l'algorithme standard de cryptage de données en effectuant un Choix 2 Permuté de l'algorithme standard de cryptage de données par l'utilisation des données décalées dans la première unité de décalage et la seconde unité de décalage, caractérisé en ce que chacune des première et seconde unités de décalage comprend : un registre ; un multiplexeur pour transmettre au registre de manière sélective soit la donnée montante soit la donnée descendante et une donnée de contre-réaction ; et un rotateur pour décaler les données du registre dans une première direction en unités de bit pendant le cryptage et le décryptage, et transmettre au multiplexeur les données résultantes en tant que données de contreréaction.  a key training unit for generating keys for encryption and decryption for the standard data encryption algorithm by performing a Choice 2 Swapped of the standard data encryption algorithm by using the shifted data in the first shift unit and the second shift unit, characterized in that each of the first and second shift units comprises: a register; a multiplexer for selectively transmitting to the register either the rising data or the falling data and a feedback data; and a rotator for shifting the register data in a first bit unit direction during encryption and decryption, and transmitting the resulting data to the multiplexer as feedback data. 6. Dispositif selon la revendication 5, caractérisé en ce que l'unité de commande de clef effectue un Choix 1 Permuté de l'algorithme standard de cryptage de données en utilisant la valeur de clef initiale, divise la valeur de clef obtenue en une donnée montante initiale et une donnée descendante initiale, et produit la donnée montante et la donnée descendante en décalant à gauche la donnée montante initiale et la donnée descendante initiale de 1 bit pendant le cryptage, et produit la donnée montante initiale et la donnée descendante initiale en tant que donnée montante et donnée descendante pendant le décryptage.  6. Device according to claim 5, characterized in that the key control unit performs a Choice 1 Switched from the standard data encryption algorithm using the initial key value, divides the key value obtained into a given data. initial up-and-down data, and outputting data and descending data by shifting the initial upstream data and the initial 1-bit downward data to the left during encryption, and outputting the initial upstream data and the initial downward data as as rising data and descending data during decryption. 7. Dispositif selon la revendication 5, caractérisé en ce que le rotateur utilise un compteur interne ou un compteur externe, détermine une dimension de décalage conformément à un signal de commande de dimension de décalage de l'algorithme standard de cryptage de données, décale à gauche les données pendant le cryptage, et décale à droite les données pendant le décryptage.  Device according to claim 5, characterized in that the rotator uses an internal counter or an external counter, determines an offset dimension in accordance with an offset dimension control signal of the standard data encryption algorithm, shifts to left the data during encryption, and shifts the data right during decryption. 8. Dispositif selon la revendication 5, caractérisé en ce que l'unité de commande de clef et le rotateur  8. Device according to claim 5, characterized in that the key control unit and the rotator <Desc/Clms Page number 17><Desc / Clms Page number 17> déterminent le cryptage et le décryptage conformément à un signal de décision de cryptage décryptage de l'algorithme standard de cryptage de données. determine the encryption and decryption according to an encryption decision signal decryption of the standard data encryption algorithm.
FR0216914A 2002-10-28 2002-12-31 KEY FORMING DEVICE FOR STANDARD ALGORITHM OF DATA ENCRYPTION Expired - Fee Related FR2846497B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0065828A KR100440074B1 (en) 2002-10-28 2002-10-28 Apparatus for generating key in algorithm of data encryption standard

Publications (2)

Publication Number Publication Date
FR2846497A1 true FR2846497A1 (en) 2004-04-30
FR2846497B1 FR2846497B1 (en) 2005-08-05

Family

ID=32089763

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0216914A Expired - Fee Related FR2846497B1 (en) 2002-10-28 2002-12-31 KEY FORMING DEVICE FOR STANDARD ALGORITHM OF DATA ENCRYPTION

Country Status (4)

Country Link
KR (1) KR100440074B1 (en)
DE (1) DE10261408A1 (en)
FR (1) FR2846497B1 (en)
IT (1) ITTO20021131A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100584604B1 (en) * 2004-08-14 2006-05-30 삼성전자주식회사 Method of generating key for authenticating device, the apparatus therefor, device authentication method and the apparatus therefor
KR101102928B1 (en) * 2009-08-21 2012-01-10 유병규 Composition Damper

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020018562A1 (en) * 2000-06-13 2002-02-14 Hynix Semiconductor Inc. Key scheduler for encryption apparatus using data encryption standard algorithm

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07147571A (en) * 1993-11-24 1995-06-06 Tamura Electric Works Ltd Scramble/descramble processing unit
KR100316025B1 (en) * 1999-06-30 2001-12-12 박종섭 Encryption and decryption device using data encryption standard algorithm
US6763365B2 (en) * 2000-12-19 2004-07-13 International Business Machines Corporation Hardware implementation for modular multiplication using a plurality of almost entirely identical processor elements
KR20020087331A (en) * 2001-05-14 2002-11-22 최병윤 AES Rijndael Encryption and Decryption Circuit with Subround-Level Pipeline Scheme
KR20020087332A (en) * 2001-05-14 2002-11-22 최병윤 Modular ECB, CBC, CFB, and OFB Mode Circuit of Symmetric Key Encryption
KR20030051111A (en) * 2001-12-18 2003-06-25 신경욱 Round processing circuit and on-line round key generation circuit for the hardware implementation of AES Rijndael cipher algorithm

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020018562A1 (en) * 2000-06-13 2002-02-14 Hynix Semiconductor Inc. Key scheduler for encryption apparatus using data encryption standard algorithm

Also Published As

Publication number Publication date
FR2846497B1 (en) 2005-08-05
KR20040037361A (en) 2004-05-07
KR100440074B1 (en) 2004-07-14
ITTO20021131A1 (en) 2004-04-29
DE10261408A1 (en) 2004-05-06

Similar Documents

Publication Publication Date Title
US5675653A (en) Method and apparatus for digital encryption
CN107276744B (en) File storage encryption method and system
CN109886687B (en) Result verification method and system for realizing secure multiparty calculation based on blockchain
JP4052480B2 (en) Pseudorandom number generation method, pseudorandom number generator, and pseudorandom number generation program
US20030007635A1 (en) Encryption method, program for encryption, memory medium for storing the program, and encryption apparatus, as well as decryption method and decryption apparatus
US7190791B2 (en) Method of encryption using multi-key process to create a variable-length key
JPH0863097A (en) Method and system for symmetric encoding for encoding of data
US7924176B2 (en) N-state ripple adder scheme coding with corresponding N-state ripple adder scheme decoding
US8180048B2 (en) Method and system for computational transformation
JPH1173101A (en) High speed block ciphering method, and medium usable in computer
EP3447963A1 (en) Method for protecting data
US20180270205A1 (en) Fingerprint-sensing integrated circuit and scrambling encryption method thereof
JP2003535362A (en) Decryption of cryptographic polynomial
JP2002505452A (en) How to block encrypt individual data
FR2846497A1 (en) Communal software word encryption key function having two units with register/first multiplexer/inverter and second multiplexer transmitting digital words with rotator separating words/second inverter
JP2009169316A (en) Hash function operational device, signature device, program and hash function operational method
JP2003535500A (en) How to check the validity of an encrypted message
EP1416664A2 (en) Data encryption method
Deng et al. LSB color image embedding steganography based on cyclic chaos
Darwish et al. Secure image compression approach based on fusion of 3D chaotic maps and arithmetic coding
US20060098820A1 (en) Method and apparatus for generating keystream
US20050010527A1 (en) Method and apparatus for fast RC4-like encryption
CN112202548A (en) Stream encryption key stream generation method, device, circuit and encryption method
US20060078107A1 (en) Diffused data encryption/decryption processing method
August et al. PudgyTurtle: Using keystream to encode and encrypt

Legal Events

Date Code Title Description
TP Transmission of property
ST Notification of lapse

Effective date: 20070831