cryptography is a package designed to expose cryptographic primitives and recipes to Python developers.
Find a file
Paul Kehrer 0201c3569b Merge pull request #845 from public/no-memory-wipe-docs
Document our security limitations
2014-03-25 07:05:37 -04:30
.travis Merge pull request #820 from reaperhulk/test-python34 2014-03-17 09:46:13 -07:00
cryptography Load vectors from cryptography.vectors 2014-03-22 16:25:38 +00:00
docs Merge pull request #845 from public/no-memory-wipe-docs 2014-03-25 07:05:37 -04:30
tests Move cryptography.vectors to cryptography_vectors 2014-03-24 09:46:47 +00:00
vectors This is universal. 2014-03-24 17:02:50 -07:00
.coveragerc add library switch for windows support 2014-01-23 20:12:23 -06:00
.gitignore update gitignore to ignore the new so name structure 2014-03-24 07:13:52 -04:00
.travis.yml add python 3.4 to osx and linux builders 2014-03-17 11:16:32 -04:00
AUTHORS.rst Add GPG key fingerprint for lvh 2014-03-07 15:11:07 +01:00
CHANGELOG.rst Move cryptography.vectors to cryptography_vectors 2014-03-24 09:46:47 +00:00
CONTRIBUTING.rst link the CONTRIBUTING.rst to the development section of our docs 2014-03-02 09:23:46 -04:00
dev-requirements.txt Move cryptography.vectors to cryptography_vectors 2014-03-24 09:46:47 +00:00
LICENSE Initial commit. Migrates over basic project files, and the OpenSSL bindings 2013-08-06 19:31:02 -07:00
MANIFEST.in cryptography.vectors 2014-03-22 16:23:46 +00:00
pytest.ini pytest marks for RSA 2014-02-08 09:21:21 -06:00
README.rst Phrase our summary better 2014-03-02 20:06:00 -08:00
setup.py Move cryptography.vectors to cryptography_vectors 2014-03-24 09:46:47 +00:00
tasks.py Fix bug in release task and style fixes 2014-03-24 23:05:53 +00:00
tox.ini Fix bug in release task and style fixes 2014-03-24 23:05:53 +00:00

Cryptography
============

.. image:: https://travis-ci.org/pyca/cryptography.png?branch=master
    :target: https://travis-ci.org/pyca/cryptography

.. image:: https://coveralls.io/repos/pyca/cryptography/badge.png?branch=master
    :target: https://coveralls.io/r/pyca/cryptography?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.6-2.7, Python 3.2+, and PyPy.

``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:

.. code-block:: pycon

    >>> 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`_.

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.


.. _`documentation`: https://cryptography.io/
.. _`issue tracker`: https://github.com/pyca/cryptography/issues
.. _`cryptography-dev`: https://mail.python.org/mailman/listinfo/cryptography-dev