this post was submitted on 03 Dec 2023
247 points (100.0% liked)

Technology

37716 readers
431 users here now

A nice place to discuss rumors, happenings, innovations, and challenges in the technology sphere. We also welcome discussions on the intersections of technology and society. If it’s technological news or discussion of technology, it probably belongs here.

Remember the overriding ethos on Beehaw: Be(e) Nice. Each user you encounter here is a person, and should be treated with kindness (even if they’re wrong, or use a Linux distro you don’t like). Personal attacks will not be tolerated.

Subcommunities on Beehaw:


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

We estimate that by 2025, Signal will require approximately $50 million dollars a year to operate—and this is very lean compared to other popular messaging apps that don’t respect your privacy.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 68 points 11 months ago* (last edited 11 months ago) (4 children)

I love Signal but this is one of many problems with centralized servers. Not only can they be disabled by the gov but they cost, as seen here, tens of millions of dollars to keep running at scale.

What is the advantage? Why are we not using P2P systems? If I can download a 30GB video problem-free over and over again, shouldn't it be simple enough to do with a 1mb text file?

A huge part of their costs is just verifying phone numbers, which is something the service does not need and shouldn't even have.

[–] [email protected] 38 points 11 months ago (1 children)

to do with a 1mb text file

God you must be like my wife and write fucking novels as text messages.

[–] [email protected] 12 points 11 months ago (1 children)

Lol I think they probably mean like an entire chat history (or page of one), but yeah that's pretty big.

[–] [email protected] 6 points 11 months ago

I was just rounding up

[–] [email protected] 27 points 11 months ago (2 children)

If you are curious, you should give XMPP a shot, it's equivalent to Signal in terms of encryption, but anyone can host their own. Signal is ideologically opposed to anyone but themselves being in control of your account, and because of that I don't want to trust them.

[–] [email protected] 23 points 11 months ago (4 children)

That's great except barely anyone I know uses Signal, much less XMPP

[–] [email protected] 18 points 11 months ago (2 children)

And now here I am, nostalgic for the good old days of having one chat app that could connect you to everyone over XMPP/jabber.

[–] [email protected] 1 points 11 months ago (1 children)
[–] [email protected] 1 points 11 months ago

Please, don't recommend pidgin, it's a security hellhole, and a pretty terrible XMPP client at that. If you want something with a similar vibe, check-out https://dino.im/ or https://gajim.org/ if you are more on the "power-user" side of things :)

[–] [email protected] 1 points 11 months ago

Yeah you could even communicate between facebook and google easily. The world didn't have to be full of walled gardens.

[–] [email protected] 8 points 11 months ago (2 children)

Indeed. Xmpp is lost as a general purpose chat app for everyone. I have many issues with matrix but it's the best chance we have, particularly with bridges.

[–] [email protected] 8 points 11 months ago (1 children)

XMPP is the IETF Internet Standard while Matrix is just another custom IM protocol managed by a venture capital funded startup which keeps losing money.

[–] [email protected] 3 points 11 months ago

I don't disagree with that statement; however, that doesn't make it something the general public will embrace. Its mess of extensions are top little too late. That ship has long sailed. And I say this as someone that prefers using XMPP for 1:1 chats

[–] [email protected] 4 points 11 months ago* (last edited 11 months ago) (4 children)

Edit: Sorry, I responded to the wrong parent.

I don't believe Matrix is better positioned than XMPP to succeed. On a technical aspect, Matrix hasn't managed to stabilize its protocol, and they've been a decade into it. This has resulted in only a single organization being in charge of the protocol, the client and the server implementations. This isn't sound, this isn't sustainable. And now, unsurprisingly, this organization is in a financial crisis, has lost important customers, has no budget secured to maintain its staff in the next years, and recently underwent a major licensing change that we can only interpret as a shift towards an opencore model at the detriment of the regular user.

load more comments (4 replies)
[–] [email protected] 4 points 11 months ago* (last edited 11 months ago) (1 children)

Neither XMPP nor Matrix will ever become “the next WhatsApp”: the current internet has seen too much consolidation for the tech majors to permit it (and open and federated protocols can’t compete, do not have the marketing budget nor the platforms to promote their software, but I salute the EU’s Market Act attempt to shake-up the status quo).

But that doesn’t really matter IMO. What (I believe) is important in the grand scheme of things is that such protocols remain alive, maintained and secure, so that:

  • small-scale instances can flourish and contribute to a more resilient/efficient internet (think of family-/district-level providers ; this is the kind of service I personally offer: family members and friends at large appreciate that the messages and data that we exchange aren’t shared over some cloud or facebook server for no good reason)

  • IM identities can persist over time: if you are a business or an individual, you may want to look into having a stable/lasting contact address, that will survive the inevitable collapse of facebook/whatsapp/instagram/… If you are old enough, your current email address probably existed before facebook. Why not your IM address?

And yes, I hear you, this is rather niche, but what got me there (and on XMPP in particular) is having been long-enough on the internet to become tired of the never-ending cycle of migrations from service to service. More and more people will have a similar experience as time goes, so this niche will only grow :)

[–] [email protected] 3 points 11 months ago (2 children)

the current internet has seen too much consolidation for the tech majors to permit it

While that may or may not be true, it's really not important for several reasons.

  1. All current XMPP clients I have seen are janky as fuck.

  2. No one is going to spend the billions of dollars necessary to advertise XMPP clients to end users who aren't actively looking for them.

  3. The vast majority obviously doesn't care about their privacy.

Just seems like a fruitless endeavour.

[–] [email protected] 3 points 11 months ago (3 children)

WhatsApp started is an XMPP client, but they use lots of proprietary extensions (doesn't matter since they don't federate). You can build very robust and scalable messengers with it if you want to.

The open source implementations are developed by like 1-2 guys in their spare time and they're not far behind (and sometimes even ahead) other federated messengers which received tens of millions in venture capital funding.

load more comments (3 replies)
[–] [email protected] 3 points 11 months ago

Which xmpp clients have you used? Conversations and its forks seem far from janky. Movim is nice, Dino is looking good, Kaidan is looking pretty good. Prose could be interesting.

[–] [email protected] 2 points 11 months ago

If you need to convince your friends to use some app it might as well be XMPP compatible instead of another walled garden. If you can get your friends on board, you win, even if nobody else uses it.

[–] [email protected] 9 points 11 months ago (9 children)

Ten years ago sure, the days I'd suggest matrix instead.

load more comments (9 replies)
[–] [email protected] 20 points 11 months ago (1 children)

It's difficult to maintain privacy in a P2P environment. In naive implementations, your IP address will be visible to all the peers you connect to. This is the case in e.g. BitTorrent.

Signal has this issue with video/voice calls as well; by default they operate on a P2P basis for performance reasons, and they expose your IP address to the second party. Signal has an option in the settings to relay voice/video calls through their servers specifically to mitigate this.

There are some workarounds for anonymizing P2P, like routing through Tor or I2P. Tor, however, has known exploits and is probably not suitable if you need to hide your activity from advanced adversaries like world governments (e.g. political dissidents, journalists, etc.)

I2P sounds interesting but I'm not deeply familiar with it. I understand that I2P clients also act as relay nodes, which puts an additional bandwidth burden on users. I'm not sure if I2P is more resilient against government-level attacks than Tor. I'd be interested to hear from anyone who is more familiar with the protocol.

[–] [email protected] 10 points 11 months ago (3 children)

I am not concerned with the people I'm actively chatting with having my IP address.

[–] [email protected] 11 points 11 months ago

If you're using it for personal correspondence with people you know and trust, that's probably fine. However, a secure and private communications platform should support more extreme use cases as well.

If you're a journalist, for example, you might need to communicate with people you do not know or trust. You could realistically be talking to someone who wants to kill you, or who is being monitored by people who want to kill you, particularly if you are covering high-profile political issues or working with whistleblowers (or are yourself a whistleblower). Even revealing information as broad as what city you're in (which would be revealed by your IP address) could be a risk to your physical safety.

Even though I do not personally face such high-level threats in my life, I feel better using services that allow for the possibility. Privacy is a habit, and who knows what tomorrow might bring?

[–] [email protected] 3 points 11 months ago

A MitM sniffer would be able to see the source and destination IP addresses, not just the person you're chatting with. Even if the data is encrypted, P2P is still vulnerable to a layer 3 attack.

[–] [email protected] 1 points 11 months ago (1 children)

Will the same apply if you're in a lot of open group chats though?

[–] [email protected] 2 points 11 months ago

Depends on who is in the group chats. Primarily I am concerned with keeping them out of the hands of corporations, eg: Google, Meta, MS, AWS, etc. to be added to giant databases and used to profile me or unjustly subpoenaed by the gov.

[–] [email protected] 17 points 11 months ago* (last edited 11 months ago) (3 children)

I‘m not an expert on this topic, so someone correct me if I’m wrong. Signal is only storing stuff temporarily to pass it on, so I’m assuming you’d have the exact same costs even if it weren’t centralized. Maybe even more as it’s probably cheaper to have it managed in one place. I’m assuming all this would do is distribute the cost, but otherwise be the same?

[–] [email protected] 12 points 11 months ago* (last edited 11 months ago) (1 children)

I’m assuming all this would do is distribute the cost, but otherwise be the same?

Exactly. I can locally process the 1-3 messages/day I send on my device rather than having billions of messages processed on a single server.

I can even host my own Matrix or XMPP encrypted server on a $100 machine consuming ~7W and host several hundred users easily.

[–] [email protected] 3 points 11 months ago

XMPP maybe. Matrix is a bloated protocol which costs a lot more to host.

[–] [email protected] 11 points 11 months ago* (last edited 11 months ago)

You're not wrong. Federation would have higher costs but distributed over more people. Even with pure P2P a-la BitTorrent things might not be significantly cheaper because you'd likely still need to host authentication centrally or federally. You'd only eliminate the message bandwidth costs.

The thing is, we already have a way to distribute the costs - people subscribe to support Signal. Some pay more, others less. Whether I run a node that serves 100 people or subscribe for $10/month, it's somewhat equivalent. So the practical takeaway should be - if you want for Signal to keep signalling - subscribe if you can afford it.

[–] [email protected] 7 points 11 months ago* (last edited 11 months ago) (1 children)

The difference is that there's enough unused capacity on your personal device to handle all the traffic any typical user needs to handle in a day many times over, for simple messaging. Likely, that load is so little it won't even affect your battery life.

[–] [email protected] 5 points 11 months ago (1 children)

Wouldn’t you still need a server in between to temporarily store the messages if the other person isn’t available?

[–] [email protected] 1 points 11 months ago (1 children)

No, P2P = Peer to peer, meaning no servers are required in between.

[–] [email protected] 14 points 11 months ago (1 children)

Wouldn’t that mean both have to have a connection at the same time? What if one is offline?

[–] [email protected] 2 points 11 months ago* (last edited 11 months ago) (1 children)

Wouldn’t that mean both have to have a connection at the same time?

Yes.

What if one is offline?

How do you think you're going to receive messages offline?

How much time does your phone spend offline?

One device can send a receipt when received. If the other device doesn't receive that receipt it can just keep pinging periodically until it receives it.

You can also just hook up any old phone or computer, install the app, and let it run as the server.

For more info on how this currently works you can check out Keet.io

[–] [email protected] 11 points 11 months ago (5 children)

You can also just hook up any old phone or computer, install the app, and let it run as the server.

If you have a static IP address, if you want to bother with securing and maintaining it, if you're willing to deal with downtime when something inevitably breaks, if you're willing to deal with lost data or also maintaining a backup solution, if... a dozen other things that most people don't want to deal with.

[–] [email protected] 1 points 11 months ago* (last edited 11 months ago) (1 children)

You don't need to do any of those things. It's functionally no different from your Signal Android and desktop apps. There's no configuration necessary.

[–] [email protected] 2 points 11 months ago* (last edited 11 months ago) (1 children)

Keet is closed-source app with built-in crypto, I am not touching it with a 10ft pole. Holepunch does sound like interesting technology at first glance. It doesn't solve any of the issues mentioned above besides connectivity however.

load more comments (1 replies)
load more comments (4 replies)