That's the problem with all these systems, you're increasing the size of the attack surface enormously.
That's the problem with all these systems, you're increasing the size of the attack surface enormously.
e) If the keys are stolen, issue new keys to all devices
The leaked keys are only good for physically compromised devices in the hands of people with access to the scanning electron microscopes, which I daresay is an extremely small attack surface.
There is only a small window after the leak in which a device can be stolen, powered down, and compromised.
On the other hand, you could mandate that such keys aren't allowed to be stored in databases (physical access only)
My point it that you could make it so difficult to break E2E for even the most elite hackers that the only realistic way to do it is with a warrant.
Like who? Russia? China?
Here's how they can compromise my device:
1. Locate me within the USA (easy)
2. Send a spy onto US soil to find me and steal my phone (hard)
3. Send another spy to work for Apple (easy)
4. Spy needs to break into Apple's vault and retrieve airgapped media containing my device's private key without a warrant (super hard)
5. Send both back to the motherland and use scanning electron microscope to complete the process (easy)
You really think that is viable? Seems extremely far fetched to me. Can you provide a more realistic scenario?
(And I suspect, for a sufficiently-motivated state-level actor, that actually falls under "easy", or at most "medium".)
Have we? I'm going to assume that you mean CAs in the Web PKI and not just "My friend Bob runs TLS and this has happened to the CA he was running on his Windows 10 laptop".
The last CA where we had a really grave problem was DigiNotar, in 2011. It seem _very_ unlikely that the problem at DigiNotar was full key compromise, instead bad guys appear to have penetrated the issuance infrastructure. This means they were able to (and did) issue themselves arbitrary certificates, but it did not give them the actual keys as you've said "happens frequently".
Since then we've seen a variety of unacceptable behaviour, including issuing backdated certificates to conceal the (also problematic) choice to continue doing something that was no longer allowed in new certificates, and issuing "test" certificates which would have been trusted by real client software even though their contents were known to be false. All unacceptable, and all having consequences (for example Symantec is no longer a CA) but all far short of "vendor has the keys stolen or leaked by a disgruntled employee".