Finally, while the IP header contains a noncryptographic checksum for verifying the integrity of the header, there is no attempt to do the same for the payload.

Source(Introduction to Computer Security by Michael_Goodrich,_Roberto_Tamassia book)

I'm reading about IPsec(Internet Protocol Security), a protocol suite that ensure authenticity and confidentiality. Does the default IP suite, only ensures the integrity of the header, not the payload, if it is so why not the payload instead of the header?

  • 1
    As explained already in comments to your previous questions - please always include the source if you cite something. Also, what you cite clearly explains that payload is not protected by the IP header checksum so no need to ask this again. Checksum at IP and TCP level (which include the payload) are (contrary to IPSec) small and non-cryptographic and are only designed to detect transmission errors (i.e. bit-flip). They have no security function and that's why your question is off-topic here. It would be a better fit for Network Engineering. Feb 9, 2019 at 6:59
  • Thank you @SteffenUllrich. If that is the case, how does it detect transmission errors, without checking the integrity of the payload? Feb 9, 2019 at 7:10
  • It is up to the higher level protocols, i.e. TCP has a checksum which covers the payload. But again - off-topic. Feb 9, 2019 at 7:38

1 Answer 1


It's a job for the inner header: e.g. there's mandatory checksum in TCP header and optional checksum in UDP header, and they both cover the payload. That's why it's unnecessary, but it would also be resource consuming...

IPv4 has checksum for its own header, but it must be recalculated on every hop, as the TTL changes. Calculating that for the whole packet would be even more inefficient. That's also why the header checksum was removed when designing IPv6.

Not the answer you're looking for? Browse other questions tagged .