Skip to content

Commit

Permalink
Improve code examples in hashlib cookie signing (GH-3562)
Browse files Browse the repository at this point in the history
The `blake2b` function does not take the `data` keyword argument.
The hex digest returned by sign was a string, whereas compare_digest expects bytes-like objects.
Typo fix: compare_digesty -> compare_digest
  • Loading branch information
sww authored and Mariatta committed Sep 14, 2017
1 parent c3e97d9 commit 312ffea
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions Doc/library/hashlib.rst
Expand Up @@ -506,8 +506,9 @@ to users and later verify them to make sure they weren't tampered with::
>>> AUTH_SIZE = 16
>>>
>>> def sign(cookie):
... h = blake2b(data=cookie, digest_size=AUTH_SIZE, key=SECRET_KEY)
... return h.hexdigest()
... h = blake2b(digest_size=AUTH_SIZE, key=SECRET_KEY)
... h.update(cookie)
... return h.hexdigest().encode('utf-8')
>>>
>>> cookie = b'user:vatrogasac'
>>> sig = sign(cookie)
Expand All @@ -517,7 +518,7 @@ to users and later verify them to make sure they weren't tampered with::
True
>>> compare_digest(b'user:policajac', sig)
False
>>> compare_digesty(cookie, '0102030405060708090a0b0c0d0e0f00')
>>> compare_digest(cookie, b'0102030405060708090a0b0c0d0e0f00')
False

Even though there's a native keyed hashing mode, BLAKE2 can, of course, be used
Expand Down

0 comments on commit 312ffea

Please sign in to comment.