I think I quite well understand the theoretical benefit of adding the HMAC (authenticity/integrity on top of confidentiality), but I am looking at this from a key management point-of-view.

Premise: Since anyone could in theory encrypt plain text, I add a MAC tag so the ciphertext origin can be verified. This derives the premise:

  • A malicious party could gain access to the secret shared encryption key and forge a cipher text

Then I argue, if an attacker can access the encryption key, why should he/she not be able to access to MAC key as well (and thus again be able to forge a cipher text)? Next, if we increase the key storage requirements for the MAC key (making its compromise less likely), why not simply store the encryption key more securely in the first place?

In my eyes, this method is adding two very similar security concepts together (shared symmetric secret key), which doesn't magically increase the security, i.e., 1+1 does not always equal 2 in security.

If someone could briefly explain the error in my chain of thought or shed some light on this matter I would highly appreciate it.

Thanks in advance!


I guess I should have researched more rigurously: MAC vs Encryption

The flaw in my thought process was thinking an attacker needs to know the encryption key to attack. However, he/she may simply modify a cipher text without the ability to encrypt plain text.

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.