aboutsummaryrefslogtreecommitdiffstats
path: root/docs/architecture.rst
blob: 5ca2c2525c29dd66f749f772c1f3940ad85270f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
Architecture
============

``cryptography`` has three different layers:

* ``cryptography``: This package contains higher level recipes, for example
  "encrypt and then MAC". This is implemented on top of
  ``cryptography.hazmat.primitives``.
* ``cryptography.hazmat.primitives``: This packages contains low level
  algorithms, things like ``AES`` or ``SHA1``. This is implemented on top of
  ``cryptography.hazmat.bindings``.
* ``cryptography.hazmat.bindings``: This package contains bindings to low level
  cryptographic libraries. Our initial target will be OpenSSL.