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

avoid C dependencies #43

Open
rogpeppe opened this issue Nov 27, 2017 · 3 comments
Open

avoid C dependencies #43

rogpeppe opened this issue Nov 27, 2017 · 3 comments

Comments

@rogpeppe
Copy link
Contributor

pymacaroons depends on libnacl, but there's an alternative implementation
of the NaCL crypto that doesn't require C shared library installation (which
can be operationally problematic).

See https://github.com/jfindlay/pure_pynacl.

@ecordell
Copy link
Owner

I love the idea of this (as it was one of the main motivators behind writing pymacaroons in the first place), but I'm a little concerned with taking a dependency on single-author crypto code that's not actively maintained and afaict hasn't been reviewed by anyone else. libnacl binds to libsodium which is frequently patched and has many eyes and many users.

Another option might be pynacl, which also binds to libsodium but the wheel on pypi includes pre-built libsodium libs. (matrix forked pymacaroons to switch to that).

A third option which would require a little more effort is packaging up pymacaroons with several swappable options for nacl, so you can pip install pymacaroons[pure_pynacl] if you're comfortable with that implementation.

@rogpeppe
Copy link
Contributor Author

Using pynacl seems like a decent interim solution - that would mean we wouldn't need special apt-get stanzas in various places (particularly as libsodium-dev isn't available directly as under Ubuntu 14.04).

@ecordell
Copy link
Owner

Pynacl added in #45

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

No branches or pull requests

2 participants