Title: Theory / Important / CS / Algo / Blockchain-5 / Bitcoin / Glossary;
Tags: récupéré examplesSwitchExample1 hasSeenConjDef

Name: Bitcoin address
Definition: An encoded base58check version of a public key 160-bit hash.
Page: XVI
Chapter: Glossary

Name: Bitcoin improvement proposals
Definition: A set of proposals that members of the bitcoin community have submitted to improve bitcoin.
Page: XVI
Chapter: Glossary
Abbreviation: BIP

Name: Bitcoin
Definition: The name of the currency unit (the coin), the network, and the software.
Page: XVI
Chapter: Glossary

Name: Block
Definition: A grouping of transactions, marked with a timestamp, and a fingerprint of the previous block.
Page: XVI
Chapter: Glossary

Name: Blockchain
Definition: A list of validated blocks, each linking to its predecessor all the way to the genesis block.
Page: XVI
Chapter: Glossary

Name: Byzantine Generals Problem
Definition: The problem of dealing with a failing component sending conflicting informations to different parts of the system.
Page: XVI
Chapter: Glossary

Name: Coinbase
Definition: A special field used as the sole input for coinbase transactions. It allows claiming the block reward and provides up to 100 bytes for arbitrary data.
Page: XVI
Chapter: Glossary

Name: Coinbase transaction
Definition: The first transaction in a block. Always created by a miner, it includes a single coinbase.
Page: XVII
Chapter: Glossary

Name: Cold storage
Definition: Refers to keeping a reserve of bitcoin offline.
Page: XVII
Chapter: Glossary

Name: Colored coins
Definition: An open source Bitcoin 2.0 protocol that enables developers to create digital assets on top of bitcoin blockchain utilizing its functionalities beyond currency.
Page: XVII
Chapter: Glossary

Name: A confirmation of t
Definition: The block containing the transaction t, or
Page: XVII, 28
Chapter: Glossary
Variables: t a transaction
Definition2: A block referring to a confirmation of t
Conjdef: Either
Intuition: Something which ensures that a transaction cannot be reversed, when there is enough of it.

Name: Consensus
Definition: When several nodes, usually most nodes on the network, all have the same blocks in their locally-validated best block chain.
Page: XVII
Chapter: Glossary

Name: Consensus rules
Definition: The block validation rules that full nodes follow to stay in consensus with other nodes.
Page: XVII
Chapter: Glossary

Name: difficulty
Definition: A network-wide setting that controls how much computation is required to produce a proof of work.
Page: XVII
Chapter: Glossary

Name: difficulty retargeting
Definition: A network-wide recalculation of the difficulty that occurs once every 2,016 blocks and considers the hashing power of the previous 2,016 blocks.
Page: XVII
Chapter: Glossary

Name: difficulty target
Definition: A difficulty level at which all the computation in the network will find blocks approximately every 10 minutes.
Page: XVII
Chapter: Glossary
Context: bitcoin

Name: double spending
Definition: successfully spending some money more that once.
Page: XVII
Chapter: Glossary

Question: How bitcoins protect against double spending ?
Answer: verifying each transaction added to the block chain to ensure that the inputs for the transaction had not previously already been spent.
Page: XVIII
Chapter: Glossary

Name: Elliptic Curve Digital Signature Algorithm
Definition: A cryptographic algorithm used by Bitcoin to ensure that funds can only be spent by their rightful owners.
Abbreviation: ECDSA

Name: extra noncen
Definition: As difficulty increased, miners often cycled through all 4 billion values of the nonce without finding a block. Because the coinbase script can store between 2 and 100 bytes of data, miners started using that space as extra nonce space, allowing them to explore a much larger range of block header values to find valid blocks.

Name: fees
Definition: Payement for processing the requested transaction.
Page: xviii
Typ: bitcoin

Name: fork
Definition: Something which occurs when two or more blocks have the same block height, forking the block chain. Typically occurs when two or more miners find blocks at nearly the same time. Can also happen as part of an attack.
Name2: Accidental fork

Name: hard fork
Definition: A permanent divergence in the blockchain, commonly occurs when non-upgraded nodes can’t validate blocks created by upgraded nodes that follow newer consensus rules.
Page: xviii
Name2: Hard-Forking Change
Extra: Not to be confused with fork, soft fork, software fork or Git fork.

Name: hardware wallet
Definition: A special type of bitcoin wallet which stores the user’s private keys in a secure hardware device.

Name: hash
Definition: A digital fingerprint of some binary input.

Name: hashlocks
Definition: A type of encumbrance that restricts the spending of an output until a specified piece of data is publicly revealed. Hashlocks have the useful property that once any hashlock is opened publicly, any other hashlock secured using the same key can also be opened. This makes it possible to create multiple outputs that are all encumbered by the same hashlock and which all become spendable at the same time.

Name: Hierarchical Deterministic protocol
Definition: key creation and transfer protocol (BIP32), which allows creating child keys from parent keys in a hierarchy.
Context: Bitcoin
Abbreviation: HD protocol

Name: HD wallet
Definition: Wallets using the Hierarchical Deterministic (HD Protocol) key creation and transfer protocol (BIP32).

Name: HD wallet seed
Definition: A potentially-short value used as a seed to generate the master private key and master chain code for an HD wallet.
Name2: root seed

Name: A Hashed TimeLock Contract
Definition: A class of payments that use hashlocks and timelocks to require that the receiver of a payment either acknowledge receiving the payment prior to a deadline by generating cryptographic proof of payment or forfeit the ability to claim the payment, returning it to the payer.
Abbreviation: HTLC

Name: Know your customer
Definition: The process of a business, identifying and verifying the identity of its clients.
Definition2: the bank regulation which governs these activities.
Conjdef: Either
Abbreviation: KYC

Name: LevelDB
Definition: An open source on-disk key-value store. It is a light-weight, single-purpose library for persistence with bindings to many platforms.
Page: xix

Name: Lightning Networks
Definition: A proposed implementation of Hashed Timelock Contracts (HTLCs) with bi-directional payment channels which allows payments to be securely routed across multiple peer-to-peer payment channels. This allows the formation of a network where any peer on the network can pay any other peer even if they don’t directly have a channel open between each other.

Name: Locktime
Definition: The part of a transaction which indicates the earliest time or earliest block when that transaction may be added to the block chain.
Name2: nLockTime

Name: memory pool
Definition: A collection of all transaction data in a block that have been verified by bitcoin nodes, but are not yet confirmed.
Abbreviation: mempool

Name: merkle root
Definition: The root node of a merkle tree, a descendant of all the hashed pairs in the tree. Block headers must include a valid merkle root descended from all transactions in that block.

Name: merkle tree
Definition: 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.

Name: miner
Definition: A network node that finds valid proof of work for new blocks, by repeated hashing.

Name: multisignature
Definition: It refers to requiring more than one key to authorize a bitcoin transaction.
Abbreviation: multisig

Name: network
Definition: A peer-to-peer network that propagates transactions and blocks to every bitcoin node on the network.
Page: xx

Name: nonce
Definition: A 32-bit (4-byte) field in a bitcoin block whose value is set so that the hash of the block will contain a run of leading zeros. The rest of the fields may not be changed, as they have a defined meaning.

Name: off-chain transactions
Definition: The movement of value outside of the block chain. While an on-chain transaction—usually referred to as simply a transaction modifies the blockchain and depends on the blockchain to determine its validity an off-chain transaction relies on other methods to record and validate the transaction.

Name: Operation codes
Definition: A thing from the Bitcoin Script language which push data or perform functions within a pubkey script or signature script.
Abbreviation: opcode

Name: Open Assets protocol
Definition: A simple and powerful protocol built on top of the bitcoin blockchain. It allows issuance and transfer of user-created assets. The Open Assets protocol is an evolution of the concept of colored coins.

Name: OP_RETURN
Definition: An opcode used in one of the outputs in an OP_RETURN transaction. Not to be confused with OP_RETURN transaction.

Name: OP_RETURN transaction
Definition: A transaction type relayed and mined by default in Bitcoin Core 0.9.0 and later that adds arbitrary data to a provably unspendable pubkey script that full nodes don’t have to store in their UTXO database. Not to be confused with OP_RETURN opcode.

Name: orphan block
Definition: Blocks whose parent block has not been processed by the local node, so they can’t be fully validated yet.

Name: orphan transactions
Definition: Transactions that can’t go into the pool due to one or more missing input transactions.

Name: output
Definition: An output in a transaction which contains two fields: a value field for transferring zero or more satoshis and a pubkey script for indicating what conditions must be fulfilled for those satoshis to be further spent.
Name2: transaction output
Abbreviation2: TxOut

Name: Pay To PubKey Hash scripts
Definition: Transactions that pay a bitcoin address contain. An output locked by a it can be unlocked (spent) by presenting a public key and a digital signature created by the corresponding private key.
Abbreviation: P2PKH scripts

Name: Pay-to-Script-Hash
Definition: A powerful new type of transaction that greatly simplifies the use of complex transaction scripts. With it, the complex script that details the conditions for spending the output (redeem script) is not presented in the locking script. Instead, only a hash of it is in the locking script.
Abbreviation: P2SH

Name: P2SH address
Definition: Base58Check encodings of the 20-byte hash of a script, they use the version prefix “5”, which results in Base58Check-encoded addresses that start with a “3”. THey hide all of the complexity, so that the person making a payment does not see the script.

Name: Pay-to-Witness-Public-Key-Hash
Definition: Its signature contains the same information as a P2PKH spending, but is located in the witness field instead of the scriptSig field. The scriptPubKey is also modified.
Abbreviation: P2WPKH

Name: Pay-to-Witness-Script-Hash
Definition: The difference between P2SH and this is about the cryptographic proof location change from the scriptSig field to the witness field and the scriptPubKey that is also modified.
Abbreviation: P2WSH

Name: paper wallet
Definition: In the most specific sense, it is a document containing all of the data necessary to generate any number of Bitcoin private keys, forming a wallet of keys. However, people often use the term to mean any way of storing bitcoin offline as a physical document. This second definition also includes paper keys and redeemable codes.

Name: payment channels
Definition: A class of techniques designed to allow users to make multiple bitcoin transactions without committing all of the transactions to the bitcoin blockchain. In a typical payment channel, only two transactions are added to the block chain but an unlimited or nearly unlimited number of payments can be made between the participants.
Name2: A micropayment channel

Name: pooled mining
Definition: A mining approach where multiple generating clients contribute to the generation of a block, and then split the block reward according the contributed processing power.

Name: Proof-of-Stake
Definition: A method by which a cryptocurrency blockchain network aims to achieve distributed consensus. Proof-of-Stake asks users to prove ownership of a certain amount of currency (their “stake” in the currency).
Abbreviation: PoS

Name: Proof-of-Work
Definition: A piece of data that requires significant computation to find.
Example: miners must find a numeric solution to the SHA256 algorithm that meets a network-wide target, the difficulty target.
Applied to: In bitcoin,

Name: reward
Definition: An amount included in each new block as a reward by the network to the miner who found the Proof-of-Work solution. It is currently 12.5 BTC per block.

Name: RIPEMD-160
Definition: A 160-bit cryptographic hash function. A strengthened version of RIPEMD with a 160-bit hash result, and is expected to be secure for the next ten years or more.

Name: satoshi
Definition: The smallest denomination of bitcoin that can be recorded on the blockchain. It is the equivalent of 0.00000001 bitcoin and is named after the creator of Bitcoin, Satoshi Nakamoto.

Name: Satoshi Nakamoto
Definition: The name used by the person or people who designed Bitcoin and created its original reference implementation, Bitcoin Core. As a part of the implementation, they also devised the first blockchain database. In the process they were the first to solve the double spending problem for digital currency. Their real identity remains unknown.

Name: Script
Definition: Bitcoin uses a scripting system for transactions. Forth-like, Script is simple, stack-based, and processed from left to right. It is purposefully not Turing-complete, with no loops.

Name: ScriptPubKey
Definition: A script included in outputs which sets the conditions that must be fulfilled for those satoshis to be spent. Data for fulfilling the conditions can be provided in a signature script.
Name2: pubkey script

Name: signature script
Definition: The data generated by a spender which is almost always used as variables to satisfy a pubkey script.
Abbreviation: ScriptSig

Name: secret key
Definition: The secret number that unlocks bitcoin sent to the corresponding address.
Example: 5J76sF8L5jTtzE96r66Sf8cka9y44wdpJjMwCxR3tzLh3ibVPxh
Name2: private key

Name: Segregated Witness
Definition: A proposed upgrade to the Bitcoin protocol which technological innovation separates signature data from bitcoin transactions. Segregated Witness is a proposed soft fork. A change that technically makes Bitcoin’s protocol rules more restrictive.

Name: The Secure Hash Algorithm
Definition: A family of cryptographic hash functions published by the National Institute of Standards and Technology (NIST).
Abbreviation: SHA

Name: simplified payment verification
Definition: A method for verifying particular transactions were included in a block without downloading the entire block. The method is used by some lightweight Bitcoin clients.
Abbreviation: SPV

Name: soft fork
Definition: A temporary fork in the blockchain which commonly occurs when miners using non-upgraded nodes don’t follow a new consensus rule their nodes don’t know about. Not to be confused with fork, hard fork, software fork or Git fork.

Name: stale block
Definition: Block which were successfully mined but which isn’t included on the current best block chain, likely because some other block at the same height had its chain extended first.

Name: timelocks
Definition: A type of encumbrance that restricts the spending of some bitcoin until a specified future time or block height. Timelocks feature prominently in many Bitcoin contracts, including payment channels and hashed timelock contracts.

Name: transaction
Definition: In simple terms, a transfer of bitcoin from one address to another. More precisely, it is a signed data structure expressing a transfer of value. Transactions are transmitted over the bitcoin network, collected by miners, and included into blocks, made permanent on the blockchain.

Name: transaction pool
Definition: An unordered collection of transactions that are not in blocks in the main chain, but for which we have input transactions.

Name: Turing completeness
Definition: A program language such that it can run any program that a Turing machine can run given enough time and memory.

Name: unspent transaction output
Definition: An unspent transaction output that can be spent as an input in a new transaction.
Abbreviation: UTXO

Name: wallet
Definition: Software that holds all your bitcoin addresses and secret keys. Use it to send, receive, and store your bitcoin.

Name: Wallet Import Format
Definition: A data interchange format designed to allow exporting and importing a single private key with a flag indicating whether or not it uses a compressed public key.
Abbreviation: WIF

Name: RIPEMD-160
Definition: A 160-bit cryptographic hash function. RIPEMD-160 is a strengthened version of RIPEMD with a 160-bit hash result, and is expected to be secure for the next ten years or more.

Name: satoshi
Definition: 0.00000001 bitcoin
Definition2: The smallest denomination of bitcoin that can be recorded on the blockchain
Etymology: named after the creator of Bitcoin,

Name: soft fork
Definition: A temporary fork in the blockchain which commonly occurs when miners using non-upgraded nodes don’t follow a new consensus rule their nodes don’t know about.
Extra: Not to be confused with fork, hard fork, software fork or Git fork.

Name: timelocks
Definition: A type of encumbrance that restricts the spending of some bitcoin until a specified future time or block height.
Context: Bitcoin
Intuition: They feature prominently in many Bitcoin contracts, including payment channels and hashed timelock contracts.

Name: transaction
Definition: A signed data structure expressing a transfer of value.
Extra: Transactions are transmitted over the bitcoin network, collected by miners, and included into blocks, made permanent on the blockchain.
Intuition: a transfer of bitcoin from one address to another