The first wallet program, simply named Bitcoin, and sometimes referred to as the Satoshi client, was released in 2009 by Satoshi Nakamoto as open-source code. In version 0.5 the client moved from the wxWidgets user interface toolkit to Qt, and the whole bundle was referred to as Bitcoin-Qt. After the release of version 0.9, the software bundle was renamed Bitcoin Core to distinguish itself from the underlying network.
Bitcoin (BTC) is a cryptocurrency which is regarded as the world’s first decentralized digital currency. It was created by a pseudonymous person or persons named Satoshi Nakamoto in 2009 and has since gone on to become the world’s most popular cryptocurrency by market cap. Bitcoin is a deflationary currency whose issuance is capped at a total supply of 21 million coins. Each Bitcoin can be divided into one million units, with the smallest unit of 0.00000001 known as a satoshi in homage to its creator. The distributed public ledger that Bitcoin uses to record transactions is known as a blockchain and Bitcoin can be spent at over 100,000 online merchants and can also be held as an investment. Bitcoin is traded for fiat and other cryptocurrencies on various exchanges but can also be used to facilitate p2p transactions. Each transaction incurs a small transaction fee to cover the cost of sending Bitcoin over the blockchain ledger, with the fee going to miners tasked with keeping the network secure.
Nobody owns the Bitcoin network much like no one owns the technology behind email or the Internet. Bitcoin transactions are verified by Bitcoin miners which has an entire industry and Bitcoin cloud mining options. While developers are improving the software they cannot force a change in the Bitcoin protocol because all users are free to choose what software and version they use.
The buttons are used to confirm transactions. In order to send a transaction, you must physically press or hold buttons on the devices. This is a security feature. If a hacker were to access the hardware wallet somehow, the hacker still would not be able to send a TX without physical access to the buttons. Read more about this in TREZOR’s security philosophy.
Though it is tempting to believe the media's spin that Satoshi Nakamoto is a lone, quixotic genius who created Bitcoin out of thin air, such innovations do not happen in a vacuum. All major scientific discoveries, no matter how original-seeming, were built on previously existing research. There are precursors to Bitcoin: Adam Back’s Hashcash, invented in 1997, and subsequently Wei Dai’s b-money, Nick Szabo’s bit-gold and Hal Finney’s Reusable Proof of Work. The Bitcoin white paper itself cites Hashcash and b-money, as well as various other works spanning several research fields.
An ASIC (application-specific integrated circuit) is a microchip designed for a special application, such as a particular kind of transmission protocol or a hand-held computer. An ASIC is a chip designed specifically to do only one task. Unlike FPGAs, an ASIC cannot be repurposed to perform other tasks. An ASIC designed to mine Bitcoins can only mine Bitcoins and will only ever mine Bitcoins. The inflexibility of an ASIC is offset by the fact that it offers a 100x increase in hashing power compared to the CPU and GPUs, while reducing power consumption compared to all the previous technologies.
The process of mining bitcoins works like a lottery. Bitcoin miners are competing to produce hashes—alphanumeric strings of a fixed length that are calculated from data of an arbitrary length. They’re producing the hashes from a combination of three pieces of data: new blocks of Bitcoin transactions; the last block on the blockchain; and a random number. These are collectively referred to as the “block header” for the current block. Each time miners perform the hash function on the block header with a new random number, they get a new result. To win the lottery, a miner must find a hash that begins with a certain number of zeroes. Just how many zeroes are required is a shifting parameter determined by how much computing power is attached to the Bitcoin network. Every two weeks, on average, the mining software automatically readjusts the number of leading zeros needed—the difficulty level—by looking at how fast new blocks of Bitcoin transactions were added. The algorithm is aiming for a latency of 10 minutes between blocks. When miners boost the computing power on the network, they temporarily increase the rate of block creation. The network senses the change and then ratchets up the difficulty level. When a miner’s computer finds a winning hash, it broadcasts the block header to its next peers in the Bitcoin network, which check it and then propagate it further.
One of Bitcoin’s most appealing features is its ruthless verification process, which greatly minimizes the risk of fraud. Since Bitcoin is decentralized, volunteers—referred to as “miners”—constantly verify and update the blockchain. Once a specific amount of transactions are verified, another block is added to the blockchain and business continues per usual.
Network nodes can validate transactions, add them to their copy of the ledger, and then broadcast these ledger additions to other nodes. To achieve independent verification of the chain of ownership each network node stores its own copy of the blockchain. About every 10 minutes, a new group of accepted transactions, called a block, is created, added to the blockchain, and quickly published to all nodes, without requiring central oversight. This allows bitcoin software to determine when a particular bitcoin was spent, which is needed to prevent double-spending. A conventional ledger records the transfers of actual bills or promissory notes that exist apart from it, but the blockchain is the only place that bitcoins can be said to exist in the form of unspent outputs of transactions.:ch. 5