I. Introduction
IPSEC is a set of protocols which provides secure communication over Network Layer (Layer-3) of TCP/IP model. Layer 3 is used for routing protocols that is why machines that implement and configure IPSEC are also called IPSEC gateways. IPSEC is extensively used in small and large enterprises to provide confidential, authentic and integral communication. IPSEC includes following protocols: (a) Encapsulation Security Payloads (ESP), (b) Authentication Headers (AH), (c) Security Associations (SA), (d) Internet Security Association, (e) Key Management Protocol (ISAKMP). Points of interest in this research are ESP and AH. Traditionally, ESP is used to provide encryption functionality via block ciphers and AH is used to provide integrity via various hashing algorithms. To have communication between two IPSEC gateways, both gateways must agree on same set of ESP and AH algorithms. This agreement is called Security Association and ISAKMP is used to establish same SA on both gateways.