Hijacking consensus in Bitcoin with social engineering

Censorship in Bitcoin has become a massive problem [0]. There are only a number of places where people can speak their minds and be heard by the majority of Bitcoin users, and so far all of these places have become censored and controlled by only a handful of people [1].

If Bitcoin were suppose to be a technological response to trust in third-party financial companies then so far every Bitcoin user is still in the banking age of communication technology. And that is a very bad thing if you care about how centralization will effect Bitcoin in the future.

Without a decentralized medium for discussion anyone is able to control what information other people are allowed to post which creates the perfect opportunity to influence (and subsequently control) the ecosystem without ever having to compromise the blockchain directly.

This is possible because consensus in Bitcoin doesn’t just depend on hash power used to secure the chain - but it also depends on the social consensus formed between everyone who uses it, which includes wallet users, exchanges, merchants, developers, and of course: miners [2].

One can imagine a scenario where miners are forced to abandon the “main chain” to favor an alternative fork with more economic activity. You might be thinking that this scenario doesn’t matter with Bitcoin - and if Bitcoin were already perfect you would be right. But so far the software has had numerous problems [3] and being able to solve these problems still depends on being able to form social consensus on a solution, in an open, transparent, and rational manner - and therein lies the problem.

 Humans are not rational.

There are hundreds of known logical fallacies [4] and without having access to special tools designed to assess them it becomes impossible for us to stay rational all of the time. So even if we did have a perfect, decentralized, uncensored forum that everyone used, it still wouldn’t matter.

Let me give you some examples how this can play out.

“Donald Trump is a misogynist. Anyone who sees and treats women this way is unfit to be president.”

“Crooked Hilary is at it again. Don’t listen to a single thing this witch says.”

The quotes above are all examples of an ad hominem fallacy which in this case is attempting to smear an opponents reputation to discredit everything they have to say in the future.

These kinds of attacks are highly effective at distorting how people think because again: people aren’t always rational.

 All your carefully thought out arguments … still no match for a troll on the Internet

…. And there are so many more ways to mislead people.

 Stacking the deck

Stacking the deck [6] is where only one side of the story is conveyed and its been said that in the recent presidential election the deck was largely stacked against Trump (The New York Times were forced to apologize to subscribers over how they covered the Trump campaign [7].)

Censorship is a perfect example of stacking the deck since it conveys the false impression of social consensus when no such thing exists.

 The common man fallacy.

This fallacy starts out by the speaker asserting to be one of the people and hence to have their best interests in mind [8]. In Bitcoin it goes something like this: “I’m an early adopter […] and as an early adopter I would never …”

 Ad populum.

If you assert that something is true because the majority believe it to be true then you’ve made a fallacy known as argumentum ad populum [9]. In Bitcoin you would say something like “most early adopters support.”

 Appeal to authority.

Many people like to believe that the views of certain developers are the word of god … and besides this being a logical fallacy the reason why this is such a bad thing in the context of Bitcoin is because there aren’t actually any “experts” at this stage simply because the field is still too young.

Anyone who says they’re a “Bitcoin Expert” is likely only doing it for marketing reasons since the truth is everyone is just making it up as they go along (scary, but that’s how you get from A to B.) In any case: if you cite the words of an “expert” you also need to cite the reasoning behind their views.

 False flags.

A false flag [10][11] is where you pretend to be an opponent and use the opportunity to make them look foolish, untrustworthy, stupid, or any manner of negative things. To give you an example, imagine that you were a Hilary Clinton supporter and you wanted to make Trump supporters look like violent and hateful people. To do that you might dress up as a Trump supporter and go to a Hilary Clinton rally to try incite violence.

The beauty of a false flag attack is that its virtually impossible to differentiate from the real thing. In the above example, you wouldn’t be able to prove that the “Trump supporter” was a false flag from looking at it purely from the outside. The only way you’re going to tell is with a signed admission from the perpetrator - and good luck getting that.

I hope you can see just how effective these kinds of attacks can be - particularly in online forums with pseudo-anonymous identities.

Suppose you wanted to discredit /r/btc – all you would have to do is post the most insane conspiracy theories and then rationally dispel them on your other account. Or conversely, suppose you wanted to discredit /r/bitcoin – maybe you would post a well-reasoned argument why censorship is bad and then actually delete your own post.

 False false flags (things get crazy here)

This one is hard to explain. A false false flag is where you pretend to be someone else observing a false flag (that you also did yourself) but you do it in such an irrational and insane way that you can come in at a later stage and dispel what’s happening … Believe it or not I found an example of this on /r/btc the other day (note that this is speculation as false flags are almost impossible to prove without a signed admission.)

  1. There exists a sub Reddit called “BitcoinClassic” https://www.reddit.com/r/BitcoinClassic/ filled with pages full of fear and doubt about Bitcoin Classic being an attempt to hijack Bitcoin.
  2. The Reddit pretends to be the real Bitcoin Classic page (/r/Bitcoin_Classic) and the posts there masquerade as real Classic users feigning concern over the trustworthiness of the project.
  3. Anyone can tell that this Reddit is a fake. The page is a false flag to make Bitcoin Classic look less trustworthy but here’s where things get interesting. If someone were to claim that this Reddit were the work of Core Developers it would be easy to rationally dismiss these claims as being false since they would lack evidence.
  4. The first (and obvious) false flag then becomes a setup to hysterically pretend that its real and jump to irrational conclusions to discredit Classic Supporters (this is the real false flag.)
  5. Now people who are anti-classic can jump in to rationally disprove these claims which makes classic supporters look like conspiracy nuts.
  6. Bonus section: anyone who brings this up also looks like a conspiracy nut job since its so incredibly elaborate - there’s no way to prove any of it. And the original Reddit may still steer away people who are highly gullible.

(Remember: these are all examples. Try not to get emotional.)

 Other fallacies

… And of course all the other fallacies that go unquestioned on the Internet such as half-truths, faulty studies, cherry picking, distractions, emotional arguments, and so on [4] …

 Why Reddit sucks as a communication platform

Modern communication platforms like Reddit don’t care about the truth of an argument - they are built simply to propagate ideas that are already popular. Under this context there is almost no use for logic since the kinds of attacks I spoke about earlier are far more effective. Why waste any time arguing rationally when your points can just as easily be defeated by someone attacking your character or by censoring your views?

It seems like every aspect of the Reddit platform has been carefully designed to make information manipulation as easy as possible. You have your upvoting algorithm that can be manipulated by sock puppet accounts (or by one-sided cliques [12].) Your heavily moderated sub-reddits where dissenting opinions can be easily hidden [13]. Threaded discussions whose conclusions can be manipulated by sock puppets. A general lack of verifiability for accounts. Duplicate submissions to reinforce slanted opinions. And arbitrary comments can be stated no matter their accuracy.

Indeed, every communication medium we have has been structured around reinforcing personal opinions instead of focusing on accuracy, hence these mediums are all highly vulnerable to social engineering attacks [26].

The fundamental problem is that none of these platforms seem to challenge us to think about what is being said - which I argue is deeply necessary in an environment with potential state level attackers - who are then free to circumvent rationality through emotions and half-truths.

 Uncensored forums aren’t enough

Without any standard for accuracy the only thing you invite with an uncensored forum is even more attacks, more politics, and less truth. And these are not theoretical concerns. There are already companies out there who specialize in shilling [14]. This is easy enough to prove when you examine the numerous pump and dump scams that have plagued Bitcoin (see OneCoin) - but it also goes much deeper than that.

There is software in existence that allows marketers to retroactively shape the perceptions of their products in the eyes of consumers by monitoring all relevant social media discussions so marketers can jump in at any moment with positive mentions (shilling) [15]. And if you think that’s bad there are companies like Ntrepid [16] working on “online persona management” [17][18] software that will make this even more effective by allowing marketers to mass control sock puppets to counter information [19].

Such attacks would be devastating against Bitcoin because their cost is much lower than attacking the blockchain directly. One can simply employ an army of sock puppets to constantly promote and suppress information, each of which could be done through thousands of VPNs for a very low cost [20]. Thus, from an outside perspective it would seem as if the community were in agreement, when in reality this agreement would be entirely manufactured … and should anyone try point this out the sock puppet army would be more than ready to discredit or downvote anything you have to say (assuming, of course, that the mods don’t just delete it.)

Reddit’s makes this all trivial to do:

 How might you prevent this?

Shilling only works because it so often goes unchallenged and while I can’t speak for everyone who uses Reddit I can say my mind isn’t exactly engaged when I’m browsing. I think the only solution is to develop machine learning tools that can help us to highlight where information falls on a logical spectrum before it can be used against us. It should be possible to do this by starting first with simple ad hominem attacks, though the entire UX still needs to be designed to place logical reasoning at the center.

An example of how this might work in practice is the arguman.org website [21]. What’s noteworthy about this platform is that it forces you to lay out your reasoning for an argument, allowing it to be examined for fault by anyone. So suppose the community wanted to discuss big blocks vs small blocks. Every possible point regarding the argument could be laid out and tested using pure logic [22] - which by the way - would be a much more effective approach than making everything a political matter [23].

This approach obviously won’t work perfectly for every argument though. For example, you might argue that aspects of the gun debate are irresolvable since they depend on unknown behaviors taking place by other people within a society. Religion, politics, and philosophy are another example, and a platform for logical discussions is unlikely to help us resolve what has already been discussed for thousands of years [24.]

 Putting it all together

My vision is to have a decentralized discussion forum built directly into the Bitcoin client that has been specifically designed to be information hardened against social engineering attacks. You could even have it so that upvoting is based on the logical rigor of an argument instead of its “popularity.” This would require introducing a similar trust model to peer reviewed journals but theoretically this shouldn’t be a flaw if the platform itself is designed to highlight social engineering attacks and to counter bias.

The interface could include a list of fallacies and propaganda techniques, with examples to help humans classify information so that by using the software you’re actually training the community to be less vulnerable. Machine learning tools would also help with this as they can be used to highlight social engineering attacks. Best of all, an AI doesn’t feel emotions so most of the techniques used against humans wouldn’t work.

 Other attacks against Bitcoin

 Too long; didn’t read

Bitcoin’s biggest flaw is the fact that consensus can be hijacked indirectly by using social engineering attacks that are trivial and cost effective to carry out. To mitigate this issue, a new class of discussion forums is needed that are designed to highlight the logical rigor of an argument and to prevent misleading information from being used to cloud human judgment.

Such a forum could start out centralized as a proof-of-concept and then work towards a decentralized version built directly into the Bitcoin client. It may even be possible to build this as some kind of trustless, incentivised logic engine but that thought I leave as an exercise to the reader.

Sybil attacks among humans won’t matter if logic can be enforced.


[0] https://medium.com/@johnblocke/a-brief-and-incomplete-history-of-censorship-in-r-bitcoin-c85a290fe43#.z5pi9bg18
[1] What has often been give as a reason for censorship on /r/Bitcoin is that Bitcoin XT were spamming the Reddit so heavily that the moderators were “forced” to intervene to prevent Bitcoin from being “hijacked.” But now that I think about it this could have also been organized by the moderators themselves as an excuse to censor the whole Reddit while simultaneously serving to discredit alt-coins as an existential threat to Bitcoin. I often see people spouting this very same non-sense whenever censorship is brought up so it obviously worked quite very well if this is what happened.
[2] https://freedomandconstraint.github.io/future-internet/18.html
[3] Poor security; Scalability; Economic incentives; High fees; These are massive issues for the software.
[4] https://www.logicallyfallacious.com/
[5] https://en.wikipedia.org/wiki/Poisoning_the_well
[6] https://en.wikipedia.org/wiki/Cherry_picking
[7] http://nypost.com/2016/11/11/new-york-times-we-blew-it-on-trump/
[8] https://www.logicallyfallacious.com/tools/lp/Bo/LogicalFallacies/25/Appeal-to-Common-Folk
[9] http://rationalwiki.org/wiki/Argumentum_ad_populum
[10] https://en.wikipedia.org/wiki/False_flag
[11] There are people who believe that 9/11 was a false flag to give America an excuse to invade Iraq and ultimately steal oil but I’ll leave the conspiracy theorizing to other people.
[12] http://lmgtfy.com/?q=reddit+upvoting+bots
[13] https://www.reddit.com/r/bitcoin_uncensored/comments/3id1al/moderators_of_rbitcoin_changed_the_stylesheets/
[14] http://lmgtfy.com/?q=marketing+companies
[15] www.buzzbundle.com
[16] https://en.wikipedia.org/wiki/Ntrepid
[17] http://wiki.project-pm.org/wiki/Persona_Management
[18] HBGary bid to develop persona management software for the United States Air Force.
[19] This is basically systematic, organized sock puppets to create the illusion of social consensus on a massive scale. See http://www.bibliotecapleyades.net/sociopolitica/sociopol_internet77.htm for an overview.
[20] You could find contractors willing to work for a low fee on websites like oDesk and Mturk. VPNs are also relatively cheap; Effectiveness of the attack is further improved through the use of custom software for managing personas.
[21] arguman.org
[22] … and studies if necessary.
[23] Because lets not forget that unlike politics we can test virtually every decision within Bitcoin, so that should at least allow us to make more solid technical and business arguments.
[24] But certainly, not all topics within Bitcoin will fall within this category.
[25] http://www.rand.org/content/dam/rand/pubs/research_reports/RR1200/RR1231/RAND_RR1231.pdf
[26] Even a simple chat room has similar problems since such places become frequented by regulars who all start to share the same views.


Now read this

The ICO crapcoin checklist

Does the coin reward users for contributing resources towards the creation of a shared service that will benefit all users? Can the resources contributed by users be verified by anyone? Does the service always fall within an expected... Continue →