this post was submitted on 18 Aug 2024
812 points (98.0% liked)

Fediverse

28465 readers
308 users here now

A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).

If you wanted to get help with moderating your own community then head over to [email protected]!

Rules

Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration), Search Lemmy

founded 2 years ago
MODERATORS
 

Probably better to post in the github issue rather than replying here.

https://github.com/LemmyNet/lemmy/issues/4967

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

I think people misunderstand. I too would prefer privacy, but theres a big BUT.

Due to how the federation works, anyone who is tech savvy enough can already see votes. One way is to run an instance.

This change doesn't lower privacy, it aligns expectations with reality. A false sense of privacy, which people obviously show here in the comments, is way more dangerous.

[–] [email protected] 21 points 3 months ago (4 children)

I read about that. In my opinion is that what should change, if possible. There are good reasons why votes a secret in democracies.

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

That would be great. I'm not sure how to solve the problems that arises though. If i can send an anonymous vote to an instance, what stops me from sending 100?
Maybe there's some smart cryptographical solution here that alludes me, but it seems hard, if possible.

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

You could just hash your username+instance combo, right?

[–] [email protected] 11 points 3 months ago (2 children)

hmm, how would the receiving instance verify? what happens if I send 100 random hashes?

[–] Socsa 5 points 3 months ago (2 children)

This is literally already a problem. I can easily set up an instance and write a simple bot which just spams votes with randomized user strings. There are generally a bunch of these functional vulnerabilities in the AP trust model which are only mitigated by the current lack of scale. Work needs to be put into reworking the trust model, not exposing user telemetry to even more people.

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

I can easily set up an instance and write a simple bot which just spams votes with randomized user strings.

Well you can do that for a little bit, until your instance gets found out and it gets defederated. And you need to pay for a new domain if you want to do it again. So the current system actually makes it cost real money to do this spam you're talking about.

[–] Socsa 3 points 3 months ago

Sure, but the detection and enforcement mechanism would be the same as it is now.

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

well, since the voting is public it's easy to remove your votes and block your instance after the fact

[–] [email protected] 1 points 3 months ago* (last edited 3 months ago)

Each instance could store a static private key used to encrypt all usernames in that instance maybe?

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

Then again, private votes would be private for mods and admins too. So no more moderating vote brigading or downvote abuse or anything like that.

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

Good point. Would it be useful to somewhat anonymize them by giving every user a unique code? So admins would see these codes but not easily know what users they represent.

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

I'm afraid this may enable a malicious instance to use this mechanism to manipulate votes while making it much harder to detect. I think transparent voting is much preferable.

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

If we look at any of the big social media platforms with public votes, that has not prevented voting abuse through bots and the like. Rather it has served to fuel online harrassment campaigns and value of influential individuals votes (ooh Bill Gates liked X, Kamala Harris disliked Y etc.)

Aggregating votes rather than having individually visible votes serves the purpose of shifting focus to how the community values of the content. It's the same reason that we follow communities rather than people.

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

Vote aggregates would be insanely easy to maliciously manipulate. Also, the underlying protocol has no support for vote aggregates so this isn't even an option in the first place.

[–] [email protected] 2 points 3 months ago

Votes already are presented to the end user in an aggregated fashion, as opposed to how it is on kbin/mbin. In any case, even in the current implementation manipulation is relatively easy, as an admin can just spin up extra accounts. The fediverse relies on trust.

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

There are good reasons why votes a secret in democracies.

Because voters only receive a voting ballot after they identify themselves as a real citizen with a real passport?

[–] [email protected] 4 points 3 months ago

Passport required? Shit, most of our country would be ineligible to vote as they can't afford to travel out of the country for vacations enough to keep up to date passports. Valid up to date passports are around 40% of the population in the U.S. I believe it is trending up though. Pre 9-11 they were way lower. (Because you didn't really need a passport to go on short trips, just an ID)

[–] [email protected] 5 points 3 months ago

Even on github they are public. Lol

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

I accept if a dozen people can see my votes.

That's not what you're saying.

Ultimately I'm not invested in this decision. If the instance wants to watch people vote then people stop voting truly or at all.

[–] [email protected] 13 points 3 months ago (2 children)

Except, if you're using anything other than Lemmy at this point that information is already about. The Likes/Dislikes are considered public information by the protocol. Lemmy devs probably just didn't get around to building out the UI for that before the Reddit APIcolypse.

[–] Socsa 5 points 3 months ago

If anything, Lemmy devs should work on methods to obscure user identities, not expose them.

One of the biggest issues with the fediverse is very specifically how much user information can be exposed outside your home instance. As has been pointed out in this thread, it is very easy for rogue instance admins to set up quiet data mining instances.

It seems like it should be relatively straightforward for certain activities, like votes and telemetry, to be anonymized/tokenized for the purposes of federation, since that information all propagates outward from the home instance anyway.

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

Lemmy actually marks votes as private for federation, but it seems that kbin/mbin ignore that.

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

Ahh, didn't even know there was a flag for that. I don't suppose you could link to the relevant w3c or FEP for it?

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

How about you assume less? I spent 40+ minutes looking for this here, here, here and here and I'm already fairly familiar having done work on two other ActivityPub based projects.

In addition public-addressing (or the lack of use thereof) in no way claims to achieve what you've stated - which is probably why it's not the answer to my query.

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

Right the standard is even more vague than I remember. Unfortunately it's the only thing we have.

[–] dandroid 1 points 3 months ago

If this is a hard requirement for federation, then I guess federated services are not for me, as I value my privacy more than I care to use them.