I'd like to see the bits of the cipher suite associated entirely with
ephemeral data tied together roughly by security margin, to avoid
combinations that don't make sense (e.g., straw men of RSA384 + AES256
or AES256 + CRC32). This means: the type/size of the (EC)DHE group and
the symmetric cipher (and possibly the MAC, if it's anything other
than "GCM"). So, you'd potentially have something like

ECDHE256-AES256-GCM
DHE2048-AES256-GCM
DHE1536-AES128-GCM

etc.

The signature algorithm (ECDSA, RSA, etc.) would be entirely separate.
This isn't like the old days when the RSA key was used to exchange the
keys: in the FS world, RSA is never used for key agreement, so
RSA/ECDSA is used only to authenticate the server and is therefore
orthogonal to the cipher suite negotiated above... and it's also
implicit from the set of certificates the server has available.

This unfortunately means we can't really tie the signature security
margin to the cipher suite (going back to the RSA384 straw man), but
since it's a pre-existing credential nothing can be done by the client
other than to hang up if it's spooked by that. To fix this, we'd
really need to go down the road of specifying the key size in the
cipher suite, e.g. RSA2048 or ECDSA25519, which I'm not sure anyone
wants.

Does anyone want that? I ask because there are a ton of servers with
1024-bit RSA keys negotiating AES256-GCM, which tells an attacker
exactly what to focus on. (In theory: a tire iron is still probably
faster than factoring RSA1024.)

The nice thing about the above approach is that IMO it actually makes
things simpler for an implementer: the cipher suite list becomes a lot
smaller but still covers most of the options, avoiding the complexity
of full a la carte, while the signature algorithm is implicit for the
server. So, we're not at libsodium level of simplicity, but closer.

The one thing I'm having trouble pinning down is PSK. I fear it's not
a separate dimension, because it replaces both signature and KEX.

Kyle

_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls

Reply via email to