PyNaCl is a Python binding to the Networking and Cryptography library, a crypto library with the stated goal of improving usability, security and speed.
PyNaCl relies on libsodium, a portable C library which can be compiled on a variety of systems. It may already be available from your package manager.
Once libsodium is installed, PyNaCl can be installed by:
$ python setup.py install
- Digital signatures
- Secret-key encryption
- Public-key encryption
- HMAC (coming soon)
- 0.3.0: the low-level API (nacl.c.*) has been changed to match the upstream NaCl C/C++ conventions (as well as those of other NaCl bindings). The order of arguments and return values has changed significantly. If you have code which calls these functions (e.g. nacl.c.crypto_box_keypair()), you must review the new docstrings and update your code to match the new conventions.