Skip to content

Commit 42cbd55

Browse files
committed
Replace go-bip32 library
1 parent bfd04ac commit 42cbd55

9 files changed

Lines changed: 154 additions & 69 deletions

File tree

crypto/signer.go

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ import (
99
"strconv"
1010
"strings"
1111

12-
"github.com/tyler-smith/go-bip32"
12+
"github.com/btcsuite/btcd/btcutil/hdkeychain"
13+
"github.com/btcsuite/btcd/chaincfg"
1314
)
1415

1516
func GeneratePreimageNonce() ([]byte, error) {
@@ -21,8 +22,8 @@ func GeneratePreimageNonce() ([]byte, error) {
2122
return nonce, nil
2223
}
2324

24-
func DeriveXpriv(seed []byte, path string) (*bip32.Key, error) {
25-
masterKey, err := bip32.NewMasterKey(seed)
25+
func DeriveXpriv(seed []byte, path string) (*hdkeychain.ExtendedKey, error) {
26+
masterKey, err := hdkeychain.NewMaster(seed, &chaincfg.MainNetParams)
2627
if err != nil {
2728
return nil, err
2829
}
@@ -54,7 +55,7 @@ func DeriveXpriv(seed []byte, path string) (*bip32.Key, error) {
5455
return nil, fmt.Errorf("invalid path: %s", path)
5556
}
5657

57-
currentKey, err = currentKey.NewChildKey(uint32(childIndex) + baseIndex)
58+
currentKey, err = currentKey.Derive(uint32(childIndex) + baseIndex)
5859
if err != nil {
5960
return nil, err
6061
}
@@ -69,7 +70,12 @@ func DerivePreimageBaseKey(seed []byte) ([]byte, error) {
6970
return nil, err
7071
}
7172

72-
return xpriv.Key, nil
73+
privKey, err := xpriv.ECPrivKey()
74+
if err != nil {
75+
return nil, err
76+
}
77+
78+
return privKey.Serialize(), nil
7379
}
7480

7581
func GeneratePreimageAndPaymentHash(key []byte, nonce []byte) ([]byte, []byte, error) {

examples/lnurl-server/go.mod

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,13 @@ require (
1111

1212
require (
1313
github.com/DataDog/zstd v1.5.5 // indirect
14-
github.com/FactomProject/basen v0.0.0-20150613233007-fe3947df716e // indirect
15-
github.com/FactomProject/btcutilecc v0.0.0-20130527213604-d3a63a5752ec // indirect
14+
github.com/btcsuite/btcd v0.24.0 // indirect
15+
github.com/btcsuite/btcd/btcec/v2 v2.2.0 // indirect
16+
github.com/btcsuite/btcd/btcutil v1.1.5 // indirect
17+
github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 // indirect
1618
github.com/bytedance/sonic v1.9.1 // indirect
1719
github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311 // indirect
20+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0 // indirect
1821
github.com/gabriel-vasile/mimetype v1.4.2 // indirect
1922
github.com/gin-contrib/sse v0.1.0 // indirect
2023
github.com/go-playground/locales v0.14.1 // indirect
@@ -32,7 +35,6 @@ require (
3235
github.com/pelletier/go-toml/v2 v2.0.8 // indirect
3336
github.com/rogpeppe/go-internal v1.11.0 // indirect
3437
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
35-
github.com/tyler-smith/go-bip32 v1.0.0 // indirect
3638
github.com/ugorji/go/codec v1.2.11 // indirect
3739
golang.org/x/arch v0.3.0 // indirect
3840
golang.org/x/crypto v0.23.0 // indirect

examples/lnurl-server/go.sum

Lines changed: 97 additions & 13 deletions
Large diffs are not rendered by default.

examples/remote-signing-server/go.mod

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@ require (
1111

1212
require (
1313
github.com/DataDog/zstd v1.5.5 // indirect
14-
github.com/FactomProject/basen v0.0.0-20150613233007-fe3947df716e // indirect
15-
github.com/FactomProject/btcutilecc v0.0.0-20130527213604-d3a63a5752ec // indirect
1614
github.com/btcsuite/btcd v0.24.0 // indirect
1715
github.com/btcsuite/btcd/btcec/v2 v2.2.0 // indirect
1816
github.com/btcsuite/btcd/btcutil v1.1.5 // indirect
@@ -40,7 +38,6 @@ require (
4038
github.com/pelletier/go-toml/v2 v2.0.8 // indirect
4139
github.com/rogpeppe/go-internal v1.11.0 // indirect
4240
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
43-
github.com/tyler-smith/go-bip32 v1.0.0 // indirect
4441
github.com/ugorji/go/codec v1.2.11 // indirect
4542
golang.org/x/arch v0.3.0 // indirect
4643
golang.org/x/crypto v0.23.0 // indirect

examples/remote-signing-server/go.sum

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
github.com/DataDog/zstd v1.5.5 h1:oWf5W7GtOLgp6bciQYDmhHHjdhYkALu6S/5Ni9ZgSvQ=
22
github.com/DataDog/zstd v1.5.5/go.mod h1:g4AWEaM3yOg3HYfnJ3YIawPnVdXJh9QME85blwSAmyw=
3-
github.com/FactomProject/basen v0.0.0-20150613233007-fe3947df716e h1:ahyvB3q25YnZWly5Gq1ekg6jcmWaGj/vG/MhF4aisoc=
4-
github.com/FactomProject/basen v0.0.0-20150613233007-fe3947df716e/go.mod h1:kGUqhHd//musdITWjFvNTHn90WG9bMLBEPQZ17Cmlpw=
5-
github.com/FactomProject/btcutilecc v0.0.0-20130527213604-d3a63a5752ec h1:1Qb69mGp/UtRPn422BH4/Y4Q3SLUrD9KHuDkm8iodFc=
6-
github.com/FactomProject/btcutilecc v0.0.0-20130527213604-d3a63a5752ec/go.mod h1:CD8UlnlLDiqb36L110uqiP2iSflVjx9g/3U9hCI4q2U=
73
github.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII=
84
github.com/btcsuite/btcd v0.20.1-beta/go.mod h1:wVuoA8VJLEcwgqHBwHmzLRazpKxTv13Px/pDuV7OomQ=
95
github.com/btcsuite/btcd v0.22.0-beta.0.20220111032746-97732e52810c/go.mod h1:tjmYdS6MLJ5/s0Fj4DbLgSbDHbEqLJrtnHecBFkdz5M=
@@ -40,8 +36,6 @@ github.com/bytedance/sonic v1.9.1/go.mod h1:i736AoUSYt75HyZLoJW9ERYxcy6eaN6h4BZX
4036
github.com/chenzhuoyu/base64x v0.0.0-20211019084208-fb5309c8db06/go.mod h1:DH46F32mSOjUmXrMHnKwZdA8wcEefY7UVqBKYGjpdQY=
4137
github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311 h1:qSGYFH7+jGhDF8vLC+iwCD4WpbV1EBDSzWkJODFLams=
4238
github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311/go.mod h1:b583jCggY9gE99b6G5LEC39OIiVsWj+R97kbl5odCEk=
43-
github.com/cmars/basen v0.0.0-20150613233007-fe3947df716e h1:0XBUw73chJ1VYSsfvcPvVT7auykAJce9FpRr10L6Qhw=
44-
github.com/cmars/basen v0.0.0-20150613233007-fe3947df716e/go.mod h1:P13beTBKr5Q18lJe1rIoLUqjM+CB1zYrRg44ZqGuQSA=
4539
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
4640
github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
4741
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@@ -131,7 +125,6 @@ github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUz
131125
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
132126
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
133127
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
134-
github.com/stretchr/testify v1.1.5-0.20170601210322-f6abca593680/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
135128
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
136129
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
137130
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
@@ -144,14 +137,11 @@ github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXl
144137
github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7/go.mod h1:q4W45IWZaF22tdD+VEXcAWRA037jwmWEB5VWYORlTpc=
145138
github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI=
146139
github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08=
147-
github.com/tyler-smith/go-bip32 v1.0.0 h1:sDR9juArbUgX+bO/iblgZnMPeWY1KZMUC2AFUJdv5KE=
148-
github.com/tyler-smith/go-bip32 v1.0.0/go.mod h1:onot+eHknzV4BVPwrzqY5OoVpyCvnwD7lMawL5aQupE=
149140
github.com/ugorji/go/codec v1.2.11 h1:BMaWp1Bb6fHwEtbplGBGJ498wD+LKlNSl25MjdZY4dU=
150141
github.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg=
151142
golang.org/x/arch v0.0.0-20210923205945-b76863e36670/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8=
152143
golang.org/x/arch v0.3.0 h1:02VY4/ZcO/gBOH6PUaoiptASxtXU10jazRCP865E97k=
153144
golang.org/x/arch v0.3.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8=
154-
golang.org/x/crypto v0.0.0-20170613210332-850760c427c5/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
155145
golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
156146
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
157147
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
@@ -207,6 +197,4 @@ gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
207197
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
208198
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
209199
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
210-
launchpad.net/gocheck v0.0.0-20140225173054-000000000087 h1:Izowp2XBH6Ya6rv+hqbceQyw/gSGoXfH/UPoTGduL54=
211-
launchpad.net/gocheck v0.0.0-20140225173054-000000000087/go.mod h1:hj7XX3B/0A+80Vse0e+BUHsHMTEhd0O4cpUHr/e/BUM=
212200
rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=

examples/uma-server/go.mod

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@ require (
1515

1616
require (
1717
github.com/DataDog/zstd v1.5.5 // indirect
18-
github.com/FactomProject/basen v0.0.0-20150613233007-fe3947df716e // indirect
19-
github.com/FactomProject/btcutilecc v0.0.0-20130527213604-d3a63a5752ec // indirect
18+
github.com/btcsuite/btcd v0.24.0 // indirect
19+
github.com/btcsuite/btcd/btcec/v2 v2.2.0 // indirect
20+
github.com/btcsuite/btcd/btcutil v1.1.5 // indirect
21+
github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 // indirect
2022
github.com/bytedance/sonic v1.11.6 // indirect
2123
github.com/bytedance/sonic/loader v0.1.1 // indirect
2224
github.com/cloudwego/base64x v0.1.4 // indirect
@@ -43,7 +45,6 @@ require (
4345
github.com/modern-go/reflect2 v1.0.2 // indirect
4446
github.com/pelletier/go-toml/v2 v2.2.2 // indirect
4547
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
46-
github.com/tyler-smith/go-bip32 v1.0.0 // indirect
4748
github.com/ugorji/go/codec v1.2.12 // indirect
4849
golang.org/x/arch v0.8.0 // indirect
4950
golang.org/x/crypto v0.23.0 // indirect

0 commit comments

Comments
 (0)