Block cipher apparatus using auxiliary transformation
AssigneesMitsubishi Denki Kabushiki Kaisha, Nippon Telegraph and Telephone Corporation
InventorsMitsuru Matsui, Toshio Tokita, Junko Nakajima, Masayuki Kanda, Shiho Moriai, Kazumaro Aoki
Life of this patent
Estimating the term…
Abstract
It is desired to share one circuit by an encryption unit 200 and a decryption unit 500. A normal data transformation unit (FL) 251 and an inverse data transformation unit ((FL−1)) 273 are located at point symmetry on a non-linear data transformation unit 220, and a normal data transformation unit (FL) 253 and an inverse data transformation unit ((FL−1)) 271 are located at point symmetry on the non-linear data transformation unit 220. Therefore, the encryption unit 200 and the decryption unit 500 can be configured using the same circuits.
Claims16
A data transformation apparatus having a data processing unit for inputting key data and performing at least one of encryption of data and decryption of data,
- wherein the data processing unit comprises a non-linear transformation unit for performing a non-linear transformation of data,
- wherein the non-linear transformation unit includes:
- a first transformation unit (s1) for inputting a part of data to be transformed as first partial data, transforming the first partial data using a transformation table T, which inputs data, transforms a value of the data into another value and outputs the data, and outputting transformed data;
- and
- a second transformation unit (s2) for inputting at least another part of the data to be transformed as second partial data, transforming the second partial data by a transformation using the transformation table T and an operation for second part, and outputting transformed data.
A data transformation apparatus having:
- a data processing unit for inputting key data and performing at least one of encryption of data and decryption of data;
- and,
- a key generating unit for generating key data to be used by the data processing unit and supplying the key data to the data processing unit,
- the data transformation apparatus comprising a non-linear function unit (F) including:
- a key function unit for performing a logical operation of data to be transformed and the key data;
- an S function unit for converting data to be transformed into other data;
- and
- a P function unit for performing a logical operation among pieces of data to be transformed, and
- wherein the key function unit is placed between the S function unit and the P function unit in the non-linear function unit (F).
A data transformation apparatus having:
- a data processing unit for inputting key data and performing at least one of encryption of data and decryption of data, and a key generating unit for generating key data to be used by the data processing unit and supplying the key data to the data processing unit,
- the data transformation apparatus comprising a non-linear function unit (F) including:
- a key function unit for performing a logical operation of data to be transformed and the key data;
- an S function unit for converting data to be transformed into other data;
- and
- a P function unit for performing a logical operation among pieces of data to be transformed, and
- wherein the key function unit is placed one of before the S function unit and the P function unit and after the S function unit and the P function unit in the non-linear function unit (F).
A data transformation apparatus having a data processing unit for inputting key data and performing at least one of encryption of data and decryption of data, the data transformation apparatus comprising
- a non-linear function unit (F) including a P function unit which performs a logical operation among pieces of data to be transformed, and
- wherein the P function unit inputs eight pieces of 4n-bit data (n is an integer greater than 1) z1, z2, . . . , z8 and includes:
- a circuit for performing an XOR operation of at least two of the four pieces of data z1, z2, z3, z4 to obtain 4n-bit operation result U1;
- a circuit for performing an XOR operation of at least two of the four pieces of data z5, z6, z7, z8 to obtain 4n-bit operation result U2;
- a circuit for performing an XOR operation of U1 and U2 to obtain 4n-bit operation result U3;
- a rotational circuit for performing a rotational shift on U1;
- and
- a circuit for performing an XOR operation of output from the rotational circuit and U3 to obtain 4n-bit operation result U4, and
- wherein the data transformation apparatus divides U3 and U4 into four pieces of data, respectively, and outputs eight pieces of n-bit data z′1, z′2, . . . , z′8.
A data transformation method for executing a data processing process for inputting key data and performing at least one of encryption of data and decryption of data,
- wherein the data processing process comprises a non-linear transformation process for performing a non-linear transformation of data,
- wherein the non-linear transformation process includes:
- a first transformation process (s1) for inputting a part of data to be transformed as first partial data, transforming the first partial data using a transformation table T, which inputs data, transforms a value of the data into another value and outputs the data, and outputting transformed data;
- and
- a second transformation process (s2) for inputting at least another part of data to be transformed as second partial data, transforming the second partial data by transformation using the transformation table T and an operation for second part, and outputting transformed data.
A data transformation method for executing a data processing process for inputting key data and performing at least one of encryption of data and decryption of data, and a key generating process for generating key data to be used by the data processing process and supplying the key data to the data processing process, the data transformation method comprising a non-linear function process (F) including:
- a key function process for performing a logical operation of data to be transformed and the key data;
- an S function process for converting data to be transformed into other data;
- and
- a P function process for performing a logical operation among pieces of data to be transformed, and
- wherein the key function process is placed between the S function process and the P function process in the non-linear function process (F).
A data transformation method for executing a data processing process for inputting key data and performing at least one of encryption of data and decryption of data, and a key generating process for generating key data to be used by the data processing process and supplying the key data to the data processing process, the data transformation method comprising a non-linear function process (F) including:
- a key function process for performing a logical operation of data to be transformed and the key data;
- an S function process for converting data to be transformed into other data;
- and
- a P function process for performing a logical operation among pieces of data to be transformed, and
- wherein the key function process is placed one of before the S function process and the P function process and after the S function process and the P function process in the non-linear function process (F).
A data transformation apparatus having a data processing unit for inputting key data and performing at least one of encryption of data and decryption of data, and a key generating unit for generating key data to be used by the data processing unit and supplying the key data to the data processing unit,
- wherein the data processing unit comprises a non-linear function unit (F) for performing a non-linear transformation on data to be transformed, and
- wherein the key generating unit processes the key data to be supplied to the non-linear function unit (F), supplies a processed key data to make an operation with data to a part other than the non-linear function unit (F) in the data processing unit.
A data transformation method for executing a data processing process of inputting key data and performing at least one of encryption of data and decryption of data, and a key generating process of generating key data which is used by the data processing process and supplying the key data to the data processing process,
- wherein the data processing process comprises a non-linear function process (F) for performing a non-linear transformation of data to be transformed, and
- wherein the key generating process processes the key data to be supplied to the non-linear function process (F), supplies a processed key data to make calculate data to a part other than the non-linear function process (F) in the data processing process.
Dependencies are inferred from the claim text.