Patent ID: 7039184
Filing Date: 2006-05-02
Classification: H04L

Abstract:
1. A computer-readable storage medium storing a program for controlling an encryption/decryption unit for encrypting a plaintext into a ciphertext and/or decrypting into a plaintext, the program comprising: first encryption/decryption means for performing an encryption or decryption process; first substitution means for performing data substitution of an output from said first encryption/decryption means according to a predetermined permutation table; second encryption/decryption means for performing an encryption or decryption process for an output from said first substitution means; second substitution means for performing data substitution of an output from said second encryption/decryption means according to a predetermined permutation table; third encryption/decryption means for performing an encryption or decryption process for an output from said second substitution means; key generating means for generating intermediate keys respectively supplied to said first, second, and third encryption/decryption means and said first and second substitution means, and said first and second substitution means functioning to perform identity conversion when the intermediate key generated by said key generating means contains predetermined data; wherein said key generating means comprises: dividing means for dividing key data K of a predetermined number of bits into a plurality of data and storing the divided data into respective registers; expanded permutation means for reading out the divided key data from the respective registers and effecting an expanded permutation on the divided key data; DES-SS key schedule means for generating intermediate keys K DES key schedule means for generating an intermediate key K Substitution schedule means for generating intermediate keys KK