HNNewShowAskJobs
Built with Tanstack Start
True P2P Email on Top of Yggdrasil Network(github.com)
100 points by basemi 8 hours ago | 19 comments
  • velcrovan2 hours ago

    Systems can be so simple and elegant when you just assume no one will use them to send spam.

    • ddtayloran hour ago |parent

      To be fair there have been multiple popular e-mail networks on Tor like SIGINT in the past and I never received spam there.

    • jonathanstrange24 minutes ago |parent

      Spam can be filtered effectively client-side with a good spam filter. This has worked well for me for decades without the need for any server-side spam filtering.

  • idle_zealot7 hours ago

    Very cool. How does this deal with offline recipients? Do the messages just get dropped, or does Yggdrasil somehow store and deliver them?

    • neilalexander7 hours ago |parent

      I was surprised to see this on the HN homepage, I didn't create Tyr but I did create Yggmail (https://github.com/neilalexander/yggmail) which it is based on. There is no store-and-forward as such, the sending node will keep the message in its outbox and will keep retrying until the destination is online.

      • Barbing7 hours ago |parent

        Neat

        “End-to-end encrypted email for the mesh networking age”

        Perhaps wish we weren’t headed for such an age but glad Yggmail is here for it!

        • throawayonthe2 hours ago |parent

          interesting, i kinda wish we were headed for such an age but i doubt we are

      • evbogue6 hours ago |parent

        Tyr is probably overkill with Deltachat on top of yggdrasil. The network already is encrypted so it's fine to send plaintext emails as long as there's no 3rd party email hubs.

      • sunshine-o6 hours ago |parent

        > There is no store-and-forward as such, the sending node will keep the message in its outbox and will keep retrying until the destination is online.

        Yes I might be wrong but my understanding is there is no point in creating another system where messages hop from one peer to the other like Meshtastic or Reticulum (what make sense for their use case).

        Let's say users have their "email server" running on both on there mobile phone and a home server and in sync. We can expect 2 of the 4 servers will be online at the same time to send the message. I personally like those odds, Internet is pretty reliable in our days.

        I believe we have spent too long trying to solve very hard trilema in messaging, trying to have it all: confidentiality, anonymity and uncensorability ... and reliability ... and ease of use. The result is in practice most people use GMail, Outlook and Whatsapp.

        Yggdrasil is fantastic, it goes back some original ideas of the Internet we have almost forgotten, and in practice solves a lot of problem we have been dealing with for too long.

    • evbogue6 hours ago |parent

      back in the day a few of us used to run ssb (secure-scuttlebot) over yggdrasil (and cjdns before that) and that system would distribute the private messages to all of the peers within 3 hops. offline peers would just sync up when online and then decrypt the messages sent to them.

      ssb's been broken for around five years, but now that it's working again it'd be fun try this experiment again.

      2026 could be the year mesh networks finally take off!

      • nanomonkey4 hours ago |parent

        Curious why you believe it was broken, and is now fixed. What new development are you referring to? I agree that Patchwork kinda took a dive, and functionality started to bitrot with each new maintainer...but it still replicates feeds.

        • evbogue2 hours ago |parent

          I couldn't get any of their latest versions working. The ssb-server was still functioning, but had no working client that I could find. https://github.com/evbogue/ssbc is a working fork with a patchbay lite client from circa 2015/16 live at https://ssb.evbogue.com/ (with git-ssb!). I'm also recreating pfrazee's original Phoenix client from scratch.

          Let's talk more on a more appropriate channel. Are you on bsky? we're having a small discussion there about "bringing open source projects back from the dead with AI" right now.

        • evbogue25 minutes ago |parent

          as a side note, nano do you still have a working pub with all of the historical data on it?

  • pshirshov7 hours ago

    Is my understanding correct that all involved parties must be online?

    • jeroenhd5 hours ago |parent

      The reference server is an Android app so yes, that is probably the point of the default design, but reading the README I believe you can also use a more traditional server-to-server setup:

          DeltaChat/ArcaneChat Integration
          
          DeltaChat and ArcaneChat are perfect companions for Tyr. These are messengers that use email protocols but provide modern chat interfaces. When you configure DeltaChat/ArcaneChat to use Tyr's local server:
          
              1. DeltaChat/ArcaneChat sends messages via SMTP to Tyr
              2. Tyr wraps them in Yggmail protocol and sends through Yggdrasil
              3. The recipient's Tyr receives the message via Yggdrasil
              4. Their DeltaChat/ArcaneChat fetches it via IMAP from their local Tyr
              5. All this happens peer-to-peer, with no central servers
      
      If you run Tyr on a VPS/RPi/old smartphone, you can still exchange messages decentralised this way, as long as your server and the device/server you're communicating to are both online, and have DeltaChat/ArcaneChat fetch the messages later.

      Such a setup could be useful if you find people around you using Tyr and you're losing messages because your phone kills the app, though a PoC like this probably won't have much of a network effect.

  • fattybob7 hours ago

    My first Linux install was Yggdrasil, just for that, this interests me…

    • cbdevidal7 hours ago |parent

      You’re OG. My first was some unknown distro that installed in DOS on my Win95 machine and dual booted that way. Totally confused me. Second was Red Hat 6.0 in 1999. That one, I was a little more successful with.

      • nick__man hour ago |parent

        I did try that weird linux on fat32 distribution but like you I completely forgot its name. I remember that I installed it because I wanted to run bitchx and be able to send ping of death!

  • lorenzo954 hours ago

    If I were to run an yggmail server and configure delta-chat to talk to it, would I get a similar result?