An encryption apparatus divides input original data into one or more data
blocks. The size of each data block is an integer multiple of the bank
size of a non-volatile memory equipped in a decryption apparatus. The
encryption apparatus generates authentication data from this data block.
The encryption apparatus generates encrypted data after it combines the
authentication data to the data block. On the other hand, a decryption
apparatus executes reverse processes to decrypt original data, and writes
it in a non-volatile memory.