摘要 |
A data encryption apparatus reduces a hardware gate scale over that of conventional technology which uses substitution tables, and realizes high scrambling performance. The data encryption apparatus includes a data converting unit that splits 256-bit input data into 32-bit data blocks A1, B1, A2, and B2. A first combining unit (43) performs an exclusive OR operation on A1 and B1, and on A2 and B2. A first scramble unit (44) branches A1, A2, and the results of the exclusive OR operations (C1 and C2) into three data blocks each, and for each set of three data blocks, shift-rotates two of the data blocks and combines the shifted data blocks with the remaining data block. A second combining unit (45) performs an exclusive OR operation on D1 and E2, and on D2 and E1, which are the results of the processing performed by the first scramble unit (44). A block concatenating unit (46) concatenates the results of the operations performed by the second combining unit (45). A second scramble unit (47) branches the concatenated data into three data blocks, shift-rotates two of the data blocks and combines the two shifted data blocks with the remaining data block.
|