AH(Authentication Header)와 ESP(Encapsulating Security Payload)
AH(Authentication Header)와 ESP(Encapsulating Security Payload)는 IPsec에서 IP 패킷을 보호하기 위해 사용하는 두 가지 핵심 프로토콜이다. “무엇을 보호하느냐(기밀성, 무결성, 인증)”를 기준으로 구분하는 것이 가장 중요하다.
먼저 AH(Authentication Header)부터 보자.
AH의 목적은 송신자 인증과 무결성 보장이다. 즉, “이 패킷이 정말 신뢰된 상대가 보낸 것이 맞는가”, “전송 중에 데이터가 변조되지 않았는가”를 확인한다. 하지만 암호화는 제공하지 않는다. 그래서 패킷 내용은 그대로 보이며, 도청 방지는 되지 않는다. AH는 IP 헤더 일부까지 무결성 검사를 하기 때문에, NAT 환경과 호환성이 좋지 않다는 단점도 있다. 이 때문에 실무에서는 거의 사용되지 않고, 개념 비교용으로 주로 등장한다.
다음은 ESP(Encapsulating Security Payload)다. ESP는 기밀성(암호화)을 제공하는 것이 가장 큰 특징이다. 여기에 더해 무결성과 송신자 인증도 함께 제공할 수 있다. 즉, ESP 하나만으로도 IPsec VPN에 필요한 보안 요소를 대부분 충족한다. 실제로 대부분의 IPsec VPN은 ESP를 사용한다. ESP는 IP 헤더는 보호하지 않고 페이로드를 중심으로 보호하기 때문에, NAT 환경과의 호환성도 상대적으로 좋다.
두 프로토콜의 차이를 명확히 정리하면 다음과 같다.
AH는 인증과 무결성만 제공하고, 암호화는 없다.
ESP는 암호화를 포함해 인증과 무결성까지 제공한다.
AH는 NAT와 잘 맞지 않는다.
ESP는 IPsec VPN의 사실상 표준이다.
AH와 ESP 모두 Transport 모드와 Tunnel 모드에서 사용할 수 있지만, ESP + Tunnel 모드 조합이 가장 일반적인 VPN 구성이다.
정리하면, AH와 ESP의 핵심 구분은 이것이다.
“암호화가 필요하면 ESP, 인증만 필요하면 AH”