The proof-of-work system, alongside the chaining of blocks, makes modifications of the blockchain extremely hard, as an attacker must modify all subsequent blocks in order for the modifications of one block to be accepted. As new blocks are mined all the time, the difficulty of modifying a block increases as time passes and the number of subsequent blocks (also called confirmations of the given block) increases.
The difficulty is the measure of how difficult it is to find a new block compared to the easiest it can ever be. The rate is recalculated every 2,016 blocks to a value such that the previous 2,016 blocks would have been generated in exactly one fortnight (two weeks) had everyone been mining at this difficulty. This is expected yield, on average, one block every ten minutes.
Keys come in pairs. The public key is used to encrypt the message whereas the private key decrypts the message. The only person with the private key is you. Everyone else is free to have your public key. As a result, everyone can send you encrypted messages without having to agree on a key beforehand. They simply use your public key and you untangle the gibberish by using your private key.
Technically, during mining, the Bitcoin mining software runs two rounds of SHA256 cryptographic hashing function on the block header. The mining software uses different numbers called the nonce as the random element of the block header for each new hash that is tried. Depending on the nonce and what else is in the block the hashing function will yield a hash of a 64-bit hexadecimal number. To create a valid block, the mining software has to find a hash that is below the difficulty target.
Bitcoin wallet addresses are case sensitive, usually have 34 characters of numbers and lowercase letters, start with either a 1 or a 3, and never use 0, O, l and I to make every character in the address as clear as possible. That’s a lot to take in. But don’t worry. What they consist of is largely irrelevant to you. Just know they’re a string of characters that denote a destination on the Bitcoin Blockchain.
The basin has become a proving ground for the broader debate about the future of blockchain technology. Critics insist that bitcoin will never work as a mainstream currency—it’s slow and far too volatile. Its real function, they say, is as a “store of value”—that is, an investment asset, like gold or company shares—except that, unlike these traditional assets, bitcoin has no real underlying economic value. Rather, critics say, it has become merely another highly speculative bet—much like mortgage-backed derivatives were in the prelude to the financial crisis—and like them, it is just as assured of an implosion.
After some months later, after the network started, it was discovered that high end graphics cards were much more efficient at Bitcoin mining. The Graphical Processing Unit (GPU) handles complex 3D imaging algorithms, therefore, CPU Bitcoin mining gave way to the GPU. The massively parallel nature of some GPUs allowed for a 50x to 100x increase in Bitcoin mining power while using far less power per unit of work. But this still wasn’t the most power-efficient option, as both CPUs and GPUs were very efficient at completing many tasks simultaneously, and consumed significant power to do so, whereas Bitcoin in essence just needed a processor that performed its cryptographic hash function ultra-efficiently.
The blocks chain is secured by the miners. Miners secure the block by creating a hash that is created from the transactions in the block. This cryptographic hash is then added to the block. The next block of transactions will look to the previous block’s hash to verify it is legitimate. Then the miner will attempt to create a new block that contains current transactions and new hash before any other miner does.
Correction (Dec. 18, 2013): An earlier version of this article incorrectly stated that the long pink string of numbers and letters in the interactive at the top is the target output hash your computer is trying to find by running the mining script. In fact, it is one of the inputs that your computer feeds into the hash function, not the output it is looking for.
A variant race attack (which has been called a Finney attack by reference to Hal Finney) requires the participation of a miner. Instead of sending both payment requests (to pay Bob and Alice with the same coins) to the network, Eve issues only Alice's payment request to the network, while the accomplice tries to mine a block that includes the payment to Bob instead of Alice. There is a positive probability that the rogue miner will succeed before the network, in which case the payment to Alice will be rejected. As with the plain race attack, Alice can reduce the risk of a Finney attack by waiting for the payment to be included in the blockchain.