blob: 54927e660f85af65b9d66b85eb75532962106338 [file] [log] [blame]
Alex Stapletonc5fffd32014-03-18 15:29:00 +00001Frequently asked questions
Alex Gaynorde06b292014-02-18 16:40:09 -08002==========================
3
Alex Gaynor59a6bc62014-02-18 18:13:48 -08004How does ``cryptography`` compare to NaCl (Networking and Cryptography Library)?
Alex Gaynorde06b292014-02-18 16:40:09 -08005--------------------------------------------------------------------------------
6
7While ``cryptography`` and `NaCl`_ both share the goal of making cryptography
8easier, and safer, to use for developers, ``cryptography`` is designed to be a
Alex Gaynorc37adab2014-02-18 16:46:58 -08009general purpose library, interoperable with existing systems, while NaCl
10features a collection of hand selected algorithms.
Alex Gaynorde06b292014-02-18 16:40:09 -080011
Alex Gaynor5809d482014-02-19 13:33:18 -080012``cryptography``'s :ref:`recipes <cryptography-layout>` layer has similar goals
13to NaCl.
Alex Gaynorde06b292014-02-18 16:40:09 -080014
15If you prefer NaCl's design, we highly recommend `PyNaCl`_.
16
Paul Kehrerc23d5762014-05-08 12:41:45 -050017When I try to use ``cryptography`` on Windows I get a ``cffi.ffiplatform.VerificationError``
18--------------------------------------------------------------------------------------------
19
20This error looks something like:
21
22.. code-block:: console
23
24 cffi.ffiplatform.VerificationError: importing '<some_path>.pyd': DLL load failed:
25
26It typically occurs on Windows when the user has not installed OpenSSL. Download
27a `pre-compiled binary`_ to resolve this issue.
28
Alex Gaynorde06b292014-02-18 16:40:09 -080029.. _`NaCl`: http://nacl.cr.yp.to/
30.. _`PyNaCl`: https://pynacl.readthedocs.org
Paul Kehrerc23d5762014-05-08 12:41:45 -050031.. _`pre-compiled binary`: https://www.openssl.org/related/binaries.html