A keyed function producing a tag that a holder of the shared secret can verify. Its message authentication security requires that valid tags for new messages cannot be forged under the allowed adversarial queries. Unlike a digital signature, verification is not inherently public and the verifier also knows a key capable of making tags.
Combine a secret randomly selected almost strongly universal hash family member with a fresh secret output mask. An observed message authentication code tag leaves the hash-selection key hidden, and the conditional hash bound controls substitution forgery probability. The message itself need not be encrypted. Mask reuse can reveal hash differences; repeated-use guarantees require fresh masks and an appropriate analysis of verification information. A one-use polynomial construction needs only two secret field elements, even for a much longer message.
Articles by others on the same topic
A Message Authentication Code (MAC) is a cryptographic checksum on data that provides integrity and authenticity assurances on a message. It is designed to protect both the message content from being altered and the sender's identity from being impersonated. ### Key Features of a MAC: 1. **Integrity**: A MAC helps to ensure that the message has not been altered in transit. If even a single bit of the message changes, the MAC will also change, allowing the recipient to detect the alteration.