Hot answers tagged

7

Of course. Bitcoin nodes are just software that implements the Bitcoin P2P protocol. There are many software packages out there that do so (including full nodes, standalone wallets, indexing software, ...). There is no magic sauce that somehow blesses a particular piece of software into the realm of nodes - anything that speaks the protocol will do. ...


6

The reward schedule is a consensus rule in the Bitcoin network. Consensus rules are enforced by each full node independently. Node operators choose which consensus rules they enforce per the Bitcoin implementation they are running. If a subset of the nodes were to increase the block subsidy, this would be a hardfork: a non-forward compatible consensus rule ...


5

Neither nodes nor miners have unique ids at the protocol level, by design. Some miners however do voluntarily put messages in the blocks they produce, which allows identification (but, those could also easily be faked, if anyone was so inclined).


5

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 same peers getting a static IP address is a good idea. Your connection to existing peers will drop if your IP address changes and you will either reconnect to ...


4

Yes. Channels are associated with a node_id, which is just the public key of the node. The association of a node_id to an IP address (or Onion address) is dynamic and is broadcast over the P2P gossip network when your node connects to another. It only takes a few minutes after reconnection for your new IP to propagate through the entire network. However, you ...


4

Your points 1 & 2 are both correct. The good news is the only time those old blocks get requested is by new nodes that are still bootstrapping and downloading the blockchain for the first time. As long as those old blocks are available and accessible somewhere, those new nodes will sync up just fine. Another fact about pruned nodes is they are required ...


3

There is a risk that the blockchain will continue to grow too quickly and become unwieldy, yes. However, if technology improvements continue at their current pace for several decades, and Bitcoin survives the intermediate turmoil, it will eventually start to get easier to run a node again. "Chopping off some portion" significantly changes the ...


3

Banning peer to peer networks is very difficult in general. Assuming a node is starting for the first time, I believe it uses DNS seeds to find peers. If those DNS seeds are blocked, is it possible to prevent bitcoin node discovery ? This is possible but all you need in order to bypass it is one IP address of one peer and then you can connect to it ...


3

Debugging print options can be changed without a restart.


2

If I buy an ASIC miner and run it at home, do I become a Bitcoin node? Miners and full nodes are different. If you run full node, you add to the already running nodes. What is the difference between a miner and a full node? Is a miner running a full node? It says there are 9741 nodes. This pie chart shows more than 70k nodes: https://luke.dashjr.org/...


2

...could conceivably broadcast a ton of junk/illegitimate transactions to the network thereby consuming the necessary bandwidth and processing power for the network to deal with legitimate ones. If the transactions are invalid, then they would not be relayed by the network's nodes, making the attack somewhat ineffective. At best, the attacker could consume ...


2

A transaction itself doesn't have a storage structure for timestamp. So the transactions don't know when they're created. But, after bundling the transactions into a block and while solving the hash problem to solve the block, the miner inserts timestamp at the block level. So, even if in reality chronologically earlier transaction comes later, it will be ...


2

A list of reliable nodes is inherently a trusted list. Therefore a reasonably trustable place to get some node IPs would be by hitting the DNS seeds hardcoded in the reference client. The list is community-curated, contains multiple sources, and the seeds are themselves dynamically managed. This makes it more resistant to censorship than a single website ...


2

Somebody asked me about Bitcoin and I explained to him many many computers are connected to the Blockchain to keep records of all the accounts (or to keep addresses of the bitcoin and owner?). The blockchain is the data structure they collectively maintain. It is not an "entity" that can be connected to. The nodes are just connected to each other, ...


2

The IP-addesses of Bitcoin nodes are not a secret. See addr Nodes don't explicitly tell other nodes their Bitcoin addresses. Since nodes pass on details of other nodes transactions, working out which nodes originated a transaction isn't straightforward. Since the set of Bitcoin nodes is constantly changing, and nodes go offline temporarily (or permanently), ...


2

Miners offer up blocks to the network hoping that their offerings will be accepted. Other nodes may accept or reject such blocks. A node that accepts a block adds that block to their copy of the blockchain. Nodes that don't accept a particular block don't add it to their copy of the blockchain and don't pass on that block to anyone else. Any miner that is ...


2

If the nodes are running different versions then communication cannot continue. That is incorrect. If two nodes interact which have different versions, they just communicate using the lower of the two versions.


2

It depends on what you mean by decentralization. There is a technical meaning, and an intuitive one. I'll talk about the first one first. A decentralized system is one which by design functions and remains secure without the presence of a trusted central party (or parties). I can't tell you what part of Bitcoin makes it have this property - it just happens ...


1

'Decentralized' is not a binary distinction. There is no point at which suddenly something is decentralized, or not. For the bitcoin network to function there is some level of decentralization required though, as otherwise the guarantees of censorship resistance will become less strong. Bitcoin is defined from the bottom-up, not the top-down! Bitcoin full ...


1

There is no way for a block explorer to know which addresses belong to the same wallets, in fact no block explorer shows the balance of wallets but only by addresses. The only way to know which addresses are from the same wallet is having generated that wallet or having it's seed. Wallets are a client structure that collects all the addresses for which you ...


1

Running public nodes for others to consume the JSONRPC API is not something that is widespread in the Bitcoin community. For a number of reasons, but the main one is probably that it's very low effort to run your own (you can get away with 10G of disk space and a few days of bootstrap time on a mid-range laptop). That said, this website (hosted by @janoside) ...


1

TL;DR: No, you just need to run any p2p-participating bitcoin software. What's bitnodes? Bitnodes.io attempts to track all publicly reachable nodes in the Bitcoin network. They presumably achieve this by running "spy" nodes which aggressively connect to all nodes they know of and poll them for more peers. This process will generally only discover ...


1

Computers are not 'connected to the blockchain', as that implies that the blockchain is some sort of central entity in the network. In reality, the network is just made up of a huge number of peers, known as 'nodes'. A 'full node' is one which has fully verified the state of the network, by working to verify all transactions that have occurred since the ...


1

I think this another case where a literal interpretation of Bitcoin terminology can be misleading Mining The primary purpose of the process referred to as mining is not the creation (digging up?) of new Bitcoin money. The primary purpose of mining is the production of new blocks in the blockchain - the public transaction journal that is replicated throughout ...


1

No. When miners mine blocks, that is "processing transactions".


1

Attackers are financially disincentivized to do this. They have to produce enough transactions, frequently enough to fill up blocks and keep them full The transaction fee has to be large enough so they cause an actual clog instead of other users outbidding them with higher fees To keep the above two points going for any meaningful amount of time costs a ...


Only top voted, non community-wiki answers of a minimum length are eligible