Hash: added doctests + little fixes
[python-cryptoplus.git] / src / CryptoPlus / Hash / python_SHA512.py
bloba86980370910243b9774a52f025f9f54ae9c0c4c
1 from pysha512 import sha512
3 __all__ = ['new','digest_size']
5 def new(data=""):
6 """Create a new pure python SHA-512 hash object
8 data = initial input (raw string) to the hashing object
9 if present, the method call update(arg) is made
11 EXAMPLE: FIPS 180-2
12 =========
14 >>> from CryptoPlus.Hash import python_SHA512
16 >>> message = "abc"
17 >>> hasher = python_SHA512.new()
18 >>> hasher.update(message)
19 >>> hasher.hexdigest()
20 'ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f'
22 >>> message = "abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu"
23 >>> hasher = python_SHA512.new()
24 >>> hasher.update(message)
25 >>> hasher.hexdigest()
26 '8e959b75dae313da8cf4f72814fc143f8f7779c6eb9f7fa17299aeadb6889018501d289e4900f7e4331b99dec4b5433ac7d329eeb6dd26545e96e55b874be909'
27 """
28 return sha512(data)
30 digest_size = sha512.digest_size