Depending on a jurisdiction you live in, once you’ve made a profit or a loss investing in cryptocurrencies, you might need to include it in your tax report. In terms of taxation, cryptocurrencies are treated very differently from country to country. In the US, the Internal Revenue Service ruled that Bitcoins and other digital currencies are to be taxed as property, not currency. For investors, this means that accrued long-term gains and losses from cryptocurrency trading are taxed at each investor’s applicable capital gains rate, which stands at a maximum of 15 percent.
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]
These decentralized applications (or “dapps”) gain the benefits of cryptocurrency and blockchain technology. They can be trustworthy, meaning that once they are “uploaded” to Ethereum, they will always run as programmed. They can control digital assets in order to create new kinds of financial applications. They can be decentralized, meaning that no single entity or person controls them.
While it’s still early days, Mist, MetaMask and a variety of other browsers look set to make blockchain-based applications accessible to more people than ever before. Even people without a technical background can now potentially build blockchain apps. This is a revolutionary leap for blockchain technology that could bring decentralized applications into the mainstream.
Transactions are defined using a Forth-like scripting language.[7]:ch. 5 Transactions consist of one or more inputs and one or more outputs. When a user sends bitcoins, the user designates each address and the amount of bitcoin being sent to that address in an output. To prevent double spending, each input must refer to a previous unspent output in the blockchain.[81] The use of multiple inputs corresponds to the use of multiple coins in a cash transaction. Since transactions can have multiple outputs, users can send bitcoins to multiple recipients in one transaction. As in a cash transaction, the sum of inputs (coins used to pay) can exceed the intended sum of payments. In such a case, an additional output is used, returning the change back to the payer.[81] Any input satoshis not accounted for in the transaction outputs become the transaction fee.[81]

Though transaction fees are optional, miners can choose which transactions to process and prioritize those that pay higher fees.[81] Miners may choose transactions based on the fee paid relative to their storage size, not the absolute amount of money paid as a fee. These fees are generally measured in satoshis per byte (sat/b). The size of transactions is dependent on the number of inputs used to create the transaction, and the number of outputs.[7]:ch. 8
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).
Another type of physical wallet called a hardware wallet keeps credentials offline while facilitating transactions.[111] The hardware wallet acts as a computer peripheral and signs transactions as requested by the user, who must press a button on the wallet to confirm that they intended to make the transaction. Hardware wallets never expose their private keys, keeping bitcoins in cold storage even when used with computers that may be compromised by malware.[104]:42–45
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]
×