Earlier quoted context omitted.
Opportunistic encryption of all sessions doesn't require any certificates. All that's needed is a key exchange algorithm and browser support. The UI would make it clear when a certificate was presented and validated, but no cert is needed for unauthenticated encrypted connections. The next step up from that would be unsigned public keys with pinning (like ssh) to reduce MITM, and finally above that would be identity…
> but no cert is needed for unauthenticated encrypted connections That is a common misconception. If I MITM when you establish connection, how would you notice? My self-signed certificate looks like a real one. That's why we need CAs (or WoT, or whatever), to verify identity after we've established a secure channel.
Best solution? Not by a long shot, but it is a reasonably simple one to implement and does improve things.