MD5 Checksum
============
MD5 cryptographic checksums, or "message digests", are 128-bit
"fingerprints" of a document or program. They are used to verify that
you have an exact and unaltered copy of the data. The algorithm to
calculate the MD5 message digest is defined in Internet RFC(1)1321.
This section describes the Emacs facilities for computing message
digests.
- Function: md5 object &optional start end coding-system noerror
This function returns the MD5 message digest of OBJECT, which
should be a buffer or a string.
The two optional arguments START and END are character positions
specifying the portion of OBJECT to compute the message digest
for. If they are `nil' or omitted, the digest is computed for the
whole of OBJECT.
The function `md5' does not compute the message digest directly
from the internal Emacs representation of the text (Note:Text
Representations). Instead, it encodes the text using a coding
system, and computes the message digest from the encoded text. The
optional fourth argument CODING-SYSTEM specifies which coding
system to use for encoding the text. It should be the same coding
system that you used to read the text, or that you used or will use
when saving or sending the text. Note:Coding Systems, for more
information about coding systems.
If CODING-SYSTEM is `nil' or omitted, the default depends on
OBJECT. If OBJECT is a buffer, the default for CODING-SYSTEM is
whatever coding system would be chosen by default for writing this
text into a file. If OBJECT is a string, the user's most
preferred coding system (*note prefer-coding-system:
(emacs)Recognize Coding.) is used.
Normally, `md5' signals an error if the text can't be encoded
using the specified or chosen coding system. However, if NOERROR
is non-`nil', it silently uses `raw-text' coding instead.
---------- Footnotes ----------
(1) For an explanation of what is an RFC, see the footnote in Note:Base 64.