1. Bridge SSL
  2. TLS
  3. Forward secrecy: why yesterday stays private

Forward secrecy: why yesterday stays private

6 min readUpdated Aug 2026
Somebody records your encrypted traffic today and steals your server's private key a year from now. Forward secrecy is the property that makes the recording useless to them anyway: the keys protecting each conversation were never derivable from that long-term key at all.

What it protects against

It protects against one specific attack, and the protection is narrower than the confident name suggests.

The attack is simply stated: capture now, decrypt later. Storage is cheap enough that recorded traffic can wait years for a key to leak, be seized under legal process, or eventually be broken. Without forward secrecy, a single key compromise turns every recorded conversation protected by it into readable text, retroactively and all at once.

With it, each conversation used keys that existed only for that conversation, derived over the TLS handshake from material both sides contributed and then discarded. The long-term key proves identity; it does not encrypt anything that could be replayed against the archive.

How the separation works

Two jobs that used to be handled by a single key, now split apart between two of them.

The certificate's RSA or elliptic-curve key answers "is this really the server for this name", which is the identity half of the handshake described on the handshake page. The session keys answer "what protects the next few minutes of traffic", and they are computed fresh from contributions both sides make and neither stores.

That split is why the property exists at all. An attacker holding the long-term key can impersonate the server going forward, which is serious in its own right, but cannot go back and read what was recorded, because the material needed for that was never written down anywhere and cannot be reconstructed from what they hold.

Whether any given connection actually has this property depends entirely on which combination of algorithms the two sides agreed on, which is what a cipher suite names. The current generation of the protocol narrowed the available combinations considerably, which is part of why fewer connections lack it than used to.

One more consequence follows, and it is the reason the property is worth having even on sites with nothing secret in them. Traffic that is worthless to an attacker today may be valuable later: an address, a name, a pattern of use that means nothing now and identifies somebody in five years. Deciding today that a conversation will never matter is a prediction, and this property removes the need to make it.

What it does not cover

Four things, and each is a different conversation.

  • It does not protect the future

    Somebody holding your key can present themselves as you until the certificate is replaced and the old one is no longer trusted anywhere, which is what revocation exists for and why it is a considerably harder problem than it first looks.

  • It does not protect what either endpoint keeps

    Traffic being unreadable in transit says nothing about the copy sitting in your database, in your logs, or in the visitor's browser. Most data loss is not interception at all, and this property addresses only interception.

  • It does not survive a compromised endpoint at the time

    If the server was already under somebody else's control when the conversation happened, that somebody had the session keys as well, because the server itself needed them to hold the conversation.

  • It does not make recording pointless

    Traffic patterns, timing, sizes, and the name requested through SNI remain visible to anybody in the path, which is why that name is worth thinking about as a separate question.

Why it took so long to become normal

The arrangement costs a little more work per connection than the simpler one it replaced, and for years that cost was weighed against a threat that seemed theoretical: who would store encrypted traffic for years on the chance of a future key compromise? The answer turned out to be anybody with storage, and the calculation changed.

Configurations written before that shift are still running. They are not broken and their sites work, which is precisely why nobody revisits them. That makes this one of the few security properties worth checking on a working system rather than only on a failing one.

What to do about it

Very little, and the fact that there is little to do is itself the point.

This is not a setting you enable. It follows from which algorithms your server is willing to use, so the practical action is to configure from a current source rather than from an article of unknown age, and to check what your host actually agrees to against what its configuration file appears to say. The distinction matters because the effective list combines the software's defaults with your own settings.

If you inherited a configuration that predates the current protocol generation, that check is worth doing once, deliberately, rather than assuming either outcome. It takes a minute and either confirms something comforting or finds something that has been quietly true for years.

FAQ

What is forward secrecy in simple terms?

Each conversation gets its own keys, created for that conversation and thrown away when it ends. Stealing the server's long-term key later does not help anybody with traffic recorded earlier, because that traffic was never protected by that key in the first place and nothing derivable from it remains.

Does forward secrecy protect me if my private key leaks?

It protects past recorded traffic and nothing else. Somebody holding your key can impersonate your site going forward until the certificate is replaced and the old one is no longer trusted, so a leak remains an emergency requiring an immediate response rather than a manageable inconvenience.

Is forward secrecy something I turn on?

Not directly, and looking for the switch is how people conclude they do not have it. It follows from the combination of algorithms your server agrees to use, so it is an outcome of configuration rather than a setting. Check what a host actually negotiates rather than what its configuration file suggests it might.

Do I still need it now?

Yes, and on a modern setup you most likely already have it. The current generation of the protocol removed many of the combinations that lacked the property, so the practical question is usually not whether to adopt it but whether an old configuration somewhere is still permitting something it should not.

Certificates that renew themselves

Bridge SSL is the TLS layer of Bridge CDN: issuance and renewal happen as part of serving your site, wildcards included. Nothing to install, nothing to schedule.