Skip to content
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers.
Python C Shell
Branch: master
Clone or download

Latest commit

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.azure-pipelines need to upgrade, not install, to update openssl in homebrew (#5174) Apr 2, 2020
.github Added a new checkbox to openssl-release.md (#5168) Mar 31, 2020
.travis Update pip before installing virtualenv in travis (#5121) Feb 15, 2020
docs fixed linkcheck for CVE website configuration failure (#5169) Apr 1, 2020
src reopen master for 3.0 dev (#5175) Apr 2, 2020
tests Allow NameAttribute.value to be an empty string (#5109) Mar 19, 2020
vectors reopen master for 3.0 dev (#5175) Apr 2, 2020
.coveragerc properly merge pypy coverage with coveragerc paths Jan 7, 2016
.gitattributes test py27 with windows container on azure (#4880) May 8, 2019
.gitignore Add bindings for SSL_OP_NO_DTLS* (#4079) Jan 16, 2018
.travis.yml sid now has 3.8 (#5167) Mar 31, 2020
AUTHORS.rst Add RFC 4514 Distinguished Name formatting for Name, RDN and NameAttr… Dec 8, 2018
CHANGELOG.rst reopen master for 3.0 dev (#5175) Apr 2, 2020
CONTRIBUTING.rst link the CONTRIBUTING.rst to the development section of our docs Mar 2, 2014
LICENSE nit in LICENSE, itself doesn't make sense here (#4016) Nov 10, 2017
LICENSE.APACHE HTTPS a bunch of links in random places (#4666) Dec 31, 2018
LICENSE.BSD Added new license files. Refs #1209 Oct 31, 2014
LICENSE.PSF C locking callback (#3226) Nov 13, 2016
MANIFEST.in Added a new packaging test (#4899) May 27, 2019
README.rst fix CI badge again since naming it breaks the link (#5162) Mar 31, 2020
codecov.yml revert codecov.yml workaround and pin coverage to 4.3.4 (#3662) Jun 3, 2017
dev-requirements.txt Remove the final vestigates of Jenkins (#4897) May 26, 2019
pyproject.toml Comply with PEP 508 by using platform_python_implementation (#5006) Oct 17, 2019
release.py Extra paranoia in the release script (#5152) Mar 22, 2020
rtd-requirements.txt install only the minimum required to build our docs for rtd (#4133) Mar 6, 2018
setup.py drop python 3.4 support (#5087) Dec 9, 2019
tox.ini drop python 3.4 support (#5087) Dec 9, 2019

README.rst

pyca/cryptography

Latest Version Latest Docs https://travis-ci.org/pyca/cryptography.svg?branch=master https://github.com/pyca/cryptography/workflows/CI/badge.svg?branch=master https://codecov.io/github/pyca/cryptography/coverage.svg?branch=master

cryptography is a package which provides cryptographic recipes and primitives to Python developers. Our goal is for it to be your "cryptographic standard library". It supports Python 2.7, Python 3.5+, and PyPy 5.4+.

cryptography includes both high level recipes and low level interfaces to common cryptographic algorithms such as symmetric ciphers, message digests, and key derivation functions. For example, to encrypt something with cryptography's high level symmetric encryption recipe:

>>> from cryptography.fernet import Fernet
>>> # Put this somewhere safe!
>>> key = Fernet.generate_key()
>>> f = Fernet(key)
>>> token = f.encrypt(b"A really secret message. Not for prying eyes.")
>>> token
'...'
>>> f.decrypt(token)
'A really secret message. Not for prying eyes.'

You can find more information in the documentation.

You can install cryptography with:

$ pip install cryptography

For full details see the installation documentation.

Discussion

If you run into bugs, you can file them in our issue tracker.

We maintain a cryptography-dev mailing list for development discussion.

You can also join #cryptography-dev on Freenode to ask questions or get involved.

Security

Need to report a security issue? Please consult our security reporting documentation.

You can’t perform that action at this time.