Skip to content

Commit e420485

Browse files
authored
Add genesis block hash as network param (#223)
* Add genesis block hash as network param * Remove hardcoded genesis block hashes
1 parent 786a89e commit e420485

3 files changed

Lines changed: 39 additions & 35 deletions

File tree

network/network.go

Lines changed: 35 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -21,47 +21,51 @@ type Network struct {
2121
// Confidential prefix
2222
Confidential byte
2323
// Bitcoin Asset Hash for the current network
24-
AssetID string
24+
AssetID string
25+
GenesisBlockHash string
2526
}
2627

2728
// Liquid defines the network parameters for the main Liquid network.
2829
var Liquid = Network{
29-
Name: "liquid",
30-
Bech32: "ex",
31-
Blech32: "lq",
32-
HDPublicKey: [4]byte{0x04, 0x88, 0xb2, 0x1e},
33-
HDPrivateKey: [4]byte{0x04, 0x88, 0xad, 0xe4},
34-
PubKeyHash: 57,
35-
ScriptHash: 39,
36-
Wif: 0x80,
37-
Confidential: 12,
38-
AssetID: "6f0279e9ed041c3d710a9f57d0c02928416460c4b722ae3457a11eec381c526d",
30+
Name: "liquid",
31+
Bech32: "ex",
32+
Blech32: "lq",
33+
HDPublicKey: [4]byte{0x04, 0x88, 0xb2, 0x1e},
34+
HDPrivateKey: [4]byte{0x04, 0x88, 0xad, 0xe4},
35+
PubKeyHash: 57,
36+
ScriptHash: 39,
37+
Wif: 0x80,
38+
Confidential: 12,
39+
AssetID: "6f0279e9ed041c3d710a9f57d0c02928416460c4b722ae3457a11eec381c526d",
40+
GenesisBlockHash: "1466275836220db2944ca059a3a10ef6fd2ea684b0688d2c379296888a206003",
3941
}
4042

4143
// Regtest defines the network parameters for the regression regtest network.
4244
var Regtest = Network{
43-
Name: "regtest",
44-
Bech32: "ert",
45-
Blech32: "el",
46-
HDPublicKey: [4]byte{0x04, 0x35, 0x87, 0xcf},
47-
HDPrivateKey: [4]byte{0x04, 0x35, 0x83, 0x94},
48-
PubKeyHash: 235,
49-
ScriptHash: 75,
50-
Wif: 0xef,
51-
Confidential: 4,
52-
AssetID: "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
45+
Name: "regtest",
46+
Bech32: "ert",
47+
Blech32: "el",
48+
HDPublicKey: [4]byte{0x04, 0x35, 0x87, 0xcf},
49+
HDPrivateKey: [4]byte{0x04, 0x35, 0x83, 0x94},
50+
PubKeyHash: 235,
51+
ScriptHash: 75,
52+
Wif: 0xef,
53+
Confidential: 4,
54+
AssetID: "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
55+
GenesisBlockHash: "00902a6b70c2ca83b5d9c815d96a0e2f4202179316970d14ea1847dae5b1ca21",
5356
}
5457

5558
// Testnet defines the network parameters for the regression testnet network.
5659
var Testnet = Network{
57-
Name: "testnet",
58-
Bech32: "tex",
59-
Blech32: "tlq",
60-
HDPublicKey: [4]byte{0x04, 0x35, 0x87, 0xcf},
61-
HDPrivateKey: [4]byte{0x04, 0x35, 0x83, 0x94},
62-
PubKeyHash: 36,
63-
ScriptHash: 19,
64-
Wif: 0xef,
65-
Confidential: 23,
66-
AssetID: "144c654344aa716d6f3abcc1ca90e5641e4e2a7f633bc09fe3baf64585819a49",
60+
Name: "testnet",
61+
Bech32: "tex",
62+
Blech32: "tlq",
63+
HDPublicKey: [4]byte{0x04, 0x35, 0x87, 0xcf},
64+
HDPrivateKey: [4]byte{0x04, 0x35, 0x83, 0x94},
65+
PubKeyHash: 36,
66+
ScriptHash: 19,
67+
Wif: 0xef,
68+
Confidential: 23,
69+
AssetID: "144c654344aa716d6f3abcc1ca90e5641e4e2a7f633bc09fe3baf64585819a49",
70+
GenesisBlockHash: "a771da8e52ee6ad581ed1e9a99825e5b3b7992225534eaa2ae23244fe26ab1c1",
6771
}

psetv2/pset_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1438,7 +1438,7 @@ func TestBroadcastBlindedTaprootKeyTx(t *testing.T) {
14381438

14391439
tweakedPrivKey := taproot.TweakTaprootPrivKey(privkey, []byte{})
14401440

1441-
genesisBlockhash, _ := chainhash.NewHashFromStr("00902a6b70c2ca83b5d9c815d96a0e2f4202179316970d14ea1847dae5b1ca21")
1441+
genesisBlockhash, _ := chainhash.NewHashFromStr(network.Regtest.GenesisBlockHash)
14421442
unsignedTx, err := ptx.UnsignedTx()
14431443
require.NoError(t, err)
14441444

@@ -1587,7 +1587,7 @@ func TestBroadcastBlindedTaprootTapscriptTx(t *testing.T) {
15871587
})
15881588
require.NoError(t, err)
15891589

1590-
genesisBlockhash, _ := chainhash.NewHashFromStr("00902a6b70c2ca83b5d9c815d96a0e2f4202179316970d14ea1847dae5b1ca21")
1590+
genesisBlockhash, _ := chainhash.NewHashFromStr(network.Regtest.GenesisBlockHash)
15911591
unsignedTx, err := ptx.UnsignedTx()
15921592
require.NoError(t, err)
15931593

taproot/taproot_e2e_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ func TestKeyPathSpend(t *testing.T) {
134134
unsignedTx := p.UnsignedTx
135135
// Sign step
136136

137-
genesisBlockhash, _ := chainhash.NewHashFromStr("00902a6b70c2ca83b5d9c815d96a0e2f4202179316970d14ea1847dae5b1ca21")
137+
genesisBlockhash, _ := chainhash.NewHashFromStr(network.Regtest.GenesisBlockHash)
138138

139139
sighash := unsignedTx.HashForWitnessV1(
140140
0,
@@ -286,7 +286,7 @@ func TestTapscriptSpend(t *testing.T) {
286286
unsignedTx := p.UnsignedTx
287287

288288
// Sign step
289-
genesisBlockhash, _ := chainhash.NewHashFromStr("00902a6b70c2ca83b5d9c815d96a0e2f4202179316970d14ea1847dae5b1ca21")
289+
genesisBlockhash, _ := chainhash.NewHashFromStr(network.Regtest.GenesisBlockHash)
290290

291291
leafProof := tree.LeafMerkleProofs[0]
292292
leafHash := leafProof.TapHash()

0 commit comments

Comments
 (0)