A variable-length block encryption circuit having a simplified structure
and that reduces the load on a host computer. A plaintext memory and an
encryption/decryption circuit for encrypting or decrypting original data
in blocks. The original data is transferred to the plaintext memory from
the exterior. The transferred original data is supplied to the
encryption/decryption circuit and is subjected to encryption or
decryption in blocks. The result data is substituted for the original
data in the plaintext memory. When all transferred original data is
substituted, the result data is externally output.