Edit: obligatory explanation (thanks mods for squaring me away)…
What you see via the UI isn’t “all that exists”. Unlike Reddit, where everything is a black box, there are a lot more eyeballs who can see “under the hood”. Any instance admin, proper or rogue, gets a ton of information that users won’t normally see. The attached example demonstrates that while users will only see upvote/downvote tallies, admins can see who actually performed those actions.
Edit: To clarify, not just YOUR instance admin gets this info. This is ANY instance admin across the Fediverse.
How do you know that an admin has my plain text password? Typically passwords are stored hashed. Do Lemmy instances not do this?
Check this comment for details on Lemmy’s security. https://lemmy.world/comment/765991
TL;DR: Password security is fine. Server doesn’t get your plaintext password.
I didn’t read the source code too deeply, but it appears the server receives the password, and only then it is hashed. How does it work?
- POST -> HTTPS -> SERVER -> hashing
- hashing -> POST -> HTTPS -> SERVER
Is it option 1 or 2 (or other). If option 1 an evil admin can collect the password, or am I misinterpreting something?
If the threat is an evil admin who can change the code it doesn’t matter. The admin could change the server code to store unencrypted passwords, they could change the client code to send unencrypted passwords, they could make clients post plaintext passwords whenever you login. Hashing is damage control incase someone absconds with the password database.
I didn’t look at Lemmy’s source but I’m pretty sure it is hashed. The thing is, password is hashed in the database only to protect users in case database gets hacked. But a bad admin of the server can always just change the code and nobody would know. When it comes to websites, open source doesn’t provide any additional security, since everything that happens on the server is a black box. I’m not an expert on this though. Correct me if I’m wrong