As the colleagues have already explained in other answers, the checksum essentially serves to check the integrity of a data stream (whether it is in a radio broadcast, Internet, smoke signal, etc., or a file on the disk, sent to someone by email or available for download).
I just decided to respond because I would like to provide intuition behind the subject. The English checksum means exactly "sum" from / to "check", because the principle of algorithms is following:
It is intended to produce a numerical value, easily calculated on both sides of a transmission (ie, both the sender and the receiver), and which represents not only the content in the file but also the order in which that content is found.
Once this value is calculated by the sender, the file (or data packet) is transmitted together with the checksum value. The receiver recalculates the value for the received packet / file and compares it with the original value sent by the sender. If it is different, some transmission problem has occurred (for example, any byte has been changed, perhaps by noises in the transmission medium or even by bad faith of a third party).
And how does the value of a checksum represent the content and order in a dataset? There are several ways. A very innocent, and in practice only serves as a didactic illustration, is the following:
It traverses the characters of the file / package from start to finish,
multiplying the value of the character (its ASCII value, for example)
by the index (the position of the character in the traversed sequence). That
result is then accumulated in a total value (the
01.03.2016 / 14:47