emails have been interoperable since the beginning of time!
It's only impossible because the business models formed after the explosion of the internet required that they own the platform for profit. And doing so requires that other platforms not intrude. Hence, the failure of interoperability.
The IMAP protocol is a known dumpster fire but getting jmap implemented over every email client and server is basically impossible. Gmail avoids this by just implementing their own proprietary protocol which only works with gmail and the web ui/apps.
Have you considered that it’s the password reset center because it’s the only thing that works well enough?
Anything completely proprietary is a joke for security from a business continuity perspective. It’s the same reason serious companies don’t depend on “sign in with Facebook” as their only login method.
Well that’s a clause doing a lot of work. I guess email could have been the permanent contact repository a la Facebook if it had been easier for people to own their own addresses
"How all messages are sent" and "who signed the message" are mostly separate issues. See for example https://en.wikipedia.org/wiki/Off-the-Record_Messaging which works on pretty much any messaging app/network.
Email encryption is different because HTTPS certifies that you are connected to the owner of that domain name. How do I certify to you that the email you just received came from me and not someone pretending to be me?
The only bullet proof secure way is if I visit you in person and hand you a copy of my public key and then you use that key to verify my emails. We have had tools to do this with email for over a decade but they are so inconvenient that no one uses it outside of a few privacy nuts.
I use PGP quite often. And I know how hard it is and how much it lacks.
But I'm no 'privacy nut'.
A legitimate easy and underused option is how kraken employs it. I've uploaded my public key. They now send all transactional, security and other mail signed and encrypted. This is a solid solution to phishing.
The only part 'missing' is how I get my pub key on my kraken account. For me it was an export+copy+paste. But it should probably as easy as an OAUTH alike flow between kraken and my mailprovider. 'Kraken wants to import your public key to sign and encrypt it's emails to you'. An UI thing.
There isn't anything quite like the Browser - Webserver simple connection to encrypt. I would like my connection encrypted to my mailserver using SMTP/POP3/IMAP/HTTP + TLS, which it can be. I would like my email server to talk to your email server using TLS which it can do, but isn't guaranteed, there are several approaches to it (STARTTLS and others). I would like incoming mail to be spam-filtered which means a service that can read the content. My company would like incoming email to be malware and phishing filtered, which means accessing the content. My company would like outgoing email to be signatured and branded, same again. My company requires email to be archived for legal reasons and cloned off-site for DR reasons. The design of SMTP involves store-and-forward, failover and fallback options, multiple MX records, so there's not a trivial path email always takes from sender to recipient. Attackers will try to intercept SSL connections and force fallback to plain text SMTP and people would rather email arrives than doesn't arrive. Tons of companies are using ancient not-updated network equipment which proxies and edits SMTP traffic as it goes through. Coworkers would like Webmail which almost necessarily requires the server having access to unencrypted email to show it to you in a browser.
Trying to put some kind of "secure" on top of that pile of entrenched systems is much harder than saying "the biggest players don't want it", what would it be, which layers would it go in, which sides would manage it, how would it interact, who would standardise on it, how much bother is it for users and for people who forgot their password? The main approach is to public/private key outside email and send encrypted blobs to each other, which is full of key management problems, or a service which intercepts email and pulls the text out and sends on a HTTPS link and a blank "someone sent you an encrypted message. Sign up and login to view it" which sucks, but is a lot more practical and does actually work.
Our entire ecosystem under the chat application is based upon interoperability, from Ethernet to IP to TCP to HTTP to even HTML (note how you use a single web browser to use all of your favorite websites!), so I don't want to be too quick to rule out that it's impossible just because it is difficult.
I would, however, agree that the incentives for it rarely exist. But with proper incentives, I'd say we could achieve some pretty amazing protocols for a lot of modern use cases.
And then on telegram you try to open an encrypted chat with someone on IRC, but their irc client doesn't support that.
Users don't care about talking to people cross platform as much as they care about everything working properly. Its easy enough to have 3 messaging apps on your phone.
[1] - https://otr.cypherpunks.ca/
Having compatibility between systems like between discord and telegram is just going to be a nightmare no matter what you do since they both want to decide on their own what the features should be.
I'd offer an alternative explanation for why we haven't seen interoperable communication software—because proprietary systems make more money.
Its easy for the MPEG group to say, this is our new standard. Thats what it is, not debate. But imagine trying to come out with Email 2 and getting that to work on every email server and client.
How many "innovators" have been born and died in the time that IRC has been around? It seems to be that proprietary stacks are impossible long term, while IRC and open standards continue to exist and evolve, even if they aren't popular right now.
Being able to see messages while your computer was turned off is bare minimum. Being able to use your phone to connect and receive push notifications is bare minimum. Being able to share a photo is bare minimum. Having a profile picture is bare minimum.
Some of these features can be sort of had with client extensions or middle steps like irc bouncers but the average user does not care for this. It should just work and every other platform just works.
The average user also doesn't care if the proprietary messaging platform of the day dies and is replaced with a new one because its easy to sign up again on the next platform
* In discord, you need to install the "native" client to be able to share your screen or see other peoples' shared screen. The web client cannot.
* Microsoft Teams in Firefox does not do Calls; "Native" Microsoft Teams in Linux cannot "raise hand"; Microsoft Teams in Chromium on Linux cannot do the background thing.
Some of those may have evolved, I have only used Teams in chromium recently.
Interoperability in communication software is impossible. I know this will upset a lot of people here but its just what we have seen time and time again.
Interoperable and standard software can not innovate because it is impossible to innovate since you need all vendors to agree and move in the same direction as you. Look at how ircv3 went. They promised the absolute bare minimum change to make irc slightly more modern and they weren't able to pull it off in time.
Discord could not be interoperable with other systems because most of its features did not exist at the time it added them. Interoperability means catering to the lowest common denominator of feature sets.
As discord has shown, siloed platforms are not the end, people will move to a new platform if it is clearly better. Discord was much much better than the rest so everyone moved. If someone else makes something much much better again they will move again.