Patent ID: 8341417

Claim:
A data processing apparatus, comprising: one or more processors; logic coupled to the one or more processors for execution and which, when executed by the one or more processors, causes: receiving a data set at the one or more processors; creating and storing a hash output value by applying the data set to a collision-resistant hash operation that provides the hash output value as output; encoding the hash output value, without encoding the data set, using a uniquely invertible keyed pseudo-random permutation operation based on a first shared key, to result in creating a first encoded authentication code associated with the data set; storing the first encoded authentication code in association with the data set; receiving a second key; re-encoding the hash output value based on the second key, to result in creating a second encoded authentication code, associated with the data set, without re-applying the data set to the hash operation; replacing the first encoded authentication code by storing the second encoded authentication code in association with the data set; wherein the first encoded authentication code is different than the second encoded authentication code; wherein subsequent to creating the second authentication code, a third authentication code is generated from the data set and compared to the second authentication code to determine whether the data set was altered.