Yes, there is an important one; The Non-Repudiation;
Non-repudiation refers to a situation where a statement's author cannot successfully dispute its authorship or the validity of an associated contract
The HMAC key is a symmetric key therefore there is no non-repudiation. Both sides can not claim that the other side sends them the message $m$. I.e. They both can forge messages and claim that the other side sent them.
In the RSA case, the signer uses their private key and the receiver verifies it with the singer's public key. Therefore, the sender can not refute the message and this can be used as proof in the courts. This is the digital version of the physical signatures, signing a paper.
In other words, both have integrity and authentication however only public-keys have Non-Repudiation. HMAC (it is a MAC) protects against message forgery against an attacker who doesn't have the key. Public key protects against message forgery against all except the owner.
|
HMAC (MACs) |
RSA signature (PKCS signature) |
Integrity |
Yes |
yes |
Authentication |
Yes |
Yes |
Non-Repuditiation |
No |
Yes |