this post was submitted on 04 Jul 2023
3367 points (96.1% liked)

You Should Know

33205 readers
116 users here now

YSK - for all the things that can make your life easier!

The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:

Rules (interactive)


Rule 1- All posts must begin with YSK.

All posts must begin with YSK. If you're a Mastodon user, then include YSK after @youshouldknow. This is a community to share tips and tricks that will help you improve your life.



Rule 2- Your post body text must include the reason "Why" YSK:

**In your post's text body, you must include the reason "Why" YSK: It’s helpful for readability, and informs readers about the importance of the content. **



Rule 3- Do not seek mental, medical and professional help here.

Do not seek mental, medical and professional help here. Breaking this rule will not get you or your post removed, but it will put you at risk, and possibly in danger.



Rule 4- No self promotion or upvote-farming of any kind.

That's it.



Rule 5- No baiting or sealioning or promoting an agenda.

Posts and comments which, instead of being of an innocuous nature, are specifically intended (based on reports and in the opinion of our crack moderation team) to bait users into ideological wars on charged political topics will be removed and the authors warned - or banned - depending on severity.



Rule 6- Regarding non-YSK posts.

Provided it is about the community itself, you may post non-YSK posts using the [META] tag on your post title.



Rule 7- You can't harass or disturb other members.

If you harass or discriminate against any individual member, you will be removed.

If you are a member, sympathizer or a resemblant of a movement that is known to largely hate, mock, discriminate against, and/or want to take lives of a group of people and you were provably vocal about your hate, then you will be banned on sight.

For further explanation, clarification and feedback about this rule, you may follow this link.



Rule 8- All comments should try to stay relevant to their parent content.



Rule 9- Reposts from other platforms are not allowed.

Let everyone have their own content.



Rule 10- The majority of bots aren't allowed to participate here.

Unless included in our Whitelist for Bots, your bot will not be allowed to participate in this community. To have your bot whitelisted, please contact the moderators for a short review.



Partnered Communities:

You can view our partnered communities list by following this link. To partner with our community and be included, you are free to message the moderators or comment on a pinned post.

Community Moderation

For inquiry on becoming a moderator of this community, you may comment on the pinned post of the time, or simply shoot a message to the current moderators.

Credits

Our icon(masterpiece) was made by @clen15!

founded 1 year ago
MODERATORS
 

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.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 14 points 1 year ago (3 children)

I don't think it's possible to encrypt the data.

Say we have a rogue user that sends to the server multiple upvote requests for the same comment, how can the server reject the subsequent requests? After all, we can't let a user upvote a post or comment multiple times.

If that data is encrypted, the server cannot tell whether the user has upvoted a comment before.

[–] [email protected] 8 points 1 year ago (3 children)

Well, I am not a developer in this field, so I don't know what's possible, and what's not. All I know is that this needs to be fixed one way or another, or this whole platform will fail. If our information is all available publicly, we will be better off just using Facebook/Reddit/Twitter - at least these platforms don't leave our data out in public view. We need to stop saying what's not possible, and instead talk about what is possible.

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago) (1 children)

I don't see a problem with leaving data out in public view. Hiding behind anonymity has already turned most of the internet into a dumpster fire. Maybe we'll see less trolls and hate publicly blasted with impunity from this. It will also put 'keeping private shit private' in the forefront of people's minds. What personal data are you worried about revealing on a glorified chat forum that you aren't directly responsible for publishing? edit: before this data was available mostly to the provider and anyone willing to pay for it. At least this way the data might become so publicly available it becomes worthless and the market dries up.

[–] [email protected] 4 points 1 year ago (1 children)

Anonymity is not the reason why many platforms have turned into "dumpster fires". Have you checked Facebook lately? People literally use their real names while lighting the whole dumpster on fire. No, privacy is more important now than ever. If I had to list all the ways our data is being used against us nowadays, I would exceed the character allowance on here. The short version is that historically, time periods were named after the materials civilization made their weapons out of (stone age, bronze age, etc.). That's the reason why the current time period is called the Information Age. Data/information is the biggest weapon we have nowadays, and that's why it's critical that we protect it with all means possible if we want to retain our freedom.

[–] [email protected] 3 points 1 year ago

Good point about FB (I've been off that shithole for years now and forgot). You know what, you're right. Our only real hope now is laws for a right to online privacy. The market needs to be destroyed and I'm just hoping we can brainstorm a solution at this point. As for Lemmy: I don't think it can be fixed. The data is there for the taking. At least it's not being horded by a site owner?

[–] [email protected] 3 points 1 year ago (1 children)

Maybe there is a way to keep you votes hidden but there sure is no way to keep your posts hidden. The whole point of federation is to distribute your post to the other instances. You want eat your cake and have it too. You want to post publicly but stay in control of the message. You are not better off using BigTech because there someone can scrape your data as well. And you don't even know to how many parties your data is sent without your knowledge. There is no privacy in social media.

[–] [email protected] 2 points 1 year ago (1 children)

I am not talking about the posts. Of course those are public, as they should. There's a big difference between data I willingly put out vs. metadata and the likes.

[–] [email protected] 4 points 1 year ago

You mean it is worse here on lemmy with the unknown number of people who can see your votes if they are interested then on [BigTech-Site-X] where an unknown number of people can see your votes if they are interested? If you or someone else you know has a nice idea how to make votes possible without the information of who did it, then you are very welcome to submit your idea to the W3C for consideration. ActivityPub is an open standard and everyone can contribute.

[–] [email protected] 7 points 1 year ago (3 children)

There might be possible technical solutions to this using hashing. Hashing is like encryption in that the original cannot be extracted, but the hashed result is unique.

For example, a solution would be to have a VOTES table with an indexed column that is a hash of a combination of the user ID, post ID, (and perhaps another "salt", not sure). When a vote is made, the VOTES table is checked that the record (vote) does not already exist, gets an insert, and then a COUNTER is triggered for the actual vote count. (COUNTER is a db command that simply updates a counter). The hash would prevent multiple votes from the same user (as the salted hash is unique), and it would also prevent identifying who the user is from the table.

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago) (2 children)

Yeah, I admit that sounds reasonable.

Although that still leaves the question of "is it scalable/performant?" on the table... Lemmy already suffers a lot from server overloading, adding the overhead of cryptographic hashing (anything less than that is not going to ensure uniqueness/true anonymity) to each act of voting surely isn't going to help.

[–] [email protected] 1 points 1 year ago

Hashing is a normal part of the web, it's easily scalable.

[–] [email protected] 1 points 1 year ago

I really don't even think the votes table would need to itself be federated; it could just be on the user's instance. Upvote/downvote would be a call, but it should really only require the post or comment ID and voter instance. If an instance spams votes, those upvotes/downvotes could be deleted and the instance defederated

[–] [email protected] 1 points 1 year ago

Still you can easily and quickly check if a user has voted on a particular post. While your method makes the tracking process quite a bit slower, it doesn't make it unrealistic. There just aren't that many users and posts as is the case with passwords. Still 100% better than the current approach, I hope this gets implemented.

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago) (1 children)

Surely the server should be able to identity users "under the hood" without having to publicly announce everything to everyone? I'm not a programmer myself so correct me if I'm wrong, but isn't preventing unauthorized or otherwise unwelcome actions while permitting intended ones without having to announce it most of what the programming controlling a server DOES?

Surely it should be possible to write code to tell whether someone has already upvoted something and then blocking further upvote requests for that specific thing without letting all the admins of lemmygrad and lemmynsfw, for example, snoop on all users?

PS: my apologies for calling you Shirley twice, u/orangeboats. I'm sure your name is just Shirley, not Shirley Shirley.

[–] [email protected] 2 points 1 year ago

Yeah exactly. And I am not an expert in this field either, but of course there's a solution, one way or another. The purpose of my above comment was simply just to call out the mindset of a lot of the people on here, whom obviously have no clue about FOSS and privacy, but simply just came over from Reddit. We are at war against Big Tech these days. Our privacy is at risk and our data is being used for population control. It is vital that we have projects like the Fediverse that can counter this, but we will only be successful and win this war if we can implement some true privacy.