Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use python cryptography for DNSSEC #449

Merged
merged 1 commit into from Apr 8, 2020
Merged

Conversation

simo5
Copy link
Contributor

@simo5 simo5 commented Apr 7, 2020

Replaces the need to use pycryptodome and ecpy with the much better python cryptography.

Python cryptograpy depends on the much more common and vetted openssl library for cryptography functions. This means algorithms are properly hardened against side channel attacks unlike other implementations.

Fixes #448

Signed-off-by: Simo Sorce <simo@redhat.com>
@bwelling
Copy link
Collaborator

bwelling commented Apr 8, 2020

This looks ok to me.

@pspacek
Copy link
Collaborator

pspacek commented Apr 8, 2020

What minimal version of python-cryptography is required? I would like to check if it is available in reasonably modern versions of Debian etc.

@abbra
Copy link

abbra commented Apr 8, 2020

Buster (current stable Debian version) has 2.6.1 so it seems to be OK as this patch requires 2.6 in the specs already.

I tried Xenial (Ubuntu 16.04) and it only complained about ed25519 and ed448 imports. This is with python-cryptography 1.2.3. Both modules for this were added in 2.6 version of python-cryptography.

I think 2.6 is a reasonable requirement for elliptic curves. It is possible to split imports further and get the whole code supporting python-cryptography 1.2.3. I wonder if that is really needed.

@tiran
Copy link

tiran commented Apr 8, 2020

Thanks @simo5

Nit pick: The upstream project is called PyCA cryptography or pyca/cryptography and not Python cryptography.

@pspacek
Copy link
Collaborator

pspacek commented Apr 8, 2020

Sounds good to me, I would not complicate matters just because of very old distributions. dnspython 2.0 is breaking release anyway. Thanks!

@pspacek
Copy link
Collaborator

pspacek commented Apr 8, 2020

@rthalley @bwelling Ok to merge?

@simo5
Copy link
Contributor Author

simo5 commented Apr 8, 2020

@tiran while the "cryptography" project is under the PyCA organization in github, on pypi it is called just cryptography. I added the "python" prefix just to make clear it is the import called "cryptography" available in python.
But I will change it to anything if needed, just let me know.

@rthalley rthalley merged commit 6c1f53e into rthalley:master Apr 8, 2020
@simo5
Copy link
Contributor Author

simo5 commented Apr 8, 2020

Thanks @rthalley

nrhall pushed a commit to nrhall/dnspython that referenced this pull request Jun 23, 2020
Use python cryptography for DNSSEC
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Patch to use python-cryptography acceptable?
6 participants