<p>You're supposed to run a 2nd daemon and let that one connect to the first one</p>

CC BY-SA 3.0
2014-12-29T09:40:22.803Z
2014-12-29T21:43:54.447Z
2014-12-29T21:43:54.447Z
Ruben de Vries
<p>2014 methods no longer work.
2017 Bitcoin / Litecoin codebase update
<a href="http://practicecoin.com/index.php/2017/04/19/genesis-block/" rel="nofollow noreferrer">http://practicecoin.com/index.php/2017/04/19/genesis-block/</a></p>
<blockquote>
<p>Every cryptocurrency derived from Bitcoin has a Genesis Block, the very first block in the blockchain, whose creation is hard-coded into the full node code. In order to prove that it’s authentic, the usual rules about hashing the Merkle root and the Consensus information apply. So, one has to come up with some seriously magic numbers to put in the code.</p>
<p>The established technique, documented in all the coin cloning guides, involves setting the values to zero for the very first run, getting an error message and using the values displayed in the log file to fill into the source code. However, the section in the Bitcoin code that computes the required hashes for debug printing has been removed from the codebase prior to 0.9 release, around the very end of 2013. The story goes that it makes the chain more secure for miners, but I suspect the usual obfuscation by the developers.</p>
<p>The coins that have already been cloned prior to 2014, like Litecoin, and have running blockchains with the Genesis Block in place are not affected by this change. Neither are the more recent projects that are willing to work with a dated codebase. However, we have an ambitious goal of using the latest Litecoin code, due to all the security and performance improvements they merged in from Bitcoin, plus support for Segwit. So, we have a challenge of developing a method to compute the values on our own.</p>
<p>We could search for the original code or use an example of one, but it may well have to be ported over and debugged. There are several OSS standalone Genesis Block hashing programs in C, Go, and Python, that we’ll evaluate further.</p>
</blockquote>

CC BY-SA 3.0
2017-04-20T21:26:17.460Z
2017-04-22T02:07:03.980Z
2020-06-16T11:10:03.350Z
Tearo Dactyl
<p>have you set the testnet = 1 in the config file? You should first see if you are able to mine the genesis block on the testnet and then check on the real network. </p>

<p>You need to set the nonce in multiple places and same with the merkle root.</p>

CC BY-SA 3.0
2014-07-05T22:39:26.347Z
2014-07-05T22:39:26.347Z
Marat Arguinbaev
<p>The default implementation won't let you mine if you're not connected to any peers (except for on the Regression Test network) because any blocks you mine wouldn't be able to be distributed. Check out miner.cpp::BitcoinMiner() (<a href="https://github.com/bitcoin/bitcoin/blob/v0.9.3/src/miner.cpp#L512-L517" rel="nofollow">https://github.com/bitcoin/bitcoin/blob/v0.9.3/src/miner.cpp#L512-L517</a>). </p>

<p>You may want to create your own artificial mining method, like <code>MineGenesisBlock()</code>, within chainparams.cpp, and run it in the initialization of each set of parameters. That way you won't have to turn mining on ('setgenerate true') to mine the genesis block. </p>

CC BY-SA 3.0
2014-12-29T16:20:03.470Z
2014-12-29T16:20:03.470Z
morsecoder
<p>Im trying to make a test altcoin and I created the genesis block, merkle root and nonce. When I compile and run the daemon, The coin is trying to connect other IPs for hours so I can't mine the genesis block. I've changed P2P and RPC port.</p>

<p>Why is this happening ?</p>

CC BY-SA 3.0
2014-10-09T12:36:27.843Z
How many nodes are on your alt coin's network ?
dbkeys
<altcoin><genesis-block>
Before Mining Genesis Block
ZG-RG
# Before Mining Genesis Block

(Asked by: username_0 on 2014-02-02)

Im trying to make a test altcoin and I created the genesis block, merkle root and nonce. When I compile and run the daemon, The coin is trying to connect other IPs for hours so I can't mine the genesis block. I've changed P2P and RPC port.

Why is this happening ?

**Tags:** altcoin, genesis-block

> **Comments:**
> **username_1**: How many nodes are on your alt coin's network ?  

---

## 4 answers

### Answer by username_2 on 2014-12-29. Score: 4

You're supposed to run a 2nd daemon and let that one connect to the first one


---

### Answer by username_3 on 2017-04-20. Score: 2

2014 methods no longer work.
2017 Bitcoin / Litecoin codebase update
<http://practicecoin.com/index.php/2017/04/19/genesis-block/>

> Every cryptocurrency derived from Bitcoin has a Genesis Block, the very first block in the blockchain, whose creation is hard-coded into the full node code. In order to prove that it’s authentic, the usual rules about hashing the Merkle root and the Consensus information apply. So, one has to come up with some seriously magic numbers to put in the code.
>
> The established technique, documented in all the coin cloning guides, involves setting the values to zero for the very first run, getting an error message and using the values displayed in the log file to fill into the source code. However, the section in the Bitcoin code that computes the required hashes for debug printing has been removed from the codebase prior to 0.9 release, around the very end of 2013. The story goes that it makes the chain more secure for miners, but I suspect the usual obfuscation by the developers.
>
> The coins that have already been cloned prior to 2014, like Litecoin, and have running blockchains with the Genesis Block in place are not affected by this change. Neither are the more recent projects that are willing to work with a dated codebase. However, we have an ambitious goal of using the latest Litecoin code, due to all the security and performance improvements they merged in from Bitcoin, plus support for Segwit. So, we have a challenge of developing a method to compute the values on our own.
>
> We could search for the original code or use an example of one, but it may well have to be ported over and debugged. There are several OSS standalone Genesis Block hashing programs in C, Go, and Python, that we’ll evaluate further.


---

### Answer by username_4 on 2014-07-05. Score: 1

have you set the testnet = 1 in the config file? You should first see if you are able to mine the genesis block on the testnet and then check on the real network.

You need to set the nonce in multiple places and same with the merkle root.


---

### Answer by username_5 on 2014-12-29. Score: 1

The default implementation won't let you mine if you're not connected to any peers (except for on the Regression Test network) because any blocks you mine wouldn't be able to be distributed. Check out miner.cpp::BitcoinMiner() (<https://github.com/bitcoin/bitcoin/blob/v0.9.3/src/miner.cpp#L512-L517>).

You may want to create your own artificial mining method, like `MineGenesisBlock()`, within chainparams.cpp, and run it in the initialization of each set of parameters. That way you won't have to turn mining on ('setgenerate true') to mine the genesis block.


---

