Bitcoin

What is Satoshi’s Vision?

People who aren’t that into crypto might not understand just how… biblical the whole thing can be.

On the surface, there are the interesting debates about the potential use cases, the stories of insane gains and heartbreaking losses ($85 million spent on two pizzas – never forget). There are plenty of interesting figures in the space to provide us with juicy drama as different camps choose their heroes and villains, but the most influential figure of all is most notable by their absence.

Satoshi Nakomoto.

Like an absent God watching from afar, Nakomoto gave cryptocurrency and blockchain the gift of life and then promptly bailed out with their billions of dollars worth of Bitcoin as far as anyone can tell, leaving the community to bicker over how the Great One would have wanted it to be. You have different factions squabbling over their differences in belief, each claiming that Nakomoto is on their side, but it’s difficult to say what he, she, or they would really have wanted.

I’ve written on the mystery of Nakomoto’s identity in a previous article, and in it I voiced the opinion that their absence isn’t selfishness or cowardice, but a conscious decision to create a leaderless movement that thinks for itself with no figurehead for governments to try to take down, weakening the currency in the process.

With no God at the helm, the Bitcoin project has its own free will, and the civil war between BTC and BCH rages without any divine intervention. Whether mining pools control the hash rate or not, Bitcoin is certainly decentralized in one way – nobody’s in charge. The creator won’t weigh in on what the right direction to take is, and because they’re in the ether, they can never be framed or arrested or targeted in a way that would harm Bitcoin. That strikes me as a great idea, but it begs the question – what did Satoshi Nakomoto want for Bitcoin, and if they’re not here any more, does that even matter?

Scalability: Bigger Blocks or Second Layers

There are a lot of issues in Bitcoin, and at the forefront is the issue of how to scale the network to allow for greater volume of transactions as the userbase increases and Bitcoin smashes the establishment and creates a utopian new world order where everyone is free to live in an anarchistic nirvana of their own choosing becomes more widely used as a currency or store of value. Ahem.

This was of course the main reason for the hard fork that split the currency into BTC and BCH, with the former advocating for second layer protocols like Segwit and the Lightning Network and the latter opting for bigger block sizes with no second layer on top of the Bitcoin blockchain.

The arguments for either are as numerous as they are bitterly proclaimed from the battleground of crypto forums and social media platforms everywhere, with BTC supporters insisting that bigger block sizes will lead to further centralization and the BCH side claiming that their version of Bitcoin is the true Bitcoin outlined in Nakomoto’s scripture white paper.

Interestingly, much like any old timey religion worth its salt, there are a number of gospels to choose from. Nakomoto didn’t just drop off the face of the earth after launching Bitcoin, and there are forum comments from 2009 and 2010 that most people agree are written by the enigmatic figure on the subject of Bitcoin.

Dan Larimer Meets The Maker

Dan Larimer is best known for his creation of Steem and the invention of the Delegated Proof of Stake system of verifying blockchain transactions, which is used by cryptocurrencies like EOS and Lisk. Many in the blockchain community see him as a central figure and a community leader, and in 2010 he went toe to toe with none other than Satoshi Nakomoto over the scalability of Bitcoin in a bitcointalk.org thread.

A user named Red sparked it all off with this question:

I’m curious about the developers feelings on scalability. For example, could the system handle a million users, doing say 5 transactions each per day. 5 million transactions per day is roughly 35,000 transactions per 10 minute period? Is there a bottle neck in propagating 35,000 transactions to a million nodes for block generation? Or has that issue been designed for?

Under the name “bytemaster”, Larimer weighed in first:

I am convinced that bandwidth, disk space, and computation time necessary to distribute and “finalize” a transaction will be prohibitively expensive for micro-payments. Consider for a second that the current banking industry is unable to provide a reasonable micropayment solution that does not involve depositing a reasonable sum and only allowing a withdraw after a reasonable sum has been accumulated.

Besides, 10 minutes is too long to verify that payment is good. It needs to be as fast as swiping a credit card is today.

Satoshi followed shortly afterwards with the following rather snarky response:

The current system where every user is a network node is not the intended configuration for large scale. That would be like every Usenet user runs their own NNTP server. The design supports letting users just be users. The more burden it is to run a node, the fewer nodes there will be. Those few nodes will be big server farms. The rest will be client nodes that only do transactions and don’t generate.

Quote from: bytemaster:
“Besides, 10 minutes is too long to verify that payment is good. It needs to be as fast as swiping a credit card is today.”

See the snack machine thread, I outline how a payment processor could verify payments well enough, actually really well (much lower fraud rate than credit cards), in something like 10 seconds or less. If you don’t believe me or don’t get it, I don’t have time to try to convince you, sorry.

Larimer responded that he had already read the snack machine thread in which Nakomoto explains how Bitcoin avoids double spending, and said that he had had come to the same conclusion as Nakomoto.

So what’s the vision already?

Here’s the thing. An argument could be made that Nakomoto’s vision doesn’t really match either camp, and wouldn’t really have ever worked in the first place. Far be it from me to question the infallible creator of the crypto that started it all, but Nakomoto’s vision, apart from being vehemently claimed by both BTC and BCH supporters, also included something that neither camp bargained on – direct leadership.

It may sound strange in the current climate where Nakomoto is a legendary figure to endlessly bicker over, but at one point they seemed to intend to stick around and lay down the law.

It can be phased in, like:

if (blocknumber > 115000)
maxblocksize = largerlimit

It can start being in versions way ahead, so by the time it reaches that block number and goes into effect, the older versions that don’t have it are already obsolete.

When we’re near the cutoff block number, I can put an alert to old versions to make sure they know they have to upgrade.

In that particular thread, Satoshi essentially said that they’d be the one to decide how things were going to be by “putting out an alert” to the miners to instruct them to change consensus. Yes, in this case they’re suggesting a block size increase, but they’re also suggesting what is essentially direct centralized leadership.

So why the change of heart? Nakomoto never really issued a goodbye, but simply dropped off the radar one day in 2010. Maybe the government got to them, maybe they had a change of heart over direct leadership, maybe they went into hiding – maybe they died. Who knows.

What we do know is that Nakomoto got the ball rolling and gifted the world with an incredible technology that has the potential to change everything. That’s their contribution. Had they stuck around, they may have found that the reality of one figure telling the community what to do would never have worked, and maybe that’s why they disappeared. Vitalik Buterin nearly got skinned alive on social media over the mere suggestion that there was some kind of secret meeting to establish a “plutocratic government” to call the shots with Ethereum consensus.

It just wouldn’t happen. A major feature of Bitcoin is that nobody’s in charge, but Satoshi’s famous vision may have evolved as time went on. Can’t think of everything, right?

Hands down the best thread I’ve read on this is this one where users discuss what Satoshi’s vision was only to be bombarded with people saying it didn’t matter, and that Bitcoin had exploded beyond the vision of one person to a decentralized community around the world. People are arguing that Nakomoto would likely have welcomed the fork to explore both options, that they left the scene to promote community decision making, and that the community are the ones who should decide, not the creator – personally, I agree with all of those points, but the important thing is what you believe.

Bitcoin is seen by many as a self-empowering tool. Money 2.0, blockchain technology enabling peer-to-peer payments and much, much, more, and above all, taking the power from authority figures and putting it in the hands of the public.

So don’t take my word for it – take a look at the thread, take a look at the information that’s out there, and decide for yourself – what is Satoshi’s Vision, yes, but even more importantly – do we need it, now that Satoshi gave us the power to decide on a vision of our own?

Interested in other cool crypto posts….check out Mining Wars: Bitmain vs Dragonmint and The Price of Bitcoin vs Cost of Mining.

Follow us on twitter @cryptoiscomin

Bitcoin’s Scaling Debate: A Beginner’s Guide

This article will attempt to provide a non-technical, beginner friendly, and mostly drama-free explanation of Bitcoin’s scalability debate (and why should care about it), the solutions that have been proposed, and the current state of the debate.

If you are new to Bitcoin or Cryptocurrencies in general, you might have heard terms such as “scaling debate”, “segwit”, “Block size”, “on chain” and “off chain” thrown around. If you have asked someone to explain such terms, either in person or online, you may have been presented with impassionate speeches arguing for one side or the other, conspiracy theories, menacing glares or outright censorship.

(Block) Size Matters

Blocks are the literal building Blocks of the Blockchain, the technology underpinning Bitcoin and all other cryptocurrencies out there. As the name suggests, the Blockchain is a sequence of Blocks, each of which contains a finite number of digital transactions.

Blocks could have theoretically been any size; however, they were first set to a maximum size of 1MB to avoid spam and abuse of the Blockchain. How could the Blockchain be abused? I’ll give you two examples:

Bitcoin users can append data to each transaction they send, which is stored along with all transactions in the Blockchain. A user could thus send an infinite number of transactions between two of his or her own wallets and use each transaction to store a small amount of data, thus being able to use the Blockchain as free and secure cloud storage.

The second reason to implement a limit was to avoid being hit by DoS (Denial-of-Service) attacks. Much like in the first example, this consists of a user (or group of users) sending hundreds of thousands of transactions with the intention of creating a glut in the Network. If you have ever tried to access a website that is being hit by a DoS attack, you know that these are generally impossible to reach. Likewise, if the Bitcoin network were to be hit by DoS attacks, it would become unusable.

Therefore the 1MB limit for each Block was created. Since each Block could only hold a finite number of transactions, and users pay miners a small fee to mine a Block, the 1MB limit ensured that only worthwhile transactions were carried on the Blockchain. Bitcoin was able to chug along happily with 1MB Blocks until…

Bitcoin’s Scaling Problem

While Bitcoin was only being used by enthusiasts it never faced any problems with the cap on Block size. Blocks were rarely filled to above 70% of their 1MB capacity before being processed by the nodes on the Bitcoin network.

However, as Bitcoin adoption grew and everyone and their grandma wanted to get on the Crypto-action, the number of transactions increased exponentially. Suddenly, Blocks were filled to the brim and the Network started having trouble keeping up with the number of Blocks being generated. Users were forced to offer higher and higher fees to Miners to process their transactions first, or at least in a timely manner. Even with heftier fees, Bitcoin transactions were taking longer than ever to be confirmed and added to the Blockchain. At 1MB per Block, it is estimated that the Bitcoin network is able to process up anywhere from 3.3 to 7 transactions per second.

To put things in perspective, Visa claimed back in 2010 to be able to process up to 24,000 transactions per second.

The Bitcoin community started coming up with solutions that would allow Bitcoin to scale and function as a currency, and very early on the community split around two proposed solutions:

  1. A Block Size increase
  2. SegWit and second layer (or off-chain) solutions

Both of these solutions have their own merits so naturally a horrible debate broke out among the community, including name-calling, conspiracy accusations, death treats and more! For objectivity’s sake, we will gloss over this part of the story and just look at the solutions themselves.

Before we get in to the discussion of both solutions, it is important to note that both of these solutions are currently co-existing in the form of Bitcoin Cash and Bitcoin Core. If you owned any Bitcoin before August 2017, you are the proud owner of both Bitcoin Cash and Bitcoin Core. If you are looking into purchasing Bitcoin, you are now faced with a choice of which Cryptocurrency to buy, which will be guided by which solution you consider to be the better choice for Bitcoin long term.

Solution #1: Increasing the Block Size

One of the greatest merits of the Block Size increase solution is its simplicity. It’s both simple to understand but also simple to implement. After a relatively painless change to Bitcoin’s source code, the Bitcoin Cash network can now handle larger Blocks. Proposals revolve around a new 8MB limit, instantly increasing the network’s speed eight-fold, however as we mentioned before there are no hard rules around what a Block Size should be.

However, some have worried that increasing the Block size will eventually crowd out smaller miners and nodes. As the size of the Blocks increases, the computing power required to verify each one and the storage capacity required to store the Blockchain increases linearly.

Thus, very large Block sizes would crowd out all but the more affluent of miners, as they would be the only ones able to process them. The problem would be even more severe for Nodes, whose job is to store the Blockchain and are not financially incentivized to do so. This would lead to a centralization of hash power, which is anathema to most Bitcoin users, and a lack of nodes, imperiling the entire system.

Although this doom case scenario sounds terrible, it doesn’t appear that a Block size of 8MB is anywhere near as big to trigger such an event. What the maximum Block Size of Bitcoin Cash should be remains in question.

Another problem with increasing the Block Size was that it implied changing Bitcoin’s source code. Nodes and Miners would have to upgrade a newer version of the software, which would be incompatible with older versions still using 1MB Block Size. This is what is known as a hard-fork, as parties who decided not to upgrade the software would be unable to transact with those who did upgrade.

Solution #2: SegWit and Off-Layer Solutions

SegWit (which is short for Segregated Witness and is in no way related to the gyroscopic scooters used by mall cops everywhere) proposed handling the Scaling debacle in another way. Instead of requiring a mandatory software upgrade (and causing a hard fork), SegWit proposed separating the Witness Data files from the Blocks and making these visible only to parties running SegWit software. Non SegWit-ready software would still be able to see the transaction data within the Block, thus maintaining backwards compatibility, and SegWit-ready software would recognize the Witness data within the Block.

As a result, SegWit achieves a virtual increase in the capacity of the Blocks (of up to 4x) without mandating a software upgrade. This pleased everyone who was weary of any changes to the Bitcoin Software source code, while at the same time increasing transaction speed.

SegWit was activated on the Bitcoin (also known as Bitcoin Core, to differentiate from Bitcoin Cash) on August 24, 2017.
However, as this change by itself only increased transaction speed by 1.7-2x (remember the VISA network is at least 3,400x faster), SegWit also prepared the field for “second-layer” or “off-chain” transactions.

These transactions imply users and businesses committing their Bitcoin to a third-party clearinghouse which, as the name suggests, clears all the transactions between its intermediated parties by itself (thus they are off-chain transactions, referring to the Blockchain), decreasing the number of transactions (and thus fees paid to miners) processed and verified through the Block-Chain.

The most well-known second layer is the Lightning Network, currently being developed by a company called Blockstream.

The benefits of second layer transactions are well-defined, but so are the risks. For starters, although users would avoid paying fees to miners, they would find themselves paying fees to the clearinghouses or Second-Layers providers, and one can only speculate on which solution would be cheaper in the long run.

A much more serious problem is Counterparty Risk, which is the risk of one of these clearinghouses defaulting on their obligations to their users. Although these kinds of risks are routinely hedged by Insurers, the 2008-2009 financial collapse has shown that even the insurers themselves will fail, leaving everyone swimming naked in a low tide.

Which Side Should You Pick?

Let’s do a quick recap of how both Scaling solutions have thus been implemented:

  1. Bitcoin Cash implemented an increase in the Block size from 1MB to 8MB, and hopes to scale with further Block Size increases.
  2. Bitcoin (also known as Bitcoin Core) implemented SegWit and hopes to scale with Second-Layer or Off-Chain solutions.

If it isn’t obvious, two different groups stand to win if either solution is the dominant one, which explains all the vitriol surrounding the debate. Let’s spell it out:

  1. Block Size increases benefit miners by ensuring that all transactions (and thus fees) are processed (by them) on the Blockchain).
  2. Second-Layer solutions benefit the developers of these Off-Chain platforms, as they will be the ones processing (and thus receiving fees) for most of the transactions.

By now you may be wondering which side of the debate to pick. The answer is:

Don’t.

Smart investors don’t pick sides. They pick winners, sell losers, and hedge their bets.

If you think either Bitcoin or Bitcoin Cash will be the dominant Cryptocurrency in the future, your investments should reflect that. If you think both can co-exist in the future (and the number of Cryptos out there are an indication that they probably can and will, perhaps serving different purposes), then you should hedge your bets and invest in both.

Don’t let the vitriol, name-calling, conspiracy theories or a sense of belonging to a “tribe” influence your investment decisions. Be smart, weigh the pros and cons, and make a rational decision.

If you need help investing in Bitcoin or Bitcoin Cash, be sure to check our guide here.

Follow me @julioobregon

Follow us on twitter @cryptoiscomin

Subscribe to our newsletter to get the coolest infographics and articles from the crypto world