WO2011052585A1 - 暗号化装置、暗号化方法及びプログラム - Google Patents

暗号化装置、暗号化方法及びプログラム Download PDF

Info

Publication number
WO2011052585A1
WO2011052585A1 PCT/JP2010/068962 JP2010068962W WO2011052585A1 WO 2011052585 A1 WO2011052585 A1 WO 2011052585A1 JP 2010068962 W JP2010068962 W JP 2010068962W WO 2011052585 A1 WO2011052585 A1 WO 2011052585A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
transposition
series
unit
odd
Prior art date
Application number
PCT/JP2010/068962
Other languages
English (en)
French (fr)
Inventor
智保 洲崎
角尾 幸保
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to CN201080048757.8A priority Critical patent/CN102713994B/zh
Priority to JP2011538429A priority patent/JP5617845B2/ja
Priority to US13/504,421 priority patent/US8731189B2/en
Publication of WO2011052585A1 publication Critical patent/WO2011052585A1/ja
Priority to HK12113163.0A priority patent/HK1172437A1/xx

Links

Images

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/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Definitions

  • the present invention is based on the priority claim of Japanese Patent Application No. 2009-246306 (filed on Oct. 27, 2009), the entire contents of which are incorporated herein by reference. Shall.
  • the present invention relates to an encryption device, an encryption method, and a program, and more particularly, to an encryption device, an encryption method, and a program based on a common key block cipher for concealing data during data communication and storage.
  • Common key block cipher is a technology for concealing communication data or stored data.
  • encryption is performed by dividing data to be encrypted into a certain unit (referred to as a block length).
  • a typical example is DES (Data Encryption Standard).
  • DES Data Encryption Standard
  • a structure called a Feistel structure was first adopted.
  • FIG. 1 is a diagram showing processing for one round of a Feistel structure having a block length of 2n bits.
  • the input data is divided into n-bit data B 1 and B 2 , B 1 and key data K r are mixed by function F, and the exclusive OR between the output data and data B 2 is B 1 '. Further, B 1 is set as B 2 ′ as it is. B 1 ′ and B 2 ′ are input for the next round.
  • Non-Patent Document 1 proposes a generalized Feistel structure in which the number of divisions of the Feistel structure is expanded to 2 or more (referred to as Feistel-Type Transformation (FTT) in Non-Patent Document 1).
  • FTT Feistel-Type Transformation
  • Non-Patent Document 1 proposes three types of structures from Type-1 to Type-3. Here, the description will be limited to Type-2. In the following, unless otherwise specified, the “generalized Feistel structure” refers to that of Type-2.
  • FIG. 2 shows a generalized Feistel structure (hereinafter referred to as a “k-sequence generalized Feistel structure”) in which input data is divided into k (an even number of 2 or more) (each divided is called a “sequence”). It is a figure which shows one round.
  • the processing for one round of the generalized Feistel structure will be considered separately for the non-linear conversion unit 20 and the transposition unit 21.
  • the transposition unit 21 performs transposition processing for shifting the sequence data to the left by one sequence.
  • the F function is a process that most affects the mounting scale. If the processing size of the F function is reduced, there is an advantage that a small-scale mounting is possible.
  • Non-Patent Document 2 it is shown that the impossibility difference characteristics of the generalized Feistel structure when the number of series is 2, 4, 8, and 16 are 5, 9, 17, and 33 rounds, respectively.
  • Non-Patent Document 3 describes the impossibility difference characteristic of the four-series generalized Feistel structure.
  • Non-Patent Document 2 A specific attack procedure of the impossible differential attack is described in Non-Patent Document 2 as an example. Since a general block cipher attack is decrypted using some characteristic, the longer the number of characteristic rounds, the more vulnerable the attack is. Therefore, in order to have resistance against such decryption, a longer encryption round number is required. Conversely, if the number of characteristic rounds can be reduced, safety can be ensured with a smaller number of rounds.
  • Non-Patent Documents 1 to 3 The entire disclosure of Non-Patent Documents 1 to 3 is incorporated herein by reference. The following analysis has been made by the present invention. As described above, when the division number k is increased in the generalized Feistel structure, the impossibility difference characteristic and the saturation characteristic are also increased. Therefore, it is necessary to relatively increase the number of encryption rounds. Here, the cause of the impossible difference characteristic and the saturation characteristic of the generalized Feistel structure is examined from the viewpoint of data diffusibility.
  • the impossibility difference characteristic shown in Non-Patent Document 2 utilizes the fact that a difference value given as an input or output continues with probability 1.
  • FIG. 3 is a diagram showing a state of difference diffusion in the 6-series generalized Feistel structure.
  • the difference value (thick solid line) input to the series 2 passes with the probability 1 to the data 30 of the series 2 after 6 rounds.
  • a branch is made at a location (for example, the branch 31) that is input to the F function, and one of the branches is input to the F function and changes to an arbitrary difference value (broken line).
  • the difference value that has not been input to the F function passes to the next round without change. Therefore, in order for the difference initial value to disappear, an exclusive OR must be obtained with an arbitrary difference value generated by the F function.
  • FIG. 4 is a diagram showing an example of saturation characteristics.
  • A is a state where all numbers appear
  • B is a state where the sum of data is balanced (zero)
  • U is a state where it is unknown whether or not it is balanced
  • C is a constant. That is, FIG. 4 shows transition of saturation characteristics when all data according to the data width is given to the series 2 and constants are given to the other series.
  • F function is bijective, when all the data is input, all the data is output, so that all the states are maintained.
  • an exclusive OR of all the numbers whose elements are the same is obtained, a balanced state is obtained, and when the balanced state passes the F function, an unknown state is obtained. Once in an unknown state, the state does not change thereafter.
  • FIG. 4 shows transition of saturation characteristics when all data according to the data width is given to the series 2 and constants are given to the other series.
  • the balance state remains in 6 series after 8 rounds have elapsed, and thus, a saturation attack can be applied.
  • This balance state is generated by exclusive OR of all data 40 and all data 41 in the seventh round. Since the state of the series 2 is a constant up to the sixth round, all the states of the series 1 of the next round are maintained. Then, the total number data 41 branched in the second round is finally subjected to exclusive OR in the seventh round, so that the total number state disappears. Since this property exists irrespective of the division number k, when the division number is k, there is a k + 2 round saturation characteristic.
  • FIG. 5 is a diagram showing the extension of the saturation characteristic of FIG. 4 to the plaintext side.
  • Such an expansion method is described in Non-Patent Document 3 as an example. In the case of going back one round, the total number of data increases by one series. Therefore, in the case of the division number k, it is possible to expand k-2 rounds.
  • FIG. 6 is a diagram showing the state of diffusion in the case of 8 series. A total of nine collisions of exclusive OR 60 to 68 have occurred before the data of series 1 is spread to all series.
  • FIG. 7 shows a table summarizing the number of exclusive ORs, the number of collisions, and the collision rate required for even-numbered series data to spread to all series for every number of series k. Referring to FIG. 7, it can be seen that as the number of series increases, the collision rate increases and the efficiency decreases.
  • the objective of this invention is providing the encryption apparatus, encryption method, and program which solve this subject.
  • the resistance against the impossible differential attack and the saturation attack of the k-sequence generalized Feistel-type common key block cipher can be improved without increasing the implementation scale.
  • the encryption device according to the first development form is the encryption device according to the first aspect.
  • the encryption device of the second development form is The transposition part is An odd-sequence transposition unit that transposes odd-sequence data of the intermediate data; It is preferable to include an even-number sequence transposing unit that transposes even-numbered sequence data of the intermediate data.
  • the encryption device of the third development form includes a plurality of k-sequence generalized Feistel processing units each including the nonlinear conversion unit and the transposition unit.
  • the encryption device of the fourth development form is An encryption unit having a plurality of k-sequence generalized Feistel processing units composed of the non-linear transformation unit and the transposition unit;
  • the encryption unit may input a plurality of extended keys and plaintext data generated from the key data to the plurality of k-sequence generalized Feistel processing units to encrypt the plaintext data.
  • the encryption device of the fifth development form is A decoding unit having a plurality of k-sequence generalized Feistel processing units composed of the non-linear transformation unit and the transposition unit;
  • the decryption unit may input a plurality of expanded keys and ciphertext data generated from the key data to the plurality of k-sequence generalized Feistel processing units, and decrypt the ciphertext data.
  • the encryption device may include an extended key generation unit that generates a plurality of extended keys from key data.
  • the transposition unit performs transposition according to any one of predetermined three transposition processes when the k series is 8 series, and when the k series is 10 series Performs the transposition by any one of the predetermined five transposition processes, and when the k series is 12 series, performs the transposition by any one of the predetermined 59 transposition processes, When the series is 14 series, the transposition is performed by any one of the predetermined 44 transposition processes, and when the k series is 16 series, any of the predetermined 23 transposition processes is performed.
  • An encryption device is provided that performs transposition.
  • the encryption method according to the eighth development form is preferably the encryption method according to the second aspect.
  • the encryption method of the ninth expansion mode includes a step of repeating the nonlinear conversion step and the transposition step a plurality of times.
  • the encryption method of the tenth development form is Receiving a plurality of expanded keys and plaintext data generated from the key data; The step of encrypting the plaintext data by repeating the nonlinear conversion step and the transposition step a plurality of times may be included.
  • the encryption method of the eleventh development form is Receiving a plurality of expanded keys and ciphertext data generated from the key data; The step of decrypting the ciphertext data by repeating the nonlinear transformation step and the transposition step a plurality of times may be included.
  • the program of the twelfth development form is preferably a program according to the third viewpoint.
  • the program in the thirteenth development mode causes a computer to execute a process of repeating the nonlinear conversion process and the transposition process a plurality of times.
  • the program of the 14th expansion form is Receiving a plurality of expanded keys and plaintext data generated from the key data;
  • the non-linear transformation process and the transposition process may be repeated a plurality of times to cause the computer to execute a process for encrypting the plaintext data.
  • the program in the fifteenth expansion form is A process of receiving a plurality of expanded keys and ciphertext data generated from the key data;
  • the non-linear transformation process and the transposition process may be repeated a plurality of times to cause the computer to execute a process for decrypting the ciphertext data.
  • program may be stored in a computer-readable recording medium.
  • FIG. 8 is a block diagram illustrating a configuration of the encryption device 10 according to the present embodiment.
  • the encryption device 10 includes a non-linear conversion unit 18 and a transposition unit 19.
  • Transposition unit 19 the intermediate data ⁇ W 1, W 2, ... , W k ⁇ data ⁇ B 1, B 2, ... , B k ⁇ be transferred to.
  • the transposition unit 19 performs n ⁇ m + 2 mod k (x) in transposition from W m (m is an arbitrary odd number of k or less) to B n (n is an arbitrary even number of k or less) in the intermediate data.
  • mod y includes at least one satisfying the relationship of x divided by y), including at least one satisfying the relationship m ⁇ n + 2 mod k in transposition from W n to B m , and W When transposing m to B n , W m + 1 is not transposed to B n ⁇ 1 . ,
  • the encryption apparatus 10 preferably has a plurality of pairs each including a non-linear conversion unit 18 and a transposition unit 19.
  • FIG. 9 is a diagram showing a configuration when the encryption apparatus 10 of the present embodiment is applied to a 6-series generalized Feistel structure as an example.
  • the transposition unit 81 converts W 1 to B r + 1,2 and W 2 to B r + 1,3 .
  • W 3 is transposed to B r + 1,6
  • W 4 is transposed to B r + 1,1
  • W 5 is transposed to B r + 1,4
  • W 6 is transposed to B r + 1,5 (hereinafter this transposing process is ⁇ 2, 3, 6,1,4,5 ⁇ ).
  • this transposing process is ⁇ 2, 3, 6,1,4,5 ⁇ ).
  • the even number sequence is transposed to the odd number sequence
  • the odd number sequence is transposed to the even number sequence.
  • FIG. 10 shows a modification of the configuration of the transposition unit 81 of the encryption apparatus shown in FIG.
  • the transposition of the transposition unit 90 is ⁇ 4, 5, 2, 3, 6, 1 ⁇ , which is a transposition different from the transposition unit 81 (FIG. 9).
  • the structure of FIG. 10 is obtained by cyclically shifting the input data Br and output data Br + 1 of FIG. 9 to the left by two series, the relationship between the input data and the output data is the same. Since this relationship does not change even when a plurality of rounds are repeated, the mapping of the conversion in FIGS. 9 and 10 can be regarded as the same. Therefore, the transmissibility of the transposition part 81 (FIG. 9) and the transposition part 90 (FIG. 10) is the same.
  • transposition units 81 and 90 are different as mappings. Specific examples of transposition processing in the transposition unit 19 of the encryption device 10 of the present embodiment are shown below for the 8th to 16th sequences.
  • FIG. 11 is a diagram showing a state of data propagation in the encryption apparatus shown in FIG.
  • the data of series 2 has spread to all series in 5 rounds, and is 1 round less than the case where the transposition processing is a cyclic shift.
  • the transposition process is a cyclic shift
  • the first collision occurs in the fourth round.
  • the data is spread to the unspread sequences without colliding in the fourth round, and as a result, the data is spread to all the sequences in the fifth round. ing.
  • FIG. 12 is a table showing the number of rounds necessary for the data when the transposition processing means shown above is used to spread to all series.
  • the transposing unit 81 of the encryption device 10 of the present embodiment when the transposition process is a cyclic shift, k rounds are required until the entire sequence is propagated. Therefore, by using the transposing unit 81 of the encryption device 10 of the present embodiment, the number of rounds until the entire series is spread is reduced. Furthermore, the reduction effect increases as the division number k increases. Further, the number of impossible difference characteristic rounds and the number of saturation characteristic rounds are about twice the number of rounds required for diffusion, and can be significantly reduced compared with the number of characteristic rounds in the method shown in FIG.
  • the encryption apparatus of the present embodiment it is possible to improve resistance against impossible differential attacks and saturation attacks while maintaining the scale of the generalized Feistel structure, and as a result, improve processing performance. be able to.
  • the transposition processing in the transposition unit 19 is merely replacement of bit data, the mounting scale does not increase due to the change of the transposition pattern, regardless of the method of hardware mounting or software mounting.
  • FIG. 13 is a block diagram showing the configuration of the encryption apparatus of this embodiment.
  • the encryption apparatus includes an extended key generation unit 12, an encryption unit 13, and a decryption unit 14.
  • Extended key generator 12 the key expansion from the data K plurality of keys K 1, K 2, ..., generates K R, the enlarged Daikagi K 1, K 2, ..., decrypt the encryption unit 13 K R To the unit 14.
  • Encryption unit 13 the plaintext data P and the enlarged Daikagi K 1 for one block, K 2, ..., K R is inputted, generates the ciphertext data C of one block.
  • the encryption unit 13 includes R k-sequence generalized Feistel processing units 130 (k is an even number of 6 or more).
  • the plaintext data P kn bits is divided into k n-bit data, is input along with the key data K 1 to k generalized Feistel processing unit 130, agitation of data is performed, the data after stirring is output.
  • the In the r (2 ⁇ r ⁇ R) round the output from the (r ⁇ 1) round k-sequence generalized Feistel processing unit 130 and the key data K r are input, and the mixing of the data and the expanded key is repeated.
  • Kn-bit data obtained by concatenating k outputs from the R-round k-sequence generalized Feistel processing unit 130 is output as ciphertext data C.
  • the decoding unit 14 includes R k-sequence generalized Feistel processing units 140.
  • the ciphertext data C kn bits are divided into k n-bit data, is input along with the key data K R to k generalized Feistel processing unit 140, agitation of data is performed, the data after stirring the output Is done.
  • the output from the (r ⁇ 1) round k-sequence generalized Feistel processing unit 140 and the key data K r ′ are input, and the mixing of the data and the expanded key is repeated. .
  • Kn-bit data obtained by concatenating k outputs from the R-round k-sequence generalized Feistel processing unit 140 is output as plaintext data P.
  • the order of use of the extended keys in the decryption unit 14 is opposite to the order in the encryption unit 13.
  • FIG. 14 is a block diagram illustrating a configuration of the k-sequence generalized Feistel processing unit 130 in the encryption unit 13 of the encryption device according to the present embodiment.
  • the k-sequence generalized Feistel processing unit 130 includes a non-linear conversion unit 131, an odd-sequence transposition unit 132, and an even-sequence transposition unit 133.
  • the nonlinear conversion unit 131 has k / 2 F functions. Of the k pieces of input data B 1 , B 2 ,..., B k , B i (i is an odd number equal to or less than k) is input to the F function.
  • the F function performs non-linear transformation processing such as S-box used in a general encryption algorithm.
  • the expanded key data K i is equally divided into k / 2 pieces, each of which is input to the F function and agitated with the input data B i .
  • An exclusive OR between each of k / 2 n-bit data output from the F function and input data B j (j is an even number equal to or less than k) is defined as intermediate data W j . Further, the input data B i is directly used as intermediate data W i .
  • the odd series transposition unit 132 transposes the odd series data among the k pieces of intermediate data, and outputs it as the even series data among the output data of the k series generalized Feistel processing unit 130.
  • the even series transposition unit 133 performs transposition of the even series data among the k pieces of intermediate data, and outputs it as odd series data among the output data of the k series generalized Feistel processing unit 130. It is preferable to apply an optimum correspondence between the input sequence and the output sequence in these transposition units according to the division number k.
  • FIG. 15 is a block diagram illustrating a configuration of the k-sequence generalized Feistel processing unit 140 in the decryption unit 14 of the encryption device according to the present embodiment.
  • the k-sequence generalized Feistel processing unit 140 includes an odd-number sequence inversion unit 141, an even-number sequence inversion unit 142, and a nonlinear conversion unit 131.
  • the odd series inversion unit 141 transposes the odd series data in the input data to the k series generalized Feistel processing unit 140, and as the even series data in the input data to the k series generalized Feistel processing unit 140. Output.
  • the input and the output are in a reverse relationship with respect to the even-number series transposition section 133.
  • the even number series inversion unit 142 transposes even number series data among the input data to the k series generalized Feistel processing section 140 and sets the odd series data as input data to the k series generalized Feistel processing section 130. Output.
  • the input and the output are in an inverse relationship with respect to the odd-series transposing unit 132.
  • FIG. 17 is a block diagram illustrating a configuration of the communication device 16 according to the present embodiment.
  • the communication device 16 includes a data compression unit 161, an encryption unit 162, an encoding unit 163, a decoding unit 164, and a data restoration unit 165.
  • the data compression unit 161 compresses the data before transmission.
  • the encryption unit 162 encrypts the compressed data.
  • the encryption device according to the first and second embodiments can be used as the encryption unit 162.
  • the encoding unit 163 performs encoding for error correction on the encrypted data and transmits it as encrypted transmission data.
  • the encoding unit 163 performs error correction on the encrypted received data.
  • the decoding unit 164 decodes the error-corrected data.
  • the data restoration unit 165 obtains restored data by decompressing the data.
  • the encryption apparatus can be realized by a program that runs on a computer and hardware such as an LSI.
  • the program can also be provided by being recorded on a computer-readable recording medium.
  • the embodiments and examples can be changed and adjusted based on the basic technical concept.
  • various combinations or selections of various disclosed elements are possible within the scope of the entire disclosure of the present invention. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the entire disclosure including the claims and the technical idea.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Developing Agents For Electrophotography (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Tires In General (AREA)

Abstract

 k系列一般化Feistel型の共通鍵ブロック暗号の不能差分攻撃及び飽和攻撃に対する耐性を向上させる。暗号化装置は、k系列のデータ{B,…,B}(kは6以上の偶数)のうちの奇数系列データB(i:奇数)を中間データWとし、F関数に基づいて奇数系列データBを変換したデータと偶数系列データBi+1との間における排他的論理和をデータWi+1とする非線形変換部と、W(m:奇数)からB(n:偶数)への転置においてn≠m+2 mod kなる関係を満たすものを少なくとも1つ含み、WからBへの転置においてm≠n+2 mod kなる関係を満たすものを少なくとも1つ含み、WをBに転置する場合にはWm+1をBn-1に転置しないようにして転置を行う転置部とを有する。

Description

暗号化装置、暗号化方法及びプログラム
[関連出願についての記載]
 本発明は、日本国特許出願:特願2009-246306号(2009年10月27日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は、暗号化装置、暗号化方法及びプログラムに関し、特に、データの通信や蓄積の際にデータを秘匿するための共通鍵ブロック暗号に基づく暗号化装置、暗号化方法及びプログラムに関する。
 通信データ又は蓄積データを秘匿する技術として共通鍵ブロック暗号がある。ブロック暗号は、暗号化するデータをある単位(ブロック長という)に区切って暗号化を行う。その代表的なものとして、DES(Data Encryption Standard)が挙げられる。DESでは、フェイステル(Feistel)構造と呼ばれる構造が初めて採用された。
 図1は、ブロック長2nビットのFeistel構造の1ラウンド分の処理を表した図である。入力データをnビットデータBとBの2つに分割し、Bと鍵データKとを関数Fで攪拌し、その出力データとデータBとの間における排他的論理和をB’とする。また、BをそのままB’とする。B’とB’は、次のラウンドの入力となる。
 さらに、非特許文献1において、Feistel構造の分割数を2以上に拡張した一般化Feistel構造(非特許文献1では、Feistel-Type Transformation(FTT)と呼ばれている)が提案されている。非特許文献1では、Type-1からType-3までの3種類の構造が提案されているが、ここではType-2に限定して説明を行う。以下では特に断らない限り、「一般化Feistel構造」とは、Type-2のものをいう。
 図2は、入力データをk(2以上の偶数)個に分割(分割した各々を”系列”と呼ぶ)して処理を行う一般化Feistel構造(以下「k系列一般化Feistel構造」という。)の1ラウンド分を示す図である。一般化Feistel構造の1ラウンド分の処理を非線形変換部20と転置部21とに分けて考える。非線形変換部20は、入力されるk系列のデータのうちのデータB(iはk以下の奇数)をそのまま出力するとともに、データBを関数Fにより鍵データK(j=(i+1)/2)と攪拌したものとデータBi+1との間における排他的論理和を出力する。転置部21は、系列データを1系列分左巡回シフトする転置処理を行う。
 次に、一般化Feistel構造の系列数kの大小とメリット(ないしデメリット)との関係について述べる。ブロック長が等しいブロック暗号において、分割数kを大きくすると系列データサイズnは小さくなる。例えば、ブロック長が128ビットの場合、k=2とするとn=64となり、k=4とするとn=32となり、k=8とするとn=16となる。系列データサイズが小さくなるとF関数の処理サイズも小さくなる。F関数は実装規模に最も影響する処理であり、F関数の処理サイズが小さくなると、小規模な実装が可能になるというメリットがある。
 一方、安全性の面において、分割数kを大きくすると不能差分攻撃や飽和攻撃といった暗号解読手法の脅威が増大するというデメリットが知られている。詳細な解読を考える場合にはF関数の内部構造も考慮すべきであるものの、ここでは一般化Feistel構造の系列数の影響を調べるために、F関数は単に全単射な非線形変換として扱う。
 非特許文献2によると、系列数が2,4,8,16の場合の一般化Feistel構造の不能差分特性はそれぞれ、5,9,17,33ラウンドとなることが示されている。また、非特許文献3には、4系列一般化Feistel構造の不能差分特性について記載されている。
 これらの結果より、k系列一般化Feistel構造の場合、入力側に与えた差分値がkラウンド後まで通過し、さらに出力側に与えた差分値もkラウンド遡ったラウンドまで通過していることが分かる。そして、中間の1ラウンドで矛盾が生じることによって、不能差分となっている。したがって、k系列一般化Feistel構造の場合は、2k+1ラウンドの不能差分特性が存在する。
 次に、一般化Feistel構造の系列数と飽和特性ラウンド数との関係について述べる。4系列の場合には、系列データの幅で全数データを与えると、平文から暗号文方向に6ラウンドの飽和特性があり、この特性をさらに平文方向に2ラウンド拡張することができるため、8ラウンドの飽和特性が存在することが、非特許文献2に記載されている。k系列の場合には、1箇所に与えた全数データはkラウンド経過すると全系列に波及し、さらに3ラウンド経過すると全て不明な状態となる。すなわち、k+2ラウンドの飽和特性が存在する。また、平文側への拡張は、1ラウンド遡ると全数データは他の1系列に広がるため、k-1系列まで拡散するにはk-2ラウンドを要する。したがって、k系列一般化Feistel構造には、2kラウンドの飽和特性が存在する。
 不能差分攻撃や飽和攻撃では、これらの特性を利用して鍵データの解読を試みる。不能差分攻撃の具体的な攻撃手順は、一例として、非特許文献2に記載されている。一般的なブロック暗号の攻撃は、何らかの特性を利用して解読を行うため、特性のラウンド数が長いほどその攻撃に対して脆弱となる。したがって、かかる解読に対して耐性を持たせるためには、より長い暗号化のラウンド数が必要とされる。逆に、特性のラウンド数を減らすことができれば、より少ないラウンド数で安全性を確保することができる。
Y. Zheng, T. Matsumoto, H. Imai, "On the Construction of Block Ciphers Provably Secure and Not Relying on Any Unproved Hypotheses," CRYPTO 1989,LNCS vol. 435, pp.461-480, Springer-Verlag, 1990. 角尾幸保、辻原悦子、中嶋浩貴、久保博靖、「変形Feistel構造を持つブロック暗号の不可能差分」、2007年暗号と情報セキュリティシンポジウム、2007年1月23日 Sony Corporation, "The 128-bit Blockcipher CLEFIA Security and Performance Evaluations Revision 1.0," June 1, 2007.
 上記非特許文献1から3の全開示内容はその引用をもって本書に繰込み記載する。
 以下の分析は、本発明によってなされたものである。
 上述の通り、一般化Feistel構造において分割数kを大きくすると、不能差分特性及び飽和特性も大きくなるため、暗号化のラウンド数も相対的に大きくする必要がある。ここでは、一般化Feistel構造の不能差分特性や飽和特性の原因を、データの拡散性という観点で調べる。非特許文献2に示された不能差分特性は、入力や出力として与えた差分値が確率1で残り続けることを利用したものである。
 図3は、6系列一般化Feistel構造における差分の拡散の様子を表した図である。系列2に入力された差分値(太実線)は、6ラウンド経過後の系列2のデータ30まで確率1で通過する。一般化Feistel構造においては、F関数の入力となる箇所(例えば分岐31)で分岐し、一方はF関数に入力されて任意の差分値(破線)に変化する。しかし、F関数の入力とならなかった差分値は変化することなく次のラウンドへ通過する。したがって、差分初期値が消失するためには、F関数によって生成される任意の差分値との間で排他的論理和が求められなければならない。しかしながら、第1,3,5ラウンドではF関数からは差分値がゼロしか出てこないため、差分値としては変化していない。しかし、6ラウンド経過すると全系列にゼロ以外の任意の差分値が波及していることから、さらに1ラウンド経過すると確率1で通過する差分値は存在しなくなる。転置部21が単なる巡回シフトであるような一般化Feistel構造では、分割数kに依らず、このような性質が存在する。したがって、分割数kを大きくするにつれて、確率1で通過するラウンド数も大きくなる。
 図4は、飽和特性の一例を示す図である。Aは全数が出現している状態、Bはデータの総和がバランス(ゼロ)している状態、Uはバランスしているか否かが不明な状態、Cは定数を表す。すなわち、図4は、系列2にはデータ幅に応じた全通りのデータを与え、その他の系列には定数を与えた場合の飽和特性の遷移を示す。F関数が全単射な場合、全通りのデータが入力されると全通りのデータが出力されるため、全数の状態は保たれる。元が同一の全数である全数同士の排他的論理和を求めるとバランス状態となり、バランス状態がF関数を通過すると不明な状態となる。一旦、不明な状態となると、以降状態は変化しない。図4に示した例では、8ラウンド経過後の6系列にバランス状態が残っているため、これを利用して飽和攻撃を適用することができる。このバランス状態は第7ラウンドで全数データ40と全数データ41の排他的論理和によって生成されたものである。第6ラウンドまでは系列2の状態が定数であるため、次のラウンドの系列1は全数状態が保たれている。そして、第2ラウンドで分岐した全数データ41が第7ラウンドでようやく排他的論理和されることにより、全数状態が消失している。この性質は分割数kに依らずに存在するため、分割数がk場合にはk+2ラウンドの飽和特性が存在する。
 図5は、図4の飽和特性の平文側への拡張を示す図である。このような拡張方法は、一例として、非特許文献3に記載されている。1ラウンド遡る場合、全数データが1系列分増えるため、分割数kの場合にはk-2ラウンドの拡張が可能である。
 以上より、分割数がkの場合、2k(=(k+2)+(k-2))ラウンドの飽和特性が存在する。不能差分特性及び飽和特性の性質を考慮すると、系列データが全系列へ波及するラウンド数を短くすることができれば、これらの特性のラウンド数も短くすることができ、これら特性を利用した攻撃に対する耐性を向上させることができる。
 そこで、図3をデータの拡散という観点で見直してみる。第4ラウンドの系列6に注目すると、第2ラウンドで分岐した系列1のデータの一方が系列5でさらに分岐しているものの、分岐したデータは系列6の排他的論理和32で衝突を起こしている。第4ラウンドでは、系列3,4にはまだ波及していないため、波及という観点では系列5のデータを系列4に波及させることができれば、全体への拡散するためのラウンド数を減らすことができる。6系列の場合、全体へ波及するまでに排他的論理和32~35の4箇所で衝突が発生しており、転置処理手段が巡回シフトの場合、拡散性の観点では効率的とは言えない。
 図6は、8系列の場合の拡散の様子を表した図である。系列1のデータが全系列に波及するまでには排他的論理和60~68の合計9回の衝突が発生している。
 図7は、系列数kごとに偶数系列データが全系列に波及するまでに要する排他的論理和の回数と衝突が発生する回数、衝突割合をまとめた表を示す。図7を参照すると、系列数を大きくするほど衝突割合が大きくなっており、効率が悪くなっていることが分かる。
 このように、転置部が1系列分左巡回シフトするような規則正しい構造では、データの拡散性がよいとは言えず、結果的に不能差分特性や飽和特性を大きくしている。分割数kを大きくすると、F関数を小型化できるメリットがある一方で、不能差分攻撃や飽和攻撃の適用可能ラウンド数が大きくなる。したがって、その対策として暗号化のラウンド数を増やさねばならず、結果として処理速度の低下を招くという問題がある。
 そこで、k系列一般化Feistel型の共通鍵ブロック暗号の不能差分攻撃及び飽和攻撃に対する耐性を、実装規模を増加させることなく向上させることが課題となる。本発明の目的は、かかる課題を解決する暗号化装置、暗号化方法及びプログラムを提供することにある。
 本発明の第1の視点に係る暗号化装置は、
 k系列のデータ{B,B,…,B}(kは6以上の偶数)のうちのk/2個の奇数系列データB(i=1,3,…,k-1)をそれぞれ中間データWとするとともに、鍵データの値に応じて変換後の値が決定される全単射なF関数に基づいて該奇数系列データBを変換したデータと偶数系列データBi+1との間における排他的論理和を中間データWi+1とする非線形変換部と、
 前記中間データのうちのW(mはk以下の任意の奇数)からB(nはk以下の任意の偶数)への転置においてn≠m+2 mod k(x mod yはxをyで割ったときの余り)なる関係を満たすものを少なくとも1つ含み、WからBへの転置においてm≠n+2 mod kなる関係を満たすものを少なくとも1つ含み、WをBに転置する場合にはWm+1をBn-1に転置しないようにして、前記中間データ{W,W2,…,W}をデータ{B,B2,…,B}に転置する転置部とを有する。
 本発明の第2の視点に係る暗号化方法は、
 k系列のデータ{B,B,…,B}(kは6以上の偶数)のうちのk/2個の奇数系列データB(i=1,3,…,k-1)をそれぞれ中間データWとするとともに、鍵データの値に応じて変換後の値が決定される全単射なF関数に基づいて該奇数系列データBを変換したデータと偶数系列データBi+1との間における排他的論理和を中間データWi+1とする非線形変換工程と、
 前記中間データのうちのW(mはk以下の任意の奇数)からB(nはk以下の任意の偶数)への転置においてn≠m+2 mod k(x mod yはxをyで割ったときの余り)なる関係を満たすものを少なくとも1つ含み、WからBへの転置においてm≠n+2 mod kなる関係を満たすものを少なくとも1つ含み、WをBに転置する場合にはWm+1をBn-1に転置しないようにして、前記中間データ{W,W2,…,W}をデータ{B,B2,…,B}に転置する転置工程とを含む。
 本発明の第3の視点に係るプログラムは、
 k系列のデータ{B,B,…,B}(kは6以上の偶数)のうちのk/2個の奇数系列データB(i=1,3,…,k-1)をそれぞれ中間データWとするとともに、鍵データの値に応じて変換後の値が決定される全単射なF関数に基づいて該奇数系列データBを変換したデータと偶数系列データBi+1との間における排他的論理和を中間データWi+1とする非線形変換処理と、
 前記中間データのうちのW(mはk以下の任意の奇数)からB(nはk以下の任意の偶数)への転置においてn≠m+2 mod k(x mod yはxをyで割ったときの余り)なる関係を満たすものを少なくとも1つ含み、WからBへの転置においてm≠n+2 mod kなる関係を満たすものを少なくとも1つ含み、WをBに転置する場合にはWm+1をBn-1に転置しないようにして、前記中間データ{W,W2,…,W}をデータ{B,B2,…,B}に転置する転置処理とをコンピュータに実行させる。
 本発明の暗号化装置、暗号化方法及びプログラムによると、k系列一般化Feistel型の共通鍵ブロック暗号の不能差分攻撃及び飽和攻撃に対する耐性を、実装規模を増加させることなく向上させることができる。
Feistel構造1ラウンドの例を示す図である。 k系列一般化Feistel構造1ラウンドの例を示す図である。 6系列一般化Feistel構造における差分の拡散の例を示す図である。 6系列一般化Feistel構造における飽和特性の伝搬の例を示す図である。 6系列一般化Feistel構造の飽和特性を平文側へ拡張した図である。 8系列一般化Feistel構造のデータの拡散の様子を示す図である。 一般化Feistel構造の分割数毎のデータ拡散の過程で発生する衝突発生回数と割合を示す図である。 本発明の第1の実施形態に係る暗号化装置の構成を示すブロック図である。 本発明の第1の実施形態に係る暗号化装置(6系列)の構成を一例として示すブロック図である。 本発明の第1の実施形態に係る暗号化装置(6系列)の構成を一例として示す図である。 本発明の第1の実施形態に係る暗号化装置(6系列)における、データの拡散の様子を示す図である。 本発明における分割数毎のデータが全体に拡散するために要するラウンド数、不能差分特性ラウンド数、飽和特性ラウンド数を示す図である。 本発明の第2の実施形態に係る暗号化装置の構成を示すブロック図である。 本発明の第2の実施形態に係る暗号化装置の暗号化部におけるk系列一般化Feistel処理部の構成を示すブロック図である。 本発明の第2の実施形態に係る暗号化装置の復号化部におけるk系列一般化Feistel処理部の構成を示すブロック図である。 本発明の第2の実施形態に係る暗号化装置の復号化部における6系列一般化Feistel処理部の構成を示す図である。 本発明の第3の実施形態に係る通信装置の構成を示すブロック図である。
 第1の展開形態の暗号化装置は、上記第1の視点に係る暗号化装置であることが好ましい。
 第2の展開形態の暗号化装置は、
 前記転置部が、
 前記中間データのうちの奇数系列データの転置行う奇数系列転置部と、
 前記中間データのうちの偶数系列データの転置を行う偶数系列転置部と備えていることが好ましい。
 第3の展開形態の暗号化装置は、前記非線形変換部と前記転置部とから成るk系列一般化Feistel処理部を複数備えていることが好ましい。
 第4の展開形態の暗号化装置は、
 前記非線形変換部と前記転置部とから成るk系列一般化Feistel処理部を複数有する暗号化部を備え、
 前記暗号化部は、鍵データから生成された複数の拡大鍵と平文データを前記複数のk系列一般化Feistel処理部に入力して、該平文データを暗号化するようにしてもよい。
 第5の展開形態の暗号化装置は、
 前記非線形変換部と前記転置部とから成るk系列一般化Feistel処理部を複数有する復号化部を備え、
 前記復号化部は、鍵データから生成された複数の拡大鍵と暗号文データを前記複数のk系列一般化Feistel処理部に入力して、該暗号文データを復号化するようにしてもよい。
 第6の展開形態の暗号化装置は、鍵データから複数の拡大鍵を生成する拡大鍵生成部を備えていてもよい。
 第7の展開形態において、転置部は、前記k系列が8系列である場合には、所定の3通りの転置処理のうちのいずれかによる転置を行い、前記k系列が10系列である場合には、所定の5通りの転置処理のうちのいずれかによる転置を行い、前記k系列が12系列である場合には、所定の59通りの転置処理のうちのいずれかによる転置を行い、前記k系列が14系列である場合には、所定の44通りの転置処理のうちのいずれかによる転置を行い、前記k系列が16系列である場合には、所定の23通りの転置処理のうちのいずれかによる転置を行う、暗号化装置が提供される。
 第8の展開形態の暗号化方法は、上記第2の視点に係る暗号化方法であることが好ましい。
 第9の展開形態の暗号化方法は、前記非線形変換工程と前記転置工程を複数回繰り返す工程を含むことが好ましい。
 第10の展開形態の暗号化方法は、
 鍵データから生成された複数の拡大鍵と平文データを受信する工程と、
 前記非線形変換工程と前記転置工程を複数回繰り返して、前記平文データを暗号化する工程とを含んでいてもよい。
 第11の展開形態の暗号化方法は、
 鍵データから生成された複数の拡大鍵と暗号文データを受信する工程と、
 前記非線形変換工程と前記転置工程を複数回繰り返して、前記暗号文データを復号化する工程とを含んでいてもよい。
 第12の展開形態のプログラムは、上記第3の視点に係るプログラムであることが好ましい。
 第13の展開形態のプログラムは、前記非線形変換処理と前記転置処理を複数回繰り返す処理をコンピュータに実行させることが好ましい。
 第14の展開形態のプログラムは、
 鍵データから生成された複数の拡大鍵と平文データを受信する処理と、
 前記非線形変換処理と前記転置処理を複数回繰り返して、前記平文データを暗号化する処理とをコンピュータに実行させるようにしてもよい。
 第15の展開形態のプログラムは、
 鍵データから生成された複数の拡大鍵と暗号文データを受信する処理と、
 前記非線形変換処理と前記転置処理を複数回繰り返して、前記暗号文データを復号化する処理とをコンピュータに実行させるようにしてもよい。
 なお、上記のプログラムは、コンピュータ読み取り可能な記録媒体に格納されたものであってもよい。
 (実施形態1)
 本発明の第1の実施形態に係る暗号化装置について、図面を参照して説明する。図8は、本実施形態に係る暗号化装置10の構成を示すブロック図である。図8を参照すると、暗号化装置10は、非線形変換部18及び転置部19を有する。
 非線形変換部18は、k系列のデータ{B,B,…,B}(kは6以上の偶数)のうちのk/2個の奇数系列データB(i=1,3,…,k-1)をそれぞれ中間データWとする。また、非線形変換部18は、鍵データの値に応じて変換後の値が決定される全単射なF関数に基づいて該奇数系列データBを変換したデータと偶数系列データBi+1との間における排他的論理和を中間データWi+1とする。
 転置部19は、前記中間データ{W,W2,…,W}をデータ{B,B2,…,B}に転置する。このとき、転置部19は、前記中間データのうちのW(mはk以下の任意の奇数)からB(nはk以下の任意の偶数)への転置においてn≠m+2 mod k(x mod yはxをyで割ったときの余り)なる関係を満たすものを少なくとも1つ含み、WからBへの転置においてm≠n+2 mod kなる関係を満たすものを少なくとも1つ含み、WをBに転置する場合にはWm+1をBn-1に転置しないようにする。、
 暗号化装置10は、非線形変換部18と転置部19から成る対を複数有することが好ましい。
 図9は、本実施形態の暗号化装置10を、一例として、6系列一般化Feistel構造に対して適用した場合の構成を示す図である。
 非線形変換部80から出力される6つの中間データを左からW、W、…、Wとすると、転置部81は、WをBr+1,2に、WをBr+1,3に、WをBr+1,6に、WをBr+1,1に、WをBr+1,4に、WをBr+1,5に転置する(以降、この転置処理を{2,3,6,1,4,5}と記述する)。この転置処理においては、偶数系列から奇数系列に転置されるとともに、奇数系列から偶数系列に転置されている。
 また、奇数系列中間データWはBr+1,2に転置されているので、m=1、n=2であり、W(=Wm+2)はBr+1,6(=n+4 mod 6)に転置されていることから、n=m+2 mod 6という関係にはない。同様に、偶数系列中間データWはBr+1,3に転置されているので、n=2、m=3という関係があり、W(=Wn+2)はBr+1,1(m+3 mod 6)に転置されていることから、m=n+2 mod 6という関係にはない。そして、W(i=1,3,5)とWi+1の転置先が、それぞれW(jはk以下の偶数)とWj-1になることはない。
 図10は、図9に示した暗号化装置の転置部81の構成を変形したものを示す。図10を参照すると、転置部90の転置は{4,5,2,3,6,1}であり、転置部81(図9)とは異なる転置である。しかしながら、図10の構造は、図9の入力データBと出力データBr+1をそれぞれ左に2系列巡回シフトしたものであるため、入力データと出力データの関係は同一である。この関係は複数ラウンド繰り返しても変わらないため、図9と図10の変換の写像は同一とみなすことができる。したがって、転置部81(図9)と転置部90(図10)の拡散性は同一である。
 k系列の場合には、このような入れ替えの組み合わせは、kの階乗通り存在する。上記の転置部81、90は、写像としては異なるものである。本実施形態の暗号化装置10の転置部19における転置処理の具体例を、8系列から16系列までについて以下に示す。
 8系列
{2,3,6,7,8,5,4,1}
{4,5,2,3,8,1,6,7}
{2,5,4,7,8,1,6,3}
 10系列
{2,3,10,5,4,9,6,7,8,1}
{2,3,10,5,8,9,4,7,6,1}
{6,3,2,7,4,5,10,1,8,9}
{2,3,6,7,8,9,4,1,10,5}
{2,5,8,3,10,1,4,9,6,7}
 12系列
{2,3,4,5,8,1,10,11,6,7,12,9}
{2,3,4,5,8,9,10,11,6,1,12,7}
{2,3,6,1,4,7,10,5,8,11,12,9}
{2,3,6,1,4,7,10,11,12,9,8,5}
{2,3,6,1,8,9,4,5,12,7,10,11}
{2,3,6,1,8,9,4,11,10,7,12,5}
{2,3,6,1,8,9,10,5,4,11,12,7}
{2,3,6,1,8,9,10,11,4,7,12,5}
{2,3,6,7,4,9,10,11,12,1,8,5}
{2,3,6,7,4,9,12,1,8,5,10,11}
{2,3,6,7,4,9,12,5,8,11,10,1}
{2,3,6,7,8,1,10,11,4,5,12,9}
{2,3,6,7,8,1,10,11,12,5,4,9}
{2,3,6,7,8,5,10,11,4,1,12,9}
{2,3,6,7,8,5,10,11,12,1,4,9}
{2,3,6,7,8,5,10,11,12,9,4,1}
{2,3,6,7,8,9,4,1,12,5,10,11}
{2,3,6,7,8,9,4,11,12,1,10,5}
{2,3,6,7,8,9,10,5,12,1,4,11}
{2,3,6,7,8,9,10,11,12,5,4,1}
{2,3,6,7,8,9,12,1,4,11,10,5}
{2,3,6,7,8,9,12,5,4,1,10,11}
{2,3,6,7,8,9,12,5,10,11,4,1}
{2,3,6,7,10,1,4,9,12,5,8,11}
{2,3,6,7,10,1,4,11,12,9,8,5}
{2,3,6,7,10,1,12,9,8,5,4,11}
{2,3,6,7,10,1,12,9,8,11,4,5}
{2,3,6,7,10,5,12,9,8,11,4,1}
{2,3,6,7,10,11,4,5,8,1,12,9}
{2,3,6,7,10,11,4,5,12,9,8,1}
{2,3,6,7,10,11,4,9,12,1,8,5}
{2,3,6,7,10,11,8,9,12,1,4,5}
{2,3,6,7,10,11,12,1,4,9,8,5}
{2,3,6,7,10,11,12,9,4,1,8,5}
{2,3,6,7,10,11,12,9,4,5,8,1}
{2,3,6,7,10,11,12,9,8,1,4,5}
{2,3,6,7,10,11,12,9,8,5,4,1}
{4,1,2,5,8,3,6,9,12,7,10,11}
{4,1,2,5,8,9,10,3,12,7,6,11}
{4,1,2,5,8,9,10,7,12,3,6,11}
{4,1,2,5,8,9,12,3,6,7,10,11}
{4,1,2,5,8,9,12,7,6,3,10,11}
{4,1,6,3,2,7,10,11,12,9,8,5}
{4,1,6,7,2,9,12,5,8,11,10,3}
{4,1,6,7,8,3,10,11,12,9,2,5}
{4,1,6,7,8,5,10,11,12,3,2,9}
{4,1,6,7,8,9,12,3,2,11,10,5}
{4,1,6,7,10,3,12,5,8,11,2,9}
{4,1,6,7,10,3,12,9,2,11,8,5}
{4,1,6,7,10,5,12,9,2,11,8,3}
{4,1,6,7,10,11,2,5,12,3,8,9}
{4,1,6,7,10,11,2,5,12,9,8,3}
{4,1,6,7,10,11,2,9,12,5,8,3}
{4,1,6,7,10,11,12,3,8,5,2,9}
{4,1,6,7,10,11,12,5,2,3,8,9}
{4,1,6,7,10,11,12,9,2,3,8,5}
{4,1,6,7,10,11,12,9,2,5,8,3}
{4,1,6,7,10,11,12,9,8,3,2,5}
{4,1,6,7,10,11,12,9,8,5,2,3}
 14系列
{2,3,10,5,4,7,14,9,8,11,12,13,6,1}
{2,3,10,5,14,7,8,9,6,11,4,13,12,1}
{2,3,12,5,4,7,14,9,10,11,8,13,6,1}
{6,3,2,5,12,7,4,9,14,11,10,13,8,1}
{6,3,10,5,2,7,14,9,8,11,4,13,12,1}
{6,3,10,5,4,7,2,9,14,11,8,13,12,1}
{6,3,14,5,12,7,4,9,2,11,10,13,8,1}
{2,3,8,5,4,7,14,9,6,13,10,11,12,1}
{2,3,8,5,6,7,12,9,4,13,14,11,10,1}
{2,3,8,5,12,7,14,9,6,13,4,11,10,1}
{2,3,10,5,4,7,8,9,12,13,14,11,6,1}
{2,3,10,5,6,7,12,9,8,13,14,11,4,1}
{2,3,10,5,12,7,8,9,6,13,14,11,4,1}
{2,3,12,5,10,7,4,9,8,13,14,11,6,1}
{2,3,12,5,10,7,6,9,4,13,14,11,8,1}
{2,3,12,5,14,7,8,9,6,13,10,11,4,1}
{2,3,14,5,10,7,6,9,4,13,8,11,12,1}
{2,3,14,5,10,7,12,9,8,13,4,11,6,1}
{2,3,8,5,10,7,14,11,4,9,6,1,12,13}
{2,3,10,5,4,7,14,11,8,9,6,1,12,13}
{2,3,10,5,12,7,4,11,6,9,14,1,8,13}
{2,3,10,5,14,7,4,11,6,9,8,1,12,13}
{2,3,10,5,14,7,6,11,8,9,4,1,12,13}
{6,3,2,5,12,7,10,11,8,9,14,1,4,13}
{6,3,10,5,2,7,14,11,12,9,8,1,4,13}
{6,3,10,5,4,7,2,11,8,9,14,1,12,13}
{6,3,10,5,12,7,4,11,8,9,14,1,2,13}
{6,3,10,5,14,7,4,11,2,9,8,1,12,13}
{6,3,12,5,10,7,14,11,4,9,8,1,2,13}
{8,3,2,5,10,7,4,11,12,9,14,1,6,13}
{8,3,2,5,10,7,6,11,12,9,14,1,4,13}
{2,3,8,5,4,7,10,11,12,13,6,1,14,9}
{2,3,10,5,4,7,8,11,12,13,14,1,6,9}
{2,3,10,5,12,7,4,11,6,13,8,1,14,9}
{8,3,2,5,10,7,6,11,4,13,14,1,12,9}
{8,3,2,5,10,7,6,11,12,13,14,1,4,9}
{2,3,12,5,4,9,6,7,14,1,8,13,10,11}
{2,3,12,5,8,9,14,7,6,1,4,13,10,11}
{2,3,8,5,6,9,10,11,14,1,4,13,12,7}
{2,3,8,5,14,9,6,11,4,1,12,13,10,7}
{8,3,2,5,14,9,6,11,12,1,4,13,10,7}
{2,3,10,7,4,5,14,1,6,11,8,13,12,9}
{2,3,10,7,12,5,6,1,14,11,8,13,4,9}
{2,3,10,7,14,5,4,1,8,11,6,13,12,9}
 16系列
{2,3,10,5,16,7,6,9,14,11,8,15,12,13,4,1}
{2,3,12,5,14,7,16,9,6,11,10,15,8,13,4,1}
{2,3,12,5,10,7,8,9,16,13,6,11,4,1,14,15}
{2,3,12,5,10,7,16,9,6,13,8,11,4,1,14,15}
{6,3,10,5,2,7,12,9,16,13,4,11,8,1,14,15}
{6,3,10,5,12,7,16,9,4,13,2,11,8,1,14,15}
{6,3,12,5,2,7,16,9,4,13,14,11,8,1,10,15}
{2,3,10,5,12,7,8,9,16,13,14,15,4,1,6,11}
{2,3,12,5,4,7,8,9,16,13,6,15,10,1,14,11}
{2,3,12,5,10,7,8,9,16,13,14,15,4,1,6,11}
{2,3,12,5,10,7,8,9,16,13,14,15,6,1,4,11}
{2,3,12,5,10,7,16,9,6,13,8,15,4,1,14,11}
{2,3,10,5,14,7,8,11,6,9,16,1,12,15,4,13}
{6,3,14,5,2,7,10,11,12,9,16,1,8,15,4,13}
{8,3,14,5,12,9,4,7,16,1,10,11,2,15,6,13}
{8,3,14,5,12,9,10,7,16,1,4,11,6,15,2,13}
{2,3,12,5,16,9,4,7,8,1,10,13,6,15,14,11}
{2,3,8,5,16,9,14,11,4,1,12,13,10,15,6,7}
{2,3,10,5,8,9,6,11,16,1,4,13,14,15,12,7}
{6,3,2,7,12,5,14,1,4,9,16,13,8,15,10,11}
{6,3,12,7,4,5,16,1,14,9,10,13,2,15,8,11}
{2,3,6,7,8,9,12,1,16,5,10,13,14,15,4,11}
{6,3,12,7,14,9,16,1,4,5,10,13,2,15,8,11}
 次に、本実施形態の効果について図面を参照して説明する。図11は、図9に示した暗号化装置におけるデータ波及の様子を示す図である。系列2のデータは5ラウンドで全系列に波及しており、転置処理が巡回シフトの場合よりも1ラウンド少なくなっている。図3に示したように、転置処理が巡回シフトの場合には、第4ラウンドで最初の衝突が発生する。しかしながら、本実施形態の暗号化装置の転置処理によると、第4ラウンドで衝突することなく、まだ拡散していない系列へ拡散しており、この結果、第5ラウンドで全系列にデータが波及している。
 図12は、上記に示した転置処理手段を用いた場合のデータが全系列に波及するために必要なラウンド数を示した表である。図3や図6からわかるように、転置処理が巡回シフトの場合は全系列に波及するまでにkラウンド必要である。したがって、本実施形態の暗号化装置10の転置部81を用いることで、全系列に波及するまでのラウンド数が削減される。さらに、分割数kが大きくなるほど削減効果が大きくなっている。また、不能差分特性ラウンド数と飽和特性ラウンド数は拡散に要するラウンド数の約2倍のラウンド数であり、図3に示した方法における特性ラウンド数よりも大幅に削減することができる。
 以上より、本実施形態の暗号化装置の効果として、一般化Feistel構造の規模をほぼ保ったまま、不能差分攻撃や飽和攻撃に対する耐性を向上させることができ、この結果として、処理性能を向上させることができる。また、転置部19における転置処理はビットデータの入れ替えにすぎないことから、ハードウェア実装又はソフトウェア実装のいずれの方式であっても転置パタンが変わることによって実装規模が増加することはない。
 (実施形態2)
 本発明の第2の実施形態に係る暗号化装置について、図面を参照して説明する。図13は、本実施形態の暗号化装置の構成を示すブロック図である。図13を参照すると、暗号化装置は、拡大鍵生成部12、暗号化部13及び復号化部14を有する。
 拡大鍵生成部12は、鍵データKから複数の拡大鍵K,K、…、Kを生成し、該拡大鍵K,K、…、Kを暗号化部13と復号化部14とに供給する。暗号化部13は、1ブロック分の平文データPと該拡大鍵K,K、…、Kが入力され、1ブロック分の暗号文データCを生成する。復号化部14は、1ブロック分の暗号文データCと該拡大鍵K,K、…、Kが入力され、1ブロック分の平文データPを生成する。
 暗号化部13は、R個のk系列一般化Feistel処理部130(kは6以上の偶数)を有する。まず、knビットの平文データPはk個のnビットデータに分割され、鍵データKとともにk系列一般化Feistel処理部130に入力され、データの攪拌が行われ、攪拌後のデータが出力される。r(2≦r≦R)ラウンドにおいは、(r-1)ラウンドのk系列一般化Feistel処理部130からの出力と鍵データKが入力され、データと拡大鍵との攪拌が繰り返される。Rラウンドのk系列一般化Feistel処理部130からのk個の出力を連結したknビットのデータが、暗号文データCとして出力される。
 復号化部14は、R個のk系列一般化Feistel処理部140を有する。まず、knビットの暗号文データCはk個のnビットデータに分割され、鍵データKとともにk系列一般化Feistel処理部140に入力され、データの攪拌が行われ、攪拌後のデータが出力される。r(2≦r≦R)ラウンドにおいては、(r-1)ラウンドのk系列一般化Feistel処理部140からの出力と鍵データK’が入力され、データと拡大鍵との攪拌が繰り返される。Rラウンドのk系列一般化Feistel処理部140からのk個の出力を連結したknビットのデータが、平文データPとして出力される。なお、図13に示すように、復号化部14における拡大鍵の使用順序は、暗号化部13における順序とは逆である。
 図14は、本実施形態に係る暗号化装置の暗号化部13におけるk系列一般化Feistel処理部130の構成を示すブロック図である。図14を参照すると、k系列一般化Feistel処理部130は、非線形変換部131、奇数系列転置部132及び偶数系列転置部133を有する。
 非線形変換部131は、k/2個のF関数を有する。k個の入力データB,B,…,BのうちB(iはk以下の奇数)がそれぞれF関数へ入力される。F関数は、一般的な暗号アルゴリズムで用いられるS-boxなどの非線形変換処理を行う。拡大鍵データKは、k/2個に均等分割され、各々がF関数に入力され、入力データBと攪拌される。F関数から出力されたk/2個のnビットのデータのそれぞれと、入力データB(jはk以下の偶数)との間における排他的論理和を中間データWとする。また、入力データBを、そのまま中間データWとする。
 奇数系列転置部132は、k個の中間データのうちの奇数系列データの転置を行い、k系列一般化Feistel処理部130の出力データのうちの偶数系列データとして出力する。偶数系列転置部133は、k個の中間データのうちの偶数系列データの転置を行い、k系列一般化Feistel処理部130の出力データのうちの奇数系列データとして出力する。これらの転置部における入力系列と出力系列の対応は、分割数kに応じて最適なものを適用することが好ましい。
 図15は、本実施形態に係る暗号化装置の復号化部14におけるk系列一般化Feistel処理部140の構成を示すブロック図である。図14を参照すると、k系列一般化Feistel処理部140は、奇数系列逆転置部141、偶数系列逆転置部142及び非線形変換部131を有する。
 奇数系列逆転置部141は、k系列一般化Feistel処理部140への入力データのうちの奇数系列データの転置を行い、k系列一般化Feistel処理部140への入力データのうちの偶数系列データとして出力する。奇数系列逆転置部141の転置処理は、偶数系列転置部133に対して、入力と出力とが逆の関係にある。
 偶数系列逆転置部142は、k系列一般化Feistel処理部140への入力データのうちの偶数系列データの転置を行い、k系列一般化Feistel処理部130への入力データのうちの奇数系列データとして出力する。偶数系列逆転置部142の転置処理は、奇数系列転置部132に対して、入力と出力とが逆の関係にある。
 図9で示した6系列一般化Feistel構造の転置部81を、奇数系列と偶数系列に分けて記述すると、奇数系列転置部132は{2、6、4}、偶数系列転置部133は{3、1、5}となり、奇数系列逆転置部141は{4,2,6}、偶数系列逆転置部142は{1,5,3}となる。図16は、復号化部14におけるk系列一般化Feistel処理部140(k=6)の構成を、かかる場合について示す図である。
 (実施形態3)
 本発明の第3の実施形態に係る通信装置について、図面を参照して説明する。上記実施形態の暗号化装置は、音声通信端末やデータ通信装置のような通信装置において、通信データを秘匿するためデータ処理部として用いることができる。図17は、本実施形態に係る通信装置16の構成を示すブロック図である。図17を参照すると、通信装置16は、データ圧縮部161、暗号化部162、符号化部163、復号化部164及びデータ復元部165を有する。
 データを送信する場合には、データ圧縮部161は、送信前データに対するデータの圧縮を行う。次に、暗号化部162は、圧縮されたデータの暗号化を行う。暗号化部162として第1及び第2の実施形態に係る暗号化装置を用いることができる。最後に、符号化部163は、暗号化したデータに対してエラー訂正用の符号化を行い、暗号化送信データとして送信する。
 データを受信する場合には、符号化部163は、暗号化受信データのエラー訂正を行う。次に、復号化部164は、エラー訂正されたデータを復号する。最後に、データ復元部165は、データの圧縮を解いて復元データを求める。
 なお、実施形態1乃至3に係る暗号化装置は、コンピュータ上で動作するプログラム、及び、LSIなどのハードウェアによっても実現しうる。また、プログラムは、コンピュータ読み取り可能な記録媒体に記録して提供することもできる。
本発明の全開示(請求の範囲及び図面を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素の多様な組み合わせ乃至選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
10 暗号化装置
12 拡大鍵生成部
13 暗号化部
14 復号化部
16 通信装置
18、20、80、131 非線形変換部
19、21、81、90 転置部
30 データ
31 分岐
32~35、60~68 排他的論理和
40、41 全数データ
130、140 k系列一般化Feistel処理部
132 奇数系列転置部
133 偶数系列転置部
141 奇数系列逆転置部
142 偶数系列逆転置部
161 データ圧縮部
162 暗号化部
163 符号化部
164 復号化部
165 データ復元部

Claims (15)

  1.  k系列のデータ{B,B,…,B}(kは6以上の偶数)のうちのk/2個の奇数系列データB(i=1,3,…,k-1)をそれぞれ中間データWとするとともに、鍵データの値に応じて変換後の値が決定される全単射なF関数に基づいて該奇数系列データBを変換したデータと偶数系列データBi+1との間における排他的論理和を中間データWi+1とする非線形変換部と、
     前記中間データのうちのW(mはk以下の任意の奇数)からB(nはk以下の任意の偶数)への転置においてn≠m+2 mod k(x mod yはxをyで割ったときの余り)なる関係を満たすものを少なくとも1つ含み、WからBへの転置においてm≠n+2 mod kなる関係を満たすものを少なくとも1つ含み、WをBに転置する場合にはWm+1をBn-1に転置しないようにして、前記中間データ{W,W2,…,W}をデータ{B,B2,…,B}に転置する転置部とを備えていることを特徴とする暗号化装置。
  2.  前記転置部は、
     前記中間データのうちの奇数系列データの転置行う奇数系列転置部と、
     前記中間データのうちの偶数系列データの転置を行う偶数系列転置部とを備えていることを特徴とする、請求項1に記載の暗号化装置。
  3.  前記非線形変換部と前記転置部とから成るk系列一般化Feistel処理部を複数備えていることを特徴とする、請求項1又は2に記載の暗号化装置。
  4.  前記非線形変換部と前記転置部とから成るk系列一般化Feistel処理部を複数有する暗号化部を備え、
     前記暗号化部は、鍵データから生成された複数の拡大鍵と平文データを前記複数のk系列一般化Feistel処理部に入力して、該平文データを暗号化することを特徴とする、請求項3に記載の暗号化装置。
  5.  前記非線形変換部と前記転置部とから成るk系列一般化Feistel処理部を複数有する復号化部を備え、
     前記復号化部は、鍵データから生成された複数の拡大鍵と暗号文データを前記複数のk系列一般化Feistel処理部に入力して、該暗号文データを復号化することを特徴とする、請求項3又は4に記載の暗号化装置。
  6.  鍵データから複数の拡大鍵を生成する拡大鍵生成部を備えていることを特徴とする、請求項4又は5に記載の暗号化装置。
  7.  前記転置部は、前記k系列が8系列である場合には、所定の3通りの転置処理のうちのいずれかによる転置を行い、前記k系列が10系列である場合には、所定の5通りの転置処理のうちのいずれかによる転置を行い、前記k系列が12系列である場合には、所定の59通りの転置処理のうちのいずれかによる転置を行い、前記k系列が14系列である場合には、所定の44通りの転置処理のうちのいずれかによる転置を行い、前記k系列が16系列である場合には、所定の23通りの転置処理のうちのいずれかによる転置を行うことを特徴とする、請求項1ないし6のいずれか1項に記載の暗号化装置。
  8.  k系列のデータ{B,B,…,B}(kは6以上の偶数)のうちのk/2個の奇数系列データB(i=1,3,…,k-1)をそれぞれ中間データWとするとともに、鍵データの値に応じて変換後の値が決定される全単射なF関数に基づいて該奇数系列データBを変換したデータと偶数系列データBi+1との間における排他的論理和を中間データWi+1とする非線形変換工程と、
     前記中間データのうちのW(mはk以下の任意の奇数)からB(nはk以下の任意の偶数)への転置においてn≠m+2 mod k(x mod yはxをyで割ったときの余り)なる関係を満たすものを少なくとも1つ含み、WからBへの転置においてm≠n+2 mod kなる関係を満たすものを少なくとも1つ含み、WをBに転置する場合にはWm+1をBn-1に転置しないようにして、前記中間データ{W,W2,…,W}をデータ{B,B2,…,B}に転置する転置工程とを含むことを特徴とする暗号化方法。
  9.  前記非線形変換工程と前記転置工程を複数回繰り返す工程を含むことを特徴とする、請求項8に記載の暗号化方法。
  10.  鍵データから生成された複数の拡大鍵と平文データを受信する工程と、
     前記非線形変換工程と前記転置工程を複数回繰り返して、前記平文データを暗号化する工程とを含むことを特徴とする、請求項9に記載の暗号化方法。
  11.  鍵データから生成された複数の拡大鍵と暗号文データを受信する工程と、
     前記非線形変換工程と前記転置工程を複数回繰り返して、前記暗号文データを復号化する工程とを含むことを特徴とする、請求項9又は10に記載の暗号化方法。
  12.  k系列のデータ{B,B,…,B}(kは6以上の偶数)のうちのk/2個の奇数系列データB(i=1,3,…,k-1)をそれぞれ中間データWとするとともに、鍵データの値に応じて変換後の値が決定される全単射なF関数に基づいて該奇数系列データBを変換したデータと偶数系列データBi+1との間における排他的論理和を中間データWi+1とする非線形変換処理と、
     前記中間データのうちのW(mはk以下の任意の奇数)からB(nはk以下の任意の偶数)への転置においてn≠m+2 mod k(x mod yはxをyで割ったときの余り)なる関係を満たすものを少なくとも1つ含み、WからBへの転置においてm≠n+2 mod kなる関係を満たすものを少なくとも1つ含み、WをBに転置する場合にはWm+1をBn-1に転置しないようにして、前記中間データ{W,W2,…,W}をデータ{B,B2,…,B}に転置する転置処理とをコンピュータに実行させることを特徴とするプログラム。
  13.  前記非線形変換処理と前記転置処理を複数回繰り返す処理をコンピュータに実行させることを特徴とする、請求項12に記載のプログラム。
  14.  鍵データから生成された複数の拡大鍵と平文データを受信する処理と、
     前記非線形変換処理と前記転置処理を複数回繰り返して、前記平文データを暗号化する処理とをコンピュータに実行させることを特徴とする、請求項13に記載のプログラム。
  15.  鍵データから生成された複数の拡大鍵と暗号文データを受信する処理と、
     前記非線形変換処理と前記転置処理を複数回繰り返して、前記暗号文データを復号化する処理とをコンピュータに実行させることを特徴とする、請求項13又は14に記載のプログラム。
PCT/JP2010/068962 2009-10-27 2010-10-26 暗号化装置、暗号化方法及びプログラム WO2011052585A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201080048757.8A CN102713994B (zh) 2009-10-27 2010-10-26 加密装置
JP2011538429A JP5617845B2 (ja) 2009-10-27 2010-10-26 暗号化装置、暗号化方法及びプログラム
US13/504,421 US8731189B2 (en) 2009-10-27 2010-10-26 Information processing device, information processing method
HK12113163.0A HK1172437A1 (en) 2009-10-27 2012-12-20 Information processing device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-246306 2009-10-27
JP2009246306 2009-10-27

Publications (1)

Publication Number Publication Date
WO2011052585A1 true WO2011052585A1 (ja) 2011-05-05

Family

ID=43922010

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/068962 WO2011052585A1 (ja) 2009-10-27 2010-10-26 暗号化装置、暗号化方法及びプログラム

Country Status (5)

Country Link
US (1) US8731189B2 (ja)
JP (2) JP5617845B2 (ja)
CN (1) CN102713994B (ja)
HK (1) HK1172437A1 (ja)
WO (1) WO2011052585A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012215813A (ja) * 2011-03-28 2012-11-08 Sony Corp 暗号処理装置、および暗号処理方法、並びにプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2966953B1 (fr) * 2010-11-02 2015-08-28 St Microelectronics Rousset Procede de contremesure cryptographique par derivation d'une donnee secrete
JP6052166B2 (ja) * 2011-04-11 2016-12-27 日本電気株式会社 暗号化方法、暗号化装置および暗号化プログラム
CN104579635B (zh) * 2015-01-27 2018-07-06 聚辰半导体(上海)有限公司 可循环迭代抗侧信道攻击的des***及实现可重映射sbox方法
CN109768854B (zh) * 2019-03-29 2020-02-04 衡阳师范学院 一种轻量级分组密码算法的实现方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008013076A1 (fr) * 2006-07-28 2008-01-31 Sony Corporation Dispositif de traitement par cryptage, procédé d'établissement d'un algorithme de traitement par cryptage, procédé de traitement par cryptage et programme informatique

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000066587A (ja) * 1998-08-24 2000-03-03 Toshiba Corp データ処理装置及び通信システム並びに記録媒体
JP4967544B2 (ja) * 2006-09-01 2012-07-04 ソニー株式会社 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
US8416947B2 (en) * 2008-02-21 2013-04-09 Red Hat, Inc. Block cipher using multiplication over a finite field of even characteristic
JP4796658B1 (ja) * 2010-12-09 2011-10-19 セルジョ ギラルデッリ 暗号化装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008013076A1 (fr) * 2006-07-28 2008-01-31 Sony Corporation Dispositif de traitement par cryptage, procédé d'établissement d'un algorithme de traitement par cryptage, procédé de traitement par cryptage et programme informatique

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SHIRAI, T. ET AL.: "On Generalized Feistel Structures Using the Diffusion Switching Mechanism", IEICE TRANSACTIONS ON FUNDAMENTALS OF ELECTRONICS, COMMUNICATIONS COMPUTER SCIENCES, 1 August 2008 (2008-08-01), pages 2120 - 2129, XP001515820, DOI: doi:10.1093/ietfec/e91-a8.2120 *
ZHENG, Y. ET AL.: "On the Construction of Block Ciphers Provably Secure and Not Relying on Any Unproved Hypotheses", LECTURE NOTES IN COMPUTER SCIENCE, vol. 435, 1990, pages 461 - 480, XP055129264, DOI: doi:10.1007/0-387-34805-0_42 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012215813A (ja) * 2011-03-28 2012-11-08 Sony Corp 暗号処理装置、および暗号処理方法、並びにプログラム
US8983062B2 (en) 2011-03-28 2015-03-17 Sony Corporation Encryption processing device, encryption processing method, and programme

Also Published As

Publication number Publication date
JP2014197913A (ja) 2014-10-16
US20120219150A1 (en) 2012-08-30
JP5617845B2 (ja) 2014-11-05
JPWO2011052585A1 (ja) 2013-03-21
HK1172437A1 (en) 2013-04-19
CN102713994B (zh) 2015-07-01
CN102713994A (zh) 2012-10-03
US8731189B2 (en) 2014-05-20

Similar Documents

Publication Publication Date Title
US6751319B2 (en) Block cipher method
Dunkelman et al. A practical-time related-key attack on the KASUMI cryptosystem used in GSM and 3G telephony
Dunkelman et al. A practical-time attack on the A5/3 cryptosystem used in third generation GSM telephony
US20120170739A1 (en) Method of diversification of a round function of an encryption algorithm
US20080232597A1 (en) Iterative symmetric key ciphers with keyed s-boxes using modular exponentiation
KR101770874B1 (ko) 암호 처리 장치, 암호 처리 방법, 컴퓨터로 판독가능한 기록 매체, 및 정보 처리 장치
WO2009087972A1 (ja) データ送信装置、データ受信装置、これらの方法、記録媒体、そのデータ通信システム
JP2014197913A (ja) 暗号化装置、暗号化方法及びプログラム
Alabdulrazzaq et al. Performance evaluation of cryptographic algorithms: DES, 3DES, blowfish, twofish, and threefish
Girija et al. A new substitution-permutation network cipher using Walsh Hadamard Transform
Vaudenay On the security of CS-cipher
Rawal Advanced encryption standard (AES) and it’s working
WO2012141189A1 (ja) 暗号化方法、暗号化装置および暗号化プログラム
WO2012105352A1 (ja) ブロック暗号化装置、復号装置、暗号化方法、復号方法およびプログラム
Biham et al. New combined attacks on block ciphers
EP1016240A1 (en) Improved block cipher method
Ledda et al. Enhancing IDEA algorithm using circular shift and middle square method
Yap et al. Parallelizing the Camellia and SMS4 block ciphers
JP5293612B2 (ja) 暗号化装置、復号装置、暗号化方法、復号方法およびプログラム
Usman et al. A data specific comparative study for choosing best cryptographic technique
JP3371981B2 (ja) ブロック暗号作成装置
Mondal et al. Revisiting Yoyo Tricks on AES
Ding The Data Encrytion standard in Detail
Lehmoud Proposed Hybrid Block Cipher Algorithm
Phan et al. On the security bounds of CMC, EME, EME+ and EME* modes of operation

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080048757.8

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10826717

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011538429

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 13504421

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10826717

Country of ref document: EP

Kind code of ref document: A1