35
votes
Accepted
How can I setup Bitcoin to be anonymous with Tor?
This is not a thorough schooling on Tor and only shows how to configure it to work together with Bitcoin Core.
Bitcoin Core includes Tor integration
When Tor is correctly setup on your system, Bitcoin ...
29
votes
Accepted
How are bitcoin transactions and the blockchain transferred over the internet?
The Bitcoin P2P network
The Bitcoin P2P network is a randomly-wired gossip network. This means that all nodes make arbitrary connections to other peers (using various ways to discover new addresses) ...
26
votes
Accepted
Can someone please explain FIBRE to me like I'm 5 and why is it useful?
First the "why it matters":
Fibre (Fast Internet Bitcoin Relay Engine) is a protocol which attempts to deliver Bitcoin blocks around the world with delays as close to the physical limits as ...
16
votes
Accepted
Bitcoin protocol and Wireshark
Someone wrote a Bitcoin protocol decoder for Wireshark, several years ago. I assume it was included in the Wireshark distribution.
Wireshark simply knows about the Bitcoin protocol. There is no magic ...
12
votes
Accepted
Are there any Bitcoin wallets with native I2P integration?
C++ may be viewed by some as more suitable for Bitcoin use than Java which I2P currently heavily relies upon
https://github.com/monero-project/kovri
Kovri:
To cover, veil, wrap (Esperanto).
A ...
11
votes
What is a Feeler Connection? When is it used?
A feeler connection is a short-lived outbound connection that only starts up after your node has established the required 8 outbound connections and 2 block-relay-only outbound connections. The ...
11
votes
Accepted
Why is each transaction broadcast twice in the Bitcoin network?
I assume Satoshi here refers to the broadcast of the standalone transaction to the network as the first one, and the broadcast of a valid block containing the transaction as the second one.
Compact ...
10
votes
Accepted
Why is connecting bitcoin exclusively over Tor considered bad practice?
There is a good summary of this problem on the BIP324 website:
Proxy networks like Tor or I2P introduce a separate address space,
independent from network topology, with a very low cost per address
...
10
votes
Why is connecting bitcoin exclusively over Tor considered bad practice?
Connecting to the bitcoin network over TOR to make transactions as an user is a good practice (this is important to mention in case casual users misunderstand your question).
Running a full bitcoin ...
9
votes
Accepted
Improvements that could be made to how bitcoin propagates its transactions and blocks?
The answer partially depends on on what you mean by "how bitcoin propagates" and "improvements"-- Fibre transmits blocks vanishingly close to the lowest latency possible, but at the expense of using ...
9
votes
Accepted
How are transactions propagated through the bitcoin network? (In-depth)
I read briefly in a paper that there is some sort of transaction queue that the node keeps for each neighbor and that they will only select a random (?) amount of those transactions and send in an INV ...
8
votes
Accepted
How many peers do you need to securely synchronize with the blockchain?
One! Your full node will check every transaction and every block for validity while synchronizing. You therefore can be sure that whatever blockchain data your node accepts follows all rules of ...
8
votes
Accepted
What is the difference between blocksonly and block-relay-only in Bitcoin Core?
While both of these disable transaction relay, they are conceptually used for different purposes:
Block-relay-only connections (see this post for more details) are hard-to-detect connections with the ...
8
votes
Accepted
Raw data vs information encoded in OP_RETURNs
The current Bitcoin P2P protocol has no concept of compression, though there have been some proposals to incorporate it. The transaction data is sent as-is.
Some earlier discussion:
https://lists....
7
votes
Accepted
If bitcoin is decentralized then who keeps track of computers in network
Nobody keeps track of all the computers in the network, or at least not as part of core network functionality. There are sites that attempt to track nodes (such as https://bitnodes.21.co/), but they ...
7
votes
Accepted
How do network nodes "connect" - amateur level
I have no idea what a "network" really is. I googled and read about LAN/WAN. Are these the types of network we're talking about?
No. A network is really just "a group of connected ...
7
votes
What is a block-relay-only connection? What is it used for?
Block relay connections were added to bitcoin core in v0.19.0.1 in November 2019. Their purpose is to harden the peer-to-peer network against partition attacks. They do this through a clever ...
7
votes
Accepted
How does bitcoin prevent DDoS amplification via the `addr` p2p message type?
For a long time, there was a restriction to strongly prefer connecting to addresses with port 8333. This restriction was recently removed in PR 23542 and PR 23306, although a list of "bad ports&...
6
votes
Accepted
What is the benefit of opening port 8333 to a client?
If you don't want to, you don't have to open ports at all. You'll still have a full node, it will just have fewer connections. Full nodes usually make 8 outgoing connections and can have many more ...
6
votes
How to confirm how many peers a node has?
When a node requests one of it's neighbours for a list of it's peers, that node responds with a list of all of it's neighbours.
No it doesn't. It responds with list of nodes that its aware of being ...
6
votes
Accepted
What is the oldest Bitcoin Core Client that can in theory sync to the chain tip?
The oldest version that can sync is 0.8.6. This is the version that first used LevelDB instead of BDB. Both the IRC node discovery and the protocol message changes occurred several versions prior.
6
votes
Accepted
To run a full node, should I get a static IP address from my ISP?
To run a Bitcoin full node you don't need to have a static IP address as when your IP address changes you should still be able to find peers and connect to them. However, if you want to maintain the ...
6
votes
Can "Block" Message send multiple blocks?
It sends exactly one block. If you want to send multiple blocks, you need multiple messages.
6
votes
Accepted
How is network conflict avoided between chains?
The protocol messages on Bitcoin include a magic number to identify the network they belong to.
Bitcoin's magic values are described for example on the Protocol Documentation page in the Bitcoin wiki:
...
6
votes
Accepted
What is the maximum, realistic P2P message payload size?
Since Bitcoin Core pull request 5843, incoming messages larger than MAX_PROTOCOL_MESSAGE_LENGTH are rejected. This constant was initially set to 2 MiB, but later (as part of the segwit changes) ...
6
votes
Accepted
What can an attacker do if they compromise a DNS seeder?
DNS seeders exist in order to bootstrap new nodes to the network. Nodes maintain a database of IP addresses for other nodes that they can connect to which they build by requesting IP addresses of ...
6
votes
Accepted
If my node is connected to 7 nodes and 4 of those say that a block they transmitted to me is valid will i mark it as valid?
No, every node validates transactions and blocks independently according to a shared ruleset. It doesn't matter if someone creates a hundred nodes to connect to you and send you invalid transactions ...
6
votes
Accepted
Theoretical attack on the network by companies
If the vast majority of the network including users, economic majority, miners, and some subset of the developers were to hardfork a blocksize increase, this would result in effectively two networks. ...
5
votes
Accepted
Is it possible to use bitcoin core on Mac OS Sierra saving the data on the network drive?
Core (more specific levelDB, the database library used) does not support network drives.
Also, the UTXO access (chainstate) must be as fast as possible and should run on an internal drive, ideally an ...
5
votes
Accepted
How do hard forks avoid peering with each other?
Ports
One way that forks can deliberately separate themselves is by using a different TCP port number for network communications.
Currency
Port
Bitcoin
8333
Litecoin
9333
Handshake
When two ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
network × 481bitcoin-core × 61
nodes × 47
blockchain × 45
bitcoind × 38
protocol × 37
peers × 36
transactions × 35
p2p × 32
client × 29
wallet × 24
full-node × 24
connection × 21
security × 19
synchronization × 19
peer-discovery × 19
tor × 17
relay × 17
mining-theory × 14
attack × 13
lightning-network × 12
block × 11
json-rpc × 10
privacy × 9
blockchain-fork × 8