Bobos & Wojaks

Get rich or die tryin

10 Common Bitcoin Misconceptions

bitcoin-bubble-cryptomarket

1) You can lose Bitcoin by sending Bitcoin to an address with a mistake in it.

The Bitcoin address format has an error checksum at the end. If you change even one character in an address this checksum won’t be correct anymore and your Bitcoin client or exchange will give an error message when you try to send. Even if you would use a client that would not give an error message the transaction would be rejected by the mempools because it’s not valid. Your coins would not move. A miner that includes a non valid address will have his block orphaned by the other miners which means a loss of more than 100 000 dollars. So they won’t do it. Next to that, Bitcoin addresses are copy pasted or QR codes are scanned … There is almost never a reason for manually typing in a Bitcoin address. The only thing you have to worry about is a virus changing your copy paste and replacing your own valid address by a valid address of theirs. This is why every time you have done a copy paste you should always check 3 characters in the beginning, 3 in the middle and 3 in the end. But even when that is done, a virus could fool you. If you are paranoid about this, then use the address whitelist function or make a test transaction. In the case of Bitcoin a test transaction can be really expensive at times (if the mempool is full) which is a damn shame because it feels like again people are penalized for not being rich.

2) Bitcoins are stored on private keys.

Bitcoins are just accounting entries that tell you how many Bitcoins have gone in and out from a single address and then calculate the remaining balance. These Bitcoins ins and outs are called inputs and outputs and every input eventually turns into an output that has not been used as a new input. These outputs are called UTXo’s which stands for Unspent Transaction Outputs. All this information is stored on the computers that run mempools (which in the case of mining are connected to ASICS that look for the lucky number). This means your Bitcoins are always stored in the cloud. At any given time the database that stores the information of the balance of your address is on tens of thousands of computers. In the case of a full node you have this entire database, in the case of a simple payment verification wallet you only have the blocks relevant to your own transaction. In the case of a pruned node you have information up to the last so many blocks. In the case of a compacted node you have verified all previous transactions but only store the end result of the verification and have compacted all blocks up until a buffer. In the case of an archival node you have all the information including things like op_returns and other arbitrary data.

What your private key does is allow you to be the only person to create a valid signature that can be used to MOVE your Bitcoins from one address to another address. See it like a person working in a bank that needs to make a large transaction but is not authorized. In this case, she or he has to find somebody with valid credentials to sign the transaction and thus authorize it. When a private key is stored on a system that has NEVER connected to the internet and will NEVER connect to the internet because it lacks network capacities we call this a cold wallet. When a private key is stored on a system that has been connected to the internet we call this a hot wallet. So Bitcoins are stored on the cloud, the key needed to provide the signature to have the right to move the Bitcoins is stored on your computer. See it as a big bank with bank vaults, these vaults open with the correct key. He who has the correct key can open two vaults and move coins from one vault to the other vault. The key can be stored in your house, the coins always stay in the vaults. Duplicates of keys can be made, which is why you want your coins to be stored in a vault where you have the only key and nobody has ever had that key in his hand to create a duplicate key. When in doubt you want to create a new key and use both keys to move the coins from one vault to the other vault.

3) Addresses are wallets.

A wallet is a collection of multiple addresses that all have a Bitcoin utxo sitting on it. There is NO obvious connection for the public that can tell people which group of addresses belong to a single wallet. A wallet is usually a piece of software that has the private keys for these addresses. You can usually move the private keys of one wallet around and import them in to another wallet. So the definition is very fluid. Also individual private keys are not used much anymore because there is too much risk of loss. Instead, wallet software uses a system called Hierarchical Deterministic. Instead of storing a private key, a seed is stored. What is a seed? A seed is a starting position in a pseudo number generation. Any time you give this same pseudo number generator the same starting position it will give you the same list of random numbers. These random numbers are then used as private keys, and from these private keys the public keys and addresses are calculated. This means that hundreds of thousands of addresses and priv/pub keys can be stored by just one-twelfth word seed. To summarize, a seed gives you access to an unlimited amount of determined priv/pub key pairs and multiple of these pairs together is called a wallet.

4) On-chain payments don’t work because we would have to store every transaction for all eternity on every computer in the network.

This is a myth, Bitcoin was never designed to store every transaction for all eternity. Satoshi in point 7 of the whitepaper explained how after a transaction is buried under enough blocks it can be removed from your hard drive. The only thing that needs to be stored is the outer layer of the merkle hashes. The topmost outer layer of the Merkle hash is called the block header. A block header is only 80 bytes. Since blocks come every 10 minutes. 80 bytes per 10 minutes times 6 for hours time 24 for days times 365 for years equals 4 204 800 bytes of storage a year which is 4.2 megabytes of growth per year. This is different from pruning the blockchain which means you are just throwing old blocks away. In this scheme individuals that have ALREADY verified these transactions can then throw away that verification and the transaction and only store the outer hashes of this transaction which proves to them that somewhere in the past they verified them as valid. Not everybody in the network can do this because otherwise new nodes can not be spun up, which is why there will always be archival nodes. But it also means that everybody having to store all transactions for all eternity is a myth. Just think about it. The earliest block header that is not linked to a previous block header is the genesis block header. This blockheader could always be moved up in time, it would simply be like starting the Bitcoin network much later, just with an already premined amount of coins spread over addresses. The database of who owns which utxo is called the utxo set. This database is the most important and is much smaller than the blockchain itself. When you combine 10 utxo’s to one new utxo you are actually making this database smaller. Now if the entire planet would use Bitcoin this utxo set would grow really big but never infinite.

5) The network is secured by full non-mining nodes that keep the full mining nodes in check. 

This is a myth. The only entities in Bitcoin that have write access to the blockchain are the miners. Every time they find the lucky number they get write access to the chain by giving the right to write a new block to the blockchain. This block has to be valid, or other miners won’t mine on top of it. When this happens a miner will lose their reward and the block they mined will get orphaned. This means that the only protection against a cheating block from a miner are the other miners.

Non-mining nodes have absolutely nothing to say about this. A non-mining node can be used to let you as an individual know if the rules are still being followed, but when the rules are NOT being followed your non-mining node can’t do anything about it. A cheating block would show up as invalid and your Bitcoin wallet software would STOP working. Your non mining full node can’t do anything about it stopped working. The only thing that can be done is a miner rejecting the rule breaking block, replacing it with a rule following block and OTHER miners building their rule following blocks on top of it. When they do this your non mining full node software will start working again.

Here is an example. You make a transaction which is put into a block, this block happens to become a natural orphan in an orphan race between two miners. (this happens on a regular basis). Your non mining node will show you 1 confirmation … and then jump back to 0 confirmations when the mempool is full and you got in the orphaned block but not in the one that won the orphan race! (of course not much later you WILL get in to a block) Your non mining node can’t do anything about this! In reality Bitcoin remains secure by an interaction of various parties. Exchanges, miners, users, merchants. If miners start breaking the rules it will be exchanges that will decide which chain remains Bitcoin and which one stops being Bitcoin as they assign the BTC ticker symbol which comes with the current Bitcoin price. The people that run non mining nodes will 100% all go for the chain that keeps the BTC ticker and it’s price. What happens if you don’t run a full node and Bitcoin successfully gets 51% attacked? Don’t worry, the news will let you know. And even when this happens as long as you are not making transactions you can’t lose any Bitcoin. A 51% attack can only rollback transactions, it can’t steal from addresses.

6) Bitcoin is anonymous.

Bitcoin is pseudo anonymous. It being anonymous depends on correct usage of the user. As soon as you KYC with an exchange and send that exchange Bitcoin’s from your address, the exchange will know that this address belongs to the following name.

7) Bitcoin is fully transparent, if you use it the world will know everything about your finances.

Bitcoin is pseudo anonymous. If you buy a Bitcoin miner and then over TOR mine a block of Bitcoins there is nobody in the world that knows to what human owner the address belongs. Bitcoin can be fully transparent. Bitcoin can be fully anonymous. It’s up to you as a user. You are in control. With that power comes responsibility. Bitcoin can lead to a very interesting dynamic where the bigger an entity is the harder it is for them to have privacy and the easier it is for them to be transparent by default even if they don’t want that. For smaller users it’s the other way around. the smaller they are the easier it will be for them to be private by default and really hard for them to become transparent. Right now the world has the opposite dynamic. The powerful know everything about us but we don’t know anything about them.

8) The price of Bitcoin follows the hashrate

Miners have a cost to mining Bitcoin. If this cost is greater then the reward they stop mining. This makes the hashrate go down. Hashrate there always follows price. Of course there are things that can change this dynamic. If all Bitcoin miners get hardware that can mine with twice the hash while still using the same amount of electricity the hashrate of Bitcoin could double while the price remains the same.

9) It’s the absolute hashrate that secures Bitcoin, the higher the hashrate the more security.

It’s not the absolute hashrate, it’s the division of that hashrate. As long as no single entity can get his hands on more than half of the hashrate no entity can start bending the rules. This also means that the security properties of Bitcoin change depending on a down or upward hashrate trend. When hashrate is going up an attacker has to outproduce the rest of the network in creating ASICs. When there is a downward trend an attacker could just wait till his ASIC’s give him 51% of the network.

10) Mining pools cause Bitcoin to stop being decentralised.

There were once just 3 big mining pools, now there are over 40. A mining pool operator can try to do a 51% attack but this will very quickly cause all his individual miners to disconnect from his pool because this attack hurts the price of Bitcoin of the individual miners. The attack now fizzles out because the operator rapidly loses hashrate. The reputation of this operator will be burned and that mining pool will go bankrupt. The miners will solo mine or join another mining pool. But what happens when a country sends the military to all his miners to get 51% and then attack the network? When this happens as long as other countries do the same and no countries end up with 51% the network remains secure. Ironically nation states trying to control 51% of the hash would force other nation states to do the same which would keep the network decentralised. So we went from individual miners to mining pools and most likely in the future mining pools will go into nation pools. All of this still keeps the network decentralised as long as there is not one entity that controls 51%. Let’s hope we get to the nation pools stage because then rather than having conventional wars we can have hashwars which could cause some power outages but that’s a hell of a lot better then bombs dropping.

10) With Bitcoin you pay per transaction.

You actually pay per byte and thus per utxo as spending two utxo’s requires more bytes then just one. This means that if your wallet says you have 1 Bitcoin but it’s spread over 10 utxo’s, spending this 1 Bitcoin will be ten times as expensive if your wallet had this 1 Bitcoin on just one utxo. Decent wallet software has a coins tab that will show over how many utxo’s your Bitcoin is spread. Every time that the mempool is empty you should consolidate your utxo’s into a one single utxo. Unfortunately this makes it so that you broadcast to the entire world that all these addresses belonged to one wallet. If the government knows that you owned one of those addresses now they will also know about the other 9. Again this is something that penalizes the poorer Bitcoin users as they get forced to give up privacy by consolidating. This is one of the reasons why some Bitcoin users forked Bitcoin into Bitcoin Cash, to make sure the poorer users would not be forced to give up control and privacy.