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 ([email protected] or [email protected]). 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.

  • m-p{3}
    link
    fedilink
    English
    1610 months ago

    I’m pretty sure the original Signal dev wanted to avoid federation to be able to evolve the protocol rapidly.

    https://signal.org/blog/the-ecosystem-is-moving/

    That has taken us pretty far, but it’s undeniable that once you federate your protocol, it becomes very difficult to make changes. And right now, at the application level, things that stand still don’t fare very well in a world where the ecosystem is moving.