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

Add TLS Handshake #1109

Closed
g-r-a-n-t opened this issue May 8, 2019 · 5 comments · Fixed by #2945
Closed

Add TLS Handshake #1109

g-r-a-n-t opened this issue May 8, 2019 · 5 comments · Fixed by #2945

Comments

@g-r-a-n-t
Copy link
Contributor

The TLS handshake as described here https://github.com/libp2p/specs/blob/1a5e6eb805fc6c902128288ae1575945bcdc6e2a/tls/design%20considerations.md should be implemented.

@g-r-a-n-t
Copy link
Contributor Author

Hey @tomaka, I sent you message on gitter inquiring about this work, but have not heard back, so I assume you don't check that.

Basically, I'm interested in contributing to libp2p and have heard that this functionality will be useful down the road. So if there aren't any major blockers on this, I'd like to take a crack at it.

@tomaka
Copy link
Member

tomaka commented May 8, 2019

You can see some attempt from here in a branch: https://github.com/tomaka/libp2p-rs/blob/29e7b209c3cbdbdff2d7f2e737ea68c71eec4e0f/transports/quic/src/endpoint.rs#L161-L249

One of the main blocker is that the API of rustls doesn't have a straight-forward way of seeing the remote's certificate.
I temporarily used OpenSSL to generate the certificate, but I'd really appreciate if we didn't have to depend on OpenSSL just for this.

If you're motivated, go for it, but it's not a walk in the park.

@g-r-a-n-t
Copy link
Contributor Author

I'll keep you posted.

@Demi-Marie
Copy link
Contributor

I had to solve this as part of implementing QUIC.

@tomaka tomaka reopened this Feb 14, 2020
@Geo25rey
Copy link

@tomaka It might be worth it to begin the switch to OpenSSL entirely since go-libp2p and go-ipfs have started this transition.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants