5 ms·
The centralized-infrastructure-Tower-of-Babel is about to collapse. As much as I love Signal, we've got to move to things that are decentralized. I setup a pro
by bjt2n3904 6y ago
The centralized-infrastructure-Tower-of-Babel is about to collapse.
As much as I love Signal, we've got to move to things that are decentralized. I setup a prosody[1] server a while back, but have nobody to talk with. If anyone wants to try their system out, I'm bjt@2n3904.net on XMPP.
1 - https://prosody.im/ https://prosody.im/
- shrimp_emoji 6y agoI can't figure out how to use it. xD
- bjt2n3904 6y agoIt's not the easiest thing to setup. There's a few places I'm sure which let you get free XMPP accounts, and a handful of good clients. I'm using Conversations for Android. If you have a server that will allow self service registration, you can make an account right from the app.
- Zash 6y agoHi, Prosody dev here. It looks like your server isn't reachable. If you'd like help with that you can join the community support channel: https://prosody.im/discuss/ https://prosody.im/discuss/
- bjt2n3904 6y agoAww beans. I looked at the IM observatory, and it seemed to check out fine...
- Zash 6y agoTried the server-to-server test?
- bjt2n3904 6y agoAhh cripes, I had port 5269 blocked. Whoop! Running the test now, thanks for the help! Edit: Aaand I'm up! Got my first message. Thank you for your help, and for your work on Prosody!
- zamadatix 6y agoAnd herein lies the reason decentralized isnt about uptime, when the server you use is down its down regardless how many use it and it doesn't matter to you others still work. It'll probably get more downtime over the years than the mega important one as well. That's not to say decentralized doesn't have a ton of benefits just uptime for the user isnt one.
- secondcoming 6y agoOut of interest, why was the Windows download deprecated? It's a bit much to expect mom & pop to be playing with WSL?
- kortex 6y agoI thought signal was highly decentralized? What traffic does the server handle once two clients have "found" each other? Which I believe uses hashes of phone numbers.
- okso 6y agoThis article from 2018 illustrates the architecture of Signal: https://sorincocorada.ro/signal-messanger-architecture/ https://sorincocorada.ro/signal-messanger-architecture/
- Reedx 6y agoBased on that, they use Google, Apple, Twilio and AWS in the backend. All who have shown they are willing to deplatform with little notice as the result of kneejerk public pressure. How easily can Signal replace those dependencies if this comes for them? "Extremists move to secret online channels": https://www.nbcnews.com/politics/congress/extremists-move-secret-line-channels-plan-inauguration-day-d-c-n1253876 https://www.nbcnews.com/politics/congress/extremists-move-se...
- okso 6y agoAs far as I know, Google and Apple are only used to send Push notifications to users. These are optional, and Signal on Android can be used without Google. AWS S3 is/was used to share files with other users. It became a standardized API, with many alternatives supporting the protocol, so switching to a different provider or on-premises should not be difficult. Signal intends to remove the dependency on phone numbers, and therefore Twilio, but this has not be done yet.
- scambier 6y agoAll IM apps rely on Google or Apple (on their respective platforms) for the push notifications. The alternative is polling in relatively small intervals, but that wakes up the app, which uses the battery without any real usage. And if the OS decides to kill your app's process, your polling dies with it and you don't get notifications.
- 6y ago
- zrm 6y agoI wonder if Signal would be open to doing that. I know they don't like third party implementations because then if you need to make a protocol change you'd have to wait 30 years for everyone else to update their clients. But if you're already requiring a single client that it makes it easier to do decentralized messaging for exactly the same reason. Another option that works pretty well is to do both. So try decentralized (DHT / direct connection) first and fallback to a central server if that doesn't work. Then you're up as long as either one of them is working. And there is a lot less load on your central servers.
- samstave 6y agoCan you run a Prosody server on a rasPI? Do you need a static IP? (Xfinity appears alergic to allowing static IPs any more, and I am too lazy to setup my own router after 26 years setting up other peoples net infra..) Id love to chat with you...
- bjt2n3904 6y agoI'm sure you can... but I think one of the big hiccups is that you need DNS to point to your server if you want it to be externally available. I've used XMPP servers for intra-organization chatservers before though, and it worked great!
- upofadown 6y ago>Can you run a Prosody server on a rasPI? Sure. >Do you need a static IP? Well you need a domain name to identify your server. It's the same thing as with email. So however you can do that... It might be less work to just use a preexisting public server: * https://list.jabber.at/ https://list.jabber.at/
- pmlnr 6y ago> Can you run a Prosody server on a rasPI? Easily. > Do you need a static IP? No, but you need access to a domain record to add the required entries for XMPP, and update them if your IP changes. One can do this for free (once you have a domain that points at their DNS records) with a provider like Digitalocean and their API to update the domains. Set up guides: https://prosody.im/doc https://prosody.im/doc Community to ask: https://homebrewserver.club/ https://homebrewserver.club/
- olah_1 6y agoOf course there are protocols like XMPP and Matrix. But there are also solutions that don’t require everyone to host their own server. Rather, people just host impersonal nodes on the network and everyone uses the whole network together. Examples would be Status[1] (Ethereum) and Session[2] (Oxen neé Loki). I’m sure there are others that use this architecture too. I just like it because I don’t have to be personally concerned with who is running my “home server”. Because there is no one single home server in this model. [1]: https://status.im/ https://status.im/ [2]: https://getsession.org/ https://getsession.org/
- lucb1e 6y agoHow does that work, though? You need to have some central database of user IDs, or can you just never have a user ID and will you need to add people by full public key. As soon as you try to map big public keys to a phone number, username, or some other short ID, you need some registration system, probably on a FCFS basis. How does that work in this "you can run but not manage your own server" type decentralized system? And who prevents message spam / abuse handling? It sounds like these must be centralized systems presented as decentralization, similar to how Keybase marketed themselves as end to end encrypted and nobody noticed that you can't actually verify peer's keys thus making it TOFU (similar to blindly accepting ssh keys). (And when you asked people about their claims about Keybase, they'd tell you to RTFM regardless of whether you already said you did that... A marketing department can be very powerful even on HN.)
- olah_1 6y agoStatus uses public keys, but you can optionally link an Ethereum Domain Name (ENS). So it’s basically like license plates where you can buy a vanity plate if you want. Also, friends can just add their own nickname for you in their contacts. Personally I think that’s the best way to do it. Public keys aren’t very different from phone numbers at this point. Nobody memorizes phone numbers anymore either. Each person just has their own Rolodex mapping of keys to names.
- oblio 6y ago> The centralized-infrastructure-Tower-of-Babel is about to collapse. Is there any decentralized protocol that's in widespread use? Email is the only one, and if hackers take out Gmail and 2-3 other major email providers 99% of the world's personal email is gone.