Many of us (or at least me) would probably like to see Signal getting decentralized.
Here are a few thoughts I had about this recently.
First let me define three persons:
- Peter (using the official signal.org instance)
- Ted (using the example.com instance)
- Andrew (using his own instance under andrew.chat)
Couldn't we use the upcoming username feature to build a decentralized signal network? For example with a modified client or maybe just a modified libsignal library we could parse the instance from the username which would look like an email address (ted.42@example.com or andrew.62@andrew.chat). If the username doesn't have a domain part it just uses the default instance (so Peter just has the username peter.94).
Maybe we have some people here who are already familiar with the Signal codebase and willing to assist?
EDIT: Yes I know Session and Matrix exist but Session is to extreme and technical and Matrix is more focused on communities and groups which aren't even encrypted. Besides that both of them have a much smaller userbase compared to Signal.
I could have guessed that you used Android before your previous message simply by your positive impression.
Try switching the OS and keeping your messages then you will discover the difficulty. It's worse if you began on iOS.
I just recently had the Signal servers silently stop communicating with the app. I had to create a debug log to find that the server was sending an error for some reason when it was working the previous day. Switching apps was the only solution remaining.
@mintdaniel42
Did you use a forked client? If yes which one?
Yes. I used one with better import/export support.
It's not relevant for my point though. The server is choosing if the app you have can send/receive messages and changing the qualifications whenever it likes. That's unreliable.
@mintdaniel42