|
| 1 | +# hlib.py |
| 2 | +# NOT A PYTHON MODULE - DO NOT ATTEMPT TO RUN |
| 3 | + |
| 4 | +# hlib.py |
| 5 | +>>> import hashlib |
| 6 | +>>> hashlib.algorithms_available |
| 7 | +{'mdc2', 'sha224', 'whirlpool', 'sha1', 'sha3_512', 'sha512_256', |
| 8 | + 'sha256', 'md4', 'sha384', 'blake2s', 'sha3_224', 'sha3_384', |
| 9 | + 'shake_256', 'blake2b', 'ripemd160', 'sha512', 'md5-sha1', |
| 10 | + 'shake_128', 'sha3_256', 'sha512_224', 'md5', 'sm3'} |
| 11 | +>>> hashlib.algorithms_guaranteed |
| 12 | +{'blake2s', 'md5', 'sha224', 'sha3_512', 'shake_256', 'sha3_256', |
| 13 | + 'shake_128', 'sha256', 'sha1', 'sha512', 'blake2b', 'sha3_384', |
| 14 | + 'sha384', 'sha3_224'} |
| 15 | + |
| 16 | +>>> h = hashlib.blake2b() |
| 17 | +>>> h.update(b'Hash me') |
| 18 | +>>> h.update(b' now!') |
| 19 | +>>> h.hexdigest() |
| 20 | +'56441b566db9aafcf8cdad3a4729fa4b2bfaab0ada36155ece29f52ff70e1e9d' |
| 21 | +'7f54cacfe44bc97c7e904cf79944357d023877929430bc58eb2dae168e73cedf' |
| 22 | +>>> h.digest() |
| 23 | +b'VD\x1bVm\xb9\xaa\xfc\xf8\xcd\xad:G)\xfaK+\xfa\xab\n\xda6\x15^' |
| 24 | +b'\xce)\xf5/\xf7\x0e\x1e\x9d\x7fT\xca\xcf\xe4K\xc9|~\x90L\xf7' |
| 25 | +b'\x99D5}\x028w\x92\x940\xbcX\xeb-\xae\x16\x8es\xce\xdf' |
| 26 | +>>> h.block_size |
| 27 | +128 |
| 28 | +>>> h.digest_size |
| 29 | +64 |
| 30 | +>>> h.name |
| 31 | +'blake2b' |
| 32 | + |
| 33 | +>>> hashlib.sha256(b'Hash me now!').hexdigest() |
| 34 | +'10d561fa94a89a25ea0c7aa47708bdb353bbb062a17820292cd905a3a60d6783' |
| 35 | + |
| 36 | + |
| 37 | +>>> import hashlib |
| 38 | +>>> h1 = hashlib.blake2b(b'Important data', digest_size=16, |
| 39 | +... person=b'part-1') |
| 40 | +>>> h2 = hashlib.blake2b(b'Important data', digest_size=16, |
| 41 | +... person=b'part-2') |
| 42 | +>>> h3 = hashlib.blake2b(b'Important data', digest_size=16) |
| 43 | +>>> h1.hexdigest() |
| 44 | +'c06b9af95d5aa6307e7e3fd025a15646' |
| 45 | +>>> h2.hexdigest() |
| 46 | +'9cb03be8f3114d0f06bddaedce2079c4' |
| 47 | +>>> h3.hexdigest() |
| 48 | +'7d35308ca3b042b5184728d2b1283d0d' |
| 49 | + |
| 50 | +>>> import os |
| 51 | +>>> dk = hashlib.pbkdf2_hmac('sha256', b'Password123', |
| 52 | +... salt=os.urandom(16), iterations=100000) |
| 53 | +>>> dk.hex() |
| 54 | +'f8715c37906df067466ce84973e6e52a955be025a59c9100d9183c4cbec27a9e' |
0 commit comments