I keep hearing that bitcoin is decentralized i.e. no single entity owns it. And each computer which is part of bitcoin network keeps the copy of ledger.

My question is who keeps track of all computers in bitcoin network? For e.g. if a transaction happens, who sends (or broadcasts it) to network so all can keep a copy of it?

Doesn't it make it centralized?

  • The transaction does not even "happen" until it has been calculated (verified) by the network. – mathreadler Aug 5 '17 at 8:18

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 are not needed in order for Bitcoin to function, and are not utilized by nodes. Each node only knows about the nodes it is connected to.

Therefore, to broadcast a transaction, a node simply sends it to the nodes to which it is currently connected. Those nodes, in turn, relay the transaction to all their connections who all do likewise. This means a transaction can reasonably be seen by all nodes in a very short amount of time (a few seconds or less).

For information on how nodes find other nodes to connect to in the first place, there's already some great answers here:

How do Bitcoin clients find each other?

  • You may wish to add the additional information that it doesn't matter if the nodes/computers are kept track of because as soon as a blockchain appears, it proves via its own content that it is valid (at least, in comparison to blockchain data received from other sources), and that if there is a conflict in blockchains, then the older chain or the one showing more work is kept and the other is discarded. Thus, it doesn't matter if anyone knows which nodes are out there or what work they have done as the proof of work is directly in the blockchain itself. – ErikE Aug 4 '17 at 22:37
  • Here is a very informative video about how they work: youtube.com/watch?v=bBC-nXj3Ng4 – Ajay Aug 5 '17 at 1:10

Answer to your questions:

No one keeps track of all computers in bitcoin network.

If a transaction happens, the sender of that transaction broadcasts the transaction to the network.

And there is a chance that, the transaction will be included in the blocks (ledger) mined by the miners (everyone keeps the same copy.

A good starting point for you will be these:

How Bitcoin Works in 5 Minutes (Technical)

What is Bitcoin - A simple explanation for beginners

What is Bitcoin simplified

  • Not a bad answer, but it would be better if your links indicated what they were, rather than just names like "Link 1". – Jestin Aug 4 '17 at 18:55

The transaction should not be considered to have happened until it has been calculated (verified) by the network. There is no need to keep track of the computers. Anyone can claim to make a transaction. That is why any claim to make a transaction needs to be verified by other nodes!

  • Explain the downvote, please. – mathreadler Aug 5 '17 at 8:36
  • 1
    You're not answering the question. OP isn't asking about verifying or trusting transactions, but about how the network keeps track of nodes. – Pieter Wuille Aug 5 '17 at 10:44
  • @PieterWuille: That is because the question is based on a misconception that needs to be addressed for any learning to take place in OP. – mathreadler Aug 5 '17 at 10:49
  • 1
    It is a misconception, but I don't think this answer makes it clearer. If the OP doesn't understand how transactions are confirmed, then telling them that transactions are verified somehow doesn't clarify anything to them. – Nick ODell Aug 5 '17 at 16:51
  • It is a first stepping stone to understanding. If we deny them that how are they ever gonna learn. – mathreadler Aug 5 '17 at 20:52

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.