Stopping Downvote Censorship on Steemit: Suggestions For a New Model for Anti-Spam That Prevents Malicious Censorship

in #steemit3 years ago (edited)

I wrote yesterday of how I found that it is possible to effectively have a post on Steemit shut down (censored) if it is downvoted quickly enough after it is initially posted - before anyone else has had a chance to upvote it.

@dwinblood wrote a post to attempt to cover this issue and explain the details - but despite the kind words, the problem continues.

How to control Steemit and silence dissenting voices

What is not really being addressed here is that these small problems that exist now can escalate fast to become major problems, especially for a platform that alleged that it is censorship resistant! For example - it is possible to create anonymous accounts on steemit for a small fee and it is possible to quite easily set up bots that monitor the network and make posts and downvotes. It is therefore a relatively simple matter for corrupt and wealthy groups to censor messages that they want suppressed just by following a few simple processes:

  1. Create anonymous accounts on steemit.
  2. Give Control of the accounts to custom written bots.
  3. Give significant Steem Power to the bot controlled steemit accounts.
  4. Get the bots to make regular posts to their own channels.
  5. Get the bots to vote on each other's posts.
  6. Once the accounts' reputation is high enough, add them to a list of accounts used for attacks.
  7. Create code to monitor new posts on steemit that contain keywords that might identify the post as one to be censored.
  8. Humans examine the suggested posts and pick accounts that are to be attacked.
  9. Use code to monitor all new posts on those accounts and auto-downvote new posts which match certain rules.

The result of this could quite easily be that certain posters are totally unable to post on certain subjects.

The suggested resolution of just 'not supporting' the attacker is useless here since they do not require anyone's support to continue their activity.

Is hiding a post really censorship?

YES! Without doubt! If hiding a post didn't limit it's reach then what would be the point in hiding it?
There are so many posts on Steemit that any post that loses it's visual presence will definitely receive less views and upvotes.

But we can cancel the downvotes with upvotes, so there's no problem - right?

WRONG! Firstly, you need to be aware of the problem in order to correct it - so you now need to be putting some of your time into checking for this when you really shouldn't need to. Secondly, and more importantly - the suggested remedy is to get quality upvotes to cancel the downvotes, but that requires you to firstly be able to contact high reputation people who can upvote you and secondly, to do that quickly - since you only have a short time window within which to gain the attention of users of steemit when you post a new post.

Most upvotes seem to be gained in the first hour of making a post and you need decent upvotes to get into the hot/trending lists and stand a chance of having significant numbers of people read them.. So if the first 30 minutes you are trying to get upvotes to cancel malicious downvotes, then your post is pretty much sunk already as it will have no meaningful upvotes and will probably not reach hot/trending.

In short, the workaround is not good enough to prevent deliberate and organised censorship attempts.

Downvotes harm reputation!

Currently, if the downvoter has a higher reputation than you do, you may lose reputation as well as payout! Reputation is built by receiving upvotes from accounts that themselves have high reputations. In principle this sounds ok, but there is really no guarantee at all that a high repuation equates to the account owner having integrity and no personal bias. Reputation above 70 does not equal sainthood!

But I'm never censored, so what's the problem?

This exact type of censorship already occurs on Reddit, for example, because they use a similar system of downvotes and hiding there. Most people are not posting controversial topics that challenge the status quo in society and thus they never encounter being silenced in this way. Therefore, there is not a massive uproar against the issue and the problem continues almost un-noticed by the majority.

A society that makes space for alternative views to be silenced is one that is destined for tyranny, bland homogenous same-ness and at worst total enslavement - George Orwell's 1984 makes this clear.


The idea that their posts cannot be censored by a central authority is attractive to users of Steemit, yet if the door is left open for anyone who has the time and money to come and be the censors instead, then arguably the design may actually be worse than the existing centralised platforms that are known to be controlled by governments and at least one owning corporation (e.g. Google / Facebook). So, it is imperative that this potential be nipped in the bud asap.

Better Censorship Resistance for Distributed / Blockchain Social Networks

How can we improve the situation?

Firstly, do we really need posts to be hidden at all?

The argument for hiding posts is essentially that we need a way to block spam and low quality posts and the steemit reputation system is not enough to do that because it can be boosted up in various ways anyway. Ok, so what are the other options?

I run a social network and have watched anti-spam techniques evolve over the years. I currently have a system on my own site that results in zero spam posts which is a hybrid of IP blocking known offenders along with rules that identify spam using pattern matching (much like anti virus software uses) and which also allows for nominated human users to manually identify spammers. On a small scale this works perfectly, however, on a larger scale there is a requirement to have a way of vetting the humans involved to ensure that they are not biased.

The Steemit system of voting for witnesses already provides a mechanism for the community to nominate trusted people, however, that is not flawless and in no way guarantees that the humans who are voted for are actually going to act impartially when it comes to removing spam. So a carbon copy of the witness voting system that nominates anti-spam agents is not going to be good enough for a scale-able and perfect anti-spam system. Perhaps this could work well though, provided there can be oversight into their actions and some way of addressing biases where they exist.

Here's a first draft sketch for how I think a better system would work on steemit for problem posts.

Rogues' Gallery

My suggestion is that posts which are 'reported' are not hidden and do not have their payout reduced as a result of the reporting action. Instead, they are added to a list of 'reported posts' which can be seen by all users via a new navigation option in Steemit - similar to the 'promoted' posts lists. This ensures that we have a crucially needed level of transparency regarding the reporting process (missing from other social networks) and also that everyone can more easily identify genuinely problematic accounts on Steemit and take whatever personal action they wish to as a result.

The posts will continue to be visible in the main lists until a later stage in the process, ensuring that valid posts do not lose important voting time and thus do not lose reach and possible payout.

Reasons for reporting a post

Just as is used by Facebook, it would be a requirement for us to give the reason for a post being reported - such as 'spam', 'illegal' or whatever other reason that means that the post has crossed the steemit terms of service policy. The reason would be visible in the 'reported posts' lists.

But what is a valid reason for reporting a post?

This is an issue that requires clarification since the terms of service document is not clear on the matter.

The Terms of Service for Steemit state:

  1. User Conduct

17.1. When accessing or using the Services, you agree that you will not commit any unlawful act, and that you are solely responsible for your conduct while using our Services. Without limiting the generality of the foregoing, you agree that you will not:

17.1.1. Use our Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying our Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;

These are the main comments in that document regarding problem posts and they are totally open to interpretation. The terms could just as easily be said to state that negative downvoting (censorship) is MORE against the rules than is 'spamming' - for example - Since there is not actual rule which states that commercial use of steemit is prohibited.

If the community wants an anti-spam policy and thinks it is OK to remove posts it thinks are spam, for example, then that should be included in the terms of service so that everyone is clear on the situation. Having a clear policy sets the scene for effective action to be taken, instead of vigilante downposting and all the ill feeling that goes with it.

What to do with genuinely problematic posters?

Some kind of agreed upon definition for what constitutes problem posts is essential for any effective action here. Once that is decided upon and clearly set out, it becomes possible for the community to in some way transparently and fairly:

  1. Warn the posters
  2. Educate the posters
  3. Potentially remove the posters from the network if they continue to violate the terms of service.

This, I feel, is possibly the only truly fair way to create a balanced environment that is respectful of all voices - while enforcing a minimal standard to posts in the network.

Malicious reports are against the Terms of Service, so...

It makes sense to me to treat false reports just as harshly as any other action that might be against the terms of service - so malicious reporters should go through the same process of warning and potential ejection that anyone else would face.

Financial penalties?

Due to Steemit's financial aspect, an interesting option exists too - in that it could be possible to apply penalty fees to repeat offenders and where the fee revenues are split between any victims and the post pool - so to better serve the community as a whole. This would be a form of karma in action - though ultimately may prove to be unpopular if not handled in a truly fair way.

Got Comments?

What do you think? Is something like this a better solution to this common problem for online communities?

Let us know in the comments section below. Thanks!

Wishing you well
Ura Soul

Steemit T-shirts, Hoodies and Many Other Steemit Inspired Products are On Sale Now

Buy your "Steemit, Dreamit, Memeit, Teamit" T-Shirts, Gifts & Other Clothing Here.



This is a good read and is definitely better than the current situation.

As it works now, no company will join since the risks are way too big. I am working on creating a company, and was exploring Steem as another way of distributing information and maybe make some way this way.
However I decided to just use it for personal reasons, it is currently too unreliable. As far as "spam" is concerned, the FAQ says the following:

Can I sell goods and services on Steemit?
Other than making a post and making sales manually, there is no interface for selling items directly on You can list goods on the third-party website Through PeerHub, you can accept payment in Steem Dollars or STEEM, and you have the option to advertise your items through Steemit posts.

So, this means spam as such does not exist.

Another point I want to make, which everyone seems to ignore;
Even though most people join steemit for free, there are some that pay for an account. Also by adding posts or comments, you work to gain money.
Downvoting effectively steal this money from you. It could be said that the downvoter is showing fraudulent behavior, it's just a matter of time until someone starts a court case.
Also, some countries, e.g. Sweden, have very strict rules about censorship. Steemit is breaking these bigtime by allowing someone to grey-out their posts.

Keep up the good work, we need people fighting the good fight.

Thanks for your input :)

Very interesting post and topic you address. Your solution is in line with my thoughts. I actually think we shall have different types of flags, one that only effects rewards and one that only effects reputation. I also think we shall have groups of individuals searching for abuse and flag them with a special account in order not to create personal wars that happens frequently, ie the flagger gets a counter flags. I furthermore think we shall implemented some kind of referendum method and system in Steemit to allow a wider part of the community to vote for changes to Steem and Steemit, this shall not only be the top witnesses as how it is now implemented; I wrote on this in my post here; However, when the majority of the community do not like any kind of referendum, than that is also ok for me :)

I have just created an addon for steemit that mildly improves the situation with downvoted posts being hidden. ;)

Thanks for your comment. My main concern is the removal of personal bias from that any kind of penalisation process - I am very tired of having to deal with that crap online.. So much so that I even created my own social network to facilitate healing, balancing and evolving for Earth.
It's ok to have people actively hunting for breaches of official policy but there must be a transparent way for that power to be held to account in an unbiased way - or the whole system falls apart.

Almost no individual uses the flag because it backfires on them

I have not been able to find any stats for downvoting yet - how do you know that levels of downvotes are low?
I remember reading comments from whales a while ago saying that whales downvote posts as a method of boosting other more important posts and not to take it personally.. At the time I thought that sounded questionable, but was new so thought maybe it was a way of ensuring community cohesion by drawing focus to important steemit related posts. In any case, it was made clear that downvotes were considered a standard tool in the kit of steemit's organisation.

I have not been able to find any stats for downvoting yet - how do you know that levels of downvotes are low?

Through talking with the higher SP holders and some whales!

Also through talking I know that quite a few higher SP holders dont use the flag for 2 reasons; Reputation and wasting of upvote.

Also through talking with some whales, I know they dont have the capacity of detecting and downvoting all the abuse ongoing, and seek good initiatives to delegate their SP to.

I see, ok - i would be interested to see the actual stats since it is difficult to know exactly what is occurring based on a few individual cases.

I dont have stats, and I cant create them. I really hope some engineers in the community will do that though.

I think what he might be referring to as "flags backfiring" is that a lot of times it doesn't make sense for individual to flag a post, no matter how valid the reason, because they fear reprisals from the person they are flagging.

It's not worth calling out a purely plagiarized post if it means that person is just going to nuke your posts/rep. That's where something like Steemcleaners comes in handy, you can report something without fear that your personal account will be flagged to death for pointing out abuse.

I have just watched a guy crying his eyes out because of what looks a lot like misbehaviour by the people running the steemcleaners profile.

Unfortunately special powers, or admin privileges are against the very nature of steem, I doubt that this will get the interest of anyone who's read the whitepaper.

This is against the very idea of steem. To have a centralized power that decides who is and who is not allowed on the platform. This is a solution to a perceived problem, not an actual one, people aren't censored, the post is still there and clearly visible for everyone and people are not creatures that will see a button marked "Reveal" and not click it.

People can still post in spite of being curated as such, even with their reputation in the dirt, and this has happened numerous times where people were autoflagged and actually gained more attention because of it, in spite of not crying "censorship", or others that have had low reputations and built them back up.

When you create a position to deal with spam and banning accounts, you will need to devote resources to that position and eventually the network will become so big that a major operation would tax it to death simply trying to repel spam and deal with arbitration on a scale 100x or 100000x what we know now.

MMM very interesting! I think the transparency of Steemit is its great saviour. The fact that we can all monitor and see what is going on is a great step to prevention. I also think as a community we can resolve most issues together.

Agreed, yes!

I have just created an addon for steemit that mildly improves the situation with downvoted posts being hidden. ;)

Very smart little plugin. Thanks for sharing ura-soul

You are welcome as always!

NOTE: I just found the Spam community guidelines in the Howto section of Steemit:

I read this and nothing in anything I've written qualifies :)

haha - bye! ;)

Thank you for this thoughtful article. It got me thinking about the Steemit terms of service. When we agree to not commit an unlawful act which nation's laws are we going by? It is illegal to criticize the government in some countries or even promote certain religions.

I have just created an addon for steemit that mildly improves the situation with downvoted posts being hidden. ;)

You are welcome. I am not a legal specialist - but from what I understand it is common for websites to abide by laws that are local to the poster and not to the ones enforced in the home area of the company that runs the site. That said, I do not see any such point being raised in the TOS - I do see this though:

"you agree that any action at law or in equity arising out of, or relating to, these Terms shall be filed only in the state and federal courts located in San Francisco County, California and you hereby irrevocably and unconditionally consent and submit to the exclusive jurisdiction of such courts over any suit, action or proceeding arising out of these Terms."

Thanks Ura-Soul, that totally answers my question. :-)

you are welcome! so now you just need to read through 1000s of pages of US Federal legal books and you are all set to start using Steemit.. Waaait.... did you already start using steemit? ;)

Those terms of service don't mean anything, since nobody explicitly agreed to them and that doesn't govern the blockchain.

Another really well written and interesting perspective on an issue that seems hot right now. I've not been here long enough to fully understand the argument for and against your solutions.
I'm not a fan of the ability of anyone to censor/downvote someone based on an opinion. It's too easy for feuds to get started with tit for tat down voting with the weaker rep always losing. That sounds a bit fascistic to me and the kind of thing that could lead to the platforms downfall.
Like I said I haven't currently formed an opinion on the way forward however 'powerful' vindictive down voting needs monitoring.

Thanks! It's an issue that I have really been focusing on for a while in my life as I design software and run my own social network - plus I regularly get censored on other networks.. So there is a catharsis involved in me helping improve this on Steemit :)

I have just created an addon for steemit that mildly improves the situation with downvoted posts being hidden. ;)

great post that deserves more attention.
flagging should only be for clear cut abuses: spam, plagiarism, harassment, abusive ilanguage, and illegal content.
Ned and Dan were fully committed to 1st amendment rights but arbitrary flagging is clearly undermining that promise. They should update the FAQ and make it clear that flagging is only to report abuses. Never should flags be used to downvote opinions, no matter how controversial they may be.

I agree. I am currently having a discussion with the steemcleaner profile operators as they are engaging in a conflict with someone they repeatedly downvoted just for having a small banner at the end of his profile for mining services. they then went on to downvote his later posts where he complained, even though he had no spam in them. it got to the point where he posted an emotional video of him literally crying as he may be homeless and needs to make some money.. They still didn't let up on him and continue to get upvotes on their claims of being heroes for protecting steemit from him!
There is really no policy for what constitutes spam whatsoever, so i don't feel comfortable with these services at all.

I have just created an addon for steemit that mildly improves the situation with downvoted posts being hidden. ;)

This post received a 3.8% upvote from @randowhale thanks to @ura-soul! For more information, click here!

My post that got hidden were due to matter of opinion, not fact. I broke no terms of service, it was simply promotion of a company and method they didn't personally like. Still ticked about it.

Thanks for the article @ura-soul. I wasn't aware that this sort of censorship could happen on steemit until the problem you had with your article last night.

Reading all the comments below, particularly from @dwinblood, it really is a complex issue.

My understanding of all the inner workings of steemit is still quite young so I have little practical to offer.

Only two small ideas that I would pitch in :

  1. Only allow accounts to downvote after they have been on steemit for say 3 months. The impact would be small but it might help prevent for example downvoting attacks of opposing views in a short term hot issue (or hastily called election etc). There seems to be an open door for organisations with money to quickly buy an anon account, pump in say $100K of steempower and start to cause some serious damage. $100K might seem like a lot of money to some, but to the powers that might want to do this that would be petty cash.

  2. Have an 'emergency button' on the right hand pull out menu - Help me I've been downvoted unfairly... This would send a message to a roster of high SP/high rep monitors that could upvote a post to counter the downvote. Of course how the monitors make the judgement call would be an issue for thought. Also to avoid trivial (?) use of the emergency button there could be a nominal fee (1SBD?). And maybe to reward the monitors for their time maybe they could take say 25% of the post payout.

These are only a couple of random noob level ideas but as this is such a tricky (and important) issue I thought it worth throwing everything in the pot just in case it might help.

I have just created an addon for steemit that mildly improves the situation with downvoted posts being hidden. ;)

Upvote and follow me

Good information. Thank you! :)

You are welcome, thanks!

I have just created an addon for steemit that mildly improves the situation with downvoted posts being hidden. ;)

Brilliant! #thealliance heavily approves and has tweeted this out.

I have just created an addon for steemit that mildly improves the situation with downvoted posts being hidden. ;)

Checking it out now :)

this happened to me tonight flagged one my post i think hiding it is censorship.

... they are added to a list of 'reported posts'
Mm, that does not convince me. I would rather just leave them greyed out and on the bottom number of upvotes and downvotes. And when hovering over the downvotes it could say the list of reasons.

Regarding the economic penalties I think it's a tricky matter.
In case of big payout lawsuits could come out of them. I've seen posts with a 40,000$ payout..