Since you've gotten enough real answers, I'll just remind you that upvotes are stored in the balls.
Asklemmy
A loosely moderated place to ask open-ended questions
Search asklemmy π
If your post meets the following criteria, it's welcome here!
- Open-ended question
- Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
- Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
- Not ad nauseam inducing: please make sure it is a question that would be new to most members
- An actual topic of discussion
Looking for support?
Looking for a community?
- Lemmyverse: community search
- sub.rehab: maps old subreddits to fediverse options, marks official as such
- [email protected]: a community for finding communities
~Icon~ ~by~ ~@Double_[email protected]~
Truth. /thread
All of those are replicated to all servers.
Does the subs instance keep the master copy that would decide if the count goes up or down? Or is it the post users instance? Or the comment users instance? Or the upvoters instance?
There is no master copy. All instances keeping posts/comments/votes individually on their own.
It's kinda bad TBH. My server has 195 users but I have a database as big as lemmy.world. IDK how it will scale in the future.
How it will scale in the future: it just doesnβt
Posts and comments are federated (synchronised). Upvotes are actually a bit of a fudge, they are actually 'Favourites' if considered from an activity pub (e.g. Mastodon) perspective, and yes favourites are also federated.
Downvotes don't exist in activity pub and, as a result, they do not federate between instances.
At least that is my understanding.
Downvotes do federate, ~~but it uses protocol extensions to do it. So the downvotes won't federate to Mastodon~~, but it does for Lemmy and I think Kbin too
Votes federate with standard Like
and Dislike
activities which are part of Activitypub. It's just that some platforms like Mastodon can't handle Dislikes.
Can't handle by choice I'd guess. Given the format of individuals following individuals rather than topics in communities it doesn't make much sense for a person to follow someone only to downvote/dislike their comments.
I think kbin doesnβt sync downvotes.
Honestly votes being federated seems like a bad idea imo. Would be easy to spin up an instance with thousands of fake users and manipulate posts.
Fediverse is already big enough that it could be lucrative to do so.
So then everyone just blacklists that instance. If the problem is really severe, we move to whitelisting.
It's not hard to identify when someone is doing this.
It's not hard to identify if you're looking for it, they just use one instance, they aren't subtle about it, and they are only boosting a specific company instead of a variety of products and ideas.
Vote manipulation is hard enough to detect on Reddit where they have visibility top to bottom. I think this will become a major issue in the future.
This is on top of the already significant scaling issues votes are causing.
Other instances can cache the total count for historical reasons, to preserve lost instance vote counts, but keeping the full ledger is going to be a serious barrier to entry for hosters and a security (manipulation) issue.
A whitelist defeats the decentralisation and openness of a defederated system.
I think you're mistaken in your assumption it would be easy to identify malicious instances. Bots are notoriously difficult to fight, every time you block one method another workaround will appear.
I think youβre mistaken in your assumption it would be easy to identify malicious instances. Bots are notoriously difficult to fight, every time you block one method another workaround will appear.
I run a large instance and I look around in the DB occasionally when users complain, so I'm pretty familiar with what's in there.
A whitelist defeats the decentralisation and openness of a defederated system.
True, but assholes are assholes and sometimes freedom and assholery don't mix well.
Would it change anything besides their technique?
They almost certainly already have vote manipulation tools for reddit that work via browser automation, because someone offered me money to build one 10 years ago.
Those tools and a handful of accounts+vpns would already be borderline undetectable without the access needed to see that 25 accounts always voted the same way.
At least on Lemmy, you have that access. Reddit not only makes zero effort to prevent it, they actively obfuscate the information needed to spot it.
Technically votes are public. Only UI is hiding them. Which should be resolved, one way or another.
Edit: there was a post with that here a few weeks ago. I understand that this isn't a real answer to your question. Maybe you find it with these hints.
Edit2: Found it. Here you'll find more. https://mylemmy.win/post/89871
What if someone sets up an instance, make a post and manipulate the upvotes? Just give it a million upvotes. That would break the whole system..
Or a bit more subtle, every upvote is multiplied by 10.
Individual votes are federated but not by number but by user, so you'd have to set up fake users and then federate a vote from each of them.
That makes it rather easy to detect and identify and get that particular instance defederated.
Votes will still go from origin instance -> community instance -> other instance, be if the other instance has defederated the origin instance then it simply gets dropped.
If you use kbin you can even see who has made each upvote, so yes easy to then look for patterns of voting together and also at the profiles to see if the accounts looks like real people etc.
Where is my karma stored? ^/s
The mod log at the bottom of any Lemmy webpage, I think.