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

feat: wrap picotls backend #10

Open
wants to merge 12 commits into
base: main
Choose a base branch
from
Open

feat: wrap picotls backend #10

wants to merge 12 commits into from

Conversation

richard-ramos
Copy link
Member

As outlined in issue #961 on the nim-libp2p repository, at the time of writing this pull request, mbedTLS does not yet export the necessary APIs required for the QUIC protocol. Similarly, BearSSL has not implemented support for TLS 1.3. To overcome this limitation and unblock the implementation of QUIC support for nim-libp2p, I decided to wrap one of the TLS backends supported by ngtcp2: picotls.

Currently, ngtcp2 supports the following TLS backends:

  • quictls
  • gnuTLS
  • BoringSSL
  • AWS-LC
  • Picotls
  • wolfSSL
  • LibreSSL

After reviewing the available options, the most promising choices appeared to be picotls or quictls. Both seem to provide lightweight and efficient TLS stacks specifically designed for QUIC. I ended up choosing picotls but ultimately, it is during the integration of this library with nim-quic that the final decision might change depending on issues that might be encountered.

@richard-ramos
Copy link
Member Author

Ah interesting! this seems to not work on windows and macos/arm64. Will investigate

@richard-ramos richard-ramos force-pushed the picotls branch 3 times, most recently from 979cade to 50f2bcc Compare January 31, 2025 00:45
@richard-ramos richard-ramos force-pushed the picotls branch 2 times, most recently from b770af7 to eaff2e2 Compare February 6, 2025 20:14
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.

1 participant