Minutes interim-2024-tls-01: Tue 16:00
minutes-interim-2024-tls-01-202410011600-00
| Meeting Minutes | Transport Layer Security (tls) WG | |
|---|---|---|
| Date and time | 2024-10-01 16:00 | |
| Title | Minutes interim-2024-tls-01: Tue 16:00 | |
| State | Active | |
| Other versions | markdown | |
| Last updated | 2024-10-17 |
TLS Interim 2024-10-01
Notes by: Chris Patton, Deirdre Connolly, Brendan McMillian
TLS Trust Tussle
Chris Wood
The goal is to define the problem; we won't try to agree on a solution
today.
-
Primary goals
- Availability: clients should have a cert they can use to connect
- Security: clients should only trust legitimate certificates
-
Clients have different trust stores
- many servers on the internet support multiple certificates to
try and provide the best one - some servers only have certificates for the intersection of
all clients
- many servers on the internet support multiple certificates to
-
Diversity pressures
- Some clients may move/update faster/sooner than others, nudging
servers to support an array of certs to support a diversity of
clients
- Some clients may move/update faster/sooner than others, nudging
-
"The Tussle": "Avoid client trust conflicts by enabling servers to
reliably and efficiently support clients with diverse trust anchor
lists, particularly in large PKIS whre thecertificate_authorities
extension doesn't work"- Considerations
- is divergence actually painful?
- what's the blast radius of the operational pain? who has to
deal with this? - do we only care about PQ?
- What are the effects of deploying a solution?
- Is the extent and duration of divergence not actually a
widely accepted pain in practice? - Are forces of change (divergence) so few and far between,
that the current distribution of operational pain seems like
the best outcome? - Do we really only care about solving the PQ PKI problem,
rather than generalizing to address types of change? - What are the possible downstream effects of solving this
tussle?
- Considerations
-
Q&A:
-
Stephen Farrell: What's the scope?
- CAW: Focus on large PKIs, but applicable to smaller ones as
well
- CAW: Focus on large PKIs, but applicable to smaller ones as
-
Watson Ladd: What about feature negotiation, e.g., SCTs
required?- CAW: Proposed solutions do consider this, but this isn't one
of the core things to
- CAW: Proposed solutions do consider this, but this isn't one
-
Bob Beck, David Benjamin, Devon O'Brien
-
The problem is increasing over time (Bob)
- When the web was young, there was one, slow-changing trust store
- Now we have many browsers, different trust stores of different
"vintages" - "The long tail is getting longer"
-
PQ is not the primary motivator for this crew
-
Background (David)
- The only way to stop TLS interception is to prevent the client
from accepting the attacker's key
- The only way to stop TLS interception is to prevent the client
-
"The Tussle" (David)
- Over time, PKIs face pressure toward client trust anchor
diversity. - As deiversity incrases, we must iethe rsacrifice security or
availability - Solution: allow servers to support clients with diverse trust
anchor lists - Focus on big PKIs
- Over time, PKIs face pressure toward client trust anchor
-
Motivating examples (Devon)
- "Changes to Google's certificates have always been painful
because there's no negotiation about certificates in TLS." -
Adam Langley, circa 2015 -
2017 Seymantic PKI Distrust
- domain validation of nearly all ceritificates from the CA
needed to be distrusted quickly, but took months - details of distrust not shared publicly
- there was a time that there was no CA that was trusted by
all clients
- domain validation of nearly all ceritificates from the CA
-
Certificate Transparency Policy
- In 2016, one CA (secretly) acquired another, forcing clients
into a looser SCT policy
- In 2016, one CA (secretly) acquired another, forcing clients
-
Certificate Transparency Shared Fate
- In 2019, Google wnated to spin down original CT logs
- Certain Apple clients constrained to rely on these logs and
couldn't update the log list dynamically - Servers don't know how to differentiate old clients from new
ones, so the logs had to stay online. - "McDonald's gate" had a similar root cause
-
Root Programs Diverging
- circa 2022: a major root program has stopped accepting new
CAs - 2022: Lanuch of new root program: "Chrome Root Program"
- circa 2023: CA incident response expectaions between root
programs are diverging
- circa 2022: a major root program has stopped accepting new
-
Post quantum
- New PQ trust anchors will be needed: at any given time,
there will be a mixture of clients at different stages of
the transition - Clients may opt for different trade-offs to deal with bigger
public keys and signatures
- New PQ trust anchors will be needed: at any given time,
- "Changes to Google's certificates have always been painful
-
Benefits of solving the "Trust Tussle" (Devon)
- Better support for older clients
- Clients can pick their own CT policies
- CT bugs would not dictate ecosystem decisions
- Lower bar of entry for new root programs
- Easier for servers to support diverse clients w/o relying on
fingerprinting
-
Convergence incentives (Bob)
- divergence is a burden for servers
- clients are incentivized to converge
-
Consequences of status quo (Bob)
- We'll have to prioritize convergence over all other needs
-
Q&A:
- Brendan: In the Symantic case, why didn't you pursue a cross
sign?- Devon: This is a PKI operator consideration; can't say
exactly why they didn't. However, there is a "shared fate"
problem, which might explain why they might not want to. - Emily: Symantec didn't cross-sign another CA because of
potential compatibility concerns (many clients chain build
incorrectly)
- Devon: This is a PKI operator consideration; can't say
- Brendan: In the Symantic case, why didn't you pursue a cross
Dennis Jackson
- No divergence in the transparency logs: the same set of operators
are trusted by all browsers - Minimal divergence in CAs between different root programs
- CAB forum is the current mechanism for coordinating changes in the
root stores - Structural incentives of current system: CAs are valuable as a
result of universal trust, and long time-to-ubiquity ensures healthy
CAs - Most pain from CA removal isn't technical, it is personal / legal
pressure - Any platform except Android version < 14 can ship automatic root
store updates quickly - Agility failures come from many places: quirks in TLS libraries,
chain validation, configuration, application-specific decisions -
Implementation-defined labels to try to capture these quirks are
just "User-Agent strings": labels were defined and not standardized.- Incentive to lie: less popular clients advertise more popular
clients' agent. - Can give permission to other clients to stagnate
- Incentive to lie: less popular clients advertise more popular
-
What can we do instead?
- Identify bugs and divergences in TLS
- Use A/B testing to identify configuration changes
-
Q&A:
- Paul: Why do non-PQ cross-signs if they're not secure?
- Dennis: Provides compatibility to clients that haven't trusted
the purely PQ root first - Stephen: Do we have any experience as to what types of
negotiation work? - Dennis: Ciphersuites work very well because ciphersuites are
simple. When we can't really identify certain things, like
quirks about how chain building works, that's harder. - David: I think we can come up with a mechanism that works for
this. X509 and path building is a morass of complexity. If you
think about where path building comes from, it's a way to handle
trust anchor diversity itself. A mechanism to solve this would
actually turn off path building. - Dennis: The issue with label-type approaches is that the meaning
of the label degrades over time.
Discussion
Sean: Do people feel they understand what the problem statement is?
Kyle: On user-agent negotiation. There's many things that need to be
negotiated (trust anchor, CT, etc) There's a difference between saying
"we shouldn't negotiate any of this" versus "we need negotiation for all
of these things". Deprecating SHA-1 wasn't negotiated, and it was quite
painful. When we have the ability to negotiate, we SHOULD.
Adam: Some sharable instances of past problems we've had with
certificates:
- For a long time very copacetic relationship because we had the same
root for a long time and then it expired. Now I have to regularly
pick new roots. - Many instances where we've broken more than a million devices. Then
these devices have turned into a DoS endpoint because they retry
loop. It often takes more than 6 months to push an update. - We've paid a CA to issue a certificate from an expired CA to fix one
client. - We've had people who have lost their source code, so we've binary
patched their software.
Dennis: It's a bad premise to start from, that we could have one
extension that will negotiate everything.
Andrew: We have a very long tail of browser clients that never update.
This has caused us to get certificates from the most ubiquitous CAs, aka
the longest lived, and this set gets smaller every year.
Stephen: Doing experiments on public data and getting more clarity over
time. If someone wanted to update RFC 5280 just for TLS, that would be
great.
Watson: Need to be very disciplined that we don't end up transforming
the problem we want to solve into a huge mess.
David: We want to focus on negotiating trust anchors.
Scott: Curious if group wants to take on problem of serving separate
certificates for PQ and non-PQ purposes?
Wayne: My life would be 80% better if we could solve half the problem:
allowing clients to signal to server what they support.
Benjamin: There have been many efforts to make government CAs. The
requirement to have a global trusted CA set has been a barrier to those
efforts.
Bas: Making the statement weaker would be helpful. It would be nice to
just know what will happen.
Responses to the Polls:
Do you understand the problem we are trying to solve (see screen).
total participants: 35
yes: 27
no: 2
no opinion: 2
Do you think we should work on this problem?
total participants: 32
yes: 24
no: 4
no opinion: ?