Couldn't post a direct link, this is hosted on a gemini capsule and Lemmy accepts only http.
gemini://misfin.org/
๐ manifesto
Email is just as bad as the Web. It's grown to be complex, secure only with other protocols bolted onto it, and it supports all the nasty misfeatures that the Web does, like cookies and tracking beacons. Even worse, it's seeing active hostility from the major players of the Internet. Most ISPs block traffic on port 25, and you can't deliver mail to any of the big names (like Gmail) without jumping through hoops - and even then, it's a coin toss.
I would love it if there was a way around this, a standard way for people interested in the small web to communicate. Something like Gemini, which can be grokked and implemented by one person. To that end, I've been working on a replacement - but I need some feedback.
๐ฐ the details
I've written up specs for a protocol named Misfin, named after the Manned Space Flight Network (MSFN). It's spartan, but not overly so. It's only concerned with sending messages; mailbox management and relaying are out-of-band. Neither does it do much to combat spam - it probably won't be used by enough people to matter - but it avoids the worst of SMTP's security gotchas.
๐ the protocol: less is more
Maybe we should just worry about text. Maybe we don't want to accept big huge messages from strangers. Maybe we should be asking people nicely if they want to receive an attachment, rather than just sending it to them. Consider the following protocol. We send a single request, no more than 2048 bytes, and with an assumed mime of text/gemini:
misfin://mailbox@hostname.com Everything after this is the body of the message.\r\n
And the server tells us if it was accepted:
20 \r\n
Message sent, ezpz. Misfin is limited, but not crippled. Want to send a binary file? Throw it up on a Gemini server (you have one of those, yeah?) and link to it - you get the fingerprint of the receiver's certificate, so you could even gate it for them if it's eyes only. Can't fit your message into 2K? Send two, or maybe write less. (Most of the emails I got on the Gemini mailing list were smaller than that anyway).
๐ญ but is there a better way
Maybe. That's why I need your feedback. Download the reference specification and shoot me a Misfin letter (!) at rfc@misfin.org
Or, make a ticket on Sourcehut, or Github, or post about it on Station. Up to you. But you could be the first to send me a Misfin letter...
I love how minimal it is, I do wonder what the optimal max message length is. Might be good to do a quick scrape of useful message text to get an estimate. Sounds like the plan for larger messages is to chain smaller ones together. Any architecture larger than that? Maybe a header that just has the hash of the previous message in the chain to form a kind of link? Or a footer on the previous with the hash of the next so you know what to expect?