mirror of
https://github.com/bitcoinbook/bitcoinbook
synced 2025-01-11 00:01:03 +00:00
CH10: update Full Node section
- Drop everything that says a full node needs a complete copy of the blockchain
This commit is contained in:
parent
cf750ecf4d
commit
7d2ba06209
@ -435,44 +435,33 @@ startref="BNextend08")))((("", startref="BNodiscover08")))
|
|||||||
|
|
||||||
=== Full Nodes
|
=== Full Nodes
|
||||||
|
|
||||||
((("Bitcoin network", "full nodes")))((("full-node
|
Full nodes are nodes that verify every transaction in every block on the
|
||||||
clients")))((("blockchain (the)", "full blockchain nodes")))Full nodes
|
valid block chain with the most proof of work.
|
||||||
are nodes that maintain a full blockchain with all transactions. More
|
|
||||||
accurately, they probably should be called "full blockchain nodes." In
|
|
||||||
the early years of Bitcoin, all nodes were full nodes and currently the
|
|
||||||
Bitcoin Core client is a full blockchain node. In the past two years,
|
|
||||||
however, new forms of Bitcoin clients have been introduced that do not
|
|
||||||
maintain a full blockchain but run as lightweight clients. We'll examine
|
|
||||||
these in more detail in the next section.
|
|
||||||
|
|
||||||
((("blocks", "genesis block")))((("genesis block")))((("blockchain
|
((("blocks", "genesis block")))((("genesis block")))((("blockchain
|
||||||
(the)", "genesis block")))Full blockchain nodes maintain a complete and
|
(the)", "genesis block")))Full nodes
|
||||||
up-to-date copy of the Bitcoin blockchain with all the transactions,
|
independently process every block, starting with the very first
|
||||||
which they independently build and verify, starting with the very first
|
|
||||||
block (genesis block) and building up to the latest known block in the
|
block (genesis block) and building up to the latest known block in the
|
||||||
network. A full blockchain node can independently and authoritatively
|
network. A full node can independently and authoritatively
|
||||||
verify any transaction without recourse or reliance on any other node or
|
verify any transaction without recourse or reliance on any other node or
|
||||||
source of information. The full blockchain node relies on the network to
|
source of information. The full node relies on the network to
|
||||||
receive updates about new blocks of transactions, which it then verifies
|
receive updates about new blocks of transactions, which it then verifies
|
||||||
and incorporates into its local copy of the blockchain.
|
and incorporates into its local view of which scripts control which
|
||||||
|
Bitcoins, called the set of _unspent transaction outputs_ (UTXOs).
|
||||||
|
|
||||||
((("Bitcoin nodes", "full nodes")))Running a full blockchain node gives
|
((("Bitcoin nodes", "full nodes")))Running a full node gives
|
||||||
you the pure Bitcoin experience: independent verification of all
|
you the pure Bitcoin experience: independent verification of all
|
||||||
transactions without the need to rely on, or trust, any other systems.
|
transactions without the need to rely on, or trust, any other systems.
|
||||||
It's easy to tell if you're running a full node because it requires more
|
|
||||||
than one hundred gigabytes of persistent storage (disk space) to store
|
|
||||||
the full blockchain. If you need a lot of disk and it takes two to three
|
|
||||||
days to sync to the network, you are running a full node. That is the
|
|
||||||
price of complete independence and freedom from central authority.
|
|
||||||
|
|
||||||
((("Satoshi client")))There are a few alternative implementations of
|
((("Satoshi client")))There are a few alternative implementations of
|
||||||
full blockchain Bitcoin clients, built using different programming
|
full nodes, built using different programming
|
||||||
languages and software architectures. However, the most common
|
languages and software architectures, or which made different design
|
||||||
implementation is the reference client Bitcoin Core, also known as the
|
decisions. However, the most common
|
||||||
Satoshi client. More than 75% of the nodes on the Bitcoin network run
|
implementation is Bitcoin Core.
|
||||||
|
More than 95% of full nodes on the Bitcoin network run
|
||||||
various versions of Bitcoin Core. It is identified as "Satoshi" in the
|
various versions of Bitcoin Core. It is identified as "Satoshi" in the
|
||||||
sub-version string sent in the +version+ message and shown by the
|
sub-version string sent in the +version+ message and shown by the
|
||||||
command +getpeerinfo+ as we saw earlier; for example, +/Satoshi:0.8.6/+.
|
command +getpeerinfo+ as we saw earlier; for example, +/Satoshi:24.0.1/+.
|
||||||
|
|
||||||
=== Exchanging "Inventory"
|
=== Exchanging "Inventory"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user