WO1999000783A1 - Dispositif de chiffrement - Google Patents

Dispositif de chiffrement Download PDF

Info

Publication number
WO1999000783A1
WO1999000783A1 PCT/JP1998/002915 JP9802915W WO9900783A1 WO 1999000783 A1 WO1999000783 A1 WO 1999000783A1 JP 9802915 W JP9802915 W JP 9802915W WO 9900783 A1 WO9900783 A1 WO 9900783A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
unit
linear
key
exclusive
Prior art date
Application number
PCT/JP1998/002915
Other languages
English (en)
French (fr)
Inventor
Masayuki Kanda
Youichi Takashima
Katsuhiko Aoki
Tsutomu Matsumoto
Original Assignee
Nippon Telegraph And Telephone Corporation
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 Nippon Telegraph And Telephone Corporation filed Critical Nippon Telegraph And Telephone Corporation
Priority to DE69829566T priority Critical patent/DE69829566T2/de
Priority to EP98929747A priority patent/EP1001398B1/en
Priority to CA002295167A priority patent/CA2295167C/en
Publication of WO1999000783A1 publication Critical patent/WO1999000783A1/ja

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
    • 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/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Definitions

  • the present invention relates to an encryption device for concealing data in data communication or holding, and in particular, to an encryption device using a common key encryption method for encrypting or decrypting data in block units under control of a secret key. It is about.
  • FIG. 1 shows a functional configuration of the DES encryption.
  • the DES encryption uses a 56-bit secret key and performs encryption or decryption in 64-bit data block units.
  • the initial transformation unit 11 converts the 64 bits of the plaintext P with the initial transformation value, and then converts the block data L into 32 bits.
  • Is input to the function operation unit (called a round function) 12 shown in FIG. 2 as that of the i-th round processing unit 14 i (i 0, 1,..., 15), and 4 8 Bit expansion key k.
  • R 16 and L 16 are integrated into 64 bits, and the final converted value 15 is converted by the final converted value to output a ciphertext of 64 bits.
  • the expanded key k input to the function f. , Ki, ⁇ , k 14) only by reversing the order of k 15, k 15> k 14 , ⁇ , ki, k. It can be executed in the same procedure as the encryption process, except that it must be entered in the order of. In that case, the final round processing section 1 4 15 swaps output 6 ,
  • R 16 By configuring R 16 to be further swapped as shown in the figure, the ciphertext is input to the initial transposition 11 in the decryption processing and the processing of FIG. 1 is executed, thereby outputting the final transposition 15
  • the plaintext is obtained as is.
  • the expanded key k. , K ⁇ , k ", k 15 is further enlarged key generation routine 1 6 in the 56-bit secret key is expanded to the extended key 1 six of the total of 768 bits of 48-bit and encryption processing Generated by
  • the processing inside the function operation 12 is performed as shown in FIG. First, the 32-bit block data Ri is converted into 48-bit data E (Ri) in the expanded value conversion unit 17.
  • the exclusive OR is calculated with the expanded key ki, and the result is converted into 48-bit data E (Ri) ®ki by the XOR circuit 18 and then divided into eight sub-block data of 6 bits each. These eight sub-block data are input to different S-boxes S to S S , respectively, and each output 4 bits.
  • the eight output data of S-box Si to S S are concatenated again to become 32-bit data, and then, through transposition unit 19, as shown in FIG.
  • the output of the function f is f (Ri, ki).
  • Differential cryptanalysis calculates the difference between two data X and X *.
  • ARi 6 ALi5 ®f (Lie, k 15) ®f (L 16 ⁇ to 6, k 15) (6)
  • ARi + i AL> ⁇ ⁇ ⁇ f (ARi) ⁇
  • L i + 1 AR i + 1 (8).
  • the point here is when there AR i is input, regardless of the value of the extended key lies in the fact that it can predict the probability P i ⁇ ⁇ '( ⁇ ⁇ ) ⁇ .
  • the approximation in this way is only the part of the S-box where the non-linear transformation affects ⁇ ⁇ ⁇ ( ⁇ ⁇ ) ⁇ , and the S-box outputs a difference depending on the input difference. This is because an extremely large deviation occurs in the distribution of For example, S-box S, and when the input differential "110100", because the output difference "0010I this conversion 1/4 probability Therefore, each of the S -.
  • Input differential box is a probability p si
  • p si the relationship between the output difference and the output difference can be predicted
  • the larger the probability P the easier the cryptanalysis.
  • the good Unishi Te when the extended key k 15 is required, this time is no regarded as one stage less 1 5-stage DES ⁇ , in the same manner, by repeating that to seek the extended key k 14, final To the expanded key k.
  • the purpose of the linear cryptanalysis method is to construct the following linear approximation formula and obtain the extended key using the maximum likelihood method based on a set of plaintext and ciphertext obtained by the reader.
  • ⁇ (X) represents the vector that selects a particular bit position in X, the mask value and the
  • the role of the linear approximation formula is to approximately replace the inside of the cryptographic algorithm with a linear expression and separate it into a part related to a plaintext / ciphertext pair and a part related to an extended key.
  • the exclusive OR of the value of the specific bit position of the plaintext and the value of the specific bit position of the ciphertext becomes a constant value, and the value is the specific value of the extended key. This indicates that the value at the bit position is equal to the exclusive OR. Therefore, the reader (Lo, Ro) ⁇ ⁇ (Lo, Ro) e (Li 6, Ri 6 ) ⁇ ⁇ (Li e, Ri e)
  • each S_box S i can be linearly expressed with the probability p s i.
  • the point here is that given an input mask value for an S-box, its output mask value can be predicted with probability p si . This occurs because the distribution of difference mask values in the S-box, which is a non-linear conversion table, is extremely biased depending on the input mask values. For example, in the S-box S s, when the input mask value is “010000”, the output mask value “1111” is predicted with a probability of 3/16.
  • each round can be linearly approximated between the input mask value and the output mask value with probability P i, and the linear approximation in each round can be linked.
  • R L., Ro
  • Li e, Ri e
  • ko, ki, ⁇ , k, 5
  • Triple-DES encryption in which three DES ciphers are connected, is an encryption method in which the number of DES rounds is increased from 16 rounds to 48 rounds.
  • the rate P is much smaller than DES ⁇ .
  • increasing the number of rounds as a countermeasure against the above decryption method will increase the size of the encryption device and the amount of data processing. For example, if the number of rounds is tripled, the amount of encryption will also be tripled.
  • the encryption speed of the DES encryption is about 10 Mbps in the Pentium PC class
  • the encryption speed is reduced to about 3.5 Mbps for the Triple-DES encryption.
  • the speed of networks and computers is increasing year by year, and it is desired that encryption devices be compatible with such speeding. For this reason, it is extremely difficult for conventional cryptographic devices to simultaneously satisfy security and high-speed performance in response to the demand for higher speed.
  • An object of the present invention is to provide an encryption device that satisfies the above points and satisfies security conditions without increasing the number of round stages.
  • a key-dependent linear conversion section that performs a linear conversion on the input data of the nonlinear function section based on the key data held in the key storage section, and an output data of the key-dependent linear conversion section Divides the bit stream into a plurality of bit strings, a first nonlinear conversion section that performs nonlinear conversion on each of the divided bit strings, and an output bit stream of the first nonlinear conversion section.
  • a first linear conversion unit that performs a linear conversion
  • a second nonlinear conversion unit that performs a non-linear conversion on a part or all of the output bit string of the first linear conversion unit
  • a second non-linear conversion unit And a coupling unit that couples the output bit string of the above to output data of the non-linear function part.
  • a second linear conversion unit that performs a linear conversion of the output data of the coupling unit to the output data of the non-linear function unit is provided.
  • the linear conversion is performed based on the key data held in the key storage unit. It is a key-dependent linear conversion unit to perform.
  • the probability in the S-box is psp b 1 (p b is the maximum difference or linear probability of the S-box)
  • the probability of approximating each round is pi ⁇ pb 2 (where In the case of differential cryptanalysis, if the input difference to the function f is not 0, linear decryption In the case of the method, the output mask value of the function f is not 0). If the function f is bijective (the output is always different if the input is different), and the number of rounds of the encryption method is 3 m, the probability as the encryption method is P ⁇ pi 2 m ⁇ p b 4 m It becomes.
  • the security against the differential cryptanalysis and the linear cryptanalysis can be ensured with a relatively small number of rounds, so that it is possible to provide an encryption device that achieves both security and a low processing amount.
  • FIG. 1 is a diagram showing a functional configuration of a conventional DES encryption device.
  • FIG. 2 is a diagram showing a specific functional configuration of an f function operation unit 12 in FIG.
  • FIG. 3 is a diagram showing a functional configuration of Embodiment 1 of the present invention.
  • FIG. 4 is a diagram illustrating a detailed functional configuration example of a nonlinear function unit 304 according to the first embodiment.
  • FIG. 5 is a diagram showing a specific example of a key-dependent linear conversion unit 347 in FIG.
  • FIG. 6 is a diagram showing a functional configuration of a second embodiment of the present invention.
  • FIG. 7A is a diagram illustrating a detailed functional configuration of a nonlinear function unit 304 according to the second embodiment.
  • FIG. 7B is a diagram showing a specific example of the linear conversion unit 354 in the nonlinear function unit 304.
  • FIG. 8 is a diagram showing a functional configuration of Embodiment 3 of the present invention.
  • FIG. 9 is a diagram illustrating a detailed functional configuration of a nonlinear function unit 304 according to the third embodiment.
  • FIG. 3 shows a functional configuration of an encryption processing procedure in an encryption device according to an embodiment of the present invention.
  • the input data is divided into two block data. , R. And sequentially round them
  • Input data ⁇ ⁇ corresponding to plain text is input from the input unit 301 into the encryption device.
  • the key data generation unit 321 determines the key data based on the data input from the key input unit 320 in advance.
  • R is block data consisting of 32 bits of data of 64 bits.
  • the block data Ro is the key data k stored in the key storage unit 322. . , K 10 , k 2 . With the 0th round processing unit 38.
  • the same processing as described above is repeatedly performed on Ri for two input block data. That is, in the i-th round processing unit 38 i, two block data are obtained, and the data Ri of the Ri is a non-linear function together with the key data k 0 i and k lit held in the key storage unit 322.
  • the data is input to the section 304, subjected to conversion processing in the nonlinear function section 304, and converted into data Yi.
  • the data Yi and the block data L i are calculated by the linear calculation unit 305 and converted into data *.
  • the data and data Ri are exchanged in the data position in the exchange section 306, and the data L i + Replaced as *.
  • the linear operation unit 305 performs, for example, an exclusive OR operation.
  • the round processing unit 38 Assuming that the appropriate number of repetitions for ensuring the security of the encryption method is n, the round processing unit 38. To 38 DEG n results for iterative processing by, and data, R n are obtained.
  • plaintext P is obtained from ciphertext C by following the reverse of the encryption procedure.
  • type the ciphertext data instead of the input data in FIG. 3, in contrast to FIG. 3 the key data, ek, ko, kl, k 2, ..., koi, ki!, K 21, koo, k 10, You should give k-2 o, fk in order.
  • FIG. 4 shows the functional configuration of the non-linear function unit 304 used in each round processing unit 38!
  • the input data R i of the i-th round processing unit 38 is the key data k held in the key storage unit 322.
  • k! i along with the k 2 i is the input data to the non-linear function unit 304.
  • the block data Ri is the key data k.
  • the key-dependent linear conversion unit 341 using i performs linear conversion to data Ri *.
  • the data Ri * is divided into four data in, for example, 8 bits in the dividing unit 342.
  • Ini, in 2 and in 3 are divided into bits. Four data in.
  • the key-dependent linear transform unit 347 includes four processing sequences 30 each including at least one exclusive OR in this example. Consists 1-3 0 3, are logically coupled to each other by these processing science columns their exclusive.
  • a linear operation exclusive OR
  • data homogenized in each processing series is generated, and in the example of FIG. Linear processing is performed using the data ki. That is, data mid. . , Midoi, mid. 2, mid. 3 is the processing sequence 30 for each. ⁇ 30 3, input data mid in the processing sequence 30. . And mid. ! XOR with XOR 3 1, and input data mid in the processing sequence 302. 2 and mid.
  • Exclusive OR 3 is taken by the XOR 3 1 2, further exclusive OR of the output of XOR 3 1 1 and the output of the XOR 3 12 is more taken XOR 3 2 2.
  • Exclusive logic of The sum is XOR 34.
  • XOR 3 2 2 output and input data mid.
  • Exclusive OR operation of the 3 is taken by the XOR 3 4 3.
  • XOR 34. , 33, 322, 343 and the key data i. , Ki ii, k li 2 , and k li 3 are XOR 35. Taken by to 3 5 3, respectively mid 10, midi i, mid 12 , mid Interview 3 is output. That is, the processing sequence 30. ⁇ 3 Os input data mid. . , Midoi, mid.
  • midi 0 midoo ®mido 2 miclo s ®ki i 0
  • midi 2 mi do o ®mido i ⁇ mi do 2 ⁇ mi do 3 ®ki i 2
  • the output of each processing series of the key-dependent linear transformation unit 34 includes at least two or more other series of input data in this example in the form of exclusive OR. Therefore, the output data of each series is homogenized so that two or more components of the four input data are included.
  • These output data mic o, midi!, Mid 12 and mid 13 are the respective processing sequences 30.
  • the data Yi * is linearly converted into data Yi by the key data k 2 i in the key-dependent linear conversion unit 353, and output data Yi from the nonlinear function unit 304 is generated.
  • Each of the non-linear conversion units 343 to 346 and 348 to 351 is, for example, the same as one S-box in the DES encryption, and is composed of, for example, a ROM that outputs different output data according to the input data.
  • non-linear conversion units 343 to 346 are arranged in parallel and their conversion processes are not related to each other, it is possible to execute them in parallel, and therefore, the number of these units increases. Can increase the processing time due to parallel processing. The same can be said for the non-linear conversion units 348 to 351.
  • the time required for the processing of the linear operation unit 305 (FIG. 3) and the linear conversion units 341, 347, 353 (FIG. 4) that constitute the round processing unit 38 of each stage is the same as that of the S_box. Since the time required for the processing such as 346, 348-351, etc. is considerably shorter, the time required for the encryption processing is almost proportional to the number of S-boxes or non-linear transformation units used.
  • the key-dependent linear conversion unit 347 since the key-dependent linear conversion unit 347 homogenizes a plurality of input data into each output as described above and outputs the same, the key-dependent linear conversion unit 347, for example, as shown in FIG. If it is known in advance that this is a specific linear transformation, one or more of the non-linear transformation units 348 to 351 may be omitted and the corresponding data may be directly provided to the combining unit 352.
  • the security against differential cryptanalysis and linear cryptanalysis can be prevented from deteriorating, and the amount of encryption can be reduced by omitting the non-linear transformation. For example, when the key-dependent linear transform unit 347 is shown in FIG.
  • the nonlinear transform units 349 and 350 are omitted, and even if the data mid and mich 2 are input to the combining unit 352 as they are, the differential decoding and linear decoding are performed. While the security against the law is not reduced, the encryption speed is increased by about 33%. In other words, if the key-dependent linear transformation unit 347 is predetermined, one or more of the non-linear transformation units 348 to 351 may have no relation to security for the linear cryptanalysis. The non-linear conversion can be omitted.
  • the key data ⁇ fk, k. . ,. , Ko, ko i, kik 2 1, ⁇ ⁇ ⁇ , ko, ki, generation of k 2, ek ⁇ can be carried out in the same manner as the extended key generation algorithm 1-6 DES ⁇ in FIG.
  • the m 4 (1 2-stage round), 9 6, and the met safety requirements P rather 2-6 4 in number less round than the round number 1 6 DES, differential cryptanalysis and linear cryptanalysis Is a sufficiently secure encryption device. That is, according to the present invention, nonlinear conversion is cascaded twice in the conventional round function operation unit 12 (FIG. 1). With this configuration, the security against decryption can be doubled.
  • the key-dependent initial linear transformation unit 302, the key-dependent final linear transformation unit 308, and the key-dependent linear transformation units 347, 353 are linear transformation units that depend on the key. This is an encryption device that has sufficient security, but places the highest priority on security.
  • the present invention is not limited to this example.
  • the key-dependent initial linear conversion unit 302, the key-dependent final linear conversion unit 308, and the key-dependent Regarding the dependent linear transformation unit 353, any or all of them can be omitted.
  • the encryption processing speed can be improved by the amount of the deletion.
  • the security is not reduced for decryption methods other than the differential decryption method and the linear decryption method, but the encryption processing speed can be improved by optimizing the implementation.
  • the linear conversion unit performs transposition in which bit positions are exchanged in a predetermined relationship, and performs rotational shift by a predetermined number of bits.
  • the key-dependent linear conversion unit performs a rotational shift by the number of bits corresponding to the key data, or performs an exclusive OR operation with the key data ⁇ ? It is a thing.
  • FIG. 6 shows an embodiment in which the center two of the four nonlinear conversion units 348 to 351 in the second stage in the nonlinear function unit 304 (FIG. 4) of the first embodiment in FIG. 3 are omitted.
  • the key-dependent initial linear transformation unit 302 and the key-dependent final linear transformation unit 308 in FIG. 3 are also omitted.
  • Input data P corresponding to plain text is input from the input unit 301 into the encryption device.
  • the input data P is divided into two blocks in the initial division unit 303. , R. Is divided into Block data R.
  • the data Y is input to the non-linear function part 304 and subjected to the conversion processing by the non-linear function part 304.
  • And data L. Is the linear operation unit 30 Calculated with 5 and data L. Converted to *.
  • the data Ri is input to the non-linear function part 304 together with the key data k.i and k 2 i held in the key storage part 322, undergoes a conversion process in the non-linear function part 304, and is converted into data Yi.
  • the data Yi and the data Li are operated on by the linear operation unit 305 and converted to data *.
  • plaintext P is obtained from ciphertext C by following the reverse of the encryption procedure.
  • FIG. 7A shows a functional configuration of the nonlinear function unit 304 of the i-th round processing unit 38 i in the embodiment of FIG.
  • the input data Ri from the previous stage is the key data k stored in the key storage unit 322. Together with i, k 2 i , it becomes input data to the nonlinear function section 304.
  • the data is the data k in the key-dependent linear transformation 341. Linearly converted to data Ri * by i.
  • the data Ri * is divided into four data in in the division unit 342. , In,, it is divided into in 2, in 3. 4 data in. , I, in 2 , and in 3 are data mid in the non-linear converters 343, 344, 345, and 346, respectively. . , Midoi, mid.
  • the homogenized data mic. , Mid: 1 ( mic mid 13 is generated, and the data mid 1 Q and mid 13 are nonlinearly transformed into data out. And out 3 by the nonlinear transforming units 348 and 351, respectively.
  • the four data out., Midn, and mid outs are combined into one data Yi *
  • the data Yi * is linearly transformed into data Yi in the key-dependent linear transformation unit 353 based on data k 2 i.
  • the output data Yi from the nonlinear function section 304 is generated.
  • non-linear conversion units 343 to 346 are arranged in parallel, and their conversion processes are not related to each other, they can be executed in parallel. The same can be said for the non-linear converters 348 and 351.
  • the second-stage nonlinear deformation section in each nonlinear function section 304 is reduced to only the outer two (348, 351), it is necessary to reduce the amount of encryption or decryption processing accordingly. Can be.
  • the key data k i is data that is converted by the key data generation unit 321 from the key information K e y input into the encryption device from the key input unit 320, and is stored in the key storage unit 322.
  • the m 4 (1 2-stage round)
  • a sufficient secure cryptographic device P ⁇ 2_ 96 and the relative differential cryptanalysis and linear cryptanalysis.
  • the structure since there is a key-dependent linear transformation unit 353, the structure has a margin in security even for the decryption methods other than the differential decryption method and the linear decryption method, and the structure is simplified compared to the first embodiment. Therefore, the processing amount has been reduced. In other words, the encryption device emphasizes the balance between security and low processing amount.
  • FIG. 8 shows an embodiment in which the key-dependent linear conversion section 353 is omitted from the nonlinear function section 304 of the second embodiment in FIG.
  • Input data P equivalent to plain text is encrypted from input unit 301. Enter in the box.
  • the input data P is two block data L in the initial division unit 303. , Ro. Block data R.
  • And data Lo are calculated by the linear calculation unit 305 to obtain data L. Converted to *. Data L. * And data scale.
  • the i-th round processing unit 38 i performs two input block data, and repeats the same processing for Ri. That is, the data Ri is input to the non-linear function unit 304 together with the key data ki stored in the key storage unit 322, and the data Ri is converted by the nonlinear function unit 304 to the data Yi. Is converted to The data Yi and the data Li are operated on by the linear operation unit 305, and are converted into data *. The data position of the data * and data Ri is exchanged by the exchange unit 306, and L i + And the block data R i + i are output.
  • the output unit 309 outputs the output data C as cipher text.
  • plaintext P is obtained from ciphertext C by following the reverse of the encryption procedure.
  • FIG. 9 shows a functional configuration of the nonlinear function section 304 in the embodiment of FIG.
  • the input data Ri to the non-linear function unit 304 is input to the key-dependent linear transformation 341 together with the key data ki stored in the key storage unit 322.
  • the data is linearly transformed into data Ri * by the key data ki in the key-dependent linear transformation 341.
  • the data Ri * is divided into four data in the ij part 342.
  • In, in 2 in 3
  • Four data in. , Im, in in 3 are data mid in the non-linear converters 343, 344, 345, 346, respectively. . , Midoi, micl. 2 , mid.
  • the linear conversion unit 354 for example, as in FIG. 7B of the second embodiment,
  • midi 0 midoo ®mido 2 ®mido 3
  • non-linear conversion units 343 to 346 are arranged in parallel, and their conversion processes are not related to each other, they can be executed in parallel. The same can be said for the non-linear converters 348 and 351.
  • the key data k i is data converted from the key information Key input into the encryption device from the key input unit 320 by the key data generation unit 321 and held in the key storage unit 322.
  • the m 4 (1 2-stage round)
  • a sufficient secure cryptographic device P ⁇ 2 one 96
  • the relative differential cryptanalysis and linear cryptanalysis since it is a structure that executes only the minimum necessary parts to secure sufficient security against differential cryptanalysis and linear cryptanalysis, the processing amount is reduced, and the encryption or decryption speed is also reduced. It has only been improved.
  • each division section 342 in the nonlinear function section 304 is not limited to four divisions, but may be divided into arbitrary plural parts. In the case of four divisions, the number of the second non-linear conversion units can be only two as shown in FIGS. 7A and 9.
  • the safety strength per round stage and The following table shows the number of round stages that satisfy the security conditions and the required processing amount (number of steps) in comparison with the case of the DES encryption device shown in Figs.
  • the nonlinear conversion unit corresponding to the S-box of the DES is used. Since the total number of bits of the input data to 3 to 346 is 32, and therefore the input data to each non-linear converter is 8 bits, the size of each 5-box of 0 £ 3 is adjusted to match the size. Was set to 8 bits, and thus the number of S-boxes was set to four.
  • the security strength per round stage of the present invention is It is twice as large as DES. Therefore, the number of round stages to satisfy the safety condition is smaller than in the case of DES, and the processing amount (number of steps) required for the safety is also smaller.
  • the input data is divided into a plurality of parts by the non-linear function part, and the non-linear functions are respectively subjected to the non-linear conversion.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Facsimile Transmission Control (AREA)
  • Complex Calculations (AREA)

Description

明細書
技術分野
この発明は、 データの通信または保持において、 データを秘匿するための暗号 化装置、 特に、 秘密鍵の制御のもとでデータをブロック単位で暗号化または復号 を行う共通鍵暗号方式による暗号化装置に関するものである。
従来の技術
データを秘匿するための暗号化装置に含まれる代表的な共通鍵暗号方式には、 米国連邦標準喑号である DE S (Data Encryption Standard) 喑号がある。 図 1は、 D E S暗号の機能構成を示す。 D E S暗号では、 5 6ビットの秘密鍵 を用い、 6 4ビットのデータブロック単位に暗号化または復号を行う。 図 1にお いて、 暗号化処理は、 平文 Pの 6 4ビットを初期変転部 1 1において初期転値で 変換した後、 3 2ビットごとのブロックデータ L。, R。に分割される。 ブロックデ —タ R。 は図 2に第 i段ラウンド処理部 1 4 i (i=0, 1, ·■·, 15) のものとして示す 関数演算部 (ラウンド関数と呼ばれている) 1 2へ入力され、 4 8ビットの拡大 鍵 k。 の制御のもとに f(R。, ko) に変換される。 この変換データ f(R。, ko) とブ ロックデータ L。 との排他的論理和を X O R回路 1 3でとり、 その出力とブロッ クデータ R。 とを入れ替えて、 次のブロックデータし, とする。 即ち、
Figure imgf000003_0001
Li = R。 (1)
である。
このように 2つのブロックデータし。, R。を入力として演算部 1 2と排他的論理 和回路 1 3とデータの入れ替え (スワップ) とによりし, Rtを出力する第 0段ラ ゥンド処理部 1 4。 が構成され、 同じようなラウンド処理部 1 4 〜1 415が縦 続的に設けられる。 第 i段ラウンド処理部 1 4 i による処理を第 i段のラウンド 処理と呼ぶことにする。 ただし、 i=0,' 15 である。 つまり各ラウンド処理部 1 4 i (0≤ i < 1 5) では、
Ri + ,= Li Θί (Ri, ki)
Figure imgf000004_0001
の処理が行われ、 最後に R16, L16を統合して 64ビットにした後、 最終転値部 1 5において最終転値で変換して暗号文 64ビットを出力する。 復号処理におい ては、 関数 f に入力する拡大鍵 k。, ki, ···, k14) k15の順序だけを逆転させて、 k15> k14, ···, ki, k。の順に入力するようにする点を除けば、 暗号化処理と同じ 手順で実行できる。 その場合、 最終段ラウンド処理部 1 415のスワップ出力し 6
R16を、 図に示すように更にスワップするように構成することにより、 復号処理 において暗号文を初期転置 1 1に入力して図 1の処理を実行することにより、 最 終転置 1 5の出力に平文がそのまま得られる。 勿論、 最終段ラウンド処理部 14 15の出力をスワップしないで最終転置 1 5にデータを与える構成としても全く同 じである。 なお、 拡大鍵 k。, k ···, k", k15は、 暗号化処理とは別の拡大鍵生 成ルーチン 1 6で 56ビットの秘密鍵が 48ビットの拡大鍵 1 6個の計 768 ビッ トに拡大されることによって生成される。
関数演算内部 1 2の処理は、 図 2に示すように行われる。 まず、 3 2ビッ トの ブロックデータ Ri は拡大転値部 1 7で 48ビットデータ E(Ri) に変換される。 これに拡大鍵 k i とで排他的論理和を XOR回路 1 8で取り、 48ビッ トデ一タ E(Ri)®kiに変換した後、 8個の 6ビットごとのサブブロックデータに分割する。 この 8個のサブブロックデータはそれぞれ異なる S- box S 〜SS に入力され、 各々が 4ビッ トの出力を得る。 なお、 この S_box S (j=l, ···, 8) は 6ビッ トの入 力データから 4ビッ トの出力データに変換する非線形変換テ一ブルであり、 DE S喑号の本質的な安全性を担っている部分である。 S- box Si 〜SS の 8つの出 力データは、 再び連結されて 32ビットデータになった後、 転置変換部 1 9を経 て、 図 8に示されるように、 Li と排他的論理和される関数 f の出力 f(Ri, ki) となる。
次に、 暗号解読法について述べる。 DE S暗号を始めとする従来の共通鍵暗号 方式についてはさまざまな方面から暗号解読が試みられており、 そのなかでも、 極めて効果的な解読法であるのが E. Biham及び A. Shamirによって提案された 分角? ¾fi法 ( "Differential Cryptana丄 ysis of DES— like し ryptosystems. Pr oceedings of CRYPTO' 90) と松井によって提案された線形解読法 ( "DES喑号 の線形解読法 ( I ) , " 1 993年暗号と情報セキュリティシンポジウム SCIS93 -3C) である。
差分解読法は、 2つのデータ X, X* の差分を
ΔΧ= X θ X* (3)
としたとき、 解読者が入手している平文 ·暗号文の 2組を以下の式に適用して、 最終ラウンドにおける拡大鍵 k15を求めることを目的としている。 図 1の暗号化 処理において、 既知の第 1平文を入力したときの各ラウンド処理部 14 i での入 カブロックデータをし, Riとし、 既知の第 2平文を入力したときの各ラウンド処 理部 1 4 ' での入力ブロックデータをじ R とする。 これら第 1及び第 2平文 が入力されたときの出力暗号文がそれぞれ既知であるとする。 上記式(3) の定義 により
である。 なので、
Figure imgf000005_0001
が成立し、 これら 2つの式の両辺の排他的論理和を取ると
ARi6 = ALi5 ®f (Lie, k15)®f (L16 Φ厶し6, k15) (6)
が得られ、 その両辺と AR14 = AL15 との排他的論理和を取ることにより次の式が 得られる :
f (Li6, k15)®f ((Lis Θ AL16), kis) = ARi6 Θ ARi4 (7) このとき、 L16, ALie, ARie は暗号文から得られるデータであるので既知の情 報である。 このため、 解読者が AR14を正しく求めることができるならば、 上式 は k15のみが未知定数となり、 既知の平文 ·暗号文の組を用いて k15に関する全 数探索を行うことで、 解読者は必ず正しい 5を見つけだすことができる。 一方、 △ R "についてみてみると、 この値は中間差分値であるため、 一般には求めるこ とが困難である。 そこで、 0ラウンド目から最終ラウンドの一つ前までのラウン ド目までにおいて、 各ラウンドが確率 P i
ARi + i = AL> θ Δ {f (ARi)} 厶 Li + 1 = ARi + 1 (8) のように近似されるとおく。 ここでのポイントは、 ある A R i が入力されたとき、 拡大鍵 の値に関わらず、 確率 P i で Δ{ί'(ΔΙ^)} を予測できるということに ある。 このように近似できるのは、 Δ{ί·(ΔΙ^)} に影響を与えるのが非線形な変 換である S- box の部分だけであり、 しかも S-box において、 入力差分によっては 差分出力の分布に極めて大きな偏りが生じるためである。 例えば、 S-box S , で は、 入力差分" 110100"のとき、 1/4 の確率で出力差分" 0010Ίこ変換されるためで ある。 そこで、 各々の S - box が確率 p s iで入力差分と出力差分との関係が予測で きるとおき、 これらを組み合わせることで各ラウンドの近似を求める。 更に、 各 ラウンドでの近似を連結していくことで、 AR1 4は確率 P=nPi で Δし。, AR0 (AL 0, AR。 は平文から得られるデータであるので既知の情報である) から求められ ることになる。 なお、 この確率 Pが大きいほど、 暗号解読が容易である。 このよ うにして、 拡大鍵 k 15が求められると、 今度は 1段少ない 1 5段 DES喑号とみ なして、 同様の手法で、 拡大鍵 k14を求めていくということを繰り返して、 最終 的に拡大鍵 k。 まで求めていく。
Biham らによると、 この解読法では、 247組の選択された既知平文 '暗号文の 組があれば DE S暗号を解読できるとしている。
また、 線形解読法は、 以下の線形近似式を構成し、 解読者が入手している平文 •暗号文の組による最尤法を用いて拡大鍵を求めることを目的としている。
(Lo, Ro) · r(L。, Ro)e(Li 6 , Ri e) · Γ (Li e, Ri 6)
= (k。, ki, ···, ki 5) · Γ (ko, k!, ···, ki s) (9)
ただし、 Γ (X)は Xの特定のビット位置を選択するベク トルを表し、 マスク値とレ、 ラ。
線形近似式の役割は、 暗号アルゴリズム内部を線形表現で近似的に置き換え、 平文 ·暗号文の組に関する部分と拡大鍵に関する部分とに分離することにある。 つまり、 平文 ·暗号文の組に関して、 平文の特定のビット位置の値と暗号文の特 定のビット位置の値との全ての排他的論理和が一定値となり、 その値は拡大鍵の 特定のビット位置の値の排他的論理和に等しくなることを表している。 従って、 解読者は (Lo, Ro) · Γ (Lo, Ro)e(Li 6, Ri 6) · Γ (Li e, Ri e)
の情報から
(ko, ki, ···, ki s) - T (ko, kl, ···, kis) ( 1ビット)
の情報が得られるということになる。 このとき、 (L。, Ro), (Li e, R1 6)はそれぞ れ平文 ·暗号文のデータであるので既知の情報である。 このため、 解読者が Γ(Χ Ro) , Γ (し R, 6), r(k。, kl, ···, ki s) を正しく求めることができるなら ば、 (k。, ki, ···, ki s) . r(k。, ki, '··, kis) ( 1 ビッ ト) を求めることができ る。
DE S喑号では、 非線形な変換が行われるのは S- box においてだけであり、 従 つて S- box についてのみ線形表現ができれば、 容易に線形近似式が構成できる。 そこで、 各々の S_box S i が確率 p s iで線形表現できるとおく。 ここでのポイン トは、 S-box に対する入力マスク値が与えられたとき、 確率 p s iでその出力マス ク値を予測できるということにある。 これは、 非線形変換テーブルである S - box において、 入力マスク値によっては差分マスク値の分布に極めて大きな偏りが生 じるためにおこる。 例えば、 S- box S s では、 入力マスク値" 010000"のとき、 3/ 16の確率で出力マスク値" 1111"が予測されるためである。 これら S - box における マスク値を組み合わせることによって、 各ラウンドが確率 P i で入力マスク値と 出力マスク値のあいだに線形近似することができ、 各ラウンドでの線形近似を連 結していくことで、 r(L。, Ro), Γ (Li e, Ri e), Γ (ko, ki, ···, k, 5) は確率
Figure imgf000007_0001
で求められることになる。 なお、 この確率 Pが大きレ、ほど、 暗号解読が容易であ る。
松井によると、 この解読法で、 243組の既知平文 .暗号文の組を用いて、 DE S暗号の解読に成功している。
さて、 上記の解読法に対抗するためには、 確率 Pが十分に小さくなればよい。 このため、 確率 Pを小さくするための提案がさまざま行われており、 なかでも従 来の暗号方式において、 もっとも簡単に安全性を高めるための方法がラウンド数 を増やすことであった。 例えば、 DE S暗号を 3つつなげた Triple- DES暗号は、 実質的に DESのラウンド数を 1 6段から 48段に増やした暗号方式であり、 確 率 Pは、 D E S喑号よりもはるかに小さい。 - しかし、 上記の解読法に対抗するための対策として、 ラウンド数を増加させる ことは、 暗号装置の規模が大きくなり、 データの処理量も増加することになる。 例えば、 ラウンド数を 3倍に増やせば、 暗号化処理量も 3倍になる。 つまり、 現 在の D E S暗号の暗号化速度は Pentium P Cクラスで約 10Mbpsであるため、 Trip le- D E S暗号ともなると約 3. 5Mbps まで暗号化速度が低下する。 一方で、 ネッ トワークやコンピュータなどは年々高速化しており、 暗号化装置もそれらの高速 化に対応したものが望まれている。 このため、 従来の暗号装置では、 それらの高 速化の要求に対して、 安全性と高速性を同時に満たすことはきわめて困難な状況 になっている。
この発明の目的は、 上記の点を鑑みなされたもので、 ラウンド段数を増加させ ることなく安全性条件を満たすような暗号装置を提供することにある。
発明の開示
この発明では、 特に非線形関数部において、 非線形関数部の入力データに鍵記 憶部に保持された鍵データに基づいて線形変換を行う鍵依存線形変換部と、 この 鍵依存線形変換部の出力データを複数個のビッ ト列に分割する分割部と、 これら 分割された各ビット列に非線形変換をそれぞれ行う第 1の非線形変換部と、 その 第 1の非線形変換部の各々の出力ビッ ト列間で線形変換を行う第 1の線形変換部 と、 その第 1の線形変換部の出力ビッ ト列の一部またはすべてに非線形変換を行 う第 2の非線形変換部と、 その第 2の非線形変換部の出力ビッ ト列をその非線形 関数部の出力データに結合する結合部とを備えることを特徴とする。
更に安全性を向上させるには、 上記結合部の出力データを上記非線形関数部の 出力データに線形変換を行う第 2の線形変換部を備えることを特徴とする。
また、 上記第 1の線形変換部または上記第 2の線形変換部、 もしくはその両方 の部が、 データの線形変換を行うときに、 上記鍵記憶部に保持された鍵データに 基づいて線形変換を行う鍵依存線形変換部であることを特徴とする。
この発明によれば、 S- box における確率が p s p b く 1であるとき (p b は S-box の最大差分又は線形確率) 、 各ラウンドを近似するときの確率は p i ≤p b 2 (ただし、 差分解読法の場合は関数 f への入力差分が 0でないとき、 線形解読 法の場合は関数 f での出力マスク値が 0でないとき) となることが保証される。 また、 関数 f が全単射 (入力が異なれば出力が必ず異なる) であるとき、 暗号方 式のラウンド数を 3 mとすると、 暗号方式としての確率は P≤ p i 2 m≤ p b 4 mとな る。 一般に、 暗号方式では P < 2— 6 4 であれば差分解読法や線形解読法に対して 安全とされるため、 m〉-16/ {log2 ( p b ) }を満たせばよく、 p b ^ 2— 4であれば D E S暗号の 1 6ラウンドよりも少ないラゥンド数で安全性を確保できる。 なお安全 性の確率は mラウンドの倍数ごとに変化する。
この発明によれば、 差分解読法や線形解読法に対する安全性を比較的少ないラ ゥンド数で確保できるため、 安全性と低処理量を両立させた暗号装置を提供する ことが可能になる。 図面の簡単な説明
図 1は従来の D E S暗号装置の機能構成を示す図。
図 2は図 1中の f 関数演算部 1 2の具体的機能構成を示す図。
図 3はこの発明の実施例 1の機能構成を示す図。
図 4は実施例 1における非線形関数部 304 の詳細な機能構成例を示す図。 図 5は図 4中の鍵依存線形変換部 347 の具体例を示す図。
図 6はこの発明の実施例 2の機能構成を示す図。
図 7 Aは実施例 2における非線形関数部 304 の詳細な機能構成を示す図。 図 7 Bはこの非線形関数部 304 における線形変換部 354 の具体例を示す図。 図 8はこの発明の実施例 3の機能構成を示す図。
図 9は実施例 3における非線形関数部 304 の詳細な機能構成を示す図。 発明を実施する最良の形態
実施例 1
以下、 この発明の一実施例を図面を用いて説明する。
図 3は、 この発明の一実施例を示す暗号装置における、 暗号化処理手順の機能 構成を示したものである。 この発明による暗号装置においても、 入力データを 2 つのブロックデータし。, R。に分割し、 それらを順次ラウンド処理する n段に従属 接続されたラウンド処理部 3 8。〜3 8 n— が設けられ、 各ラウンド処理部 3 8 i (i=0, Ι, ···,η-1) は図 1のラウンド関数部 1 2に対応する非線形関数部 304 と、 図 1の XOR回路 1 3に対応する線形演算部 305 と、 交換部 306 とから構成され ている。
平文に相当する入力データ Ρを入力部 301 から暗号装置内に入力する。 予め、 鍵入力部 320 から入力されたデータに基づいて鍵データ生成部 321 により鍵デー タ
{fk; ko 0, ki 0, k20; ko , ki , k≤ ; …; ko , ki , k2 ek} が生成され、 鍵記憶部 322 に保持される。 入力平文データ Pは鍵記憶部 322 に保 持されている鍵データ ί kによる鍵依存初期線形変換部 302 で変換された後、 初 期分割部 303 で 2つのブロックデータし。, R。に分割される。 例えば 6 4ビッ トの データが 3 2ビットづつのブロックデータ , R。に分割される。 プロックデータ Ro は、 鍵記憶部 322 に保持されている鍵データ k。。, k 10, k 2。と共に第 0段 ラウンド処理部 3 8。 の非線形関数部 304 に入力され、 変換処理によりデータ Y 。 に変換される。 データ Y。 とプロックデータ L。 は線形演算部 305 で演算され てデ一タ 。* に変換される。 データ Lo* とブロックデータ R。 は交換部 306 でデ ータ位置の交換 (スワップ) が行われ、 。, 。* とされ、 し, が次の 第 1段ラウンド処理部 3 8 に入力される。
以下、 第 i段ラウンド処理部 3 8 i (ί = 1, ···,η- 1) において、 2つの入力ブロッ クデータし, Riについて上記と同様の処理を繰り返し行う。 即ち、 第 i段ラウン ド処理部 3 8 i においては、 2つのブロックデータし, Riのうちの、 データ Ri は、 鍵記憶部 322 に保持されている鍵データ k 0 i, k l i t と共に非線形関数 部 304 に入力され、 非線形関数部 304 で変換処理を受け、 データ Yi に変換され る。 データ Yi とブロックデータ L i は線形演算部 305 で演算されてデータし* に変換される。 データ とデータ Ri は交換部 306 でデータ位置の交換が行わ れ、 Li +
Figure imgf000010_0001
* のように交換される。 線形演算部 305 は例えば排他的 論理和演算を行うものである。
暗号方式としての安全性を確保するための適切な繰り返し回数を nとすると、 ラウンド処理部 38。〜38n による繰り返し処理の結果、 データし, Rnが得られる。 このデータし, Rnを最終結合部 307 で 1つのブロックデータに結合し、 つまり例 えば 3 2ビットの各し, Rnをビット結合して 64ビットのデータとし、 その後、 鍵記憶部 322 に保持されている鍵データ e kを使って鍵依存最終線形変換部 308 で変換し、 出力部 309 から暗号文として出力データ Cを出力する。
復号については、 暗号化処理手順と逆の手順をたどることによって、 暗号文 C から平文 Pが得られる。 例えば図 3において入力データの代りに暗号文データを 入力し、 鍵データを図 3とは逆に、 ek, ko , kl , k2 , …, koi, ki !, k21, koo, k10, k-2 o, fk を順次与えればよレ、。
図 4は、 各ラウンド処理部 3 8 ! に使用されている非線形関数部 304 の機能構 成を示す。 第 i段ラウンド処理部 3 8 の入カブ口ックデータ R i は、 鍵記憶部 322 に保持されている鍵データ k。 k! i, k2 i と共に非線形関数部 304 への入力 データとなる。 ブロックデータ Ri は、 鍵データ k。iを使用した鍵依存線形変換 部 341 によりデータ Ri* に線形変換される。 データ Ri* は分割部 342 において例 えば 8ビットづつの 4つのデータ in。, ini, in2, in3にビット分割される。 4つ のデータ in。, im, in insは、 それぞれ非線形変換部 343, 344, 345, 346にお いて、 データ mid。。, midoi, mido2, mid。3に非線形変換された後、 鍵依存線形変 換部 347 に入力される。
鍵依存線形変換部 347 は、 図 5に示すようにこの例ではそれぞれが少なく とも 1つの排他的論理和を含む 4つの処理系列 3 0。〜 3 03から構成され、 これら処 理系列はそれらの排他的論理和により互いに論理結合されている。 各処理系列に おいて他の処理系列のデータと線形演算 (排他的論理和) を行うことにより、 そ れぞれの処理系列において均質化されたデータを生成し、 図 5の例では更に鍵デ ータ k iにより線形処理される。 即ち、 データ mid。。, midoi, mid。2, mid。3はそ れぞれ処理系列 3 0。 〜3 03 に入力され、 処理系列 3 0 において入力データ mid。。と mid。!との排他的論理和が XOR 3 1 , によりとられ、 また処理系列 3 0 2 において入力データ mid。2と mid。3の排他的論理和が XOR 3 12 によりとられ、 更に XOR 3 1 1 の出力と XOR 3 12 の出力の排他的論理和が X O R 3 22 に よりとられる。 XOR 3 1 ! の出力と XOR 3 22 の出力との排他的論理和が X O R 3 3! によりとられ、 XOR 3 3 ! の出力と入力データ mido。 の排他的論理 和が XOR 34。 によりとられ、 XOR 3 22 の出力と入力データ mid。 3 との排 他的論理和が XOR 3 43 によりとられる。 更に、 XOR 3 4。 , 3 3 , 3 2 2 , 3 43 のそれぞれの出力と鍵データ i。, ki i i, kl i 2, kl i 3との排他的論理 和が XOR 3 5。 〜3 53 によりとられて、 それぞれ mid10, midi i, mid12, mid ュ 3が出力される。 つまり処理系列 3 0。〜3 Osの入力データ mid。。, midoi, mid。
2 , mid。3は相互に関連づけられた後、 それぞれ鍵データ i。, k!i!, kl 12, kl i 3 に依存した線形変換が行われる。 論理式で示すと次式
midi 0 = midoo ®mido 2 miclo s ®ki i 0
mid 11
Figure imgf000012_0001
®raido s ®ki i i
midi 2 = mi do o ®mido i ©mi do 2 ©mi do 3 ®ki i 2
midi 3 =mido 00mido 1 mi do 2 ®ki 3 (11) の論理演算がなされる。 これらの式から明らかなように、 鍵依存線形変換部 34 の各処理系列の出力には少なくとも 2つ以上の他の系列の入力データがこの例で は排他的論理和の形で含まれており、 従って、 各系列の出力データには 4つの入 力デ一タのうち、 2つ以上の成分が含まれるように均質化されている。
これら出力データ mic o, midi !, mid12, mid13は、 それぞれの処理系列 3 0。 〜30s に設けられた図 4に示す非線形変換部 348 , 349, 350, 351 において、 データ out。, outi, out 2, out3に非線形変換された後、 それぞれの処理系列の出 力データとして結合部 352 に与えられ、 一つのブロックデータ Yi* に結合される。 つまり、 例えば 4つの 8ビットデータが 1つの 3 2ビットデータにビッ ト結合さ れる。 このデータ Yi* は、 鍵依存線形変換部 353 において鍵データ k2 iによりデ ータ Yi に線形変換され、 非線形関数部 304 からの出力データ Yi が生成される。 非線形変換部 343〜346, 348〜351のそれぞれは、 例えば D E S暗号における 1つ の S- box と同様のもので、 それぞれ入力データに応じた異つた出力データを出力 する例えば ROMで構成される。
非線形変換部 343〜346は 4つ並列に配置されており、 それらの変換処理は相互 に関連していないため、 これらを並列実行することが可能であり、 従って、 これ らの数が増加することによる処理時間の増大を並列処理により対処できる。 非線 形変換部 348〜351についても同様のことがいえる。 各段のラウンド処理部 3 8 を構成する線形演算部 305 (図 3 ) 、 線形変換部 3 41, 347, 353 (図 4 ) などの処理に要する時間は S_box と同様な非線形変換部 34 3〜346, 348〜351等の処理に要する時間に比べてかなり短いので、 暗号化処理に 要する時間は使用される S - box 或いは非線形変換部の数にほぼ比例する。 ところ 、 非線形変換部 348〜351については、 鍵依存線形変換部 347 が前述のように複 数の入力データを各出力に均質化して出力するため、 鍵依存線形変換部 347 、 例えば図 5のように特定の線形変換であることが予めわかっている場合には、 非 線形変換部 348〜 351の何れか 1つ或いは複数を省略し、 対応するデータをそのま ま結合部 352 に与えても、 差分解読法及び線形解読法に対する安全性が低下しな いようにすることができ、 非線形変換を省略した分だけ暗号化処理量を削減でき る。 例えば、 鍵依存線形変換部 347 が図 5で表されているとき、 非線形変換部 34 9, 350を省略し、 データ mid , mich 2をそのまま結合部 352 に入力しても差分解 読法及び線形解読法に対する安全性は低下しない一方で、 暗号化速度が約 3 3 % 向上する。 つまり鍵依存線形変換部 347 が予め決っている場合は差分解読法、 線 形解読法に対しては非線形変換部 348〜351の 1つ或いは複数はその存在が安全性 に関係ない場合があり、 その非線形変換は省略できる。
なお、 図 3において、 鍵データ生成部 321 による鍵データ {fk, k。。, 。, k- o , ko i , k i k 2 1 , · · · , ko , k i , k2 , ek}の生成は図 1の D E S 喑号の拡大鍵生成アルゴリズム 1 6と同様に行うことができる。
上記のように構成された暗号装置の場合、 例えば、 非線形変換部 343〜346, 34 8〜351の各 1つづつが差分解読法及び線形解読法に対して確率 p b = 2— 6で近似表 現できるように設計されているならば、 各段のラウンド処理部 3 8 は非線形変 換を必ず 2回行うため、 即ち、 変換部 343〜346の処理と変換部 348〜351の処理を 縦続して行うため、 確率 P i≤2— 1 2 で近似表現することができ、 暗号装置全体と してはラウンド数 nを n = 3 mとして、 確率 P≤2—2 4 m で近似表現できることに なる。 ここで、 例えば m = 4 (ラウンド数 1 2段) とすると、 9 6となり、 D E Sのラウンド数 1 6より少ないラウンド数で安全条件 Pく 2— 6 4を満たし、 差分 解読法及び線形解読法に対して十分安全な暗号装置となる。 即ち、 この発明は、 従来のラウンド関数演算部 1 2 (図 1 ) 内において非線形変換を縦続して 2回行 うように構成することにより、 暗号解読に対し安全性を倍に高めることができる。 鍵依存初期線形変換部 302 、 鍵依存最終線形変換部 308 、 鍵依存線形変換部 34 7, 353は鍵に依存する線形変換部であるため、 差分解読法及び線形解読法以外の 解読法に対しても十分な安全性を兼ね備え、 もっとも安全性を重視した暗号装置 である。
なお、 この発明はこの例に特定されるだけでなく、 例えば高速性を望むのであ れば、 後述の実施例のようにこれら鍵依存初期線形変換部 302 、 鍵依存最終線形 変換部 308 、 鍵依存線形変換部 353 については、 そのいずれか、 もしくはすべて を省略することが可能である。 この場合、 差分解読法及び線形解読法に対する安 全性は低下しない一方で、 削除した分だけ暗号化処理速度の向上が望める。 ただ し他の解読法に対しては弱くなるおそれはある。 また、 鍵依存初期線形変換部 30 2 、 鍵依存最終線形変換部 308 、 鍵依存線形変換部 347, 353のいずれか、 もしく はすべてを鍵に依存しない線形変換部に変更することも可能である。 この場合、 差分解読法及び線形解読法以外の解読法に対しても安全性が低下しない一方で、 インプリメントを最適化することにより、 暗号化処理速度の向上が望める。 なお、 線形変換部としては、 ビット位置を予め決めた関係で入れかえる転置、 予め決め たビット数だけ回転シフトするなどを行う。 鍵依存線形変換部は、 鍵データに応 じたビット数だけ回転シフトする、 あるいは、 鍵データとの排他的論理和演算を ^?亍うものなどである。
実施例 2
図 6は、 図 3の第 1実施例の非線形関数部 304 (図 4 ) における 2段目の 4つ の非線形変換部 348〜351のうち、 中央の 2つを省略した実施例を示す。 この実施 例では更に、 図 3における鍵依存初期線形変換部 302 と鍵依存最終線形変換部 30 8 も省略している。
平文に相当する入力データ Pを入力部 301 から暗号装置内に入力する。 入力デ ータ Pは初期分割部 303 で 2つのブロックデータし。, R。に分割される。 ブロック データ R。 は、 鍵記憶部 322 に保持されている鍵データ k。。, k2。と共に第 0段ラ ゥンド処理部 3 8。 の非線形関数部 304 に入力され、 非線形関数部 304 で変換処 理を受けて、 データ Y。 に変換される。 データ Υ。 とデータ L。 は線形演算部 30 5 で演算され、 データ L。* に変換される。 データ L。* とデータ R。 は交換部 306 でデータ位置のスワップが行われ、 し=1?。, R!=Lo* とされる。 以下、 第 i段ラ ゥンド処理部 3 8 i (i=l, "',η- 1) において 2つのデータ Li, Riについて上記と同 様の処理を繰り返し行う。 即ち、 2つのデータし, Riについて、 データ Ri は、 鍵記憶部 322 に保持されている鍵データ k。i, k2 iと共に非線形関数部 304 に入力 され、 非線形関数部 304 で変換処理を受けて、 データ Yi に変換される。 データ Yi とデータ L i は線形演算部 305 で演算され、 データし * に変換される。 デー タし* とデータ Ri は交換部 306 でデータ位置の交換が行われ、 Li + 1=Ri, Ri + 1 = Li* のように変換される。
暗号方式としての安全性を確保するための適切な繰り返し回数を nとすると、 nラウンドの繰り返し処理の結果、 データし, Rnが得られる。 このデータし, Rn を最終結合部 307 で結合した後、 出力部 309 から暗号文として出力データ Cを出 力する。
復号については、 暗号化処理手順と逆の手順をたどることによって、 暗号文 C から平文 Pが得られる。
図 7Aは、 図 6の実施例における第 i段ラウンド処理部 3 8 i の非線形関数部 304 の機能構成を示す。 前段からの入力データ Ri は、 鍵記憶部 322 に保持され ている鍵データ k。i, k2 iと共に非線形関数部 304 への入力データとなる。 データ は、 鍵依存線形変換 341 において、 データ k。iによりデータ Ri* に線形変換 される。 次に、 デ一タ Ri* は分割部 342 において 4つのデータ in。 , in, , in2 , in3 に分割される。 4つのデータ in。 , i , in2 , in3 は、 それぞれ非線形変 換部 343, 344, 345, 346において、 データ mid。。, midoi, mid。2, mid。3に非線形 変換された後、 線形変換部 354 に入力される。 線形変換部 354 では、 例えば図 7 Bに示すように 4つの処理系列 3 0。〜3 0 s間でデータ相互に関連づけるように 変換される。 これは図 5中の鍵データとの論理演算を省略した場合と同じ例であ り、 下記の式で表わせる。
midi 0 = midoo ®mido2 ®mido3
midi l = midos ®midos
midi 2 = midoo ®midoi ®mido2 ®midos midi 3 = midoo ®mido l ®mido2 (12)
この線形変換で、 均質化されたデータ mic 。, mid: 1 ( mic mid13が生成され、 そのうちのデータ mid1 Q, mid13は、 それぞれ非線形変換部 348, 351において、 デ ータ out。, out3に非線形変換された後、 結合部 352 において、 4つのデータ out。, midn, mid outs が 1つのデータ Yi* に結合される。 最後に、 データ Yi* は、 データ k2 iによる鍵依存線形変換部 353 において、 データ Yi に線形変換され、 非線形関数部 304 からの出力データ Yi が生成される。
非線形変換部 343〜346は 4つ並列に配置されており、 その変換処理は相互に関 連していないため、 これらは並列実行が可能である。 また、 非線形変換部 348, 3 51についても同様のことがいえる。 この実施例では、 各非線形関数部 304 内の 2 段目の非線形変形部が外側の 2つ (348, 351) だけに減らされているため、 それ だけ暗号化又は復号化処理量を削減することができる。
なお、 鍵データ k i は、 鍵入力部 320 から暗号装置内に入力された鍵情報 K e yから鍵データ生成部 321 によって変換され、 鍵記憶部 322 に保持されたデータ である。
上記のように構成された暗号装置の場合、 例えば、 非線形変換部 343〜346, 34 8, 351が差分解読法及び線形解読法に対して確率 p b =2— 6で近似表現できるよう に設計されているならば、 実施例 1と同様に各ラウンドは確率 P i≤2— 12 で近似 表現することができ、 暗号装置全体としてはラウンド数 nを n=3mとして、 確率 p ≤2"24m で近似表現できることになる。 ここで、 例えば m=4 (ラウンド数 1 2 段) とすると、 P≤2_96となり、 差分解読法及び線形解読法に対して十分安全な 暗号装置となる。
また、 鍵依存線形変換部 353 があるため、 差分解読法と線形解読法以外の解読 法に対しても安全性にマージンがある構造であり、 かつ実施例 1よりも構造が簡 素化されているため、 処理量が軽減されている。 つまり、 安全性と低処理量のバ ランスを重視した暗号装置である。
実施例 3
図 8は、 図 6の第 2実施例の非線形関数部 304 において鍵依存線形変換部 353 を省略した実施例を示す。 平文に相当する入力データ Pを入力部 301 から暗号装 置内に入力する。 入力データ Pは初期分割部 303 で 2つのプロックデータ L。, Ro に分割される。 プロックデータ R。 は、 鍵記憶部 322 に保持されている鍵データ k 0 と共に第 0段ラゥンド処理部 38。 の非線形関数部 304 に入力され、 非線形 関数部 304 で変換処理を受けて、 データ Y。 に変換される。 データ Υ。 とデータ Lo は線形演算部 305 で演算され、 データ L。* に変換される。 データ L。* とデー タ尺。 は交換部 306 でデータ位置の交換が行われ、 し=1?。, R, =Lo* のように変 換される。 以下、 第 i段ラウンド処理部 38 i では、 2つの入力ブロックデータ し, Riについて上記と同様の処理を繰り返し行う。 即ち、 2つのデータし, に ついて、 データ Ri は、 鍵記憶部 322 に保持されている鍵データ k i と共に非線 形関数部 304 に入力され、 非線形関数部 304 で変換処理を受けて、 データ Yi に 変換される。 データ Yi とデータ Li は線形演算部 305 で演算され、 データし * に変換される。 データし* とデータ Ri は交換部 306 でデータ位置の交換が行わ れ、 Li +
Figure imgf000017_0001
とされ、 ブロックデータ Ri + i が出力される。 暗号方式としての安全性を確保するための適切な繰り返し回数を nとすると、 繰り返し処理の結果、 データし, Rnが得られる。 このデータし, Rnを最終結合部 307 で結合した後、 出力部 309 から暗号文として出力データ Cを出力する。
復号については、 暗号化処理手順と逆の手順をたどることによって、 暗号文 C から平文 Pが得られる。
図 9は、 図 8の実施例における非線形関数部 304 の機能構成を示す。 非線形関 数部 304 への入力データ Ri は、 鍵記憶部 322 に保持されている鍵データ k i と 共に鍵依存線形変換 341 への入力となる。 データ は、 鍵依存線形変換 341 に おいて、 鍵データ k i によりデータ Ri* に線形変換される。 次に、 データ Ri* は 分害 ij部 342 において 4つのデータ in。, in , in2, in3に分割される。 4つのデ一 タ in。, im, in in3は、 それぞれ非線形変換部 343, 344, 345, 346において、 データ mid。。, midoi, micl。2, mid。3に非線形変換された後、 線形変換部 354 に入 力される。 線形変換部 354 では、 例えば実施例 2の図 7 Bと同じように、
midi 0 = midoo ®mido 2 ®mido 3
midi i = midoa midos
midi 2 = mido o ®mido l ®mido 2 ®mido 3 midi 3 = midoo ©midoi ©mido2 (13) に線开変換し、 データ mi o, mid! i, mid12, midl sを生成する。 ついで、 データ midio, mid13は、 それぞれ非線形変換部 348, 351において、 データ out。, out3に 非線形変換された後、 結合部 352 において、 4つのデータ out。, raidn, mid12, out3が 1つのデータに結合され、 非線形関数部 304 からの出力データ Yi が生成 される。
非線形変換部 343〜346は 4つ並列に配置されており、 その変換処理は相互に関 連していないため、 これらは並列実行が可能である。 また、 非線形変換部 348, 3 51についても同様のことがいえる。
なお、 鍵データ k i は、 鍵入力部 320 から暗号装置内に入力された鍵情報 Key から鍵データ生成部 321 によって変換され、 鍵記憶部 322 に保持されたデータで ある。
上記のように構成された暗号装置の場合、 例えば、 非線形変換部 343〜346, 34 8, 351が差分解読法及び線形解読法に対して確率 p b=2— 6で近似表現できるよう に設計されているならば、 各ラウンドは確率 P i≤2— 12 で近似表現することがで き、 暗号装置全体としてはラウンド数 nを n=3mとして、 確率 P≤2— 24m で近似表 現できることになる。 ここで、 例えば m=4 (ラウンド数 1 2段) とすると、 P≤ 2一96となり、 差分解読法及び線形解読法に対して十分安全な暗号装置となる。 また、 差分解読法及び線形解読法に対して十分な安全性を確保するために最低 限必要な部しか実行しない構造であるため、 処理量が軽減されており、 かつ暗号 化又は復号化速度もそれだけ改善されている。
上述において、 非線形関数部 304 中の各分割部 342 は 4分割に限らず、 任意の 複数に分割してもよい。 なお、 4分割の場合においては、 第 2の非線形変換部は 図 7 A及び図 9に示したように 2つのみとすることができる。
上述した第 2及び第 3実施例で示した非線形関数部 304 (ラウンド関数) にお ける非線形変換部が 6個 (343〜346, 348, 351) の場合について、 1ラウンド段 当たりの安全強度と、 安全性条件を満たすラウンド段数と、 それに必要な処理量 (ステップ数) を図 1及び 2に示した DE S暗号装置の場合と比較して次の表に 示す。 ただし、 この発明の実施例では DE Sの S- box に対応する非線形変換部 34 3 〜346 への入力データの全ビッ ト数を 3 2とし、 従って、 各非線形変換部への 入力データは 8ビットとしたため、 これとサイズを合わせるため、 0 £ 3の各5- box のサイズを 8ビットとし、 従って S - box の数を 4個として比較した。
比較表
Figure imgf000019_0001
この表からわかるように、 1段当たりの S- box の個数 (非線形変換部の数) が, この発明の方が D E Sより多いにもかかわらず、 この発明の 1ラウンド段当たり の安全性強度は D E Sの 2倍となっている。 そのため安全性条件を満たすための ラウンド段数は D E Sの場合より少なくなつており、 またその安全性に必要な処 理量 (ステップ数) も少なくなつている。 発明の効果
以上、 詳細に説明したように、 この発明によれば、 非線形関数部で入力データ を複数に分割し、 かつそれぞれ非線形変換を行い、 その後、 相互に線形交換を行 い、 更に少くとも一部を非線形変換することによりデータの通信または保持にお いてデータを秘匿するための暗号装置について、 安全性が高い暗号装置を提供す ることができる。

Claims

請求の範囲
1 . 鍵データを使って非線形変換を行う複数段のラウンド処理により入力データ を順次処理して暗号化する暗号化装置であり、
入力データを 2つのプロックデータに分割する初期分割部と、
鍵データを保持する鍵記憶部と、
上記 2つのプロックデータが入力され、 上記鍵データを使い順次処理を行う縦 続接続された複数段のラウンド処理部と、
縦続接続された上記複数のラウンド処理部の最終段から出力される 2つのプロ ックデ一タを 1つのデータに結合し、 その結合データを出力する最終結合部と、 を含み、
各段の上記ラゥンド処理部は:
前段から入力された 2つのプロックデータの一方に対し、 上記鍵記憶部に保持 された鍵データに依存したデータ変換処理を行う非線形関数部と、
上記非線形関数部の出力データと、 入力された上記 2つのプロックデータの他 方とを線形演算する線形演算部と、
上記線形演算部の出力データと上記非線形関数部への入力プロックデータとを 交換し、 交換された 2つのデータを次段の上記ラウンド処理部に 2つの入カブ口 ックデ一タとして与える交換部と、
を含み、
上記非線形関数部は:
入力されたデータに上記鍵記憶部に保持された鍵データに基づいて線形変換を 行い、 変換データを生成する鍵依存線形変換部と、
上記鍵依存線形変換部からの変換データを複数個のビット列に分割する分割部 と、
これらのビット列をそれぞれ非線形変換して変換データを出力する複数の第 1 非線形変換部と、
上記複数の第 1非線形変換部からの変換データ間で線形変換を行い、 均質化さ れた複数のデータを複数の系列にそれぞれ出力する第 1の線形変換部と、 上記複数の系列の少なくとも 1つに設けられ、 対応する上記第 1線形変換部か らの上記均質化されたデータに非線形変換を行い、 変換データをその系列のデー タとして出力する第 2の非線形変換部と、
上記複数の系列からのデータを結合して上記非線形関数部の出力データとする 結合部と、
を含む。
2 . 請求項 1に記載の暗号装置において、 上記第 1の線形変換部は、 上記均質化 された複数のデータを上記鍵記憶部に保持された鍵データに基づいて線形変換し、 上記複数の系列のデータとして出力する鍵依存線形演算部を含む。
3 . 請求項 1又は 2に記載の暗号装置において、 上記結合部の出力データを線形 変換して上記非線形関数部の出力データとする第 2の線形変換部が設けられてい る。
4 . 請求項 3に記載の暗号装置において、 上記第 2の線形変換部は、 上記鍵記憶 部に保持された鍵データに基づいて線形変換を行う線形変換部である。
5 . 請求項 4に記載の暗号装置において、 上記第 1線形変換部は、 各上記系列に 少なくとも 1つ設けられ、 その系列のデータと他の系列のデータとの排他的論理 和演算により上記均質化されたデータをその系列に出力する排他的論理和を含む。
6 . 請求項 1乃至 5のいずれかに記載の暗号装置において、 上記入力データに線 形変換を行って上記初期分割部へ供給する初期線形変換部が設けられている。
7 . 請求項 6に記載の暗号装置において、 上記初期線形変換部は上記鍵記憶部に 保持された鍵データに基づいて線形変換を行う変換部である。
8 . 請求項 1乃至 7のいずれかに記載の暗号装置において、 上記最終結合部の出 力データに線形変換を行って暗号装置の出力とする最終線形変換部が設けられて レヽる。
9 . 請求項 8に記載の暗号装置において、 上記最終線形変換部は上記鍵記憶部に 保持された鍵データに基づいて線形変換を行う変換部である。
1 0 . 請求項 1乃至 9のいずれかに記載の暗号装置において、 上記複数の系列は 第 1、 第 2、 第 3及び第 4系列の順に次配列された 4系列である。
1 1 . 請求項 1 0に記載の喑号装置において、 上記第 2非線形変換部は上記 4つ の系列のそれぞれに設けられている。
1 2 . 請求項 1 0に記載の暗号装置において、 上記第 2非線形変換部は上記第 1 及び第 4系列にそれぞれ設けられている。
1 3 . 請求項 1 2に記載の暗号装置において、 上記第 1線形変換部は:
上記第 2系列に設けられ、 上記第 1系列のデータと第 2系列のデータの排他的 論理和を演算する第 1排他的論理和と、
上記第 3系列に設けられ、 上記第 4系列のデータと第 3系列のデータの排他的 論理和を演算する第 2排他的論理和と、
上記第 3系列に設けられ、 上記第 2排他的論理和の出力と上記第 1排他的論理 和の出力との排他的論理和を演算する第 3排他的論理和と、
上記第 2系列に設けられ、 上記第 1排他的論理和の出力と上記第 3排他的論理 和の出力との排他的論理和を演算する第 4排他的論理和と、
上記第 1系列に設けられ、 上記第 1系列のデータと上記第 4排他的論理和の出 力との排他的論理和を演算する第 5排他的論理和と、
上記第 4系列に設けられ、 上記第 4系列のデータと上記第 3排他的論理和の出 力との排他的論理和を演算する第 6排他的論理和と、
を含む。
PCT/JP1998/002915 1997-06-30 1998-06-30 Dispositif de chiffrement WO1999000783A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE69829566T DE69829566T2 (de) 1997-06-30 1998-06-30 Verschlüsselungsgerät
EP98929747A EP1001398B1 (en) 1997-06-30 1998-06-30 Ciphering apparatus
CA002295167A CA2295167C (en) 1997-06-30 1998-06-30 Cryptographic device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP9/173672 1997-06-30
JP17367297A JP3782210B2 (ja) 1997-06-30 1997-06-30 暗号装置

Publications (1)

Publication Number Publication Date
WO1999000783A1 true WO1999000783A1 (fr) 1999-01-07

Family

ID=15964969

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1998/002915 WO1999000783A1 (fr) 1997-06-30 1998-06-30 Dispositif de chiffrement

Country Status (5)

Country Link
EP (1) EP1001398B1 (ja)
JP (1) JP3782210B2 (ja)
CA (1) CA2295167C (ja)
DE (1) DE69829566T2 (ja)
WO (1) WO1999000783A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2789535B1 (fr) * 1999-02-04 2001-09-28 Bull Cp8 Procede de securisation d'un ensemble electronique de cryptographie a cle secrete contre les attaques par analyse physique
KR100365308B1 (ko) * 1999-12-10 2002-12-26 강소대 마그네틱 페이퍼 제작방법
JP3505482B2 (ja) * 2000-07-12 2004-03-08 株式会社東芝 暗号化装置、復号装置及び拡大鍵生成装置、拡大鍵生成方法並びに記録媒体
US6956951B2 (en) * 2000-07-13 2005-10-18 Fujitsu Limited Extended key preparing apparatus, extended key preparing method, recording medium and computer program
JP4515716B2 (ja) * 2002-04-03 2010-08-04 パナソニック株式会社 拡大鍵生成装置、暗号化装置および暗号化システム
JP2008058830A (ja) * 2006-09-01 2008-03-13 Sony Corp データ変換装置、およびデータ変換方法、並びにコンピュータ・プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0954547A (ja) * 1995-08-14 1997-02-25 Nec Corp 暗号装置
WO1998009705A1 (en) * 1996-09-02 1998-03-12 Davidson, Clifford, M. Filter

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2203380C (en) * 1995-09-05 2000-05-30 Mitsuru Matsui Data transformation apparatus and data transformation method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0954547A (ja) * 1995-08-14 1997-02-25 Nec Corp 暗号装置
WO1998009705A1 (en) * 1996-09-02 1998-03-12 Davidson, Clifford, M. Filter

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
KANDA M., ET AL.: "ROUND FUNCTION STRUCTURE CONSISTING OF FEW S-BOXES.", IEICE TECHNICAL REPORT, DENSHI JOUHOU TSUUSHIN GAKKAI, JP, vol. 97., no. 181., 18 July 1997 (1997-07-18), JP, pages 41 - 52., XP002917232, ISSN: 0913-5685 *
MATSUI M., ET AL.: "NEW PRACTICAL BLOCK CIPHERS WITH PROVABLE SECURITY AGAINST DIFFERENTIAL AND LINEAR CRYPTANALYSIS.", SYMPOSIUM ON CRYPTOGRAPHY AND INFORMATION SECURITY (SCIS), XX, XX, 1 January 1996 (1996-01-01), XX, pages 01 - 14., XP002917231 *
MATSUI M.: "ON PROVABLE SECURITY OF BLOCK CIPHERS AGAINST DIFFERENTIAL AND LINEAR CRYPTANALYSIS.", SYMPOSIUM ON INFORMATION THEORY AND ITS APPLICATIONS .SITA, XX, XX, vol. 01/02., 24 October 1995 (1995-10-24), XX, pages 175 - 178., XP002917230 *
See also references of EP1001398A4 *

Also Published As

Publication number Publication date
EP1001398B1 (en) 2005-03-30
DE69829566D1 (de) 2005-05-04
CA2295167A1 (en) 1999-01-07
DE69829566T2 (de) 2006-02-16
EP1001398A4 (en) 2002-01-30
CA2295167C (en) 2003-02-04
EP1001398A1 (en) 2000-05-17
JPH1124559A (ja) 1999-01-29
JP3782210B2 (ja) 2006-06-07

Similar Documents

Publication Publication Date Title
EP1052611B1 (en) Data converter and recording medium on which program for executing data conversion is recorded
US5745577A (en) Symmetric cryptographic system for data encryption
JP5229315B2 (ja) 共通鍵暗号機能を搭載した暗号化装置及び組込装置
EP2058781B1 (en) Encryption device, encryption method, and computer program
WO2015146431A1 (ja) 暗号処理装置、および暗号処理方法、並びにプログラム
WO2001067425A1 (fr) Systeme de chiffrage de blocs utilisant la conversion auxiliaire
JPH0863097A (ja) データを暗号化するための対称暗号化方法およびシステム
US20090202070A1 (en) Robust Cipher Design
WO2015146430A1 (ja) 暗号処理装置、および暗号処理方法、並びにプログラム
Knudsen et al. On the role of key schedules in attacks on iterated ciphers
JP5617845B2 (ja) 暗号化装置、暗号化方法及びプログラム
Shorin et al. Linear and differential cryptanalysis of Russian GOST
WO1999000783A1 (fr) Dispositif de chiffrement
EP1087425A1 (en) Method for the cryptographic conversion of binary data blocks
Biham et al. Differential cryptanalysis of Q
JPH1124558A (ja) 暗号装置
JPH09269727A (ja) 暗号化方法および暗号化装置
JP3017726B2 (ja) データ変換装置
JP3017725B2 (ja) データ変換装置
Seki et al. Cryptanalysis of five rounds of CRYPTON using impossible differentials
Lin et al. Cryptanalysis of a Multiround Image Encryption Algorithm Based on 6D Self-Synchronizing Chaotic Stream Cipher
JP5500277B2 (ja) 共通鍵暗号機能を搭載した暗号化装置及び組込装置
WO2015146432A1 (ja) 暗号処理装置、および暗号処理方法、並びにプログラム
Ji et al. Square attack on reduced-round Zodiac cipher
JP2000089666A (ja) 暗号化/復号化装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA US

AL Designated countries for regional patents

Kind code of ref document: A1

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

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

Ref document number: 1998929747

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2295167

Country of ref document: CA

Ref country code: CA

Ref document number: 2295167

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 09446525

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1998929747

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1998929747

Country of ref document: EP