• BlackEco@lemmy.blackeco.com
    link
    fedilink
    arrow-up
    37
    ·
    1 year ago

    DMs on the fediverse (and Lemmy) are posts with a specific visibility that marks them as DMs. They are sent like any other posts, so there’s no encryption and instance admins could in theory read them in the database.

    • Hotzilla@sopuli.xyz
      link
      fedilink
      arrow-up
      14
      ·
      edit-2
      1 year ago

      Not in theory, in practice, but this is not high need feature.

      If you need to keep your sexting private, use another platform. If you have a exhibition fetish, go ahead.

      As a coder I can say that e2e encryption is pain in the ass, key generation and exchanging, complex and annoying to do.

      • Amju Wolf@pawb.social
        link
        fedilink
        arrow-up
        8
        ·
        1 year ago

        e2e encryption is pain in the ass, key generation and exchanging, complex and annoying to do

        No, no it’s not.

        Yes, it’s more complex than sending plaintext. But for starters it’d be extremely simple to generate a keypair for every user and publish the public key with their profile. When sending DMs you’d use this public key to encrypt the message.

        As for storing the private key you could encrypt it with (a derivative of) the user’s password, and store it decrypted possibly just in the user’s browser.

        This simple measure would prevent simple ways of reading the DMs, though obviously you still need to trust that your instance admins are actually serving you the code they claim they do. But it’d definitely prevent “accidental” misuse.

        • kalleboo@lemmy.world
          link
          fedilink
          arrow-up
          15
          ·
          1 year ago

          As for storing the private key you could encrypt it with (a derivative of) the user’s password

          And now every time a user forgets their password and does password recovery, they lose all their DMs.

          E2EE chat is a difficult problem.

          • Amju Wolf@pawb.social
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            1 year ago

            I mean you could just store it encrypted in the database for the basics, and for advanced users allow them to back it up.

            There are tons of ways to improve it, but there is definitely way more you can do without much inconvenience to the users. I doubt losing old DMs is a huge issue when you forget your password…

        • Hotzilla@sopuli.xyz
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          Fediverse adds level of complexity on it, like you mention.

          Malicious Lemmy instance could man-in-the-middle by providing it’s public key in behalf of the user in other side. Normally this can be mitigated by CA, but CA doesn’t fit very well in decentralized system.

          You could add AES with users own password, but problem is that same malicious instance could also steal users password.

          IMHO false sense of privacy is worst than knowing that stuff is unsecure. Again in my opinion fediverse is comparable to yelling in town square.