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

Optionally support openssl instead of boringssl backend #108

Closed
wants to merge 1 commit into from

Conversation

niklasf
Copy link

@niklasf niklasf commented Dec 19, 2024

As another workaround for the linker conflict with openssl that doesn't sacrifice as much performance.

$ cargo bench
[...]
rsa-2048 - sign: 1.81 K/s
rsa-2048 - verify: 72.28 K/s

$ cargo bench --no-default-features --features pure-rust
[...]
rsa-2048 - sign: 714.39 /s
rsa-2048 - verify: 6.75 K/s

$ cargo bench --no-default-features --features openssl
[...]
rsa-2048 - sign: 1.29 K/s
rsa-2048 - verify: 41.05 K/s

As another workaround for the linker conflict with openssl that doesn't
sacrifice as much performance.
@jedisct1
Copy link
Owner

BoringSSL and OpenSSL have different features and APIs. Having to support both would require constant, additional work with little benefits.

Instead of patching each crate using either the former or the latter, your Rust skills would be better utilized in addressing the root cause, that affects far more that jwt-simple: cloudflare/boring#197

@jedisct1 jedisct1 closed this Dec 19, 2024
@niklasf
Copy link
Author

niklasf commented Dec 19, 2024

Fair enough. One more idea for this specific crate: Would you be open to making RSA optional, since it's the only problematic algorithm (for this issue, but also portability in general) and others may be preferred in any case?

@jedisct1
Copy link
Owner

I'd like to eventually use boringssl for all the crypto, since API stability, performance and security are much better than the rust implementations (including mine 😂).

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.

2 participants