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

Long term: Migrate from boring to rustls #797

Closed
howardjohn opened this issue Feb 2, 2024 · 0 comments · Fixed by #820
Closed

Long term: Migrate from boring to rustls #797

howardjohn opened this issue Feb 2, 2024 · 0 comments · Fixed by #820

Comments

@howardjohn
Copy link
Member

Currently, we use the boring library crate. This is to support the ability to use FIPS compliant crypto. This comes at the cost of simplicity and ecosystem compatibility, where rustls is king (and, I believe, there are massive performance differences in our use case; likely some could be improved with boring, but may be a wasted effort if we do this issue).

Some background: TLS does a lot of things outside of just raw crypto operations. Only the crypto operations are relevant for compliance.

Historically, rustls uses ring for crypto, which is not certified. However, recently it has added a pluggable mechanism allowing alternative crypto backends. There is also ongoing work to make ring itself have a FIPS mode.

We should look into migrating to Rustls. A pre-requisite to this should be the presence of a (high quality) provider to alternative crypto backends. Plausibly we could offer alternative backends users could build, but as a baseline I would expect a boringssl backend, probably as the default to match with current state and Envoy.

Relevant links:

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 a pull request may close this issue.

1 participant