One of the most important problems that any payment network has to solve is double-spending. It is a fraudulent technique of spending the same amount twice. The traditional solution was a trusted third party - a central server - that kept records of the balances and transactions. However, this method always entailed an authority basically in control of your funds and with all your personal details on hand.
In March 2013 the blockchain temporarily split into two independent chains with different rules due to a bug in version 0.8 of the bitcoin software. The two blockchains operated simultaneously for six hours, each with its own version of the transaction history from the moment of the split. Normal operation was restored when the majority of the network downgraded to version 0.7 of the bitcoin software, selecting the backward compatible version of the blockchain. As a result, this blockchain became the longest chain and could be accepted by all participants, regardless of their bitcoin software version.[42] During the split, the Mt. Gox exchange briefly halted bitcoin deposits and the price dropped by 23% to $37[42][43] before recovering to previous level of approximately $48 in the following hours.[44] The US Financial Crimes Enforcement Network (FinCEN) established regulatory guidelines for "decentralized virtual currencies" such as bitcoin, classifying American bitcoin miners who sell their generated bitcoins as Money Service Businesses (MSBs), that are subject to registration or other legal obligations.[45][46][47] In April, exchanges BitInstant and Mt. Gox experienced processing delays due to insufficient capacity[48] resulting in the bitcoin price dropping from $266 to $76 before returning to $160 within six hours.[49] The bitcoin price rose to $259 on 10 April, but then crashed by 83% to $45 over the next three days.[40] On 15 May 2013, US authorities seized accounts associated with Mt. Gox after discovering it had not registered as a money transmitter with FinCEN in the US.[50][51] On 23 June 2013, the US Drug Enforcement Administration listed ₿11.02 as a seized asset in a United States Department of Justice seizure notice pursuant to 21 U.S.C. § 881.[52][better source needed] This marked the first time a government agency had seized bitcoin.[53] The FBI seized about ₿30,000[54] in October 2013 from the dark web website Silk Road during the arrest of Ross William Ulbricht.[55][56][57] These bitcoins were sold at blind auction by the United States Marshals Service to venture capital investor Tim Draper.[54] Bitcoin's price rose to $755 on 19 November and crashed by 50% to $378 the same day. On 30 November 2013 the price reached $1,163 before starting a long-term crash, declining by 87% to $152 in January 2015.[40] On 5 December 2013, the People's Bank of China prohibited Chinese financial institutions from using bitcoins.[58] After the announcement, the value of bitcoins dropped,[59] and Baidu no longer accepted bitcoins for certain services.[60] Buying real-world goods with any virtual currency had been illegal in China since at least 2009.[61]
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 software.[16] 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.[112] After the release of version 0.9, the software bundle was renamed Bitcoin Core to distinguish itself from the underlying network.[113][114]
Bitcoin is pseudonymous rather than anonymous in that the cryptocurrency within a wallet is not tied to people, but rather to one or more specific keys (or "addresses").[41] Thereby, bitcoin owners are not identifiable, but all transactions are publicly available in the blockchain. Still, cryptocurrency exchanges are often required by law to collect the personal information of their users.[citation needed]

Miners are the single most important part of any cryptocurrency network, and much like trading, mining is an investment. Essentially, miners are providing a bookkeeping service for their respective communities. They contribute their computing power to solving complicated cryptographic puzzles, which is necessary to confirm a transaction and record it in a distributed public ledger called the Blockchain.

To be accepted by the rest of the network, a new block must contain a proof-of-work (PoW).[79] The system used is based on Adam Back's 1997 anti-spam scheme, Hashcash.[90][failed verification][4] The PoW requires miners to find a number called a nonce, such that when the block content is hashed along with the nonce, the result is numerically smaller than the network's difficulty target.[7]:ch. 8 This proof is easy for any node in the network to verify, but extremely time-consuming to generate, as for a secure cryptographic hash, miners must try many different nonce values (usually the sequence of tested values is the ascending natural numbers: 0, 1, 2, 3, ...[7]:ch. 8) before meeting the difficulty target.
Essentially, any cryptocurrency network is based on the absolute consensus of all the participants regarding the legitimacy of balances and transactions. If nodes of the network disagree on a single balance, the system would basically break. However, there are a lot of rules pre-built and programmed into the network that prevents this from happening.
Ethereum's smart contracts are based on different computer languages, which developers use to program their own functionalities. Smart contracts are high-level programming abstractions that are compiled down to EVM bytecode and deployed to the Ethereum blockchain for execution. They can be written in Solidity (a language library with similarities to C and JavaScript), Serpent (similar to Python, but deprecated), LLL (a low-level Lisp-like language), and Mutan (Go-based, but deprecated). There is also a research-oriented language under development called Vyper (a strongly-typed Python-derived decidable language).
Physical wallets store the credentials necessary to spend bitcoins offline and can be as simple as a paper printout of the private key:[7]:ch. 10 a paper wallet. A paper wallet is created with a keypair generated on a computer with no internet connection; the private key is written or printed onto the paper[h] and then erased from the computer. The paper wallet can then be stored in a safe physical location for later retrieval. Bitcoins stored using a paper wallet are said to be in cold storage.[104]:39 In a 2014 interview, QuadrigaCX founder Gerald Cotten explained that the company stored customer funds on paper wallets in safe deposit boxes: "So we just send money to them, we don’t need to go back to the bank every time we want to put money into it. We just send money from our Bitcoin app directly to those paper wallets, and keep it safe that way."[105]
Every 2,016 blocks (approximately 14 days at roughly 10 min per block), the difficulty target is adjusted based on the network's recent performance, with the aim of keeping the average time between new blocks at ten minutes. In this way the system automatically adapts to the total amount of mining power on the network.[7]:ch. 8 Between 1 March 2014 and 1 March 2015, the average number of nonces miners had to try before creating a new block increased from 16.4 quintillion to 200.5 quintillion.[91]
Using Ethereum’s “Turing complete” smart contract language, Solidity, developers are able to deploy a set of instructions to the blockchain that operate indefinitely with a high degree of finality and fraud-resistance. With the first block being mined in July 2015, Ethereum has since become the largest smart contract platform of its kind, and the second largest blockchain of all time as measured by market capitalization.

Full clients verify transactions directly by downloading a full copy of the blockchain (over 150 GB As of January 2018).[100] They are the most secure and reliable way of using the network, as trust in external parties is not required. Full clients check the validity of mined blocks, preventing them from transacting on a chain that breaks or alters network rules.[7]:ch. 1 Because of its size and complexity, downloading and verifying the entire blockchain is not suitable for all computing devices.
The unit of account of the bitcoin system is a bitcoin. Ticker symbols used to represent bitcoin are BTC[b] and XBT.[c][76]:2 Its Unicode character is ₿.[1] Small amounts of bitcoin used as alternative units are millibitcoin (mBTC), and satoshi (sat). Named in homage to bitcoin's creator, a satoshi is the smallest amount within bitcoin representing 0.00000001 bitcoins, one hundred millionth of a bitcoin.[2] A millibitcoin equals 0.001 bitcoins; one thousandth of a bitcoin or 100,000 satoshis.[77]