An encryption/decryption unit includes a first data encryption/decryption section
for performing an encryption or decryption process, a first data substitution section
for performing data substitution of an output from the first encryption/decryption
section according to a predetermined permutation table, a second data encryption/decryption
section for performing an encryption or decryption process for an output from the
first data substitution section, a second data substitution section for performing
data substitution of an output from the second data encryption/decryption section
according to a predetermined permutation table, and a third data encryption/decryption
section for performing an encryption or decryption process for an output from the
second data substitution section.