Gaming the Steemit Voting System?

Let me preface this by saying that I haven't read the code, so I could be way off-base. This is just based on my best understanding after my own observations of voting in practice.

Curation Rewards

As I understand it, there are four components to the curation payout of a steemit post:

  1. Time after posting - payout starts at 0%, then goes up gradually from 0 to 100% at 30 minutes, then stays at that peak until payout.
  2. Order in the voting queue - Earlier voters receive higher payouts (bounded by item #1).
  3. Voting power / voting percentage - Payout is proportional to the voting power that's used.
  4. Steem power - Votes with high steem power raise the curation reward more than votes with low steem power.

[Vote]
[Image source: pixabay.com, licensed under CC0, Public Domain]

Sybil Attacks

One very clever feature about steemit's design is that it's designed to be resistant to sybil attacks. If I vote with one account or 20 shouldn't matter, because it's the steempower that determines the size of the reward, not the number of votes.

But, let's think about a sybil attack in terms of factors (2.) and (4.). If I want to maximize my reward, I need to be an early voter with a lot of steem power... Or do I?

What if I divide my steem power unevenly in two accounts - voter_1 and voter_2? Is steemit really resistant to a sybil attack? Let's say, for the sake of argument that voter_1 has a small amount of steem power and voter_2 has a large amount.

Now, I run around steemit-land with voter_1, haphazardly early-voting on as many low-value posts as I can that still might take off. Some of those posts will gain large curation rewards, others won't, but I don't care 'cause my footprint is small anyway.

Now, with voter_2, I watch and wait to see which ones actually do take off, and I vote later for the ones that do, adding my large steem power to the curation payout. Now, (if I understand correctly) voter_1 is going to benefit from its early positioning (item 2.) and from the high steem power (item 4.). It's as if I'm transmitting my steempower from voter_2 to voter_1 after I know that a post has performed well.

Of course, under this strategy, voter_2 is going to have a lot of idle time (type II voting errors), so what I really need are: {voter_1, voter_2, ... voter_N} as small steempower accounts to place enough early votes to keep voter_(N+1) busy with the high steem power votes.

Solution?

I don't know. Maybe let individual users vote multiple times on a single post at different times in the payout cycle until they've used up their entire 100% voting allocation?

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now