A data processing method and apparatus are proposed for used in the
encryption, decryption and authentication of messages. A memory for
storing input information, a set of operations and a processor for
executing the operations on the stored input information are provided. The
input information is utilized to select the order and number of operations
performed. The operations are devised such that any possible input string
will be interpreted as a valid program and the memory is extensible.
Furthermore, data is output as a function of the input information. As a
result the state of the memory generated during execution is indeterminate
prior to execution and the process evolves differently for each possible
input string. Accordingly, the process performed by the module cannot be
described by an algorithm. The method and apparatus according to the
invention have a number of different applications particularly in the
field of cryptography including a random number generator, a one way hash
function generator or as a key generator for a cipher primitive in
encryption and decryption.