YSK: Your Lemmy activities (e.g. downvotes) are far from private
i.imgur.com
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.
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.
Lol. kids these days would psot their bank info online if the banks didn't prevent them from doing so.
You say that like A/S/L wasn't a thing back in the day.
19/f/Cali was the only acceptable response
I think we cybered
Depends, could I have talked some vanilla WoW gold out of you?
As I put on my robe and wizard hat…
Even back then we were told never to reveal that sort of stuff online. How many of us do you think were telling the truth?
You think someone would do that?
Just go on the internet and tell lies?
Lol yeah but we were 12 back then and we still understood the internet better than anyone else 🙃
Yall remember those “your stripper name is the street you grew up on and your pet’s name” challenges? Literally phishing for password recovery keys.
I don't want to shame anyone, but I've had people sign up give me their full DoB and offering to show me their ID. I know of people who disclose their id to get access to nsfw discord communities.
Wasn't there a twitter account that retweeted people posting photos of their credit cards?
so would my grandpa
Your home image typically doesn't proxy image loading, those are hotlinked to the Lemmy server that the image was uploaded to. So your IP address and browser string are going to other Lemmy servers.
I whole heartedly agree with this perspective.
Additionally, and this is an unpopular opinion, but trying to maintain a Nick or online identity over many years is folly. You end up with a huge repository of personal information, increasing the risk that it can be connected to you personally.
What about post views? Are those also stored?
No, Lemmy currently doesn't do authorized fetch and thus there's no way for users to request access to a certain post, which would sort of require to disclose a user wanting to get access to something. So no, they are not stored as part of activitypub.
They could be logged on your instance's server and/or the server where are an image is hosted as part of typical logs for web requests. These would contain your ip address and other browser metadata such as the user Agent, but these are typical logs that happen every time you load anything on the internet on any website that exists.
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.
You know, I came in here with the mindset that the topic of discussion here isn't a bad thing; I'm largely pro information-should-be-open-and-available. But you've argued a very solid point, and I've changed my mind on the issue. I appreciate you sharing this perspective!
I think your comment clearly illustrates what might go wrong with it. If they need this data for sorting or something else absolutely, then I would be happy if they just hashed the usernames/instances or used some other form of UID.
Lmao the internet finally realizing what companies and the govt have been doing for decades on the internet
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.
Pretty easy to make an instance that would auto vote certain things with suspicious amounts of votes
As it stands now, they have to fake the origin of some of those votes. Not much of a barrier, the fediverse generally accepts any user an instance says exists, but still, it's a barrier
And of course any instance thats blatantly manipulating votes is going to be defederated, but I'm more concerned with an instance that behaves normally until it encounters a keyword or user is been set to, and then gives their posts a -5 or whatever
This was my thoughts as well. I understand the need for an audit trail.
Would be very easy to build up an interaction graph with this data that could be used for fingerprinting. If this is an issue for you, though, just browse without signing in/interacting
Was just thinking about this more though, and unfortunately there can also be rogue instances that allow bot users to be created and interact with other instances posts, so this issue could still persist.
Could replace the usernames with UUIDs, and keep the username-UUID map back on the source instance? Then you get an audit trail, but not associated with user identity. There's also no guarantee that people don't use bob_jones as their username, and this is Personally Identifiable Information, which brings up some GDPR stuff too.
The problem with that is that every interaction that any user has with a post or a comment would require calls back to the home instance in order to lookup those usernames. That's a LOT of extra load
The problem that Reddit realized early on is that user voting is the engine behind the content aggregation. That aggregation is one of the main selling points of Reddit. The more users vote on what they see, the more information Reddit has for how to aggregate that content. That's what keeps the front page fresh, that's what keeps content moving up and down on the site. In a very real sense, the voting is the heart pumping blood through the site.
So it behooves the site to not give any reason for users not to vote how they feel. Keeping votes private was part of that. It is one of the most basic tenets of democracy: the only way to give people the freedom to vote honestly and frequently is to give them the privacy to do it.
The potential for retaliation against users, in any number of conceivable ways, far outweighs any benefits that come from making votes public.
The voting information also makes it insanely easy to automate mass blocking of any opinion under the sun. Nobody in this thread seems to grasp all the things you can do with that data to manipulate user interactions on this site. If you think troll armies are bad, wait till those troll armies have a shared automated block list of every single person that has ever downvoted them.
Agreed, especially because I believe we’re headed for a repressive regime here in the US in about 2 years.
Places like this will need to get very careful if they want to remain bastions of free speech and places where people can come to find the information that will no longer be available in mainstream channels.
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.
Knowing they're visible on kbin made me realize that most Lemmy users probably weren't aware, as it's non-obvious.
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.
It's so weird when people do that!
Yea, good call. I wonder if kbin makes them viewable because the activity pub protocol does not allow them to be easily hidden.
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
And I like it. It’s pretty earnest :)
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
Not true.
Both Lemmy and KBin map the same activitypub activities to the same upvote and downvote actions.
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.
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.
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.
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.
How about both are bad.
Ah, the old
RedditLemmy switcharoo.You are probably seeing two very different vocal minorities, and conflating the two.
Also, there's a very clear difference in expectations between posting/commenting and upvoting. I blame the UI. We naturally expect public actions to be easily visible. The lack of universal accessibilty to the public data makes people unaware that the data is public. Lemmy UIs, including apps, need to make this information (a list of upvoting users) universally publicly accessible before people will change their expectations.
It makes sense to me that people are more worried about potentially any corporation / bad actor accessing their data rather than one
here, have my upvote. but please don't tell anyone.
Can we leave this kinda stuff behind? It is NOT obligatory.
I’m going to start throwing “edit: thanks for the gold kind stranger!” on the end of my comments just to induce some nostalgic cringe.
You are a gentleman and a scholar. /s
That's a pretty common turn-of-phrase in Ireland, I remember hearing it in the early 90s!, and it's still common to hear it from older generations too. I wouldn't equate it with reddit slang/culture at all. I wonder when it made its way to reddit?
That's wildly interesting because it's heavily associated with neckbeard incels (tips fedora) on Reddit because there was a time when it was overused and comparatively fancy for the average yankey american vocal style. It was also often accompanied with "Edit: thabks for the gold, kind stranger!" Thinking around 2011-2013?
edit: my most upvoted comment is about beans.
Redditisms are cringe and always have been. Yes I agree we should leave them behind.
Well, I disagree. Redditsms, or whatever you call them, among other things helped to make reddit as popular as it is (was) right now.
I get you don't like it personally, but your personal opinion about them being cringe, while respectable, is not a fact.
I agree with both of you. We should leave redditisms behind and create lemmyisms. And yes, they get cringe if overused
The narwhal bacons at midnight!
This.
EDIT: Thanks for the awards kind stranger!
EDIT 2: Rip my inbox
This is all examples of reddit shit that is really dumb. We don't need to bring it over here
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?
Agreed, I am incredibly confused by what seems to be the majority reaction to this.
I've never been particularly involved with the FOSS community, though I do use a few FOSS apps and generally appreciate their view on what FOSS means. I also strongly appreciate data privacy, and it was my observation that the FOSS community was (generally) relatively the same way. So to see this reaction is very surprising. It's quite literally the same terrible argument of "Why fear it if you have nothing to hide" used against multiple data privacy concerns throughout the years.
I think the worst are the bad faith "But Reddit...!" arguments. For one, we're not on Reddit anymore, this is about Lemmy's issues that can be corrected. And for two, whilst Reddit potentially outsourcing that data to the highest bidder is far from ideal, at the very least the data wasn't outright PUBLIC to anyone who wishes to set up a simple server.
Exactly. When data like that is public, I can guarantee you 10000% that Big Tech and governments are harvesting ALL of it as we speak. If this issue is not resolved and TRUE privacy is not implemented sooner rather than later, Lemmy will not succeed in the Fediverse, period.
You say these issues can be corrected but I am not sure they can. ActivityPub is a protocol managed by the W3C. So to have different behavior You'd have to change the specification there. That is possible but it will take some time. Still you'd need a way to make votes not bound to a user and still hard to spoof. That sounds hard. Apart from that upvotes and downvotes are not really the most interesting datapoints you can gather. You can still collect posts. These can't be obfuscated. There is simply no way to have an open network where you can share data between servers where you can make sure that no one harvests the data. It is simply not possible. As soon as it is public it is public. This has nothing to do with FOSS. If you have a solution you can implement it. That is what it means. If you have one then go ahead.
Then they should do so, these issues need to be fixed ASAP.
Obfuscating user IDs via a hash or something would seem like the way to make it work. I'm not a professional programmer, I only know a little bit of python, so I have no idea if I'm talking nonsense on that front. And whilst still not an ideal solution, but sharing non-private votes with your own instance admin and have them share only the total vote count with other instances is another solution. That way you need only trust your instance admin, which is choosable and can also be yourself.
Putting the onus on me is a shitty thing to do. I'm not the one running this site in any capacity, but this is an issue that many users are unhappy with. If the issue with the site won't or even can't be fixed, then I will simply not use the site. I don't know how many people feel the same on that front, but I'd imagine there's quite a few.
You are the person who has a problem with that and you mentioned FOSS. It is easy to complain. FOSS gives you the tools to change things. But you have to put in the work. You are the one putting the burden the change something to your liking on others instead of doing to yourself.
Both of your ideas are not compatible with ActivityPub as far is I can see. So you first need to change the specification and then make everyone adopt the specification. Before that any change would make your software incompatible with the rest of fediverse which is counter the idea.
And all of that because people could be mad about a downvote. I am an instance admin. I was downvoted before. I never even thought about looking up who downvoted me. I know people are different but to be honest if someone looks it up and harasses you then you block them. And I really can't imagine that your vote on a post with a pseudonym is really a very useful datapoint for anyone.
I agree that these things have to be communicated better but I don't even know how we would make people aware of this. No one reads disclaimers.
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.
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.
I think you make a valid point about Lemmy, but "hidden from public"? Big tech literally sells your data for profit.
I don’t think you’re been harsh lol, the right to secrete ballot is literally in the universal declaration of human rights.
Open ballot is a well known method for intimidating and blackmailing participants, it’s absolutely crazy that Fedivese operates this way. But even worse, seeing so many people here supports it.
Woah woah woah. Hold the phone. You’re telling me that things that I post… on the internet… are… PUBLIC???
Here's an upvote to add to the database.
Not post, upvote. I find it interesting that you like Asian Babes (obviously you don't, it's just some information you wouldn't expect to be public or shared).
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).
Probably safer to assume your password is public to
Nah because if you type in your password it will show as stars.
******* see?
hunter2
ILoveBeans42!!
Did it work?
Edit: shit.. it didn’t work, how do I change my password??
Looks fine to me. When you type it, you see ILoveBeans42!! because it's your password, but I just see **************.
...so you see, it wasn't me who upvoted all those Justin Bieber posts, my password was hacked!
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.
It is only shocking if the expectation was set that your votes are private. If you wanted to avoid linking an identifiable account with their votes then you could use a de-identified user account to track a user's votes.
You could to perform deterministic hashing prior to persisting a vote to ensure that those looking at the database can't go backwards to find the specific users who voted on a post. But any service that knows the salt and hashing algorithm can start with a user account and determine that user's voting history.
This allows you to track up/down votes per user without allowing over-priviledged DBAs or malicious actors from poking around voting histories of identifiable users.
Something like Monero's Ring Signatures might provide some inspiration for truly private upvote history without duplication.
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.
Damn
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.
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.
At least you know the instance host isn’t selling your data right? The advertisers already have it 🤪
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.
kbin has the ability to see activity including upvotes, boosts, and downvotes from the UI for entries, comments, and microblogs
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.
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.
There are a number of things you can do, depending on how serious you want to get about it (think about who and what you want to protect against - harassment from other users? Admins?).
Create an account using an email alias or an email account not linked with something you can trace back to your real identity.
If you're concerned about retaliation/harassment from downvoting something, you could create 2 accounts - one for normal use and the other you only use for downvoting, or one for participating in discussions on controversial topics.
You could retire an account and start using a new one after a period of time, so your entire history isn't linked to a single account.
The above might be able to shield you from other users but not from admins.
If you want to stay anonymous from admins:
An admin would be able to see the IP address the account uses to connect to the service. If 2 accounts connect with the same IP address and the IP is consistently the same, they'd be able to conclude it's likely the same person (or someone else in their household) is connecting to the service with both accounts.
If you use a VPN or Tor when connecting to the site, that won't be as easy to see because many people would connect to the service from the same IP address and the account would likely frequently connect using different IP addresses.
Be aware that if you access the site on a mobile device app with a VPN, it's possible that the app could contact the server when the VPN is down (for example, if the VPN connection is closed when the device is locked). To avoid that, you could try using using something like OpenVPN with its "Kill Switch" enabled).
Note that the admin of the VPN service would be able to see your connections to Lemmy's servers (but not specially what you're doing on Lemmy), so you aren't fully anonymous. Lemmy's admins would see part of the picture, the VPN's admins would see another part, and you're counting on the 2 not talking to each other (and a good VPN service shouldn't, unless they're legally required to).
I use a VPN in general for all connections to the Internet but don't always care to keep my IP address hidden from some services (banking, primary email addresses, etc - services that will have my personal info anyway). It can be very challenging to keep your IP address hidden over the long haul with a frequently used service - you could end up connecting with the VPN down due to a technical reason or carelessness.
With some services I might have multiple accounts - on one I might not really care if my real IP is revealed, but another on the same service that I'm very careful with to keep hidden.
You could use a browser with protections against fingerprinting like Tor or Mullvad Browser.
I mean essentially any decentralised type of social Media cannot work any other way. An open backend is not shocking, it is expected.
To those of use who understand how it works, yes. Five minutes in Lemmy support makes it obvious that there are many people who DON'T understand how it works. Hence, YSK.
Which has been extremely helpful. It took me a second to have a grasp on what was going on here, but it was an almost painless switch for me, especially because of these tips showing up in my feed. I still scroll some of them because of the additional tips/info in the comments
I feel like I'm kinda back to the forum-feel of when I lurked around SA; but this is way cooler imo. And everyone's been really awesome here trying to make it work for all of us, so quickly. I'm a very appreciative new user!
That's not true, it's just very computationally expensive to make it secure and private. There are cryptographic solutions these problems.
So no known user will ever have a desire to join. Malicious actors will dig out their votes and expose it publicly. Could be massively damaging. You cannot do that with other social media. Obviously those companies have that information, but they do not share it.
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.
It might also increase quality though. If people downvote out of spite and now it can be proven that they did, they might not do it and thus remove "bad" downvotes from the pool.
I still think in total it's probably better that they can not be seen, since anonymity usually gives more honest opinions.
I strongly disagree with that. I think showing downvotes makes your votes more relevant. If something has 10k up votes and 10k down votes, it's probably a decent post. If it just shows 10k up votes, or 0 net total, the score doesn't reflect the nature of the post.
At the individual level, it lets you know if someone is just trolling. That's also a plus as far as reputation goes (not sure how people are scored here, or if they are).
I agree with what you're saying, but that's not the point of this post. This post is about the fact that an individual user's vote history is semi-public.
i.e. if you were to upvote my comment, anyone who owns an instance would be able to see it was you who upvoted it. Likewise for if you downvote it.
Whilst I'm sure there are those who don't care, I'd personally rather not have any rando who can be bothered to set up a Lemmy instance know what I've voted on. I'd honestly rather just not vote.
Nothing private in fediverse except when you are selfhosting yourself.
and not interacting with anyone else.
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.
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.
I'm about to self host, sounds like a great move towards data privacy and ownership.
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.
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.
A lot of this needs to annonoymised imo. As you say. This is all product information meta will be looking to sell. I came here to not be a product anymore.
Unfortunately they could just spin up a lemmy instance on some anonymous server somewhere and do that anyway. I don't want them in here, but they can certainly already pull the data up. To me that necessitates some form of anonymizing protocol, or even a form of shared encryption making it so you can't simply pull data in, you need to be invited or allowed into the federation.
Thank you for considering that. There's certainly many people who left Reddit so they aren't "slurping up all their data" anymore. Missing the point that, yes, yes they are.
Good. If I downvote something its for a reason, and I don't care who knows.
In fact, I'm tempted to say I WANT people to know I'm not the one downvoting them when I disagree.
SAME its happened on Reddit where I would have a back and forth w someone where we disagreed but it was respectful, and then in the middle of it I'd notice the other person's comments being -1 even new ones. Meaning someone who isnt in the convo would start downvoting the other person, and I'd be like 'what if they think I did it? What if that damages a mutual understanding they were close to reaching? What if that turns them off from considering a different point of view bc they assume I'm doing it and that I'm hostile?' Then sometimes I'd be like "sorry someone is downvoting you its not me"
People might ask you to provide context for your down vote.
Recently somebody got butthurt about being called out on it.
I think the feature is nice because you can spot shill ops, as those accounts travel in packs.
New articles for politicians are pretty obvious about it but so are generic karma farmers. Although I am not sure why farm karma on here.
People can certainly ask about reasons for voting, but that doesn't mean anyone has to provide the answer. Nobody is entitled to know a person's reason for voting on posts except for that person themselves.
They can ask, and I can tell them to fuck right off. Simple.
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.
listen i just don't want people to see all the furry porn i upvoted
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 :)
Done. Thanks for setting me straight and the very polite manner of reminding me to RTFM.
I'mma be honest, this might be the worst part of lemmy. NSFW, gray area topics, sports discussion, all that becomes completely radioactive.
I think its a massive improvement. Reddit did next to nothing about astro-turfing and vote manipulation. Lemmy gives people the tools needed to detect inorganic content.
People might have to stand behind their opinions if they choose to voice them. The horror!
(Although the user/account is still basically anonymous 🤷♂️)
There's a reason nobody has to publicly announce who their voting for in democratic countries, and that there's no mechanism to check that. People can be grouped, ostracized, persecuted, canceled, or worse.
This is an issue of privacy, though. There is a reason why people dislike google or their neighbour having access to their information, however mundane.
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."
I think the issue is just that having votes publicly accessible can lead to harassment. Sometimes I want to downvote bigots or idiots and not want the possibility of them engaging with me.
That's my biggest concern, too. People are fuckin' weird and you never know what will set them off. Some people just can't stand any sort of disagreement or pushback and might want to retaliate. I really think the source should remain invisible to other users.
This^
Can someone explain why r/privacy is so up in arms about this? Seems fairly obvious that my actions in the public domain are public, but they’re all “Lemmy doesn’t care about your privacy”. Why?
https://www.reddit.com/r/privacy/comments/144clka/warning_lemmy_federated_reddit_clone_doesnt_care/?utm_source=share&utm_medium=ios_app&utm_name=ioscss&utm_content=1&utm_term=1
I wouldn't say Lemmy doesn't care about your privacy, but probably they didn't have enough traffic before the death of Reddit to really prioritize it. I myself have security concerns, particularly with the storage of account data on servers that who knows where they are hosted or what the security is. But I would say Lemmy instances are much more likely to be targetted for attacks by malicious hackers than Reddit, because most instances are likely hosted on far less secure machines than Reddit servers.
Not that I don't agree but there is a pretty big citation needed there.
We don't really know how secure Reddit Servers are and their attack surface is likely to be far larger.
You're right that we don't know how secure Reddit servers are. But I would bet that they're more secure than some instances that are hosted on someone's personal home network. My statement wasn't an authoritative fact, but it was a well educated guess based off of real world data.
Reddits servers are under attack all the time, and its amazing that Reddit wasn't down literally every day from attacks. Yes Reddit was successfully hacked before. Probably multiple times we don't kniw about. However, I repeat that the security on whatever network they have their servers on is probably more than the security that average Joe Schmuck has on his Lemmy instance he runs from his house. I would imagine that like any business with server farms that isnt massive like Microsoft, Reddit probably rents servers at a farm. Some Lemmy instance hosters might do this, but I guarantee you that a lot of Lemmy instances are hosted from a home network, which is inherently less secure. The server farms follow rigorous cybersecurity protocols, Joe Schmuck probably left his NetGear router admin password as the default password sonce he bought it 7 years ago and hasnt updated its firmware since.
I'm pretty sure that most lemmy instances run on a VPS, where the only thing you actually have to worry about usually is securing SSH, i.e. only using keys and setting up fail2ban. After that it's only a matter of securing lemmy the software itself, which is a whole other discussion.
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.
So everyone knows I upvote my own posts? This is an outrage.
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.
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.
That's a point that I think a lot of people are missing. Since a lot of this data is propagated, it's not just their own instance admins they have to be concerned about, it's any instance admin across the globe. There's effectively zero cost to become an instance admin.
People are already using it for "good", e.g. correlating upvotes and downvotes to identify accounts that are related to each other for the purposes of stamping out bot activity. The same method could also be used correlate ALT-accounts, say for example, a hard-right leaning account that has an alternate that interacts regularly in support of LGBTQ+ communities.
So other instances outside the instance your user exist on, has access to this? Which means everyone, as anyone can create an instance?
Yes, I installed a Lemmy server my own self, there is no screening, approval, or even a "terms of use" on the signup page. This is the "wild west" of social media. And some of the claims on the GitHub project page such as "full delete" are an overreach, as it has no footnote that federated servers do not have to comply with the delete of your replicated votes/comments/posts/profile
Not to mention that even good faith efforts can fail. We see that server lag and reliability impacts posts, comments and upvotes across instances. The same goes for purge requests. If my instance misses the message from lemmy.world to delete or purge a post, it won't happen on my instance. There's no after the fact reconciliation.
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).
If that is a solution you'd need to change the ActivityPub specification. You are more than welcome to submit your idea.
I'd first have to create 2000 users, then I'd have to send 2000 upvotes. And then I'd get blocked by all instances.
This is also not compatible with the ActivityPub spec but even if it were you'd win nothing because as soon as you fetch the post it is still on the server.
Hey, just curious: how would all the instances discover this type of fraud?
Now we know who are the people stalling the liftoff of the bean's meme to the stratosphere.
And who helped. Via the database on my instance I can tell I was about the 8th person in the federation to upvote the original beans post.
Not particularly useful knowledge but I find it fascinating, nonetheless.
Good. DM me. I'll tell you why I downvoted your shitpost.
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.
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?
On Reddit and Twitter most people would presume that admins aren't going to be making attempts to correlate those accounts and that those platforms would have checks in place to prevent such abuse.
No such checks exist within Lemmy. Some people are already using this data to correlate bot accounts and activities. It certainly has the potential to correlate burner accounts with mains. Being that anybody in the world can be an instance admin that's a lot more potential people who could abuse the data in such a manner.
Obviously, but this info might extend to emails and such as well.
It's important to be aware that unlike reddit employees who are liable to their company and the law, some rando with a grudge isn't, and there's very little recourse if they choose to abuse their access.
It's not that it's intrinsically bad to do this, but it's something that should be clearly explained and signposted to the users.
ETA: Apparently account details are only on your "home instance", so pick your home instance well I guess.
Beyond upvote/downvote data is there anything else that is seen beyond whether someone had an arbitrary influence on a post?
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.
Displaying the internal information publicly is indeed the more honest approach. Still, people need to understand that Social Media is Public Media. Deleting and editing depends on the goodwill of the receiver. Just imagine you were sending an email when you send something here. It is about the same level of control. It is not like you had much more control on Facebook or Reddit.
While I agree with others that it is perfectly fine for everything to be irrevocable like email is (there's no real way the system could work otherwise), I do think the Lemmy web UI and popular Lemmy native clients could do a better job making sure users are aware of that. Maybe when writing a comment there could be a little info bar that says "Content posted to Lemmy cannot be permanently deleted. (Learn more)". And then when you click Delete on something, it could have a similar explanation, adding something like "Deleting this comment will remove it from the feed/thread, but it can still be retrieved from the federated database by any instance administrator. (Learn more)"
I think it is still useful to have a Delete function, or maybe rename it to "Remove" or something, because maybe you realize what you wrote isn't contributing to the discussion or for some other reason isn't useful for most people to have in their feed. There's a difference between deleting data and removing content from the canonical "discussion", and just because we can't have the former doesn't mean there's no value in the latter. Also, the delete function does have meaningful effects like making it impossible for people to reply to the deleted comment, which can still help with harassment. 99.9% of users will never see that comment again.
Which is why either
Then you shouldn't have uploaded it publicly.
The same was always possible with Reddit and was even implemented. Why is this a problem now?
Only if they don't have an API.
People can accidentally reveal there identity or post something, notice this is too private edit or delete it. The chance for someone to have seen it in 1 second is low. The chance for a bit to have crawled that thread, with that comment, is higher but still low as it requires infrastructure, that costs money and a little skill to setup. Something someone for a simple plugin won't do.
If anyone can host a Lemmy instance and you just need to filter that one line of code that's for forwarding delete or edit requests, you can just push that info into a separate view. You now just need a plugin that will poll from the instance that's not complying to delete requests and display them to the user. Hell that's something even I could do quickly if I ever feel bored.
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.
I don't think that's a non-issue. If you host an instance an can see everything on it, that's one thing, but if everyone with an instance can see these things from all other instances, that's a different story. That way literally everyone can see all your up and downvotes. That's not the end of the world but that's definitely an issue imo. I can already see people getting canceled not because of an old tweet but because they upvoted something controversial years ago lol.
It's not presented as an "issue that needs to be fixed," rather "an issue you need to be mindful of."
Read his edit, it's a bit weird that such a thing even exists. Total sum of up and down votes sure. But according to OP it's all of it.
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.
I'll contribute that my intent with this post is not evangelism. I like the voting system and would be disappointed to see it disappear.
A vote in Reddit was, from a practical perspective, anonymous. While it was recorded in the database and admins had access to this information there were mitigations in place to deter abuse and the end result was that the person you up or down voted was not going to know that YOU, personally, downvoted them. It was also of limited value to external data sifters in creating social graphs.
Since Lemmy votes are non-anonymously propagated across the Fediverse and, literally, anyone can be an admin there are people who may want to reconsider whether they upvote or downvote a particular post or comment. The actual reasons may vary; they don't want to be outed as sympathetic to a political view or cause, they don't want it used a social graph for targeted advertising or even spear-phishing. In many cases there will be people who don't care at all.
Just trying to contribute to transparency. Not everyone can read code, sift data or visualize how a social network would work behind the scenes. There's plenty of opportunities for others to use our data, good and evil. I believe that efforts to bring to light non-obvious consequences of actions is good citizenship.
So any instance admin can analyze all users upvotes/downvotes and possibly derive political standpoints, likes/dislikes, opinions and local data from it
Yes.
Just muddling around I've built queries that: (a) list all of my post & comments, everybody who voted on them, and their votes (b) tally how many times specific users have upvoted or downvoted me. (c) identifies the most prolific voters across the Fediverse and the communities they are voting in (d) identifies users with the same username or display name across all instances and correlates the activities across those accounts.
These are all for the sake of learning and are innocuos the way I'm using them. It is plain to see that someone with skills and an agenda could make more out of it than I have.
How is this different than any other website?
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
False excuse. It is possible to design protocols that make it impossible to designed entities to see anything.
Agreed. I think it's fair to say that most people will consider the fact that their instance admins have access to this data.
What many probably won't consider is that ANY instance admin across the fediverse has access to much of it. It's near-zero cost to become an instance admin so the potential number of people who have access is limitless.
It shouldn't be like that. I hope it gets changed.
Transparency is the only way auditing and validation can be done. People should own their actions.
The things I upvote and downvote are in line with my personal values and I am not ashamed of that. I have no issues with anyone knowing my reaction to a post. On Discord anyone can see who leaves reactions on a message. Same with Facebook. It will show you who added what reaction.
Sounds an awfull lot like I have nothing to hide therefore I don't need privacy. The goal of crypto etc is to design protocols that allow you not having to trust anyone. I don't want to trust anyone, and I don't.
it isn't about you, it's a security risk and a massive vulnerability leaving servers open to data collection for data they shouldn't be collecting.
Not everybody shares the same habits.
Here's a scenario... Some admins are using data to build correlations between accounts. Linking main account to alternates. So far that I've seen the purpose has been to identify bot activity. A good thing.
The same analysis could also be used to build correlation between a main account that's hard right leaning and an alt-account that may be sympathetic to left-leaning or progressive topics, such as LGBTQ+ rights. Not so much a good thing.
I think it's fair to say that many people will not consider the fact that, literally, anybody in the world can have access to much of this data. It's not limited to your two or three instance administrators.
Well time to write a bot that creates a new account for every vote and comment
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.
That information is not tracked in the application itself. A "home instance" admin could correlate their web access logs with the database to draw this kind of conclusion but it's not federated info.
That's good at least. This means that I only need to trust the host for my home instance keep my anonymity.
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
I think you need to clarify how they can see the password. It’s not stored in plaintext, but when the user logs in, the server administrator can see the password in the HTTP post data if they log it in the lemmy sourcecode. All apps are subject to this and it’s why to have to trust the instance owner.
and also the reason not to reuse passwords
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.
They do, but since lemmy is open source they can store it before hashing it, just use basic security practices and use a password manager
What you are saying is somewhat misleading 😒
But did you know over 50k people can see your Facebook password 🤔
But seriously, everything you send to a website/server can, of course, also be seen by it.
This has always been the case everywhere. I am a little surprised that this is suddenly something new..
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?
It was. You could disable the ability for people to see what you voted on.
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.
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.
To be fair, I don't feel comfortable with that. I believe people are so excited about ditching reddit, that they're in denial about any possible flaw or inconvenience about lemmy.
I hope future updates bring more privacy to the users.
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?
I had to run an experiment on this one.
It appears that changing you vote causes the old vote to be completely deleted from the database and a new vote cast and propagated.
Edit: The above description is what happens in the COMMENT_LIKE or POST_LIKE table HOWEVER the ACTIVITY table reflects both actions, which makes sense since it's a complete transaction log. So, it's a slightly more complex query but the history is maintained.
However, that's not really any better for privacy. There's absolutely nothing preventing someone from logging a history of the changes.
Depends on the rest of the structure of those tables and the supporting procedures that modify them. I haven't checked, but I'm very interested in using this as a sample dataset.
Weird way to say you don't know.
I guess, but it's less "I don't know" and more "it's not knowable" from the screenshot alone. We need to see more of the schema to answer the question. "I don't know" fails to communicate what would be needed to answer the question, it's an okay answer, but I think mine is more useful.
I only downvote awful/hateful comments so I usually stand by what I strike down. I can understand why this may concern others though.
Maybe it will encourage us to downvote only those comments that don't contribute to the conversation, and not every comment we disagree with. Like how Reddit was supposed to be until it turned into a shouting match.
honestly I don't give a damn if people know I downvoted, otherwise what's the down vote worth lol
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.
Sometimes I just upvote downvoted things because I think it's not so bad. Not because I want to recommend it.
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.
This is actually a very important point: Things being hidden from public view but yet not properly anonymous creates a mismatch of privacy expectation vs. reality. Votes may or may not terribly important information, but the user should be sovereign of their own data and to implement that in practice we can't rely on people reading the code, or a TOS, or something, it has to be there for everyone to see:
If things can be seen on the backend then they should be seen by the public, if they can't then they shouldn't (well, also, can't), as a general principle, not just for votes. One other big point is private messages, afaik they aren't currently end-to-end encrypted. Gets a bit more iffy because key storage but "only the instance admin of the recipient's instance can see messages" is low-hanging fruit.
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.
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¢.
Some people take unkindly to downvotes. On Reddit they’d just add and “Edit: fuck you guys and your downvotes… pussies!” And be gone.
On Lemmy they can target you personally. Maybe search your post history in an attempt to dox you. Redditors would expect this possibility if they commented and might refrain from doing so to avoid the potential harassment. Most people would never suspect that it could happen as the result of a simple upvote.
Okay, that's a fair point I had not considered. Thanks!
I'm sure that someone will dox themselves, then somewhere else mention where they work. Post on some gonewild pages (is that a thing here) and then make a poorly worded opinion on a sensitive subject and lose their job. Of course Internet hygiene is important and you shouldn't dox yourself but after several years you'll slip up and these things will bite you .
This guy out here forgetting porn exists
If I understand it right, due to the federated nature where each server has to sync with other servers, any admin from any instance (that is not defederated) can read this data. Which may be a pretty big problem from Lemmy. One of the main selling points is that you're on instances where you are not the product, but it looks like that all an advertising company that collects and sells user data for profit needs is to just quietly set up an innocent looking Lemmy instance for quarter of a cost, and just get call the data served to them from all other servers. For free.
That's actually way worse that just giving your data to one company that sells it later, because you at least know who has it.
I don't know what's the extent of data that are shared between instances, but I think you can create a pretty good picture of someone from their upvotes
Cue tactical voting, virtue signalling and influencing. By having them anonymous you don't have to worry about those things. There's a reason voting on a political party or candidate is anonymous, and voting on opinions and posts should be so too.
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.
I've been wondering exactly this, Lemmy will have to be shut down in the EU if it doesn't comply with GDPR, and considering that means each individual instance and the individual/group/company running it...
I just don't see how this is ever going to be secure enough to fully comply with GDPR. Not when huge security holes like this exist, where anybody with a tiny bit of knowledge and a few hours can access so much data on people anywhere...
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!
What does this mean for admins regarding GDPR? Is lemmy still not GDPR complient? Are there options in place if users request their data?
An issue has already been raised: https://github.com/LemmyNet/lemmy-ui/issues/1347
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.
Does it only log usernames, or does it record ip addresses as well? I am much more okay with one than the other.
Only your instance admin can see your IP.
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.
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!
I'm safe, I upboated the beans
I see that IP addresses are logged.
Are those public as well then?
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.
There's a bit of a difference here...
Suppose I'm the President of the Democratic People's Republic of Leopards Eating People's Facia, And now, I want to post a propaganda piece on how Leopards are friendly, cuddly, and do not eat people's faces.
On Reddit, I can post this and get downvoted to oblivion, I could try to request Reddit to hand over the list of users that downvoted my post, but I'm most likely going to be told to kick rocks and I can't do anything. (Assuming I'm not the US/a five eyes country).
With Lemmy/Kbin, I don't even need to ask the owner for this information. All I need to do is spin up my own separate instance and the original server will happily send over the list of usernames that have downvoted the original post. Maybe I can use this list and send out a few friendly leopards...
It's quite literally anyone who has 30 min to set up an instance has access to this data. There's some discussions on GitHub on how to potentially fix this but right now this is the case.
A genuinely good privacy concern.
Not just YOUR server admin... Anybody capable of setting up a Lemmy instance has access to this data.
While most people at discuss.tchncs.de may assume that /u/milan and /u/erAck can see this type of thing, it may not be obvious that so can /u/muddybulldog@mylemmy.win or /u/ruud@lemmy.world and every other instance admin in the world can, as well.
Literally anyone can access this data. It's not private at all just by the way ActivityPub works.
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.
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:Good stuff. That’s my entire motivator, transparency. KBin makes it obvious that up/down isn’t anonymous, Lemmy doesn’t. Much like Reddit, Lemmy also doesn’t delete posts, they just get tagged as deleted and not shown via the interface.
When literally anybody in the world can be an admin with no vetting process and no “internal controls” that you would expect from a commercial platform, having a clear view of how things work is critical so that people can make informed decisions on how (or even if) they use the platform.
ITT: we muddy the waters and people get scared because they don’t know how deep they are anymore despite standing in it
What about private messages? We should assume the person running the instance can read all private messages.
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.
I've always assumed private messages on any site can be read by the site's admin unless they are end-to-end encrypted.
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.
Yes.
Just muddling around I've built queries that: (a) list all of my post & comments, everybody who voted on them, and their votes (b) tally how many times specific users have upvoted or downvoted me. (c) identifies the most prolific voters across the Fediverse and the communities they are voting in (d) identifies users with the same username or display name across all instances and correlates the activities across those accounts.
These are all for the sake of learning and are innocuos the way I'm using them. It is plain to see that someone with skills and an agenda could make more out of it than I have.
Oh no, so my upvotes on c/spacedicks aren't private?
/s
Uh...duh? Why would you think this info wouldn't be available to admins and also....who cares?
My perspective is that most people are not going to realize that this visibility extends to ANY admin of ANY instance in the fediverse, not just the admin of their own servers.
There's zero cost of entry in setting up an instance. Anybody in the world can become one is a matter of minutes.
So this is interesting... I thought only kbin visualized voting. Does this mean Lemmy's users are also tracked on kbin?
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.
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.
Good to know but I always assume everything is public on the internet.
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.
I'd be really shocked if they recorded IP addresses as well.
The application doesn’t, which is a very good thing, in my opinion. Instance admins will still have that data but that’s limited to your local administrator. It’s not federated.
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.
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.
It's not that it stores data, it's what data it stores. Your votes construct a very detailed profile that doesn't mean anything to another human but an AI can read it like a very simple book. They don't necessarily need to be so strongly associated with your account thanks to simple technology like hashing.
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.
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.
I'm torn on this personally, I like the transparency and accountability aspect, but this could be used in a harmful way
error loading comment
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.
Nice joins...
Pretty much, it wasn't private on Reddit either, except the only people who had access to it were the ones running the place.