Turning The DEFCON Badge Into A Bitcoin Miner

defcon

The DEFCON badge this year was an impressive piece of hardware, complete with mind-bending puzzles, cap sense buttons, LEDs, and of course a Parallax Propeller. [mike] thought a chip as cool as the Propeller should be put to better use than just sitting around until next year so he turned it into a Bitcoin miner, netting him an astonishing 40 hashes per second.

Mining Bitcoins on hardware that doesn’t have much processing power to begin with (at least compared to the FPGAs and ASIC miners commonly used) meant [mike] would have to find some interesting ways to compute the SHA256 hashes that mining requires. He turned to RetroMiner, the Bitcoin miner made for an original Nintendo. Like the NES miner, [mike] is offloading the communication with the Bitcoin network to a host computer, but all of the actual math is handled by a single core on the Propeller.

Saving one core for communication with the host computer, a DEFCON badge could conceivably manage 280 hashes/second, meaning the processing power of all the badges made for DEFCON is about equal to a seven-year-old graphics card.

19 thoughts on “Turning The DEFCON Badge Into A Bitcoin Miner

  1. FPGAs aren’t used for mining anymore. Hell, even ASICs are getting obsolete at their current speed/price ratios.

    You need about 2,5 Th to make one Bitcoin a month.

    Just for fun, to get that speed with the badges, you would need 62,5 BILLION of them if they run at 40 hashes.

    If you can get them to 280 hashes, you would only need about 9 billion.

    1. Put more succinctly: Due to difficulty increases and the cost of hardware, you are unlikely to ever make back the hardware costs even if you’re not paying for electricity, to say nothing of actually making a profit.

      Of course, that doesn’t stop people from wasting their childrens’ college funds or taking out tens of thousands of dollars in loans so that they can make box-fan-cooled GPU mining rigs in their small bedrooms so as to get heat stroke and brain damage from it.

      1. True.

        To be fair though, it was actually worth running a GPU rig even just a year ago.

        Today, the only way to really “make money” through Bitcoin is by trading. With the current fluctuations it’s actually possible to make a small profit.

        1. I lost interest in mining before I even really fully understood what bitcoins are.

          I realized pretty quickly that, unless you get in early on the game, there were diminishing returns on investment. Figured I would make better returns on stocks.

          Then I got married…..

          1. @Blue Footed Booby

            The “countries of the world” – or more precisely their governments – are using inflationary currencies because it benefits debtors and hurts savers. And who are the biggest debtors in the world? Those same governments.

  2. Does anyone know if the Bletchley park “Colossus” computer could perform the required calculations to do bitcoin mining? It seems to me to be somewhat close to its originally designed purpose.

    Or any other contemporary glorious grandfather computers of that golden era for that matter. The ENIAC or EDSAC perhaps. I suspect that the Babbage Difference Engine would grind itself to powder before it got a result. :)

      1. I don’t know what the purpose of this hack was, but it’s clear that unoptimized C code on the propeller is very slow. That’s interesting information for anybody looking to use this chip in a more demanding application.

  3. I wrote a SHA-256 hash function for the Propeller 1 that does 4217 blocks per second. This function was tightly optimized and used as the basis of the hash function in the Propeller 2 firmware. Now that the Propeller 2 has taken a different direction I’m sure Chip will rewrite the code again.

    Anyhow, at ~4200 blocks per second, per core, you could use 7 cores and get around ~29400 blocks per second at 80Mhz. Each block is 64 bytes, a full hash consists of running 1 or more blocks through the hashing function. If your input data is only 64 bytes then you get a full hash in 1 block execution.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.