A symmetric-key cryptographic technique capable of realizing both
high-speed cryptographic processing having a high degree of parallelism,
and alteration detection. The invention includes dividing plaintext
composed of redundancy data and a message to generate plaintext blocks
each having a predetermined length, generating a random number sequence
based on a secret key, generating a random number block corresponding to
one of the plaintext blocks from the random number sequence, outputting a
feedback value obtained as a result of operation on the one plaintext
blocks and the random number block, the feedback value being fed back for
using in the operation on another plaintext blocks, and performing an
encryption operation using the one plaintext blocks, random number block,
and feedback value.