나의 발자취

Cp8. The Bitcoin Network 본문

블록체인/Mastering Bitcoin

Cp8. The Bitcoin Network

달모드 2020. 11. 3. 13:20

p2p network
• extended bitcoin network: the overall network that includes the bitcoin P2P protocol, pool-mining protocols, the Stratum protocol, and any other related protocols connecting the components of the bitcoin system

Node Types and Roles
• functions: wallet, miner, full blockchain database, and network routing
• full nodes:complete copy of the block chain vs simplified payment verification(SPV): only maintain a subset of the blockchain

The Extended Bitcoin Network
⁃ main blockchain network has 5,000 and 8,000 listening nodes

Bitcoin Relay Networks
bitcoin P2P network : too high network latency for the specialized needs 

⁃ Bitcoin miners:  engaged in a time-sensitive competition -> time latency = profit margins
⁃ Bitcoin Relay Network : a network that attempts to minimize the latency in the transmission of blocks between miners(FIBRE, Falcon)

Network Discovery
 the bitcoin network topology is not geographically defined -> any nodes can be selected at random
⁃ to connect to a known peer -> TCP connection (port 8333)

Full Nodes
A full blockchain node can independently and authoritatively verify any transaction without recourse or reliance on any other node or source of information
⁃ independent verification of all transactions without the need to rely on, or trust, any other systems

Exchanging “Inventory”
The first thing a full node will do once it connects to peers is try to construct a com‐ plete blockchain. 

⁃ starts with version message : contains BestHeight
⁃ identify the first 500 blocks to share and transmit their hashes using an inv (inventory) message

Simplified Payment Verification (SPV) Nodes
simplified payment verification (SPV) method is used to allow the nodes that can’t store full blocks
⁃ download only the block headers and do not download the transactions included in each block
⁃ The resulting chain of blocks, without transactions, is 1,000 times smaller than the full blockchain
⁃ verifies transactions by reference to their depth in the blockchain instead of their height
⁃ An SPV node cannot validate whether the UTXO is unspent. Instead,it.  establishes a link between the transaction and the block that contains it, using a merkle path -> 6 blocks
⁃ Unlike full blockchain nodes, which collect all transactions within each block, the SPV node’s requests for specific data can inadver‐ tently reveal the addresses in their wallet

Bloom Filters
probabilistic search filter, a way to describe a desired pattern without specifying it exactly
⁃ Bloom filters serve this function by allowing an SPV node to specify a search pattern for transactions that can be tuned toward precision or privacy

How Bloom Filters Work
Bloom filters are implemented as a variable-size array of N binary digits (a bit field) and a variable number of M hash functions

Encrypted and Authenticated Connections
ways to increase the privacy and security of the bitcoin P2P network: Tor Transport and P2P Authentication and Encryption with BIP-150/151

Tor Transport
Tor: The Onion Routing network, is a software project and network that offers encryption and encapsulation of data through randomized network paths that offer anonymity, untraceability and privacy

Peer-to-Peer Authentication and Encryption
define optional services that may be offered by compatible bitcoin nodes

Transaction Pools
Almost every node on the bitcoin network maintains a temporary list of unconfirmed transactions called the memory pool, mempool, or transaction pool
⁃  keep track of transactions that are known to the network but are not yet included in the blockchain

'블록체인 > Mastering Bitcoin' 카테고리의 다른 글

9.The Blockchain  (0) 2020.11.05
Comments