blob: 5ca2c2525c29dd66f749f772c1f3940ad85270f0 [file] [log] [blame]
Alex Gaynor1abfac72013-08-07 12:59:04 -07001Architecture
2============
3
Alex Gaynor1abfac72013-08-07 12:59:04 -07004``cryptography`` has three different layers:
5
Alex Gaynor1abfac72013-08-07 12:59:04 -07006* ``cryptography``: This package contains higher level recipes, for example
Alex Gaynor9e3c2502013-08-07 12:59:44 -07007 "encrypt and then MAC". This is implemented on top of
Donald Stufftf04317a2013-10-27 16:44:30 -04008 ``cryptography.hazmat.primitives``.
Donald Stufftce0d7812013-10-27 16:52:33 -04009* ``cryptography.hazmat.primitives``: This packages contains low level
10 algorithms, things like ``AES`` or ``SHA1``. This is implemented on top of
11 ``cryptography.hazmat.bindings``.
12* ``cryptography.hazmat.bindings``: This package contains bindings to low level
13 cryptographic libraries. Our initial target will be OpenSSL.