This article is part of a series on the Python cryptography library.
Cryptography is a complex topic, and even though there are libraries that contain good implementations of secure algorithms, it is still possible to create an insecure system. There are quite a few areas where simple mistakes in a naive implementation can introduced serious weaknesses.
For this reason, the cryptography library includes a recipes layer of complete algorithms that can be used "off the shelf" to implement secure encryption.
The second hazmat layer provides more flexibility but requires greater expertise in crytography to be used safely.
Copyright (c) Axlesoft Ltd 2020