openssl / openssl/openssl

Support ECH SSLKEYLOGFILE

Open
#31,607 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

help wanted resolved: wont fix triaged: feature
Dominant language
C
Stars
30.8k
Forks
11.5k
Avg merge
10m
Merged PRs (30d)
1

Description

Spec draft: https://www.ietf.org/archive/id/draft-ietf-tls-keylogfile-05.html#name-secret-labels-for-ech. Both wireshark and nss implement it. Adding ECH support would make debugging easier.

I tried to implement it locally and was successful. However, a new exposed libcrypto function is required to get the HPKE shared secret, which seems to be intentionally hidden, from what I read on https://docs.openssl.org/master/man3/OSSL_HPKE_CTX_new/#description. Can we expose it function manually without including it in the header?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the TLS keylogfile spec draft, especially the ECH secret-label section, and the OSSL_HPKE_CTX_new documentation referenced in the issue. Review the existing local implementation and determine how the HPKE shared secret could be exposed through libcrypto; done means ECH SSLKEYLOGFILE support is implemented with an appropriate public API.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
cryptography, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.