The checksum is used for the error checking of the segment. The checksum ensures that the header, payload, and other data has arrived as expected. Remembering that there are checksums at other layers too, it is very unlikely that an accidentally modified data stream will present a valid collision at all the layers simultaneously.