I am refreshing my understanding of IPSEC.

IPSec is an IETF defined set of security services that use open standards to provide data confidentiality, integrity, and authentication between peers.

IPsec involves two security services:

  • Authentication Header (AH): This authenticates the sender and it discovers any changes in data during transmission; incompatible with NAT.
  • Encapsulating Security Payload (ESP): This not only performs
    authentication for the sender but also encrypts the data being sent

Why would anyone ever use AH? ESP does it plus more. In other words, why is AH specified? Also, has anyone ever deployed or used AH-only IPSEC?

  • Authentication with ESP is only guaranteed over each packet in Tunnel mode. Not transport. So it really depends on the use case which is appropriate. – RoraΖ May 25 '15 at 3:33

AH can be easily inspected by firewalls. ESP with NULL is similar but (AFAIK) the firewall doesn't know that it's the NULL cipher and has no easy way to tell after a connection has been established.

So if you want authentication only then that's a plus for AH.

  • I understand that AH is incompatible with NAT. Based on the feedback so far, it appears that nobody uses AH. Why would they when basic 56 bit DES on ESP probably runs just as easily. – Ron Royston May 25 '15 at 21:57

In my experience, and in EXTREMELY rare cases, I have found a provider or some hop between endpoints that blocks ESP (IP protocol 50). A tunnel successfully establishes, but no traffic gets through. When I see this happen and rule out standard probable causes, I look to AH.

I've used AH to 'prove' that to providers to get them to at least check their end. If it cannot be corrected, it at least provides a transport mechanism in those rare cases where ESP hasn't worked.


One more reason you might want to use AH and not ESP: Encryption is prohibited for your application.

For example, in Amateur Radio, data links over the licensed spectrum are explicitly prohibited from any encryption. We can use AH, though, as an anti-spoof or to do outright VPN tunneling without breaking the law.

Other countries may have similar issues, and sometimes companies' network policies will prohibit most people from encryption as that blocks their ability to inspect the data.

So in short, there do exists cases where encryption is not desirable or allowed, and AH exists to meet those cases.


Encryption over the wire may not be a requirement or the hardware is incapable of encryption at high rate. On platforms without encryption offload, ESP might tax heavily on control plane.


AH is used for non-repudiation that ESP cannot provide.

Also, ESP doesn't provide protection from traffic analysis

  • Can you expand this answer? How does AH provide non-repudiation? How does ESP not provide protection from analysis? – schroeder Jul 23 at 7:30
  • The PUBLIC IP header for ESP is not hashed<encrypted> whereas in AH it is. – Shweta Jul 24 at 13:58
  • This is also the reason that AH is incompatible with NAT – Shweta Jul 24 at 13:59
  • Please edit your answer with these details – schroeder Jul 24 at 15:17

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.