Even if human scanning were possible, the data could have been modified in such a manner that it would be very difficult for the human to detect the modification. Without additional information the human scanner could easily accept the altered data as being authentic. These threats may still exist even when data encryption is used. It is therefore desirable to have an automated means of detecting both intentional and unintentional modifications to data. Ordinary error detecting codes are not adequate because, if the algorithm for generating the code is known, an adversary could generate the correct code after modifying the data.
Intentional modification is undetectable with such codes.
It does not detect errors which occur before the DAC is originally generated. Let D be any 64-bit input vector and assume a key has been selected. The 64-bit vector, O, which is the output of the DES algorithm when DES is applied to D, using the enciphering operation, is represented as follows. If the number of data bits is not a multiple of 64, then the final input block will be a partial block of data, left justified. The calculation of the DAC is given by the following equations where G represents the Exclusive-OR of two vectors.