upvote
The problem with email encryption is not about CAs or verification of keys at all. The problem is key management and how encryption interferes with the common expectations that users have about email. In a corporate environment it is easier because the corporation itself can manage user keys and issue yubikeys etc., but for individual users there is no such support. It is also clunky to have to first receive someone's public key before you can send an encrypted message; for chat apps that is not a problem because chat is interactive and typically real-time, but with email there is no guarantee about interaction.

Those issues are partially addressed with "identity based encryption," but IBE always has a "backdoor" because there is a party that issues the users' private keys (and hence can always read a users' messages). On the other hand IBE does allow you to "just send" an email to someone because the public keys are just the "identities" (e.g. email addresses) combined with a single master public key. Key management is not as much of a problem because of how keys are generated. IBE does have some users, but as you said it is mostly business/organizational use.

reply
Why such a long lifetime?

If you could actually solve the deeper problem of the sender being able to find the correct certificate to use for the recipient(s), then the lifetime could and should be as short as possible, as in days not years. The recipient can decrypt the message forever, as long as they continue to possess the private key, even if the associated certificate expires. Short-lived certificates are the only effective mechanism for dealing with key theft and mis-issuance that works at scale.

reply
> duration of 1 year or longer

Let's Encrypt is bringing the duration of certs down not up. I believe their goal is 30 minutes validity.

reply
> Let's Encrypt is bringing the duration of certs down not up. I believe their goal is 30 minutes validity.

This is mandated by the CA/Browser Forum, which, as the name implies, is related to browsers. It says nothing about e-mail clients. In its Extended Key Usage filed (RFC 5280 § 4.2.1.12) a certificate could not have server or client authentication, but have email protection as an allowed use.

Edit: there is an RFC for "Extensions to Automatic Certificate Management Environment for End-User S/MIME Certificates"

* https://datatracker.ietf.org/doc/html/rfc8823

reply
Let's Encrypt has always had short-lived certificates, long before they were mandated by the CAB. They've been pushing the cutting edge here
reply
As far as I know 30 minutes validity is no one's goal, even long term.

The most aggressive plans (not Let's Encrypt's specifically) target 7 day validities.

reply
I say we go for one Planck time of validity.
reply
Thoughts on why it hasn't been solved?
reply
Just look above here, people still want to do cert reneval manually with long timespans. The most radical thing LE did was not to provide free certs, or even automated certs, but short-lived certs.
reply
The short lifespans are to encourage people to actually automate, not just say they want to.

If the cert lifetime is 5 years, Bill installs "just the first one" manually, solemnly swearing they will automate next time, and in five years nobody even knows who Bill was, Bill left three years ago. How do we replace the certificate?

If the cert lifetime is 2 years. Bill is still there or maybe somebody on the team still knows Bill's email address, but most likely the decision is taken to "just do it manually once because it's urgent" and we just recurse. This would have been the "obvious" choice when ISRG lit up Let's Encrypt.

But because the cert lifetime was 90 days, Bill gets told it's expiring at about the same time he's about to shove that "Actually automate certificates" work onto the back burner. Oh yeah, right, we should actually do that.

Now, it may be that at a startup that "Automation" is initially "Put it on Natalie the intern's TODO list every Monday" but by week six Natalie has learned about cron, or Windows event scheduling, or a dozen other ways to make stuff you always do regularly happen without actual work. Today I expect her LLM will tell her how to do it.

And Natalie is going to discover that some "permanent" solutions are more permanent than others, that you want monitoring and so on. But because Let's Encrypt is so popular unless you're doing something pretty esoteric you won't even be the first person to ask about it this month.

reply
How would you verify the users real name ?
reply
You wouldn't. Let's Encrypt doesn't verify anything more than that the requestor of the HTTPS certificate currently has control over the domain. The equivalent would verify nothing more than that the requestor of the S/MIME certificate currently has control over the email address. This part is actually a fairly standard procedure already, as a lot of websites will send verification emails to fully activate new account signups.
reply