this post was submitted on 20 Aug 2023
129 points (97.8% liked)
Privacy
31997 readers
802 users here now
A place to discuss privacy and freedom in the digital world.
Privacy has become a very important issue in modern society, with companies and governments constantly abusing their power, more and more people are waking up to the importance of digital privacy.
In this community everyone is welcome to post links and discuss topics related to privacy.
Some Rules
- Posting a link to a website containing tracking isn't great, if contents of the website are behind a paywall maybe copy them into the post
- Don't promote proprietary software
- Try to keep things on topic
- If you have a question, please try searching for previous discussions, maybe it has already been answered
- Reposts are fine, but should have at least a couple of weeks in between so that the post can reach a new audience
- Be nice :)
Related communities
Chat rooms
-
[Matrix/Element]Dead
much thanks to @gary_host_laptop for the logo design :)
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
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.
And now every time a user forgets their password and does password recovery, they lose all their DMs.
E2EE chat is a difficult problem.
That's a feature not a bug!
Actually, users should not be required to trust the browser storage or in-app key generation, but be enabled to enter their own pgp key.
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...
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.