Email or username:

Password:

Forgot your password?
Darius Kazemi

Has anyone made a DMs-only fediverse client? Like something that looks more or less like iMessage or Signal but you address people via their fediverse handles and it handles DMs as first class (and only-class) content?

Has anyone made a DMs-only fediverse *server*? Like if I want to join fedi but only to direct message people and be in group chats I could join a server and it would have a nice client view like the one in the previous paragraph?

65 comments
alexandra catalina

@darius could that be done as a matrix server that uses mastodon for auth?

Darius Kazemi

I'm thinking no discovery of topics or people. No hashtag support. None of that shit. Basically just email-over-activitypub. You give it addresses for people you want to talk to and then it happens. Just like with phone numbers and SMS/MMS. Make it e2e encrypted if you like, or not.

The difference from email is I could have my nice iMessage like experience over here, and you can be stuck in Mastodon DM user experience hell on your end if you so choose. Choice!

mcc

@darius At this point I feel like it would be more useful to simply make a mastodon-to-matrix bridge.

Darius Kazemi

@mcc are there matrix clients that look like signal/imessage? every client I've seen is some horrible irc variant

mcc

@darius @hellpe @krille I found it unusable for a long time but some kind of threshold was reached in the last few years and Element is REALLY good right now. Ready to replace Discord honestly

Darius Kazemi

If you went the e2e route in the current ecosystem you'd have some kind of Signal-style lock-in where you'd need people running the same client on both ends, but you'd be bouncing around encrypted messages via activitypub, I guess? idk. just spitballin here people

zunda

@darius Mastodon actually used to have API endpoints for E2EE messaging github.com/mastodon/mastodon/p which has been dropped due to the lack of clients: github.com/mastodon/mastodon/p. It maybe worthwhile looking into the code for how it looked like. (I'm afraid I'm not an expert :P

Darius Kazemi

But also, in response to all the "what about e2e encryption" -- I would like that but I would *also* like a nice dedicated user interface for my activitypub DMs as they exist today. Would a custom client be more secure than my current DMs? no. would it be LESS secure? also no!

Glyph

@darius you could also have explicit support for bootstrapping into more secure messengers if you were doing this as a first-class thing. a lot of people (myself included) _mostly_ use social DMs as a way of getting off-platform onto Signal or similar

Darius Kazemi

Further (and now I am ranting, sorry), I used email as an analogy specifically because it is insecure as shit but we use it every day

Darius Kazemi

I probably should have pitched it in the original post as an idea for insecure messaging

Chris Radcliff

@darius Yeah. I’m in favor of a better UX. I’m even more in favor of fixing the glaring safety hole before encouraging new adoption. I’m a thoughtful server admin, but even I don’t trust me with your DMs. (And yes, I totally had the “I read your emails” sticker back in the day.)

infinite love ⴳ

@darius i'm not sure what the point of such a *server* would be, but as a *client*, i imagine it would make some sense. i'm thinking generic activitypub server and then an activitypub client that just shows you your inbox. i mean, everything is a "direct message" on the spec level, right? just, you're dealing indirectly with resources. perhaps you could have a separate Message activity, but it is also conceivable to add certain objects to a certain collection. maybe even both of these ideas.

Misty

@darius See, I half thought this was nerd sniping to attract replies about security

Darius Kazemi

@misty lol no I'm just a dumbass who forgot where I was posting

Glyph

@darius FWIW email is a lot more secure, on average, than people give it credit for. It doesn't break in the nice clean way that e.g. spoofed TLS would, but in practice if you try to blast out plaintext SMTP forged from: headers these days, you get blackholed into oblivion 99% of the time. servers are also using TLS between each other and so grabbing messages off the wire is not trivial either.

Darius Kazemi

@glyph right, and ActivityPub has similar protections built in for forged from fields and the like. The core insecurity of "Google can hand your plaintext email to the cops" is analogous to "admins can read your DMs" that people on here are always bringing up

Jason Petersen (he)

@darius @glyph how is all of this that you’ve described not jus Matrix. Yes, it’s not activity pub. But it’s mostly what you mean, and it’s federated.

Darius Kazemi

@jason @glyph it is frustrating to ask "has anyone built a bridge out of paper?" and to get a bunch of replies about how plenty of bridges are built from steel

Gracious Anthracite

@darius

My main thought with regards to "are fediverse DMs at all secure" was that the kind of people who seem to be interested in building IM clients always seem to be super into making it secure, and thus would probably prefer to go off and make a client for a more secure federated protocol, or make their own protocol because surely what the world needs is a 47th IM protocol that makes a slightly different set of choices than the preceding 46 that nobody's using. :ds_wink:

Getting all chat, public or private, on the same publicly-owned protocol is not a bad aim in and of itself. I just feel like "omg NO PRIVACY" is a thing everyone who makes these types of clients is going to be screaming about.

@darius

My main thought with regards to "are fediverse DMs at all secure" was that the kind of people who seem to be interested in building IM clients always seem to be super into making it secure, and thus would probably prefer to go off and make a client for a more secure federated protocol, or make their own protocol because surely what the world needs is a 47th IM protocol that makes a slightly different set of choices than the preceding 46 that nobody's using. :ds_wink:

[DATA EXPUNGED]
Darius Kazemi

@josh yeah I 100% want to see this stuff happen over activitypub specifically and not the mastodon API

Diane 🕵

@darius XMPP has a pretty decent end to end 2 entity chat system.

XMPP has a pretty rich system for creating gateways and there's some thoughts about trying to build an ActiivityPub / XMPP gateway. nlnet.nl/project/Libervia/

Though beats me how all the keys would get moved around the different protocols.

FAP

@darius There is e2e encryption for open/federated protocols. XMPP has PGP, OTR and OMEMO, Matrix has Olm/Megaolm, Email has PGP, IRC has (had?) FiSH, probably more stuff that I forget. All these protocols allow you to use all kinds of clients and they are able to talk to each other with e2e encryption.

Kee Hinckley

@darius Isn’t this (except for E2E) just a UI issue? Several of the iOS clients I’ve used offer a choice of conversation threads vs. stream of messages for DMs. I actually have no idea how the default web UI for Mastodon does it, even when I use the web, I tend to use Elk or some other web client.

Mr.Nuclear Monster

@darius I feel like it’d be real tough to make this with the knowledge that mastodon DMs are about as secure as sending the message on an airplane with a banner hanging off the back

Darius Kazemi

@MrNuclearMonster see my followup post. it's analogous to email. we use email every day

Gracious Anthracite

@darius

I feel like encrypted DMs is kind of base requirements for anyone interested in building a modern DM client and I don’t think ActivityPub has any provisions for that in the spec?

Darius Kazemi

@anthracite no there is no provision for that in the spec. I suppose you could build a client and have a weird Signal situation where you need the same client on both ends but the servers don't matter (Since you are e2e encrypting *clientside* via some kind of PGP style prior agreement)

mconnor

@darius @anthracite I think there’s a gap we can close with Matrix/MLS with some time and resources. It’s on the list, but not quite yet.

I think it starts with something like iMessage/SMS where you can fall back if either/any party doesn’t have an appropriate account configured. This doesn’t need to be the same ID as your Fediverse handle. But it could be!

Chris Radcliff

@darius Do fediverse DMs support end-to-end encryption? If not, I suspect it would be difficult to make a client that is DM-first without leading folks into an insecure pattern.

Chris Radcliff

@darius Yep, and I think the UX benefits could be big. I thought I heard that Mastodon DMs can’t support e2e, though. Which means it’s missing an “end” unless you only interact in the same client (like Signal iirc)

Darius Kazemi

@chris_radcliff yeah I made a followup to my followup about just that, heh

[DATA EXPUNGED]
Delib

@darius XMPP has those abilities. Federation with activitypub (like mastodon) is brand new, but xmpp has always been 'fedetated' across its own servers. There are also gateways to most social networks you could imagine. The 'DM"s van also be end2end encrypted.

#xmpp

Darius Kazemi

@Delib SMTP also has these abilities -- I am asking about fediverse/activitypub. It is frustrating to say "has anyone done X with Y technology?" and to get responses that are "Z technology does this"

Delib

@darius fediverse/activitypub is currently being bridged to #xmpp/jabber (which is focused on the use-case you describe), including 'real' DM's, not just the kind transmitted and stored in open text as in mastodon. These efforts are very close to being ready for the public. My hunch is that Movim.eu might be the best first-use server for users to watch for a future gateway. BTW I would not recommend using mastodon for personal messages. #libervia

Darius Kazemi

@Delib I think it is fine for someone to use Mastodon to send any message that they would also feel comfortable sending over unencrypted email. For some people that is "basically nothing" and for some people that is "basically anything".

Delib

@darius I do agree, if by 'fine' you mean people have the freedom to share personal information in those ways. But that's different than recommending it. Most mastodon-instance introductions I have read, explicitly warn users against sharing personal information in direct-messages (DM). #activitypub #xmpp #movim

Aswath Rao

@darius
Kind of, sort of, not quite, but more in some respects. It is not a client app, but browser based; it is not fediverse - only one server (host's) involved & others' are not; auth based on IndieAuth, Fedi can be added; 1-1 for now, but for text, voice & video & e2e encrypted; easy to extend to multi if only text

Григорий Клюшников

Smithereen right now is the exact opposite of that — it's a public-posts-only server :D

Fedor Indutny

@darius ...is it vastly different from email when used like this?

Genuinely Gary 🌤️

@darius This may not be what you want but the closest I know of is XMPP messaging like Jabber. There are Fedi servers that serve these apps. See fedi.directory/tag/instant-mes

RhetRx

@darius I imagine someone could build something that _looked_ like that, but would you also be expecting the privacy/encryption services that the other routes provide? That may be harder.

Idris Elbow Macaroni

@darius

*imagines an AP client that shows people you logged in*

*is struck dead mentally by the concept of a mIRC-styled interface for a specific AP server that only federates internally*

(ARC, AP Relay Chat)

😱

David Fleetwood - RG Admin

@darius This is not a bad idea so long as e2e could be done in an open way. I'd like to see oauth2 client support in ActivityPub apps too, I shouldn't have to create an account for every server. An AP compat identity server that others could auth against would be ideal.

wakest ⁂

@darius I just came across this post in a reference in this draft on what encryption over ActivityPub might look like by @bifurcation: bifurcation.github.io/mimi-aim

gullevek ☢️

@darius @slims It’s called email. No need to reindent the wheel

Go Up