Gentoo Blacklisting Counterparty, Satoshi Dice and Others

1

Update: Since this story was initially posted luke-jr has backed down and apologized publicly stating:

Deploying the ‘ljr’ USE flag to Gentoo as a default quietly was wrong, and has been disabled, as well as splitting the spam filtering off to an independent ‘ljr-antispam’ USE flag so the rest of my patch is not tied to it. Currently, these changes are only available in the “bitcoin” overlay, but should make it to the main Portage tree within a few days.

When I deployed the patch as part of the 0.9.3 ebuild for Gentoo, it did not occur to me at the time that the spam filter was even included, much less that it would be controversial. For some reason, I assumed everyone already knew what was included in my patch (ironic, considering I obviously forgot that part myself) and would see the new USE flag when upgrading. When it was pointed out, I should have just taken the more conservative approach and flipped it off by default. I should have known better (I did make the patch after all), and so I apologise for my lack of prudence.

While I still believe the full patch is the best solution for users today (I have been using it for years myself), I recognise that it should not be enabled without ensuring everyone receiving it is well-aware. What I should have done, in hindsight, was at the very least have a pre-installation notice informing users of the patch and a link to more details on what exactly is included in it and what those changes mean. I will put more effort into ensuring future patches are clearly disclosed upfront.

Over the long term, my hope is to see a BITCOIN_NODE_POLICY variable that can be specified as “ljr”, “vanilla”, or hopefully many other policies to match people’s many different preference in how their own system’s resources are used.

If there are any further concerns or suggestions, please don’t hesitate to contact me.

Luke


 

Many in the bitcoin community are outraged by the recent actions of a contributor to Gentoo for modifying bitcoind and bitcoinqt in the Gentoo linux distribution to add blacklists to the official repos.

The patches which are optional but enabled by default make it so transactions from certain addresses will no longer be processed by the software.

static struct BlacklistEntry BlacklistedPrefixes[] = {
{0x946cb2e0, 0x946cb2e0, “Mastercoin”},
{0x06f1b600, 0x06f1b6ff, “SatoshiDice”},
{0x74db3700, 0x74db59ff, “BetCoin Dice”},
{0xc4c5d791, 0xc4c5d791, “CHBS”}, // 1JwSSubhmg6iPtRjtyqhUYYH7bZg3Lfy1T
{0x434e5452, 0x434e5452, “Counterparty”},
{0x069532d8, 0x069532da, “SatoshiBones”},
{0xda5dde84, 0xda5dde94, “Lucky Bit”},
};

The patches were brought forward by Gentoo contributor and maintainer of the packages luke-jr who claims he is doing so to prevent DoS attacks against bitcoin.

A bug report was opened on the Gentoo Bugzilla as bug 524512 by xiando stating the following:

The official bitcoind and bitcoin-qt in Gentoo enables patches which breaks Bitcoin by default. Please disable the ljr patches by default or preferably all together.

Enabling the stupidmoralnazi aka ljr use flag results in errors like these:

2014-10-05 11:38:09 ERROR: AcceptToMemoryPool : ignoring transaction 289673d37df1a709829b3f3ea7b8549703f4251f26f5721863aacbccc47b95a9 with blacklisted output (SatoshiDice)

A currency is worthless the moment you declare that you can use it to buy a bible but not the korean because we don’t like that one.

Reproducible: Always

This has led to a long list of others chiming in about the issue. luke-jr claims he is only trying to protect the network but many disagree stating that others choose how they want to use the currency including the use of Counterparty.

The debate has raged on the bug report with other users chiming in such as Sarah White:

No, it’s really not a DoS attack.

There isn’t a single reputable journalist or non-fringe blogger who refers to the popularity of the business model of satoshi dice and the other blocked businesses as a “DoS attack”

There is nothing protocol-wise which is invalid about the transactions coming from the sources which are being blacklisted by this patch…

They’re popular enough to push the limits on the bitcoin network capacity, and you and a few other parties have chosen to label this activity with pejorative labels like “DoS attack”.

quote from mike hearn of the bitcoin foundation:

[11:48:36] we all use our computers for things ;) people who don’t use linux still manage to be productive. anyway, i have no idea what that ebuild will do, but the fact that it’s making such changes by default suggests it’d be better to stay away from it entirely. if they want to distribute a bitcoind with patches like luke’s (which change behaviour in quite some fundamental ways) then they should do a proper upstream fork with a new name, so
[11:48:36] you are always sure what you’re getting.

^ Source — http://bitcoinstats.com/irc/bitcoin-dev/logs/2014/10/05#l1412509714

Regardless of if you agree with the reasons luke wrote this patch, or if you believe that the blacklisted businesses whose successful business model generates enough bitcoin traffic to constitutes a “DoS attack”…

… this patch is actively censoring and changing the behaviors of bitcoin to no longer act the usual way as defined by the the official non-patched defaults.

The debate has bled over to reddit with many users outraged and several new threads being created about the issue with some even calling for a boycott of Gentoo moving forward for allowing the issue to escalate this far.

What are your thoughts about this issue? Do you feel that having it turned on by default could have serious ramifications or that this is a minor non-issue?

Find the best exchange to buy Bitcoins


Coin Fire

Coin Fire is a cryptocurrency news site started on June 6th of 2014. The site focused on hard-hitting investigative stories. Coin Fire was acquired by 99Bitcoins on October 2015.

1 Comment

  1. It is not a DoS attack (which I had defended before when I still hung out in IRC before I got tired of all of the arrogant BS of some of the coders, including lukejr…)

    As long as their transactions include the fee they should have, and doesn’t circumvent the protocol, it isn’t a DoS attack. A DoS attack does not consist of valid traffic. A DoS attack is invalid traffic designed to crash or overwhelm the bandwidth.

    The transactions from all of those sites, are none of those things. The argument can certainly be made that they are high volume, but that is all. It is still valid traffic, and devs had to have known from the beginning there would be a saturation point for the blockchain. Judging from how often blocks are generated with few transactions would suggest that there is still capacity to spare. Also, judging from how often blocks are generated with NO transactions? Now those, I would be more likely to call DoS, as mining blocks, but refusing transactions, is a denial of service, when the point of mining, is to process transactions.

    Transaction fees were intended to play their part to prioritize some transactions over others, and eventually will have to support mining on the network by themselves. Raise the fee schedule if the amount of transactions is such a problem… or… leave everything alone, and the problem will sort itself out eventually when we do reach a saturation point… and then, if Satoshi Dice and the rest, raise their fees to insure their transactions get handled in a timely fashion? Well, that’s what was intended from the start, isn’t it?

    High volumes of usage, is not a DoS, and that is all that this is. LukeJr needs to get over his narcissistic arrogance. He isn’t Bitcoin.

    — Smoov

Leave A Reply