Bitcoin is working on some of sort of code. Now it is p2p network as well. When I am accessing network as a full node, I have to download the whole ledger first and then I can proceed.

Where does the code comes in picture? Do I download bitcoin core code as well with the ledger? Since, there is no centralized server, this code has to be working on all nodes.

Also, Can I access the network if I have made some changes to the code. Say, I have changed the value of the BTC rewarded for mining, and then accessing the network, to get increased reward.


there might be too many questions in one post, which makes answering difficult. Next time try to raise separate questions please.

1.) yes, bitcoin is working on an extremly well tested code. And yes, there is a p2p network to excahneg information about valid transactions and valid blocks.

2.) hmmm, yes. Full nodes load the whole history ("the Blockchain") with all transactions since inception. There are however nodes, that can use pruning. Then you only keep a set of last transactions in your node.

3.) Which code? Bitcoin exists of several 1000 lines of code.

4.) The bitcoin core wallet can be downloaded as source code, then you need to compile it, to get it running. Or you download the binary, which is directly executable. The software includes a wallet. And a fresh start will download the "ledger" ( we call it the blockchain).

5.) yes, since there is no centralized server, this code is working on all nodes.

6.) Yes, you can access the network after code changes. And yes, you can change block reward. It is just, that your local node might think, you have had a higher reward, but when you try to spend this at any point in time, it will be recognized as an invalid transaction by the other nodes.

I consider reading the book from A. Antonopoulus "Mastering Bitcoin". A lot of stuff get's much clearer, than just a few words here. It is available in many languages. The online link is here: http://chimera.labs.oreilly.com/books/1234000001802/

  • on your point 6. So when I broadcast my minted block with 100 btc mining reward, other nodes will not accept the block considering the reward as invalid, or it will cause problem only I try to spend my earned blocks ?? – Piyush Chittara Aug 14 '17 at 8:34
  • There is a rule that says: "Reject if coinbase value > sum of block creation fee and transaction fees" (en.bitcoin.it/wiki/Protocol_rules). I haven't tested, maybe meshcollider, andrew or @murch can confirm. – pebwindkraft Aug 15 '17 at 7:40
  • shouldn't it be rejected if coinbase>block creation fee only. If it is referring to what I think it is. – Piyush Chittara Aug 16 '17 at 5:31
  • 1
    If a block's coinbase transaction claims more money than the (currently 12.5 BTC) subsidy + fees from other transactions in a block, that block and every block built on top of it will be considered invalid, and treated as non-existing by full network nodes. – Pieter Wuille Aug 19 '17 at 18:13

A full node participates in the verification of new blocks, and can also send new blocks to the network. Following the network rules. This verification based on database that you download from network.

If your changes are reflected in these functions, in the sense that they give a different result, then you will not be perceived by the network as a full node.

As for the reward for the mining, as a full node you can select the transactions from the pool at your discretion, filtering by the commission you need. And if you mined the block with transactions wich you chose faster than the rest, the commission will be yours.

So there is no any technical limits for changing the bitcoin core code.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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