Alex Gaynor | 8d7fb75 | 2013-08-06 19:30:47 -0700 | [diff] [blame] | 1 | Cryptography |
| 2 | ============ |
| 3 | |
Matt Iversen | 0934762 | 2014-05-20 02:47:22 +1000 | [diff] [blame] | 4 | .. image:: https://pypip.in/version/cryptography/badge.svg |
| 5 | :target: https://pypi.python.org/pypi/cryptography/ |
| 6 | :alt: Latest Version |
| 7 | |
Paul Kehrer | 77beba93 | 2014-09-27 11:41:32 -0500 | [diff] [blame] | 8 | .. image:: https://readthedocs.org/projects/cryptography/badge/?version=latest |
| 9 | :target: https://cryptography.io |
| 10 | :alt: Latest Docs |
| 11 | |
Paul Kehrer | a7fd460 | 2014-03-24 07:22:47 -0400 | [diff] [blame] | 12 | .. image:: https://travis-ci.org/pyca/cryptography.svg?branch=master |
Alex Gaynor | 45afb35 | 2013-11-05 16:29:00 -0800 | [diff] [blame] | 13 | :target: https://travis-ci.org/pyca/cryptography |
| 14 | |
| 15 | .. image:: https://coveralls.io/repos/pyca/cryptography/badge.png?branch=master |
| 16 | :target: https://coveralls.io/r/pyca/cryptography?branch=master |
| 17 | |
Hynek Schlawack | f30db51 | 2013-08-07 20:50:05 +0200 | [diff] [blame] | 18 | |
Alex Gaynor | 01ba7b7 | 2014-03-02 20:06:00 -0800 | [diff] [blame] | 19 | ``cryptography`` is a package which provides cryptographic recipes and |
Alex Gaynor | 872cd97 | 2014-02-10 18:52:47 -0800 | [diff] [blame] | 20 | primitives to Python developers. Our goal is for it to be your "cryptographic |
| 21 | standard library". It supports Python 2.6-2.7, Python 3.2+, and PyPy. |
Alex Gaynor | 7a6b5cb | 2013-08-07 09:56:34 -0700 | [diff] [blame] | 22 | |
Alex Gaynor | c046991 | 2014-02-11 14:21:46 -0800 | [diff] [blame] | 23 | ``cryptography`` includes both high level recipes, and low level interfaces to |
| 24 | common cryptographic algorithms such as symmetric ciphers, message digests and |
| 25 | key derivation functions. For example, to encrypt something with |
| 26 | ``cryptography``'s high level symmetric encryption recipe: |
Alex Gaynor | 872cd97 | 2014-02-10 18:52:47 -0800 | [diff] [blame] | 27 | |
Alex Gaynor | 9993699 | 2014-02-11 14:10:37 -0800 | [diff] [blame] | 28 | .. code-block:: pycon |
Alex Gaynor | 872cd97 | 2014-02-10 18:52:47 -0800 | [diff] [blame] | 29 | |
| 30 | >>> from cryptography.fernet import Fernet |
| 31 | >>> # Put this somewhere safe! |
| 32 | >>> key = Fernet.generate_key() |
| 33 | >>> f = Fernet(key) |
| 34 | >>> token = f.encrypt(b"A really secret message. Not for prying eyes.") |
| 35 | >>> token |
| 36 | '...' |
| 37 | >>> f.decrypt(token) |
| 38 | 'A really secret message. Not for prying eyes.' |
Alex Gaynor | 7a6b5cb | 2013-08-07 09:56:34 -0700 | [diff] [blame] | 39 | |
Donald Stufft | bf9df01 | 2013-10-19 22:39:44 -0400 | [diff] [blame] | 40 | You can find more information in the `documentation`_. |
| 41 | |
Paul Kehrer | c01ddc8 | 2013-10-07 15:58:33 -0500 | [diff] [blame] | 42 | Discussion |
| 43 | ~~~~~~~~~~ |
| 44 | |
Alex Gaynor | a11e74c | 2014-02-01 16:25:56 -0800 | [diff] [blame] | 45 | If you run into bugs, you can file them in our `issue tracker`_. |
| 46 | |
Paul Kehrer | c01ddc8 | 2013-10-07 15:58:33 -0500 | [diff] [blame] | 47 | We maintain a `cryptography-dev`_ mailing list for development discussion. |
| 48 | |
Alex Gaynor | e21e14a | 2013-10-22 14:25:49 -0700 | [diff] [blame] | 49 | You can also join ``#cryptography-dev`` on Freenode to ask questions or get |
| 50 | involved. |
Paul Kehrer | c01ddc8 | 2013-10-07 15:58:33 -0500 | [diff] [blame] | 51 | |
Alex Gaynor | e21e14a | 2013-10-22 14:25:49 -0700 | [diff] [blame] | 52 | |
| 53 | .. _`documentation`: https://cryptography.io/ |
Alex Gaynor | a11e74c | 2014-02-01 16:25:56 -0800 | [diff] [blame] | 54 | .. _`issue tracker`: https://github.com/pyca/cryptography/issues |
Paul Kehrer | c01ddc8 | 2013-10-07 15:58:33 -0500 | [diff] [blame] | 55 | .. _`cryptography-dev`: https://mail.python.org/mailman/listinfo/cryptography-dev |