I have been working on an Android App quite a while now, starting from a simple idea.

A messenger where messages travel directly between phones with no servers in between. Using direct WebRTC encrypted connections (SRTP/DTLS), there are no servers that stores, reads, or relays content. Group chats use a gossip protocol where members relay to other members.

The only infrastructure the app touches is a signalling relay to set up the connection (no message content), a push notification to wake up a sleeping phone (also no content), and a TURN relay for restricted networks (encrypted packets only).

I wrote a detailed white paper explaining the full architecture: https://www.mindtheclub.com/white-paper.html

The app is in Open Testing on Google Play (1,000 tester cap): https://www.mindtheclub.com/beta-signup.html

I’m interested in this community’s perspective on whether the architecture holds up.

  • CallMeAl (like Alan)@piefed.zip
    link
    fedilink
    English
    arrow-up
    17
    ·
    5 days ago

    I personally wouldn’t use it because of the firebase signalling. I don’t want to share meta data like that, which is associated with every message transmission unless I’m misunderstanding your architecture.

    • GradleSurvivor@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      2
      ·
      5 days ago

      No, you got it right, and is a fair point, I do use firestore for signalling, I can guarantee user messages are only transferred from one peer to the other with nothing in between, but I do not hide metadata.