Considering an HMAC algorithm: it shall guarantee integrity and authenticity. I don't understand what authenticity means: that signature could be generated by anyone having the shared secret key (non repudiation is not supported in symmetric crypo-algorithms). Then why could that message be considered authentic if it can be generated by anyone?
1 Answer
$\begingroup$
$\endgroup$
2
"anyone having the shared secret key" is the important part. Usually the secret key is only shared between two sides (Sender and Receiver), so when Receiver receives message with authentication tag (e.g. HMAC), he knows that, unless someone stole the shared secret, the message was really sent by Sender.
-
$\begingroup$ You make the assumption that a secret key is usually shared only between two sides: I think this assumption is very strong because it could guarantee the non-repudiation too. If only two sides have the secret key and one is the recepient, the other one shall be the sender: hence the non repudiation property is satisfied. Am I right? $\endgroup$ Commented Jul 14, 2022 at 14:27
-
1$\begingroup$ Because both parties can compute the MAC since they know the key, it doesn't allow non-repudiation. $\endgroup$ Commented Jul 14, 2022 at 16:54