Citations
-
Scaling Bitcoin [2017] (†845)
"Technical Terms." (Scaling Bitcoin Workshop Group, 2017).
Existing Citations
- 51% attack (s.v. "51% attack / Majority attack"): A majority attack (usually labeled 51% attack or >50% attack) is an attack on the network. This attack has a chance to work even if the merchant waits for some confirmations, but requires extremely high relative hashrate. (†2246)
- bitcoin core (s.v. "Bitcoin Core"): Bitcoin Core is the open source client of the Bitcoin Cryptocurrency. Initially, the software was published by Satoshi Nakamoto under the Name "Bitcoin" and later renamed to Bitcoin Core. The software validates the whole Blockchain including all transactions ever done. Moreover a wallet, which can be used to transfer funds, is included by default. (†2247)
- bitcoin core (s.v. "Block validation"): Bitcoin Core checks each block of transactions it receives to ensure that everything in that block is fully valid—allowing it to trust the block without trusting the miner who created it. This prevents miners from tricking Bitcoin Core users into accepting blocks that violate the 21 million bitcoin limit or which break other important rules. (†2249)
- block (s.v. "Block"): A block is a permanent record of data stored in the blockchain, acting like a page or ledger. Each block contains and confirms pending transactions. Roughly every 10 minutes, on average, a new block along with the transactions it contains is added to the blockchain through mining. (†2248)
- blockchain (s.v. "Blockchain / Chain"): A public ledger of all confirmed transactions in a form of a tree of all valid blocks (including orphans). Most of the time, "blockchain" means the main chain, a single most difficult chain of blocks. Blockchain is updated by mining blocks with new transactions. Unconfirmed transactions are not part of the blockchain. If some clients disagree on which chain is main or which blocks are valid, a fork happens. (†2250)
- Byzantine General's Problem (s.v. "Byzantine (Generals') Problem"): In fault-tolerant computer systems, and in particular distributed computing systems, Byzantine fault tolerance is the characteristic of a system that tolerates the class of failures known as the Byzantine Generals' Problem. As reliable computer systems must handle malfunctioningcomponents that give conflicting information to different parts of the system. This situation can be expressed abstractly in terms of a group of generals of the Byzantine army camped with their troops around an enemy city. Communicatingonly by messenger, the generals must agree upon a common battle plan. However, one or more of them may be traitors who will try to confuse the others. The problem is to find an algorithm to ensure that the loyal generals will reach agreement. It is shown that, using only oral messages, this problem is solvable if and only if more than two-thirds of the generals are loyal; so a single traitor can confound two loyal generals. With unforgeable written messages, the problem is solvable for any number of generals and possible traitors. (†2252)
- consensus mechanism (s.v. "Consensus"): The consensus rules are the specific set of rules that all Bitcoin full nodes will unfailingly enforce when considering the validity of a block and its transactions. For example, the Bitcoin consensus rules require that blocks only create a certain number of bitcoins. (†2253)
- distributed ledger technology (s.v. "Distributed network"): A distributed network is designed so that there is no central server or entity that others must connect to. Instead, network participants connect directly to each other. Bitcoin is a distributed network. (†2254)
- double spending (s.v. "Double spending"): Double-spending is a failure mode of digital cash schemes, when it is possible to spend a single digital token twice. Since, unlike physical token money such as coins, electronic files can be duplicated, and hence the act of spending a digital coin does not remove its data from the ownership of the original holder, some other means are needed to prevent double-spending. (†2255)
- Ethereum (s.v. "Ethereum"): Ethereum is a decentralized platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference. (†2256)
- fork (s.v. "Fork"): Any computer that connects to the Bitcoin network is called a node. Nodes that fully enforce all of the rules of Bitcoin are called full nodes. Most nodes on the network are lightweight nodes instead of full nodes, but full nodes form the backbone of the network. (†2257)
- full node (s.v. "Full node"): Any computer that connects to the Bitcoin network is called a node. Nodes that fully enforce all of the rules of Bitcoin are called full nodes. Most nodes on the network are lightweight nodes instead of full nodes, but full nodes form the backbone of the network. (†2258)
- hard fork (s.v. "Hardfork"): A hardfork is a change to the bitcoin protocol that makes previously invalid blocks/transactions valid, and therefore requires all users to upgrade. Any alteration to bitcoin which changes the block structure (including block hash), difficulty rules, or increases the set of valid transactions is a hardfork. (†2259)
- hash function (s.v. "Hash function"): A cryptographic hash function is a mathematical algorithm that maps data of arbitrary size to a bit string of a fixed size (a hash function) which is designed to also be one-way function, that is, a function which is infeasible to invert. The only way to recreate the input data from an ideal cryptographic hash function's output is to try a large number of possible inputs to see if they produce a match. Bruce Schneier has called one-way hash functions "the workhorses of modern cryptography". The input data is often called the message, and the output (the hash value or hash) is often called the message digest or simply the digest. (†2260)
- merged mining (s.v. "Merged mining'): The act of using work done on one blockchain on more than one chain, using Auxiliary POW. (†2261)
- Merkle Tree (s.v. "Merkle tree / Hash tree"): A tree constructed by hashing paired data (the leaves), then pairing and hashing the results until a single hash remains, the merkle root. In Bitcoin, the leaves are almost always transactions from a single block. (†2262)
- mining (s.v. "Block subsidy / Block reward"): The reward given to a miner which has successfully hashed a transaction block. Block rewards can be a mixture of coins and transaction fees, depending on the policy used by the cryptocurrency in question, and whether all of the coins have already been successfully mined. (†2251)
- mining (s.v. "Mine (verb) / Mining"): Mining is a record-keeping service. Miners keep the blockchain consistent, complete, and unalterable by repeatedly verifying and collecting newly broadcast transactions into a new group of transactions called a block. Each block contains a cryptographic hash of the previous block, using the SHA-256 hashing algorithm, which "chains" it to the previous block thus giving the blockchain its name. (†2263)
- mining (s.v. "Mining pool / pool"): In the context of cryptocurrency mining, a mining pool is the pooling of resources by miners, who share their processing power over a network, to split the reward equally, according to the amount of work they contributed to solving a block. A "share" is awarded to members of the mining pool who present a valid proof of work that their miner solved. Mining in pools began when the difficulty for mining increased to the point where it could take years for slower miners to generate a block. The solution to this problem was for miners to pool their resources so they could generate blocks more quickly and therefore receive a portion of the block reward on a consistent basis, rather than randomly once every few years. (†2264)
- nonce (s.v. "Nonce"): In cryptography, a nonce is an arbitrary number that may only be used once. It is similar in spirit to anonce word, hence the name. It is often a random or pseudo-random number issued in anauthentication protocol to ensure that old communications cannot be reused in replay attacks. They can also be useful as initialization vectors and in cryptographic hash function. (†2265)
- proof of stake (s.v. "Proof-of-Stake / PoS"): Proof-of-stake (PoS) is a method by which a cryptocurrency blockchain network aims to achieve distributed consensus. While the proof-of-work (PoW) method asks users to repeatedly run hashing algorithms or other client puzzles to validate electronic transactions, proof-of-stake asks users to prove ownership of a certain amount of currency (their "stake" in the currency). Peercoin was the first cryptocurrency to launch using proof-of-Stake. Other prominent implementations are found in BitShares, ShadowCash, Nxt, BlackCoin, NuShares/NuBits and Qora. Ethereum has planned a hard fork transition from PoW to PoS consensus. (†2266)
- proof of work (s.v. "Proof-of-Work / PoW"): In order to be accepted by the rest of the network, a new block must contain a so-called proof-of-work.[50] The proof-of-work 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. 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 0, 1, 2, 3, … before meeting the difficulty target. (†2267)
- segregated witness (s.v. "Segregated witness"): This BIP defines a new structure called a "witness" that is committed to blocks separately from the transaction merkle tree. This structure contains data required to check transaction validity but not required to determine transaction effects. In particular, scripts and signatures are moved into this new structure. (†2268)
- sidechain (s.v. "Sidechain"): The selfish miner then continues to mine the next block and so on maintaining its lead. When the rest of the network is about to catch up with the selfish miner, he, or they, then release here portion of solved blocks into the network. (†2269)
- simplified payment verification (SPV) node (s.v. "SPV node (Simplified Payment Verificati): A scheme to validate transactions without storing the whole blockchain (only block headers) and without trusting any external service. Every transaction must be present with all its parent and sibling hashes in a merkle tree up to the root. SPV client trusts the most difficult chain of block headers and can validate if the transaction indeed belongs to a certain block header. (†2272)
- smart contract (s.v. "Smart contract"): Smart contracts are computer protocols that facilitate, verify, or enforce the negotiation or performance of a contract, or that make a contractual clause unnecessary. Smart contracts usually also have a user interface and often emulate the logic of contractual clauses. Proponents of smart contracts claim that many kinds of contractual clauses may thus be made partially or fully self-executing, self-enforcing, or both. Smart contracts aim to provide security superior to traditional contract law and to reduce other transaction costs associated with contracting. (†2270)
- soft fork (s.v. "Softfork"): A softfork is a change to the bitcoin protocol wherein only previously valid blocks/transactions are made invalid. Since old nodes will recognise the new blocks as valid, a softfork is backward-compatible. This kind of fork requires only a majority of the miners upgrading to enforce the new rules. (†2271)
- soft fork (s.v. "Unilateral softfork"): Soft forks are a feature of Bitcoin. Moreover, soft forks can be enforced by miners unilaterally, without others consent. That's because soft forks make rules more strict/add new rules, and these rules are enforced by miners. (†2274)
- unspent transaction output (UTXO) (s.v. "UTXO (Unspent Transaction Output)"): An Unspent Transaction Output (UTXO) that can be spent as an input in a new transaction. (†2273)