To improve security at the time of authentication by comparing the authenti cation information returned from a communication opposite party which being the transmission destination of random numbers with authentication information generated in an authentication information operation part and authenticating the correctness of the communication opposite party.
A random number generation part 102 generates a random number (r) used for authentication/cipher processing and gives the random number (r) to the authentication information operation part 103 and a (g) operation part 105. The (f) operation part 103 inputs secret information Ka and the random number (r) to a function (f) and operates authentication information. An authentication part 4 compares authentication information obtained by an operation with authentication information received from a data reception side to authenticate whether the communication opposite party is really himself. The operation part 105 inputs the random number (r), secret information Ka and a block number to the function being a unilateral function and calculates a cryptographic key. A ciphering part 106 executes ciphering with the obtains cryptographic key and a ciphered sentence obtained by the ciphering is transmitted to the data reception side via an interface 100. Thus, it is impossible to decode the data, even if it is tapped by a third person.
NAKAGAWA SATOSHI