summaryrefslogtreecommitdiffstats
path: root/Lib/hashlib.py
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2006-10-29 18:01:08 (GMT)
committerGeorg Brandl <georg@python.org>2006-10-29 18:01:08 (GMT)
commit7a4e804469f5d45b336de02cc88907d9202d4e0c (patch)
treea35540a594b25eafc4f541731798021780baefd8 /Lib/hashlib.py
parent2c9838e30f825b3bdaf0fc33f15a3cc74320ba6e (diff)
downloadcpython-7a4e804469f5d45b336de02cc88907d9202d4e0c.zip
cpython-7a4e804469f5d45b336de02cc88907d9202d4e0c.tar.gz
cpython-7a4e804469f5d45b336de02cc88907d9202d4e0c.tar.bz2
Bug #1586773: extend hashlib docstring.
Diffstat (limited to 'Lib/hashlib.py')
-rw-r--r--Lib/hashlib.py31
1 files changed, 30 insertions, 1 deletions
diff --git a/Lib/hashlib.py b/Lib/hashlib.py
index 48fc56c..3d8826f 100644
--- a/Lib/hashlib.py
+++ b/Lib/hashlib.py
@@ -18,8 +18,37 @@ md5(), sha1(), sha224(), sha256(), sha384(), and sha512()
More algorithms may be available on your platform but the above are
guaranteed to exist.
-Choose your hash function wisely. Some have known weaknesses.
+Choose your hash function wisely. Some have known collision weaknesses.
sha384 and sha512 will be slow on 32 bit platforms.
+
+Hash objects have these methods:
+ - update(arg): Update the hash object with the string arg. Repeated calls
+ are equivalent to a single call with the concatenation of all
+ the arguments.
+ - digest(): Return the digest of the strings passed to the update() method
+ so far. This may contain non-ASCII characters, including
+ NUL bytes.
+ - hexdigest(): Like digest() except the digest is returned as a string of
+ double length, containing only hexadecimal digits.
+ - copy(): Return a copy (clone) of the hash object. This can be used to
+ efficiently compute the digests of strings that share a common
+ initial substring.
+
+For example, to obtain the digest of the string 'Nobody inspects the
+spammish repetition':
+
+ >>> import hashlib
+ >>> m = hashlib.md5()
+ >>> 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'
+
+More condensed:
+
+ >>> hashlib.sha224("Nobody inspects the spammish repetition").hexdigest()
+ 'a4337bc45a8fc544c03f52dc550cd6e1e87021bc896588bd79e901e2'
+
"""