summaryrefslogtreecommitdiff
path: root/sys/src/cmd/python/Doc/lib/libmd5.tex
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@localhost>2011-05-03 11:25:13 +0000
committercinap_lenrek <cinap_lenrek@localhost>2011-05-03 11:25:13 +0000
commit458120dd40db6b4df55a4e96b650e16798ef06a0 (patch)
tree8f82685be24fef97e715c6f5ca4c68d34d5074ee /sys/src/cmd/python/Doc/lib/libmd5.tex
parent3a742c699f6806c1145aea5149bf15de15a0afd7 (diff)
add hg and python
Diffstat (limited to 'sys/src/cmd/python/Doc/lib/libmd5.tex')
-rw-r--r--sys/src/cmd/python/Doc/lib/libmd5.tex92
1 files changed, 92 insertions, 0 deletions
diff --git a/sys/src/cmd/python/Doc/lib/libmd5.tex b/sys/src/cmd/python/Doc/lib/libmd5.tex
new file mode 100644
index 000000000..38105ae87
--- /dev/null
+++ b/sys/src/cmd/python/Doc/lib/libmd5.tex
@@ -0,0 +1,92 @@
+\section{\module{md5} ---
+ MD5 message digest algorithm}
+
+\declaremodule{builtin}{md5}
+\modulesynopsis{RSA's MD5 message digest algorithm.}
+
+\deprecated{2.5}{Use the \refmodule{hashlib} module instead.}
+
+This module implements the interface to RSA's MD5 message digest
+\index{message digest, MD5}
+algorithm (see also Internet \rfc{1321}). Its use is quite
+straightforward:\ use \function{new()} to create an md5 object.
+You can now feed this object with arbitrary strings using the
+\method{update()} method, and at any point you can ask it for the
+\dfn{digest} (a strong kind of 128-bit checksum,
+a.k.a. ``fingerprint'') of the concatenation of the strings fed to it
+so far using the \method{digest()} method.
+\index{checksum!MD5}
+
+For example, to obtain the digest of the string \code{'Nobody inspects
+the spammish repetition'}:
+
+\begin{verbatim}
+>>> import md5
+>>> m = md5.new()
+>>> m.update("Nobody inspects")
+>>> m.update(" the spammish repetition")
+>>> m.digest()
+'\xbbd\x9c\x83\xdd\x1e\xa5\xc9\xd9\xde\xc9\xa1\x8d\xf0\xff\xe9'
+\end{verbatim}
+
+More condensed:
+
+\begin{verbatim}
+>>> md5.new("Nobody inspects the spammish repetition").digest()
+'\xbbd\x9c\x83\xdd\x1e\xa5\xc9\xd9\xde\xc9\xa1\x8d\xf0\xff\xe9'
+\end{verbatim}
+
+The following values are provided as constants in the module and as
+attributes of the md5 objects returned by \function{new()}:
+
+\begin{datadesc}{digest_size}
+ The size of the resulting digest in bytes. This is always
+ \code{16}.
+\end{datadesc}
+
+The md5 module provides the following functions:
+
+\begin{funcdesc}{new}{\optional{arg}}
+Return a new md5 object. If \var{arg} is present, the method call
+\code{update(\var{arg})} is made.
+\end{funcdesc}
+
+\begin{funcdesc}{md5}{\optional{arg}}
+For backward compatibility reasons, this is an alternative name for the
+\function{new()} function.
+\end{funcdesc}
+
+An md5 object has the following methods:
+
+\begin{methoddesc}[md5]{update}{arg}
+Update the md5 object with the string \var{arg}. Repeated calls are
+equivalent to a single call with the concatenation of all the
+arguments: \code{m.update(a); m.update(b)} is equivalent to
+\code{m.update(a+b)}.
+\end{methoddesc}
+
+\begin{methoddesc}[md5]{digest}{}
+Return the digest of the strings passed to the \method{update()}
+method so far. This is a 16-byte string which may contain
+non-\ASCII{} characters, including null bytes.
+\end{methoddesc}
+
+\begin{methoddesc}[md5]{hexdigest}{}
+Like \method{digest()} except the digest is returned as a string of
+length 32, containing only hexadecimal digits. This may
+be used to exchange the value safely in email or other non-binary
+environments.
+\end{methoddesc}
+
+\begin{methoddesc}[md5]{copy}{}
+Return a copy (``clone'') of the md5 object. This can be used to
+efficiently compute the digests of strings that share a common initial
+substring.
+\end{methoddesc}
+
+
+\begin{seealso}
+ \seemodule{sha}{Similar module implementing the Secure Hash
+ Algorithm (SHA). The SHA algorithm is considered a
+ more secure hash.}
+\end{seealso}