Skip to content

Commit a43e956

Browse files
authored
Add StateRootEmptyTrie constant (#484)
1 parent 77d05d6 commit a43e956

File tree

7 files changed

+8
-7
lines changed

7 files changed

+8
-7
lines changed

src/FederationSetup/GenesisMiner.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public static Block MineGenesisBlock(SmartContractPoAConsensusFactory consensusF
101101
genesis.Header.HashPrevBlock = uint256.Zero;
102102
genesis.UpdateMerkleRoot();
103103

104-
((SmartContractPoABlockHeader)genesis.Header).HashStateRoot = new uint256("21B463E3B52F6201C0AD6C991BE0485B6EF8C092E64583FFA655CC1B171FE856"); // Set StateRoot to empty trie.
104+
((SmartContractPoABlockHeader)genesis.Header).HashStateRoot = SmartContractPoABlockDefinition.StateRootEmptyTrie;
105105

106106
// Iterate over the nonce until the proof-of-work is valid.
107107
// This will mean the block header hash is under the target.

src/Stratis.Bitcoin.Features.SmartContracts/PoW/SmartContractBlockDefinition.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ namespace Stratis.Bitcoin.Features.SmartContracts.PoW
2424
{
2525
public class SmartContractBlockDefinition : BlockDefinition
2626
{
27+
public static uint256 StateRootEmptyTrie = new uint256("21B463E3B52F6201C0AD6C991BE0485B6EF8C092E64583FFA655CC1B171FE856");
2728
private uint160 coinbaseAddress;
2829
private readonly ICoinView coinView;
2930
private readonly IContractExecutorFactory executorFactory;

src/Stratis.Sidechains.Networks/CirrusDev.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ private Block CreateGenesis(SmartContractPoAConsensusFactory consensusFactory, u
276276
genesis.Header.HashPrevBlock = uint256.Zero;
277277
genesis.UpdateMerkleRoot();
278278

279-
((SmartContractPoABlockHeader)genesis.Header).HashStateRoot = new uint256("21B463E3B52F6201C0AD6C991BE0485B6EF8C092E64583FFA655CC1B171FE856");
279+
((SmartContractPoABlockHeader)genesis.Header).HashStateRoot = SmartContractPoABlockDefinition.StateRootEmptyTrie;
280280

281281
return genesis;
282282
}

src/Stratis.Sidechains.Networks/CirrusNetwork.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public static Block CreateGenesis(SmartContractCollateralPoAConsensusFactory con
4949
genesis.Header.HashPrevBlock = uint256.Zero;
5050
genesis.UpdateMerkleRoot();
5151

52-
((SmartContractPoABlockHeader)genesis.Header).HashStateRoot = new uint256("21B463E3B52F6201C0AD6C991BE0485B6EF8C092E64583FFA655CC1B171FE856");
52+
((SmartContractPoABlockHeader)genesis.Header).HashStateRoot = SmartContractPoABlockDefinition.StateRootEmptyTrie;
5353

5454
return genesis;
5555
}

src/Stratis.SmartContracts.Networks/SmartContractNetworkUtils.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
using NBitcoin;
22
using NBitcoin.DataEncoders;
3-
using Stratis.Bitcoin.Features.SmartContracts;
3+
using Stratis.Bitcoin.Features.SmartContracts.PoW;
44

55
namespace Stratis.SmartContracts.Networks
66
{
@@ -46,7 +46,7 @@ public static NBitcoin.Block CreateGenesis(ConsensusFactory consensusFactory, ui
4646
genesis.Header.HashPrevBlock = uint256.Zero;
4747
genesis.UpdateMerkleRoot();
4848

49-
((ISmartContractBlockHeader)genesis.Header).HashStateRoot = new uint256("21B463E3B52F6201C0AD6C991BE0485B6EF8C092E64583FFA655CC1B171FE856");
49+
((ISmartContractBlockHeader)genesis.Header).HashStateRoot = SmartContractBlockDefinition.StateRootEmptyTrie;
5050

5151
return genesis;
5252
}

src/Stratis.SmartContracts.Networks/SmartContractsPoARegTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public SmartContractsPoARegTest()
3939
this.GenesisReward = Money.Zero;
4040

4141
NBitcoin.Block genesisBlock = CreatePoAGenesisBlock(consensusFactory, this.GenesisTime, this.GenesisNonce, this.GenesisBits, this.GenesisVersion, this.GenesisReward);
42-
((SmartContractPoABlockHeader)genesisBlock.Header).HashStateRoot = new uint256("21B463E3B52F6201C0AD6C991BE0485B6EF8C092E64583FFA655CC1B171FE856"); // Set StateRoot to empty trie.
42+
((SmartContractPoABlockHeader)genesisBlock.Header).HashStateRoot = SmartContractPoABlockDefinition.StateRootEmptyTrie;
4343

4444
this.Genesis = genesisBlock;
4545

src/Stratis.SmartContracts.Networks/SmartContractsRegTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public SmartContractsRegTest()
4040
var consensusFactory = new SmartContractPowConsensusFactory();
4141

4242
NBitcoin.Block genesisBlock = SmartContractNetworkUtils.CreateGenesis(consensusFactory, 1296688602, 2, 0x207fffff, 1, Money.Coins(50m));
43-
((ISmartContractBlockHeader)genesisBlock.Header).HashStateRoot = new uint256("21B463E3B52F6201C0AD6C991BE0485B6EF8C092E64583FFA655CC1B171FE856");
43+
((ISmartContractBlockHeader)genesisBlock.Header).HashStateRoot = SmartContractBlockDefinition.StateRootEmptyTrie;
4444

4545
this.Genesis = genesisBlock;
4646

0 commit comments

Comments
 (0)