| \section{Built-in module \sectcode{md5}} |
| \bimodindex{md5} |
| |
| This module implements the interface to RSA's MD5 message digest |
| algorithm (see also the file \file{md5.doc}). Its use is quite |
| straightforward: use the function \code{md5} to create an |
| \dfn{md5}-object. You can now ``feed'' this object with arbitrary |
| strings. |
| |
| At any time you can ask for the ``final'' digest of the object. Internally, |
| a temporary copy of the object is made and the digest is computed and |
| returned. Because of the copy, the digest operation is not destructive |
| for the object. Before a more exact description of the module's use, a small |
| example will be helpful: |
| to obtain the digest of the string \code{'abc'}, use \ldots |
| |
| \bcode\begin{verbatim} |
| >>> from md5 import md5 |
| >>> m = md5() |
| >>> m.update('abc') |
| >>> m.digest() |
| '\220\001P\230<\322O\260\326\226?}(\341\177r' |
| \end{verbatim}\ecode |
| |
| More condensed: |
| |
| \bcode\begin{verbatim} |
| >>> md5('abc').digest() |
| '\220\001P\230<\322O\260\326\226?}(\341\177r' |
| \end{verbatim}\ecode |
| |
| \renewcommand{\indexsubitem}{(in module md5)} |
| \begin{funcdesc}{md5}{\optional{arg}} |
| Create a new md5-object. If \var{arg} is present, an initial |
| \code{update} method is called with \var{arg} as argument. |
| \end{funcdesc} |
| |
| An md5-object has the following methods: |
| |
| \renewcommand{\indexsubitem}{(md5 method)} |
| \begin{funcdesc}{update}{arg} |
| Update this md5-object with the string \var{arg}. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{digest}{} |
| % XXX The following is not quite clear; what does MD5Final do? |
| Return the \dfn{digest} of this md5-object. Internally, a copy is made |
| and the \C-function \code{MD5Final} is called. Finally the digest is |
| returned. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{copy}{} |
| Return a separate copy of this md5-object. An \code{update} to this |
| copy won't affect the original object. |
| \end{funcdesc} |