20 - History and Development of Bitcoin

Please note: People have written books about Bitcoin’s history and development and this is just a section of our course. We’ll be the first to admit that an overview of Bitcoin requires discretion on our part. Opinionated or controversial comments are flagged as best we can but, as always, we’re hoping mainly to give a overview of the major points. Inevitably, we’ll miss something.

“Bitcoin is Old Technology”

As we’ve mentioned frequently, Bitcoin relies on decades of technological development. This has led to a meme “Bitcoin is Old Technology”:

Satoshi Nakamoto was aware of all these developments, and references them throughout their whitepaper. But Bitcoin actually started on a listserve and with Nakamoto sharing a piece of software they were building. It was initially simply called “Bitcoin” and was built using C++. Nakamoto also encouraged others to run the software and began gathering the early developers who ran the first distributed network.

Once the software was stable, Nakamoto released a whitepaper describing the concepts underpinning the software and referencing some of the older technologies it drew upon. By the release of the whitepaper, there was a growing community of developers interested in Bitcoin and discussing its future.

Famously, Nakamoto stepped back from the project in early 2011. In April of that year, Nakamoto posted their last update to Bitcoin Core, as the software was now known and gave developer credentials to the now-lead technical developer, [Gavin Andresen. (source{target=_blank})](Gavin Andresen - Wikipedia)

Many have speculated about Satoshi Nakamoto’s identity but their identity has never been definitively proven. There is a significant amount of bitcoin (some estimates say around one million bitcoin) Nakamoto mined during their time running the Bitcoin Core software. It’s considered to be the best identity test for anyone claiming to be Nakamoto: Sign a cryptographic digital message with the private key associated with this bitcoin. It has never been done!

Basic Technical Features

We’ll briefly touch on two main technical parts of the Bitcoin network: The UTXO transaction model and the Script smart-contract language.

  • The Unspent Transaction Output or UTXO model is the fundamental building block of transactions in the Bitcoin network. Per Wikipedia: “Each UTXO is analogous to a coin, and holds a certain amount of value in its respective currency. Each UTXO represents a chain of ownership implemented as a chain of digital signatures where the owner signs a message (transaction) transferring ownership of their UTXO to the receiver’s public key.” The UTXO model is in contrast to the account model that Ethereum tracks value in the network
  • Many don’t realize this, but Bitcoin does actually technically have a programming language it uses, called Script, which is based off the Forth programming language. It’s very limited in its capacity, but you can read about some of its capacity in Mastering Bitcoin in the “Advanced Transactions and Scripting” chapter.

Conclusion

It’s sometimes easy for others to find fault with Bitcoin and the Bitcoin community. However, it’s important to note Bitcoin’s contribution to the world, both specifically to blockchains but also to distributed networks generally. We can’t go as deep as we’d like to (we can’t, but we’d like to talk about the Segregated Witness development and the more recent Taproot fork), but we’d encourage you to at least checkout the whitepaper. At this point, you should be able to understand all the concepts in it!

Here are some great resources for reading the whitepaper, which can be intimidating on its own:

Additional Material

History and Nakamoto

Technical Features and Development

General Resources