Bitcoin 101: Bitcoin Transactions
How is Bitcoin different from sending money by using an app like Venmo?
Let’s dive into what makes Bitcoin and the blockchain different from other ways of sending money.
Centralized vs. Decentralized
When you use Venmo, all of your transactions go through Venmo’s servers, and they have the ability to block, reverse, stall, or even accidentally lose a transaction. Venmo is the single entity responsible for processing your transaction — this system is centralized.
On the other hand, the process of sending a Bitcoin transaction was specifically engineered to be trustless, immutable, and censorship resistant. It takes a smart combination of social and technical engineering to create Bitcoin’s trustless transactions, which is why it’s an important concept to grasp before moving on to more complicated concepts in crypto.
At a high level, bitcoin transactions can be broken down into three parts:
- Creating a transaction and sending it to the Bitcoin Network.
- Mining blocks of transactions (which creates the blockchain).
- Validating transactions.
Each of these parts is handled by a different party with different incentives:
- Users (creating and sending transactions)
- Miners (mining transaction blocks to build the blockchain)
- Nodes (validating the blockchain)
All of these entities that working separately make the Bitcoin network decentralized.
Sending a transaction
In the “normal” (fiat) financial system, when I send a payment, I am sending the transaction details to a bank or credit card processor and asking them to approve it.
In Bitcoin, instead of sending the transaction to one entity, I broadcast a transaction to the global Bitcoin network. It then goes to a pool of “unconfirmed transactions” that are waiting to be processed. This pool is visible to all miners and validators (aka “nodes”) on the network. My transaction is in limbo at this point, and you have not received the payment.
Mining the transaction
At the most basic level, “miners” are individuals and groups racing each other to create blocks on the blockchain. Their computers run a single calculation (essentially a random number calculator) repeatedly, changing one variable each time to get different outcomes. Eventually it results in a number that is sufficient to fulfill the Bitcoin protocol’s requirements. The first miner to calculate a correct number “mines” that block. That miner then proposes their block, which includes now-confirmed transactions, to the nodes on the network. (In case you’re wondering why the heck anyone would want to be a miner, that will become very clear a bit further down.)
Since miners are all competing to win the next block reward, and the calculation is random, no one knows who will add the next block of transactions to the chain. This results in a critical benefit of using Bitcoin — it’s nearly impossible for an outside party to control which transactions are processed. In a centralized monetary system, a user could be completely locked out of transferring money by one entity (e.g. Venmo decides you can’t use their app anymore). But in a decentralized system like Bitcoin, there is no one party to control, bribe, or threaten in an attempt to affect transactions. This is why Bitcoin is said to be highly censorship resistant.*
Verifying the transaction
After a miner proposes a new block, the nodes in the network verify that block. A node can actually be run by anyone — it’s just a program that runs on regular laptop or desktop computers that many people have at home.
The nodes have a record of all pending and historical transactions in the chain, so they know if the transactions in the newly proposed block are valid. For example, if I’m sending you 1 BTC, the nodes know whether or not I actually had 1 BTC in my account, because they previously validated a transaction in which someone else sent that 1 BTC to me, and so on.
If the nodes accept the proposed block as true, the miner receives a reward of newly minted bitcoin, plus transaction fees from all the transactions included in the block. A miner could try to cheat and pass a false block, in which they give themselves a bunch of Bitcoin they don’t own. If this happens, the nodes can reject the block, and the miner loses out on the block reward.
Assume the newly validated block contains my payment to you. Once it’s been verified by a sufficient number of nodes, it’s considered completed, and you receive the payment.
Blocks are continually added by miners and verified by nodes, creating a long chain of transaction records, which is why it’s called the “blockchain” 💡🤯.
Why it works — incentivization
There’s some incredibly interesting game theory involved in making the Bitcoin network run correctly. Everyone who participates in the network is incentivized to act in their own self-interest, yet the result is a huge amount of people working together to maintain an immutable public ledger of transactions. Let’s run through the various incentives driving each party.
This one is pretty straightforward — users want a safe, reliable way to make transactions and store value. If a blockchain network like Bitcoin fails to provide the benefits users want, they will vote with their feet and move on to using a different network. This hurts the network as a whole — there is less liquidity for other users, the value of a bitcoin decreases which hurts miners’ profitability, etc, so network stakeholders all should be working to keep users happy over the long term.
Instead of Venmo recording transactions to its servers, miners record transactions to the blockchain. They don’t do this out of the goodness of their own heart — they do it to make a profit off of block rewards and transaction fees. The block reward is currently 12.5 BTC per block mined — that means at today’s price (~$7,500 on August 2, 2018), the winning miner gets $93,750 plus transaction fees for mining a single block. And a block is mined about every ten minutes. There’s a lot of money to be made mining BTC — if you can win the race.
While the miners work to calculate the next block, their computers are using lots of electricity, which gets very expensive. This computation cost is what helps secure the blockchain, and it’s known as Proof of Work.
See, the problem with a decentralized network in which everyone acts in their own self interest is that people will inevitably try to cheat the system to increase their profits. As we learned earlier, nodes will reject a proposed block if miners blatantly include transactions that don’t match the public balances from previous blocks. However, what if a miner went back and re-calculated enough historical blocks to completely re-write the ledger, thereby tricking nodes into believing their false blocks?
This is where Proof of Work comes to save the day. The nodes on the network will always accept the chain with the most cumulative Proof of Work as the true state of the public ledger. While the cheating miner is going back to re-calculate and falsify old blocks, the rest of the miners are still racing forward, creating blocks on the legitimate chain, thereby adding more “work done” to that chain. The cheater would have to spend a massive amount of money on re-computing blocks to catch up and surpass the chain with the most work done. This makes it more profitable for miners to act honestly and simply try to find the next block than to cheat and steal from the network.
Nodes have an interesting set of incentives in the Bitcoin network. Node operators are not directly rewarded for their services, yet they are crucial to keeping the other actors in the network honest. The more nodes that exist, the more decentralized and immutable the network becomes. Each node has a copy of the entire blockchain ledger, meaning you can’t just hack one server and change account balances around in your own favor — you would have to hack thousands of computers around the world all at once. More nodes makes the network safer to store value in, because you don’t have to worry about your bitcoin suddenly disappearing one day.
This is the indirect incentive for people to run validating nodes: as the network becomes safer, more people are willing to buy bitcoin for storing value or transacting. As more people buy bitcoin, the price increases. Node operators likely hold bitcoin, so over the long term, their investment should increase with the safety of the network.
Bringing it all back together
I bolded three terms in my opening paragraphs: trustless, immutable, and censorship resistant. These three qualities make bitcoin valuable, and the Bitcoin protocol was explicitly engineered to maximize them.
- Transactions are trustless, because everyone acts in their own self-interest, yet this results in a thriving network and true historical record of value transfer.
- The blockchain ledger is immutable, because of: - the computational costs it would require to rewrite it, and- the near-impossibility of hacking every node in the world to change it.
- Bitcoin is censorship resistant, because no one knows who will process the next batch of transactions, therefore it’s very difficult to control which transactions are completed.
So that’s how Bitcoin transactions work, and it’s what makes bitcoin valuable to so many people.
Keep an eye out for more Crypto 101 posts, and if you find them helpful, please share these with people wanting to learn about cryptocurrency!
*In reality, there are some nuances here around miner centralization that could affect Bitcoin’s censorship resistance, but that’s a Crypto 201 topic. You can look up “Bitcoin miner centralization” and “51% attacks” if you’re interested in learning more.