Python extension module implementing BLAKE2 hash function
Branch: master
Clone or download
Latest commit d6e74dd Apr 11, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc_src Build SSE2 implementation on x86_64 architectures by default. Apr 13, 2014
impl Reintroduce the support for selecting optimized version Nov 24, 2017
test Encode str to bytes before passing to unhexlify(). Apr 11, 2013
.gitignore Add tox.ini. Apr 11, 2013
.travis.yml Enable testing on PyPy3 Feb 11, 2018
COPYING Tweak Apr 21, 2016
MANIFEST.in Import the updated BLAKE2 implementation from CPython Nov 24, 2017
README.rst
appveyor.yml Don't automatically upload to PiPy Feb 26, 2018
blake2b_impl.c
blake2s_impl.c Import the updated BLAKE2 implementation from CPython Nov 24, 2017
pyblake2_impl_common.h Reintroduce the support for selecting optimized version Nov 24, 2017
pyblake2module.c Fix node_offset and leaf_size on big-endian platforms. Apr 11, 2018
setup.py v1.1.2 Apr 11, 2018
tox.ini Enable testing on PyPy3 Feb 11, 2018

README.rst

pyblake2 — BLAKE2 hash function for Python

Build status

pyblake2 is an extension module for Python implementing BLAKE2 hash function.

NOTE: Python 3.6 and later have native support for BLAKE2 in hashlib derived from this implementation, with compatible API. This module should only be used if you want BLAKE2 in older Python versions, such as 2.7 or 3.5 and earlier. This module will have bug fixes for as long as possible, but no major code changes are planned.

BLAKE2 is a cryptographic hash function, which offers highest security while being as fast as MD5 or SHA-1, and comes in two flavors:

  • BLAKE2b, optimized for 64-bit platforms and produces digests of any size between 1 and 64 bytes,
  • BLAKE2s, optimized for 8- to 32-bit platforms and produces digests of any size between 1 and 32 bytes.

BLAKE2 supports keyed mode (a faster and simpler replacement for HMAC), salted hashing, personalization, and tree hashing.

Hash objects from this module follow the API of standard library's hashlib objects.

Installation

From PyPI:

$ pip install pyblake2

or download source code and run:

$ python setup.py install

Usage

See documentation: http://pythonhosted.org/pyblake2/