Detecting errors
Before calculating the checksum both the sender and receiver must agree on a generator polynomial G(x)
To calculate the checksum we divide the message M(x) by G(x) to generate a remainder, r bits in length
By appending these r bits to M(x) we form T(x), which is divisible by G(x)
When the receiver gets the checksummed message, T(x), it tries dividing it by G(x). If there is a remainder, a transmission error has occured