Home » News » The early Bitcoin codebase

Bitcoin News

The early Bitcoin codebase

Jim Blasko discovered one of the purest versions of the v0.1 Bitcoin codebase in some forgotten corner of the sourceforge website. Todd Price explores Blasko’s ideological appropriation of Bitcoin for the cypherpunks movement.

On October 7 2022, Jim Blasko shared a post on Facebook which linked to one of the purest versions of the v0.1 Bitcoin codebase that he had recently uncovered in some forgotten corner of the SourceForge website.

Sourceforge was the original repository for the open-source code base before it was ported over to GitHub some years later.

The codebase carries the original copyright attribution to Satoshi Nakamoto and the MIT/x11 software licence which stipulates that attribution be preserved. When comparing it against the Bitcoin Core codebase on Github, it can be noted that the copyright has been changed to The Bitcoin Core Developers and Bitcoin Developers from 2009-2022.

Interestingly, it wasn’t until mid-2011 that the codebase was fully migrated over to GitHub but there could be an argument made that the removal of the copyright attribution to Satoshi Nakamoto and replacing it with The Bitcoin Core Developers violates one of the only two conditions of the MIT license from the get-go.

Ideological appropriation of the Bitcoin codebase

Jim Blasko then goes on to comment how Satoshi released the original codebase on the cypherpunks mailing list but by following the link given one can see it was The Cryptography Mailing List.

This is a subtle yet meaningful distinction to be made. The cryptography mailing list was subscribed to by those with an interest in cryptography, including intelligence and defence personnel, police, mathematicians, and Internet engineers whereas the cypherpunks mailing list has more of an ideological premise, to begin with, and was subscribed to by more radical individuals.

The propagation of the idea that it was released on the cypherpunks mailing list creates a loaded premise that Satoshi Nakamoto was in alignment with the ideological underpinnings of that mailing list, rather than a serious professional who wanted to keep abreast of the latest developments in the field of cryptography.

To put such a myth to bed, Dr Craig Wright has recently issued a 50 BTC challenge for anyone who can prove that Satoshi ever released the Bitcoin codebase on any cypherpunks mailing list. So far no one has offered anything of substance other than the odd twit from twitter sharing a screenshot of something only tangentially related as if it’s a pinnacle gotcha moment.

Promoters of Bitcoin as uncensorable and unseizable digital gold didn’t bother correcting anyone who circulated that notion despite some other interesting inclusions in the codebase which in some respects obliterate that narrative.

The small-block disinformation campaign

Many people in the BTC camp would have you believe that it was Satoshi’s intention all along to keep blocks small and prevent superfluous data from being added to the blockchain. Meanwhile, a simple search for the term ‘poker’ yields 86 entries with 30 mentions of ‘market’ in the codebase.

Why did Satoshi include a reference implementation of an on-chain poker game if the chain was only ever designated to process roughly 200k transactions per day? Though far from its former glory days, PokerStars still has 15,000 daily players, so it would be difficult to accommodate global payments when the average game of poker sees 25 hands dealt per hour.

This becomes especially impossible if it is to run in parallel with an on-chain marketplace including such functionality as reading and writing on-chain reviews, inventory management and advertising slots.

It’s also interesting to remember that Dr Craig Wright worked for many years as a security consultant for several of the big online poker companies before they were shut down in the late noughties.

Surely with such inclusions in the early codebase, it was always Satoshi’s plan for it to be used in wider applications than simply hoarding like a digital collectable.

Other inclusions such as the rich scripting language of 186 opcodes make little sense if they were never to be used. Similarly, OP_PUSHDATA4 allows data chunks of up to 4.3GB to be included in a single input of a single transaction. If the blocks were supposed to stay small, why would there be an allowance for 30 days of full BTC block’s worth of data to be pushed to the chain in a single input?

Mind your ideological projections

It is an interesting phenomenon to observe how one’s ideological desires can be projected onto a technological substrate to restrict its functionality even when it has the capacity to perform at a much higher level.

It’s even more interesting that many of the early adopters consider themselves technological enthusiasts with the fastest computers, phones and gadgetry yet don’t want a performant system for processing global financial activity.

Copy link
Powered by Social Snap