Add djblets.secrets, for AES crypto helpers and token generation.
Review Request #12369 — Created June 13, 2022 and submitted
This introduces a new
djblets.secrets
module, which will be the home
of any future crypto/secrets-related work going forward.This currently contains
djblets.secrets.crypto
, a collection of AES
encryption/decryption utilities that wrap thecryptography
module.
This is a near-straight port ofreviewboard.scmtools.crypto_utils
,
with the exception thatencrypt_password()
has been renamed to
aes_encrypt_base64()
anddecrypt_password()
has been renamed to
aes_decrypt_base64()
. This is to help make it clear what form of
encryption and results are expected, and to allow room for other similar
utilities in the future.
cryptography
is now a hard dependency of Djblets, rather than a soft
dependency, as Djblets-shipped code will be making use of this module in
the future.
Unit tests pass.
- Change Summary:
-
Fixed an alignment issue.
- Commits:
-
Summary ID 51bc8cef8a71505d5c81c6e2ff5b8be2dea5aab5 be8fa78185e07949c2b8a45e83905988f6bb22f0
Checks run (2 succeeded)
- Change Summary:
-
Improve the organization of the new unit tests.
- Commits:
-
Summary ID be8fa78185e07949c2b8a45e83905988f6bb22f0 6279268285579aba9f4bde84d10e12c9f1c7701e