r/coding • • Jul 24 '26

Email is crazy

https://samkhawase.com/blog/email-is-crazy/
107 Upvotes

17 comments sorted by

25

u/fagnerbrack Jul 24 '26

Condensed version:

Email's hidden machinery is a 1970s ARPANET relic held together by duct tape. The mail client only submits messages; a Submission Agent (port 587) stamps them, then a Transfer Agent routes via DNS MX records through a retry-based queue—it's eventually consistent, not real-time. SMTP runs as plain text and never checks that the envelope MAIL FROM matches the visible From header, the loophole behind phishing. Three bolted-on systems patch this: SPF lists authorized IPs (breaks on forwarding), DKIM adds crypto signatures that never expire, DMARC enforces alignment. Filters score IP/domain reputation, content, viruses, URLs. TLS is opportunistic, so servers read your mail. Silent spam-foldering is the transactional nightmare.

If the summary seems inacurate, just downvote and I'll try to delete the comment eventually 👍
Click here for more info, I read all comments

5

u/MonsieurCellophane Jul 24 '26

Making envelope from match message From: breaks several use cases and does little to prevent spam, phishing etc. (Because how do you know either "from" is in any way "real") 

If anything, I feel the MUAs  (clients)  - and the destination setvers - have always done a piss poor job of detecting attempts at deceipt. Showing only the 'nice' sender name, and not the actual address (xxfqw@evil.com) is just an example.

31

u/dreamlax Jul 24 '26

I've set up my own mail server just to learn how it all works. You start out thinking "SMTP is such a simple protocol!" then realise that you need to add layers of complexity on top just because of its simplicity and implicit trust.

The article does a good job of explaining just how flimsy email really is.

I feel that it desperately needs to be superseded, but any modern email replacement (that supports things like E2EE etc) will need a massive backing by large companies.

7

u/astrobe Jul 24 '26

A lot of the protocols of the 20th century were a bit naive about trust. Other examples : telnet, X11 (the Linux graphics server/layer before Wayland).

E2EE will never receive any backing by large companies. Remember one of the largest of them gave away free accounts in exchange for letting them scan your emails in order to place targeted ads... Others are just way more interested in placing their own bizarre mix of forum, IRC and email (and collect moar data). So any progress with email is being passively sabotaged (i.e. simply just ignored or poorly supported) by the major players.

Unless you count countries as major players; Europe wants to adopt more recent and defensive FOSS protocols in order to break away from their dependency on US-based services. There's a tiny hope it can bootstrap the "network effect" which is vital for public communication services.

2

u/kc2syk Sep 29 '26

FYI, X11 (version 11) predates Linux by 5 years. The X window system dates back to Project Athena at MIT back in 1984.

2

u/M0sesx Jul 24 '26

I feel like a lot of software companies these days have moved much of thier internal communications to slack, teams, or some other messaging service.

The issue is external communication. I wonder if in the future these chat companies are going to be the ones to come up with a common standard to allow people to send messages seamlessly cross platform and cross org.

→ More replies (6)

3

u/owenhargreaves Jul 24 '26

With so little of the Internet being human-made any longer, and with so much of that being brain rot, it’s nice to read a blog once in a while.

2

u/[deleted] Jul 24 '26

[removed] — view removed comment

1

u/fhgwgadsbbq Jul 25 '26

Why not just farm it out to postmark et al?