cross-posted from: https://lemmy.ml/post/47843624

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.

  • lascapi@jlai.lu
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 month ago

    Hi, I like the p2p model, I don’t like the use of Google Firebase and Cloudflare services.

    What is the difference with other p2p messengers, like Jami.net for exemple?

    • GradleSurvivor@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 month ago

      It’s mostly about positioning.

      MTC aims for a balance between standard rich-media real-time messaging, including audio/video calls (WhatsApp-like), and privacy (full peer-to-peer, no registration, no phone number).

      The target is a standard messaging-app user who wants more privacy for their conversations without giving up the features they’re used to.

      Jami uses a very similar set of protocols, the main difference is how peers are discovered, Jami uses a distributed hash table (OpenDHT) where every device is a node on the network, which can mean more setup friction and a more technical experience, aimed at a more tech-savvy audience. One side effect is that your IP is visible to DHT nodes, in MTC it’s only ever exposed to your actual contact and the TURN relay.