Spyke
youshouldknow·You Should KnowbyMuddybulldog

YSK: Your Lemmy activities (e.g. downvotes) are far from private

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.

View original on mylemmy.win

To anyone surprised at this: welcome to the fediverse, please treat everyhing you do or say as public.

The way to achieve privacy around here is by following the long forgotten arts of the old internet before Facebook was a thing: use a Nick name and don't tell strangers on the internet your real identity.

Your home instance will act as a proxy and only they have access to your email and IP address. That does stay private.

So, as long as you trust your home instance to not leak or disclose your connection or sign up data (which would be illegal in EU countries), just sign up with an alias.

A very positive aspects of this is that it should allow us to detect voting manipulation by correlating the activity of certain potentially malicious actors. If Lemmy instances take vote manipulation seriously and do their best to block bots this has the chance to make Lemmy / Kbin much more transparent and credible than Reddit ever was.

735

Edit: Obligatory RIP my inbox.

Can we leave this kinda stuff behind? It is NOT obligatory.

306

To illustrate op's point I'm going to spin up an instance, federate with everyone, and not tell anyone what that instance is.

Then I'm going to feed all that data into my new website, called Open Lemmy Stats, where anyone can query the user data ive accumulated. The homepage will be ripe with insights, leaderboards and all kinds of data on prolific users.

Additionally, I'll display a snapshot/profile of a random user by feeding that users data to GPT4 to make inferences about the user's political affiliations and display the results.

Worst of all, I'm not going to out my instance for everyone to know it as the one to defederate. In fact I'm spinning up a few instances that will host innocuous communities that I plan to mod and support to give my instances cover for their true purpose: redundant fediverse datastreams for my site, Open Lemmy Stats.

I'll also have a store where anyone can buy my collected fediverse data for a handsome sum.

Just kidding I'm not doing any of this. But someone absolutely will or already is.

290

People raise a good point that in countries where political dissent can actually be dangerous, this would very much dissuade people from voting on things they believe in, or even coming anywhere near Lemmy period.

A better approach I think would be to have the user's host instance save their votes (the database obviously needs to remember what you voted on), but when federating those votes with other instances just hand over a cumulative total, e.g., "here on vlemmy.net we have +18 votes for this comment", which the other instances can then add. There's no need to send user information with that data.

193

Reading these comments, seeing so many excuses, sarcastic responses, and handwaving, makes me realize a great deal of users really need to develop some imagination.

This is not about privacy. It's about data that can easily be used for targeting and profiling users, and how that creates countless avenues for targeted harassment and wide scale retaliation. It's about all of the innumerable ways public vote information can and will be abused to manipulate scoring across the site with targeted/automated shadow banning and shared blocklists. Raise your hand if you trust every single admin to never abuse such a tool to curate the outward appearance of an instance to fit a narrative.

For a different example: I could say something about how great Nazis are right now, and have a bot programmed to read every single person that downvoted me, add those names to a shared blocklist, and viola, I've made myself and all my alts invisible to the people that would challenge me on a massive scale.

I promise you this is going to be a big issue as tools for this site get more sophisticated over time.

180
no.faux.moe

Activities are public and easily viewable on kbin. It's been interesting. Seems mostly positive other than people harassing those who down-vote them demanding explanations.

173
mylemmy.win

Knowing they're visible on kbin made me realize that most Lemmy users probably weren't aware, as it's non-obvious.

137
kbin.social

Yeah, I had a good natured discussion with a Lemmy user on feddit.uk the other day where they were still inexplicably downvoting my responses each time, despite us both being polite and constructive.

It made me realise that a) they use the downvote button quite differently to how I use it and b) they probably didn't know that I, as a kbinaut, could literally see they were the one downvoting.

64

Just why would someone even do this 😆 I personally either upvote or leave no vote at all when replying... Did you tell them they've been busted?

9

I started a discussion on feddit.de about good discussion practice citing Karl Poppers rules of discussion and the use of the down and upvote buttons.

I think discussion culture in the Fedivers is quite healthy at the moment.

3
czechreply
no.faux.moe

Yea, good call. I wonder if kbin makes them viewable because the activity pub protocol does not allow them to be easily hidden.

34
lemmy.myserv.one

Seems to be Ernest's attitude about that sort of thing, he doesn't like to hide things from the average user that someone more technically inclined would still be able to access

62
lemmy.myserv.one

Yeah I think it's great! I was on kbin originally but I'm a sucker for a nice app UI. I'll definitely be using it more once the apps are here.

I also can't find my lemm.ee community through kbin and I think it's some kind of federation issue, I'm sure it will get fixed.

6
Coelacanthreply
feddit.nu

Kbin and Lemmy are having huge federation issues at the moment, with stuff from Lemmy commonly having a multiple hour delay before showing on Kbin and sometimes it doesn't show up at all. It might be a bug so we'll see how it works when the next Lemmy version comes out.

6

Let's be fair, lemmy instances are having the same issues federating, especially getting posts from the big instances. I presume it's a server load thing.

5
lemmy.myserv.one

This is what I was thinking of! I'm still learning how to find things on the fediverse, did you use one of the search engines?

1

If you figure out a good way let me know! I knew I'd seen this post but to find it again ... well, I used Google to find a discussion on codeburg, and that had a link back to kbin!

2
its_yreply
lemmy.world

Excuse my ignorance, still super new to Lemmy. What's kbin?

3

Kbin is another open source link aggregation program with a different developer that uses the same protocol as Lemmy (ActivityPub), so kbin and Lemmy instances can communicate with each other. If you see anyone with "@kbin.social" after their name then that's where they're from. You can check it out yourself here as well kbin.social

6

Excuse my ignorance, still super new to Lemmy. What's kbin?

2

Excuse my ignorance, still super new to Lemmy. What's kbin?

1
XanXicreply
lemmy.world

It's apparently because it's Twitter based and Twitter shows likes and such. Kbin doesn't really have a like upvote downvotes thing. It's like a favorite and a boost. It's weird

7
kbin.social

Not true.

Both Lemmy and KBin map the same activitypub activities to the same upvote and downvote actions.

14

Currently yes, but before they started federating they didn't. That's why Kbin has both Boost (retweet), and the Favourite (like) is the "upvote", which end up here https://kbin.social/fav - and until very recently, those didn't increase your reputation.

Kbin is (was) less like Reddit and more like Twitter with downvotes.

8

That's a pretty reasonable hypothesis. I wouldn't imagine the motivator was to deliberately create conflict.

5
sabreply
kbin.social

One thing I really like is that it makes it easy to identify users to block. If there's a post stating that "Nazis are bad" and it has ten downvotes, it's very easy to use that to block future content from trolls and people I'm not interested in hearing from.

27
lemmy.world

Yeah, and guess what? They can do that to you.

Effectively, every single person can use a bot that will automate the blocking of any user that ever downvotes them ever.

Like if I made a post that says I like Nazis, and then waited for the downvotes to pour in. Add every single one of those names to a block list, share that block list with all of my alts and all of my friends, and suddenly you have a whole army of Nazi sympathizers that are invisible to the users that would downvote them.

These hand waving excuses about votes being public are really lacking imagination. This is extremely abusable information, and cursory tools can will be put together to make abusing them simple.

9
sabreply
kbin.social

I think there are some problems about voting being public. I don't think this is one of them.

I don't mind people blocking me, and if I don't appreciate the type of content people provide I'll block them liberally. It's not necessarily anything personal, I'm just cirating my experience.

Furthermore, I strive to be on instances where nazi sympathisers would be banned, and where instances tolerating them would be defederated. The only issue is identifying and weeding out troll accounts.

2

You wouldn’t know that your instance is infested with tankies and fascists. You can’t see their posts because you’re on the block list.

6
sh.itjust.works

Depends on where it's posted in. Also this example is pretty low effort. I would downvote it too

6

There's something amusing about people feeling violated by their activity being made public, but not necessarily by corporations hoarding and capitalizing on that activity & data. I mean, one of them is out in the open. The other is pure abuse.

156

Not to sound harsh or anything, but those of you saying that it's okay that all this data is public are insane. This completely goes against the entire philosophy of the Fediverse and FOSS in general. The reason we all are fleeing from Big Tech is because they collect so much data on us. At least, they keep it hidden from public view. This is a major issue in my opinion, and needs to be addressed ASAP before we can claim to have superior platforms on the Fediverse. Why can't this data at least be encrypted?

139

Well, yeah, it's put on the database.

It's the only way to avoid double voting from the same account or to remove the reverse vote if one changes one's mind and votes the other way.

Did you think that it was any different on Reddit and that no random employee with access to their database could run a similar SQL query with a couple of joins and end up with nicknames, e-mails and IP addresses?!

Do you know who are the Reddit employees with access to their database or a copy of it? Have you had a chance to vet them? I don't think so.

At least here it's a bit more transparent.

The only shocking thing in this is that anybody is shocked by it.

136
lemm.ee

I downvoted the beans and I don't care who knows about it. I'd do it again.

This is useful to know though, thanks. I guess assume everything is public short of your password (unless your admin is particularly nefarious and has altered the code to store passwords in plaintext for some reason).

117
Billreply
lemm.ee

Nah because if you type in your password it will show as stars.

******* see?

51

Huh. I guess you must have the same password.

14
lemmy.world

ILoveBeans42!!

Did it work?

Edit: shit.. it didn’t work, how do I change my password??

19
Billreply
lemm.ee

Looks fine to me. When you type it, you see ILoveBeans42!! because it's your password, but I just see **************.

26

...so you see, it wasn't me who upvoted all those Justin Bieber posts, my password was hacked!

12

Suppose there is someone who wants to maintain their anonymity and privacy on Lemmy so that it couldn't be tied to their real identity, what do you think is the best way to do that?

Hmm, I, famous Hollywood actress Margot Robbie and star of "Barbie", sure am stumped.

98
kbin.social

Isn't that kind of the point? You don't get very far hiding in a social setting. You're on a public website talking to other people. Your posts should be public, comments, etc. At least people should treat all websites or apps they didn't develop personally like they're public. I mean you don't really have a right to privacy in public.

And I'm not trying to say this with some malicious tone or anything but it's just my view on it.

87
Albumreply
lemmy.ca

Posts and comments is one thing... It's inherently public. But I think being able to see up and down vote publically is a tough pill. If you don't realize your votes can be seen you risk your vote being held against you. If you do know it disincentivizes you to use the vote system to protect yourself from something that should be rather benign.

83
mookulatorreply
lemmy.world

At least you know the instance host isn’t selling your data right? The advertisers already have it 🤪

10

I was kind of joking, but now that I think about it isn’t that better? The problem isn’t really advertisers having your data, it’s companies doing skeezy things to be able to make more money with your data.

This way, instance hosts are free from that incentive and can just focus on making a good website.

3

I was kind of joking, but now that I think about it isn’t that better? The problem isn’t really advertisers having your data, it’s companies doing skeezy things to be able to make more money with your data.

This way, instance hosts are free from that incentive and can just focus on making a good website.

1
Vlynreply
lemmy.ml

I mean I didn't upvote or downvote porn on Reddit either. It's all personal information.

On Reddit there were plenty of people with access and the data was sold to advertisers.

Here it's public, not great but not terrible either. Also makes it easier to battle vote brigading?

0
lemmy.world

It also makes it easier to profile users and weed out anyone who disagrees about literally anything.

Like, you guys need to consider not every admin is a paragon of virtue.

3

But that has always been a thing. Just like Reddit mods banning you from their subreddit just because you posted in another subreddit they didn't like. It sucks, but it's nothing new.

If either a server admin or a community mod doesn't like you for what you're doing, they can kick you out. It's the same as if this was an old time forum and you pissed off the admin.

With lemmy you have to watch two things:

  1. Trust the instance admin you sign up with, this is where your account data lives, the admin can read everything on your account. Hell, even your password if they manipulated the instance code, so use a random one

  2. Trust the moderators of the communities you interact with. If you interact with a community and the mods there don't like you, they can just remove your posts for example. Same as with Reddit

A random person outside of your instance or communities you interact with can't do much. They can "steal" your posts and comment data and see your votes. But that's it. They can't block your account or kick you out of your favorite communities. They could obviously harass you (just your account, not your email), but then you can block them. Or ask the admin to block their entire instance.

1

That's my only concern. I don't mind my comments to be public. That's what a public place is, unlike other social media platforms who claim to be but they're not. It's, like you mentioned, the upvote/downvote system that I'm worried about and will refrain from using. Because it is public, too, it feels like it lets people read your thoughts. So, I'll refrain from using it until it's fixed.

0
pistachioreply
lemmy.ml

Still unexpected. And that's the problem.

Comments are obviously public because I can read them. But there is no "upvoted by xx people (and downvoted by xx)" link I can click to see the list of people who interacted this way with the post. It's only with API calls or similar that I can access the information.

36
riderantonreply
kbin.social

kbin has the ability to see activity including upvotes, boosts, and downvotes from the UI for entries, comments, and microblogs

8
kbin.social

I was about to call OP out as a liar but I didn't realise this was specific to kbin.

2

The same data is also there on lemmy, there just isn't an UI element to display it. That's why op said admins can see it, but on Kbin users can too.

3

Don't think people should be expected to be developers to consider their right to privacy on websites where contents meant to be private. Like online banking, instant messaging. Let's not strip devs of these services of their responsibility.

10
pistachioreply
lemmy.ml

Still unexpected. And that's the problem.

Comments are obviously public because I can read them. But there is no "upvoted by xx people (and downvoted by xx)" link I can click to see the list of people who interacted this way with the post. It's only with API calls or similar that I can access the information.

2
floofloofreply
lemmy.ca

In case of pitchforks: I downvoted this comment because it's a duplicate, not because it's bad.

3

Most of my downvotes on lemmy has been for this reason.

1

I am looking forward to new apps having the option to show this kind of information.

2

I mean essentially any decentralised type of social Media cannot work any other way. An open backend is not shocking, it is expected.

83

At first I agreed with the general "whatever" sentiment. It has some important implications, however.

It discourages people from voting if they're concerned about other people seeing their activity. This could result in a lower quality of scoring for posts.

82

I've been in forums where upvotes were public. It's not something that I expect to be anonymous by design.

That being said. If something is public, it should be clear that is public (and available to everyone), if it's not it should be protected.

I think Lemmy should go one way or the other, or upvotes are public to everyone, or they are available only for you instance admins.

77

So when Threads decides to federate, they can slurp all this information.

That would be massively concerning and that should be blocked. Ideally votes should remain only on the current instance. Anything shared with other instances should be anonymised. This would need to be re-architected imho.

People come here to get away from Reddit now that trust has gone. Trust and a feeling of safety is vitally important to continue to build this platform.

76

So any instance admin can analyze all users upvotes/downvotes and possibly derive political standpoints, likes/dislikes, opinions and location data from it

74
lemmy.my.id

Nothing private in fediverse except when you are selfhosting yourself.

67
vinnymacreply
lemmy.world

If post views are public that’s a fairly poor implementation on the developers part. I’m sure it will change over time.

E.g. someone using your account to view illegal content in a community you are not a member of, and you being held accountable.

16
s4ifreply
lemmy.my.id

I think the in the current implementation, your post views is not public. But any data you have is still accessible to your instance admin.

24
lemmy.world

I'm about to self host, sounds like a great move towards data privacy and ownership.

13
chrisreply
l.roofo.cc

Nope. Everything you do is sent to all other instances. If you upvote your instance sends that upvote to the instance where the community lives and that instance broadcasts your vote to alle instances that subscribe to that community. Every instance operator can see the upvotes.

14

At least your password hash not accessible by anyone but you.. and your dm is also only accessible by your recipient and his/her admin... 😅

1
lemmy.one

Would be awesome if you could just install an application onto your machine to be self hosted from

3
ninjanreply
lemmy.mildgrim.com

While you're 100% correct Lemmy would feel pretty slow running on your normal computer unless you keep it online and powered on 24/7. Since Lemmy fetches new content continuously and being offline causes a big backlog which will take time to process. It also presents a few extra challenges since you need a domain and cert and a home static IP isn't super common which means you need dynamic dns and have to set that up. Any restart where you get a new IP will be even slower since you need your updated A host record to propagate before your Lemmy instance can fetch the backlog. Those issues aside though you could absolutely just run it like any dockerized application on your normal computer.

8

If your lemmy goes offline- there is a good chance it WONT catch-up.

Servers only retry sending content so many times. ActivityPub PUSHES, rather then pulls mostly.

5

Not too bad then, at that point it just depends how they handle log storage on the instance you are visiting.

Thanks for clarifying.

5
Wanderreply
yiffit.net

It's not possible to make votes private is your care about no manipulation happening. Otherwise any self hosted instance could just communicate any made up amount of votes.

4
WIPocketreply
lemmy.world

Cant they? Sure, they would have to make up new users instead of simply saying a number, but what is actually preventing that?

2
Wanderreply
yiffit.net

We can monitor actual active users that an instance has. Anything artificial in volumes enough to have an impact would be noticeable in some way to other instances.

3

Can't someone talk ActivityPub directly and do this? If the instance is responsible to authenticate the users, the instance can just directly talk ActivityPub to the rest of the network and tell it users and votes on the fly, without even Lemmy running there.

3

Without a common authentication scheme that every instance checks against... Probably anyone can do it. I don't know how you'd even approach this. Signed messages via GPG with a common pubkey host? Some blockchain scheme for authentication that obviates the need for a central host? I've no idea.

2
lemmy.one

E.g. someone using your account to view illegal content in a community you are not a member of, and you being held accountable

Can you explain what you mean here? How would someone else be using your account without your knowledge?

2
XiELEdreply
lemmy.fmhy.ml

Your friend or classmate would be like "You've got games on your phone?" then when you're not looking they'll try to access your social media.

2
lemmy.one

I suppose, but then they're going to look up illicit content on said account in the hopes of framing you for a crime? That's quite a stretch.

1

I was just providing a scenario that came to mind. I am sure many exist outside the one I described.

Nobody has mentioned crime, so I am not sure where that came from. Accountability can come in many forms, and often on the internet users will be banned or excluded based on their direct actions. However, if views were public, it would be trivial to setup a bot to autoban users from communities before they even join, based solely on what they’ve seen.

1
vinnymacreply
lemmy.world

You’re reading too much into my comment.

I am a software engineer, and am always thinking of user experiences in my day job. This is simply the scenario that popped into my mind, but many do exist.

Besides hacking, phishing scams, and pranks. Users trick others all the time into viewing content they didn’t mean to view.

My concern isn’t so much that this can happen at all, but rather that if views were public, how it’d be trivial to write software that auto bans users based on those views. Without great moderation tools, and petitioning it wouldn’t scale well.

1

E.g. someone using your account to view illegal content in a community you are not a member of, and you being held accountable

I may have replied to the incorrect content, but, I meant to reply to this one above.

1

As I’ve explained elsewhere, this is just what popped into my mind.

Many scenarios exist where you view content you did not intend on viewing.

For example, have you ever been Rick Rolled?

1

But that could apply to any online account not something unique to Lemmy.

1
lemmy.world

Good. If I downvote something its for a reason, and I don't care who knows.

65

In fact, I'm tempted to say I WANT people to know I'm not the one downvoting them when I disagree.

29

That's cool but I think the votes are more trustworthy (in any voting system) if all people feel comfortable voting without some sort of retaliation. Maybe there could be a toggle and you can see who voted that doesn't mind the vote being public.

5

Redditors already scream at people when they get a downvote and blame it on the person that replies to them, even if that person didn't downvote them.

I can see this being dangerous and leading to a lot of bullying. I know k-bin already publicly shows this. I can see who downvotes my comments/posts when I open up the post in a k-bin instance, without even being a member.

65

I have no problem with admins seeing what I upvote or downvote. Hell, I have no problem with everybody seeing what I upvote or downvote.

60

I'mma be honest, this might be the worst part of lemmy. NSFW, gray area topics, sports discussion, all that becomes completely radioactive.

58

Couldn’t we just use a hash for the usernames instead?

Nothing too over the top, but just a simple hash and match that instead?

Also, there’s way too much trust in instances. Like, one person could easily make a post on lemmy.world, go on their personal instance, and just give themselves, say, 2000 upvotes.

Instances should have their own settings on what instances are allowed to keep a local copy. (Default behavior should be to get the post itself from the instance “hosting” it).

54

Hello there, and welcome to our community! I hope you like it in here.

Could you please include some body text as to why should people know this, and how would that help them? It’s our second rule. Thank you :)

52

For me, it makes so much sense. Likes and dislikes, besides serving as a means of sorting posts and comments, also serve as a shortcut for leaving a comment saying, "This^" or "I disagree."

51
Dav
kbin.social

So everyone knows I upvote my own posts? This is an outrage.

48
Catch42reply
kbin.social

I upvote my own posts too, I do try to avoid boosting my own posts. We're from kbin though, I think on Lemmy self-upvotes are automatic.

9

Yea, I automatically upvote my own posts and comments. I felt very self-conscious about it at first, but then I figured all other users do the same.
So now I just mentally subtract one vote from every score :)

4
Davreply
kbin.social

Never thought of boosting them too, see you at the top.

3

I always upvote myself. But I have to think extremely highly about my contribution to even think about boosting it.

1

the comment_like database table in Lemmy also has a timestamp on it, "published" field, that discloses what time you voted. This reveals patterns of your Lemmy usage to other federated servers.

47

I would hope this would be obvious to anyone. If your client can highlight which posts you have upvoted in the web and app UI then the fact that your user specifically upvoted that post must be recoverable from the instance server and thus must be recoverable by the instance admins. I would not expect anything different.

46

Reddit always had this too though. In every app I used there was an "up voted" and "down voted" tab when I would look at someone's profile

Maybe it was an api thing?

43

I'm already questioning the whole system behind it, not just votes.

Say you have critical information that you want to delete but other instances can just ignore this deletion request, than I could technically write a plugin that uses an extra instance, to always display all deleted comments to me, despite me being a regular user.

For other sites you'd need a crawler, catching this information and all this in a rapid fashion to be usable, with a lot of programming extra work.

At this point we can as well remove the option to delete or edit a comment as everyone can host their own, which wouldn't be possible with proprietary tools.

If someone can simply see votes the same way, we can as well add a mouse hover function that will display the username of whoever upvoted.

41

Good find, albeit a bit horrifying.

I wonder what the GDPR implications of this is. As far as I understand, even free, privately run services are required to abide by GDPR and offer data insight and deletion. They're also required to state clearly what happens to user data.

Edit: Apparently people have varying takes and feelings on what the GDPR does and does not say, so I urge you to please read the summary of GDPR data privacy here: https://gdpr.eu/data-privacy/ as well as the summary of what constitutes personal data here: https://gdpr.eu/eu-gdpr-personal-data/ It's easier to have a good and fruitful discussion if we talk about what the GDPR actually says.

40

People have burner Reddit and Twitter accounts for posts or votes they think could bite them in the ass, so why wouldn't they do the same on Lemmy?

39

There is a fundamental misunderstanding here.

Our data has never been 'invisible'... We've just trusted that places like Reddit and their staff will do the right thing. That's literally how it already works.

If you sign up for Reddit, Reddit staff can see your posts and votes if they want to.

If you sign up for a private forum the admin there can also see database contents.

One way encryption is not possible without stopping functionality... If data about you was encrypted then posts you make couldn't be displayed. If you include a means to decrypt then there was no point encrypting anyway.

This is how it's always been, and Lemmy doesn't change this status quo much.

A faceless corporation that has had access to your data is just replaced by a variety of admins distributed across instances.

This isn't a good or bad thing, the potential for abuse does exist, but when we have literally made agreements with places like Reddit that they can use and sell our data... then what difference does it make it an admin takes a peek?

It wouldn't be great... but nothing is perfect.

It's still worth working on however, to see if a better solution can be found, but at this time I'd say just be aware that it is possible that your data can be seen and understand the only safeguard against that if you need to communicate something private would be to use direct messaging with end to end encryption.

37

I'm fine with it.

I mean... you can get information accessing the database. Can anyone access the instance DBs? No. How would you know reddit doesn't log these in its database somewhere?

On it's own, it's not a problem IMO. Why would you want to show all information stored on the frontend? But, if you have to investigate something, it's not that bad you have stuff in your database that can help it.

Granted, if an admin is a shitface, they can look at these information. And then...? Make fun of downvoting people? Go to other instance and that's it.

34

Sounds like a "non-issue" to me, really. That's kind of the point with the fediverse. If I run an instance, I have access to its database and, thus, everything stored in it. That was the case with old PHPBB forums, admins could see everything.

The questions is what ends up stored from outside my own instance. I haven't looked at the source, but I would hazard a guess that it's mostly some json blobs and/or pointers to users/instances.

34

"unlike reddit" mm I'm sure they have RIGOROUS controls over which creepy staff / disgruntled plutocrats / repressive regimes get access to their voting database..

33

Well time to write a bot that creates a new account for every vote and comment

33

Beyond upvote/downvote data is there anything else that is seen beyond whether someone had an arbitrary influence on a post?

32

For as much as I love Lemmy, its obvious that it is an early software. Mark my words, that’s not the last privacy threat it will experience.

32

Admins can see literally everything. If you can see it (from your end, like whether you've upvoted something), it has to be stored somewhere and of course the server owners can see it

31

It's not just upvotes and downvotes. Instance admin also knows your email and can store your password in plaintext if they want to. It's up to user to decide whether to trust the instance admin

31

I don't think that's necessarily bad. You upvote to indicate your approval of something. Usually people approve things to recommend it to others.

30

Is the poster's IP address, system, or other system identifier/location, tracked?

If I have users giantshortfacedbear and throwaway123. Then it could be inferred or impled that they are same person if there are from the same IP or phone.

30

Does it only log usernames, or does it record ip addresses as well? I am much more okay with one than the other.

25

Holy shit. HOLY SHIT.

I just realized what this actually MEANS.

It means that when you like or dislike something so much that you unvote and then vote a second time, people can tell. This will change karma forever.

25

Out of curiosity, is there a particular set of circumstances where knowing how you voted on certain posts a bad thing? I would imagine that if you didn't want people to know you're voting/looking at specific posts, then you either don't vote/look at the posts, or you set yourself up an alt account on a different server. But let's be honest, if you'd be embarrassed by something you're looking at, maybe you shouldn't be looking at it. Just my 2¢.

24

So if one downvotes something and then removes that vote, does doing that removes it saying they downvoted or does it still keep it on record?

23

I only downvote awful/hateful comments so I usually stand by what I strike down. I can understand why this may concern others though.

22

Fully expected to be buried since I'm late to the party.

That's really only half of it, there is no real erasure possible when everyone's holding a cached copy. Personally... I kind of like it, I don't hold any value to the words I contribute here as long as they're for everyone.

But everything and everyone is living in concentric glass houses here.

22
kbin.social

That said, don't just call people out who downvote you. No one owes you an explanation if they thought your post was bad. I've already seen it once and it was pretty childish.

22

On reddit you'd regularly see people calling the people who downvoted them names

5

If you are doing anything tgat could get you in legal trouble on the internet, only use acounts that can not be linked to your real life identity, and always use tools like Tor. Do not depend on tools like private messages, private voting, etc. In those cases, there is always someone who can give you away, and service admins will give out information when the feds come knocking.

21

Shortly after joining I realized I was being a bit too honest on here lol. Can't help it. Haven't been on SM in a few days, in hiding from people, now back to my ditch to die. Love you!

19

I've been in forums where upvotes were public. It's not something that I expect to be anonymous by design.

That being said. If something is public, it should be clear that is public (and available to everyone), if it's not it should be protected.

I think Lemmy should go one way or the other, or upvotes are public to everyone, or they are available only for you instance admins.

19

Back in my day everyone knew that once you put something on the internet it's there forever to be seen by all. Has everyone already forgotten this? This is nothing new and in fact the way it's always been! Now get off my lawn!

18

Bad post. Ofc the person running the server can see who votes. Your original post made it seem like anyone has access to this data.

18

Well, that's probably a wrong kind of 'open' to what FOSS means by 'open' yet I'm not convinced. With the whole 'anybody can make an instance and collect all the data they wan't it's kind of awkward and messy. How much of the said data you can obscure/encode without losing the openness between instances?

Because if one instance can't verify actions of another then you have an issue dealing with bots and overall the platform becomes way more obscure and less reliable as a source of information.

And like if the buttons themselves had an ability to openly show who upvoted/downvoted a post - how much of a difference would've been here? I don't feel like it's such a concern.

The point about deletion/edits - it's not about removing your info from the internet, it's about correcting what's wrong for the sake of providing correct. If it's on the internet once it's there forever. I don't see people complaining about weyback archive doing their thing. Yet it's doing exactly the same thing possibility of which upsets so many people here.

If you monkey brain posted you home address and where the keys are - it's on you, not on the internet for storing the info.

The only real point I see here is corporations/governments scraping all this data for their use. Yet as long as they can federate there's nothing much to do and if you try to restrict federation then it's just a bunch of forums with extra features.

17

Obviously, this isn't ideal. But this isn't as damning as some of the other commenters believe.

The way reddit operates, is that they are "trusted" with all our data. They can (and do), sell any data they like, to whomever they like. They store much more information than simply who upvoted what. They can't simply allow upvotes with no claimant, they'd have no way of stopping or identifying bots or illegitimate upvotes.

This system is not ideal, but it's also not necessarily worse. We're still operating under that system, the only real difference is, we get to choose who that trusted party is. We get to move instances if the hosters interests become misaligned with our own.

Ultimately, there needs to be a smart solution to this problem to ensure it's not abused. We can't completely remove collection of the data, otherwise upvotes will be meaningless and hijacked by agendas. We can't simply encrypt the data, if there's a genuine use for it (which we've discussed), who SHOULD be allowed to decrypt it?

I completely understand the concern, and I share it. But this isn't an issue so much with Lemmy, it's an issue with upvotes on distributed social media.

Edit: Okay, ANY instance admin is where the issue lies. That much I agree with.

15
lemmy.world

What about private messages? We should assume the person running the instance can read all private messages.

15
mylemmy.win

Yes. While I see no reason that private message would exist anywhere other than the instance of the sender and receiver, the admins of those instances CAN see the contents of the message and whether or not they have been read.

14

I've always assumed private messages on any site can be read by the site's admin unless they are end-to-end encrypted.

18

ITT: we muddy the waters and people get scared because they don’t know how deep they are anymore despite standing in it

14

For transparency, this is what a Like payload looks like. The first part is just context for the activitiypub protocol and is pretty much the same for each message. The second part contains the actual data of the message, and the most personal detail in it is the url of your own profile, and the url of the post/comment you like:

{
	"@context": ["https://www.w3.org/ns/activitystreams", "https://w3id.org/security/v1",
	{
		"lemmy": "https://join-lemmy.org/ns#",
		"litepub": "http://litepub.social/ns#",
		"pt": "https://joinpeertube.org/ns#",
		"sc": "http://schema.org/",
		"ChatMessage": "litepub:ChatMessage",
		"commentsEnabled": "pt:commentsEnabled",
		"sensitive": "as:sensitive",
		"matrixUserId": "lemmy:matrixUserId",
		"postingRestrictedToMods": "lemmy:postingRestrictedToMods",
		"removeData": "lemmy:removeData",
		"stickied": "lemmy:stickied",
		"moderators":
		{
			"@type": "@id",
			"@id": "lemmy:moderators"
		},
		"expires": "as:endTime",
		"distinguished": "lemmy:distinguished",
		"language": "sc:inLanguage",
		"identifier": "sc:identifier"
	}],
	"actor": "--URL OF THE USER PROFILE--",
	"object": "--URL OF THE POST OR COMMENT--",
	"type": "Like",
	"id": "-- URL TO THE INSTANCE THAT PASSED THE MESSAGE--",
	"audience": "-- URL TO THE COMMUNITY THE POST IS PART OF--"
}
14

I'm fine with it too. Don't think I'd be here if I wasn't okay with sharing these sort of things. If I wanted privacy for my upvotes or downvotes (why tho?), I'd do it anonymously.

And yeah, I upvoted the beans as well. Ate beans 90% of the time as a student. Still farting from it 20 years later.

13
infosec.pub

I agree that this is a good fit for YSK, however, I think it's important to keep in mind that privacy isn't a main goal of the system. It's designed to distribute the cost and responsibility and be difficult to take down or influence as a whole network, but it does not appear to be designed to hide user activities.

In fact, I propose that we keep this information publicly listed so that users are under no illusion that their interaction with Lemmy is private. Transparency and communication prevents misunderstandings.

13
Wanderreply
yiffit.net

If you want privacy on the fediverse, use an alias. It's as easy as that. This is akin to the old adage "don't tell your real name on the internet" which Facebook destroyed.

12

An alias isn’t instant privacy. If you upvote your local sports team, downvote a local politician, etc and never comment anti-establishment sentiments that still builds a profile which could interest someone who has no need to have access to that information.

5

Good data if you're trying to find the homophobes and transphobes who think they're "infiltrating" and voting down every single one of those posts. They out themselves.

13

So this is interesting... I thought only kbin visualized voting. Does this mean Lemmy's users are also tracked on kbin?

12
Wanderreply
yiffit.net

Yes. But Kbin is actually doing the right thing by disclosing the votes since any instance admin would be able to see them anyways.

6
redcalciumreply
c.calciumlabs.com

kbin doesn't allow downvotes, right? I think the potential issue here is people figuring out who downvotes them then proceed to harrass the downvoters. Maybe lemmy should just store the cryptographic signature of the downvoter, which should be enough for the system to verify the action's validity, and skip storing the actual username.

3

I would hope that anyone doing so would be dealt with by moderators.

1

I'm no expert but I believe comments are pulled down by an instance when a user requests the information and is then cached in the DB. So not everything is, but content that's viewed by a user on the instance will be.

1

Every subscriber of a community or magazine gets a message containing who voted. So if a kbin user subscribed to a lemmy community they'd see who voted what because the data is stored on the kbin instance.

1

I'd be really shocked if they recorded IP addresses as well.

12

I think this is to be expected - some instances have downvotes disabled but that doesn't seem to be the rule of thumb.

There are quite a few questions about data retention, usage, retrieval, compliance and how it is shared which will need to be addressed as the platform grows.

Countdown for this to be monetised by someone.

12

Good to know but I always assume everything is public on the internet.

11

Yes ... That's how social networking works. ANY site you go to will have this much info if not more since most "social networks" want YOU. Your personal info etc. Lemmy is just a username attached to posts and comments. So in a way it's actually less than other networks like meta for instance

10

Uh...duh? Why would you think this info wouldn't be available to admins and also....who cares?

10

Wait, is there a granular way to give access to my information? Like say I don't mind people seeing my comment history but would like to hide what posts and comments I upvote and downvote.

9

If you ask me, I'd make upvotes/downvotes public overall. Always hated how on reddit some miserable people downvote lots of innocent stuff, hiding behind their anonymity.

Lemmy & Reddit are public discussion platforms, everything you do here should be public, it's not like you use them to store private information.

9

Well of course. The instance stores all data in a postgres database. How else will it be able to remember anything?

Maybe this is not obvious to non-programmers but you never see everything in the user interface for any system. There are tons of records needed for the system to track everything that goes on.

Since posts are federated, they will exist in the local db as well as on each instance.

8
lemmy.world

Is it just user activity that's public? Curious to know about what is preserved on the backend, like if user removed posts/etc get stored somewhere accessible like this too.

8
mylemmy.win

Deleted items just get marked as 'removed', the content remains in the database. I can see the comment you deleted on https://lemmy.world/post/955546.

Overwrites appear to replace the original content. I can see when you edited this comment but can't see what the edit was.

11
lemmy.world

What happens if someone posts something illegal? Does the instance owner have to know enough SQL to remove the row and the image connected to it or is there a friendly way to do it in an admin interface?

6
lemmy.world

So if someone posts illegal images, it's up to admins to know how to remove it from their database(s). That might be a bit of a sweaty, scary, moment for some people who can follow instructions to setup an instance but aren't familiar with databases.

3
Wanderreply
yiffit.net

No, we admins have a "purge" button nukes things from the database.

8
lemmy.world

Ok at least y'all have that. Do you happen to know how much legal trouble you'd be in if your server did - temporarily - contain illegal images? Is that the sort of thing that - if you immediately deleted and worked with the FBI, you wouldn't get in trouble? I'm considering starting an instance for me and my wife because we have slow internet but - if we cached everything in an instance at home - it would be über fast. But I'm worried about the legality.

0

Instances don't cache images from remote users. No one is going to put you in jail for reporting illegal stuff when you find it and it would have to be posted by one of your users to make it to your storage.

1
zalackreply
kbin.social

Thems the breaks when using what is essentially alpha software. The devs of both Lemmy and Kbin are aware that the admin tools need work, but stuff takes time.

2

Yeah but maybe we should provide some unix tools which help people delete data from their server. Imagine someone is upset at an admin. So they post cp to the server as revenge and then immediately report the server to the FBI. The poster puts themselves at risk, but it's much easier to avoid that risk than it is for an admin.

The unix tools can become the base for an actual admin interface, but I don't have the time for all that lol but scripting something that:

  1. Finds the offending post in the database
  2. Deletes any images in the post from the pictures foder
  3. Deletes the row from the DB

That wouldn't take too long.

1
JohnEdwareply
kbin.social

Not the post, but the comment. Lemmy doesn't scroll down when you link to a comment for some reason.

2

I'm torn on this personally, I like the transparency and accountability aspect, but this could be used in a harmful way

8

Pretty much, it wasn't private on Reddit either, except the only people who had access to it were the ones running the place.

8

How do I get access to the DB? do I need to spin up my own Fedi and federate?

7
reddthat.com

I write my joins the same way (instead of JOIN tablename on one row and ON columnnames on the next row) and my coworkers think I'm weird. IT'S EASIER TO READ THIS WAY, DAMMIT.

3

Who the hell does the joins like that? SQL already has a fuck ton of lines and they want to separate the statements into more lines? wild.

I also always use alias instead of the full table name.

2

I often find the feed cluttered with posts which do not interest me that much. Haven't found a sorting method which works for me.

What does work for me: Hiding read posts (in absence of a feature to hide specific posts without reading them).

This seems to also hide posts I've voted on. So I vote on unread posts just to get rid of them, in lack of a better method to control my stream.

6

Every piece of information you give someone can be linked to every other piece of information.

Username + Votes is not a hard connection to make.

6
kbin.social

Color me shocked. The only thing I'm wondering is why the name length needs to be greater than 7 for the query?

6

So he can show the row of data as an example but not display the full username (and doxx those users unintentionally).

3
lemmy.world

This is what lemmy.world tells me when I want to delete my account:

"Warning: this will permanently delete all of your data from this instance. Your data may not be deleted on other, existing instances. Enter your password to confirm."

Edit: So if we want to own our data we should only post, comment and vote within our own instance or just keep in mind that whatever we do on other instances might be there indefinitely.

5
chrisreply
l.roofo.cc

Regarding your edit: that will only help if your instance doesn't federate. If someone subscribes to the community on your instance, all actions (posts, comments, votes,...) are sent to all instances with subscribers and saved there.

5
rostaddreply
lemmy.world

Thank you for the insight! I'll guess I'll be polite here on lemmy until someone finds a way to handle it.

As a followup question: Would this not be against EU's GDPR laws in some way?

2

That won't help AFAIK. For example, your comment seems posted on lemmy.world, in a lemmy.world community, yet I can see it on Kbin. If you delete all your data on lemmy.world I can still see it on other instances, since every instance has received a copy.

As usual on the internet, treat everything you post as public and irrevocable.

2

That is because of how ActivityPub works. Action is pushed to alle instances that subscribe to the community. Posts, upvotes, downvotes, comments, everything is also stored on all federated instances. There is no way to make absolutely sure that all servers delete your data.

1

Does anybody know if your subscriptions can be seen by admins of other instances? It doesn't seem like that information would need to be shared, but maybe it is anyway.

5

Wait so I can randomly connect to this lemmy instance sql server and send a query to get that information?

5
lemmy.world

What about private messages? I assume the person running the instance can read all private messages.

5

You don't have to assume, most instances straight up tell you that the dm function is not secure and to use other means for private messaging.

6

This is true for almost all social media platforms, though. Including Reddit.

3

I don't mind this, but what about my email, is that also publicly available? What about my password? I had to give my email to confirm my sigup to this instance. It would be pretty shitty if my email was up for grabs now. Think of the poor idiots who use the same password for every service they use.

5

I think this is a good conversation to have, I'm assuming there are no security checks to make sure instances connecting to each other are legitimately released and code reviewed by the community? I'm also curious if you could run a malicious instance that garners a lot more information from your users than is necessary or uses security holes to gather information from other instances. This could send this entire experiment down the toilet very fast. For instance HTTPS guarantees you are connecting to who they say they are and are from a trusted source. At the very least it would be nice to be able to have control over your credentials and history, and only release it to trusted instances.

5
lemmy.zip

How often are we going to see this postage? I think this is the third time I’ve seen it at least

4
mylemmy.win

You’re following up to a post made almost 3 months ago so it’s not surprising you’ve seen similar since.

5
lemmy.zip

what? oh wow, that is so weird. I'm sorry. I was browsing by Top 6 hour, guess there was a glitch.

2
lemmy.world

Is this only accessible for the people who host the instance, or for all users?

4
mylemmy.win

Anybody with access to the database on ANY instance. It would be pretty easy to surface in the UI if someone was so inclined to code it.

13
atoccireply
kbin.social

Kbin was so inclined. You can see who interacted with any post and how they did right from the default UI.

11
kbin.social

There's been lots of discussion of this on kbin. I tend to like it. I think it encourages people to stop and think 'why' before they downvote things - compared to Reddit, where people tended to downvote thoughtlessly and often, and which contributed to a culture on some subs that was quite toxic.

8
JohnEdwareply
kbin.social

Ironically Kbin might be the place where people will follow the downvote reddiquette correctly, something that almost never happened in Reddit itself:

Please don't downvote an otherwise acceptable post because you don't personally like it. Think before you downvote and take a moment to ensure you're downvoting someone because they are not contributing to the community dialogue or discussion. If you simply take a moment to stop, think and examine your reasons for downvoting, rather than doing so out of an emotional reaction, you will ensure that your downvotes are given for good reasons.

6
yip-bonkreply
kbin.social

So if we don’t like it . . . don’t . . downvote it?

Isn’t that, y’know, what the downvote’s for?

That’s cornfusing.

1

No? The votes are for what contributes (or not) to a conversation, and deepens the dialogue.

That's why it's infuriating when someone is downvoted when they have an unpopular but well-structured opinion, while a one-liner joke gets a million upvotes.

2

No, that's never what downvotes were for. It's not a 'disagree' button. It's just that Reddit got a bit toxic as it grew and the masses started treating it that way.

1

I'll probably be a lot less likely to downvote here, just because if something is so inflammatory that I'd want to, I probably don't want to draw their attention to me anyway. But I'm glad to know early on.

2

Everyone, on kbin u can see who boosted , downvoted/reduced, or upvote/favourited any comment by pressing "more" then "activity". For posts it's at the bottom of the comment section

5

A government would only need to get its hands on one instance to havest downvote based dissent data.

Tbh I'd rather we had an up-only based vote system though. Downvotes had a lot to do with the reddit culture that I don't want taking over Lemmy.

4

Just commenting so this stays one of the most commented posts. Feel free to keep scrolling

4
Ech
lemmy.world

How would one find this? Is it just a console command?

4

Yea is good to know. I knew that early bc someone said that someone else accosted them after they reduced/downvoted one of their posts

2

It's the same on reddit? Surprised no one.

I just wonder how you can directly query the DB like that. You'd have to be admin of an instance?

2

So noone will need to post "take my upvote comments". Seems fine

2

I don’t even know why upvoting and downvoting should be private in the first place

0

So what you are saying is if I cyberstalk someone, then its easier to out me?

-1

Could potentially make users less likely to misuse the downvote button. Good I say.

-4

I have actually been really surprised by the amount of anti free speech and anti privacy attitudes that I have seen since joining Lemmy. It seems that a lot of the people that made Reddit the shit hole that it was, are the ones who have been early adopters of Lemmy.

God I miss Voat, that was true free speech with a heavy emphasis on privacy.

-6