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.

  • mintdaniel42OP
    link
    fedilink
    English
    arrow-up
    2
    ·
    11 months ago

    Yes I understand that but there’s no messenger that’s really perfect. Btw signal is working on free and paid cloud backups for iOS and Android

    • Chris Ely@fosstodon.org
      link
      fedilink
      arrow-up
      1
      arrow-down
      1
      ·
      11 months ago

      Signal fails as a useful solution as long as:

      - I can’t switch devices and keep messages.
      - I must give them a phone number.
      - Multiple devices can’t cooperate to allow me to chat continuously from any device.
      - Messages can’t be sent/received arbitrarily because the server decided my client isn’t acceptable.

      Signal is not reliable and very user-hostile.

      @mintdaniel42

      • mintdaniel42OP
        link
        fedilink
        English
        arrow-up
        4
        ·
        11 months ago

        Okay so I’ve been using Signal for over two years now and would like to address your critical points:

        • I switched from my old phone to my current phone without losing even one message. Not even safety numbers changed
        • Yes you have to give them a phone number. And yes atm everyone is able to see them. This will change this year as usernames are coming. The phone number will from then on only be used for verification and stored encrypted
        • I have three devices: Phone (Android), Tablet (Android) and PC (Linux). All of the messages get synchronized properly and almost instantly
        • I don’t know what you mean by this exactly but I think you mean that the official Signal server doesn’t support forked clients which is false if you take a look at Molly (which I’m using on my Tablet due to several reasons)

        In terms of reliability in general I never experienced any issues with Signal. It works great even in bad internet connection scenarios.

        • Chris Ely@fosstodon.org
          link
          fedilink
          arrow-up
          2
          ·
          11 months ago

          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

            • Chris Ely@fosstodon.org
              link
              fedilink
              arrow-up
              1
              ·
              11 months ago

              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