I need two devices to communicate in plain sight and I want to know what to ask for. Nothing is secret so no need to encrypt. However, I need the source to be authenticated to prevent bad actors from sending false communications. Is there a term for protocols that carry some authentication in each message which is validated on receipt and which only the sender can generate correctly?


Yes, this would be a message authentication code or MAC. It is a cryptographic hash that only the parties that have the secret key can compute.

  • Party A computes the MAC over the message.
  • Party A sends the MAC and the message to party B.
  • Party B computes the MAC over the message.
  • Party B now compares the computed MAC to the actual MAC, and knows whether the message has been tampered with, and wheter it came from someone who had the key.

There are also asymmetric solutions to this, where party A has the private key and party B has the public key. This means party B kan only verify messages, not create them. In this case it is called a digital signature, and the message is called a signed message.

  • I prefer using the term MAT (message authentication tag) to evade confusion with NIC MAC. – Overmind Mar 26 '19 at 11:13
  • Really appreciated. That is just what I needed to know. searched online for hours but never found that explanation. Greatly appreciated. – Richard Mar 26 '19 at 14:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.