From 5e78ead684f1ed42ef865b6d87d607e2424bab57 Mon Sep 17 00:00:00 2001 From: Matus Kysel Date: Mon, 31 Mar 2025 15:29:26 +0200 Subject: [PATCH 1/2] remove eth network from the code --- crypto/beacon.go | 22 +--------------------- go.mod | 2 +- go.sum | 4 ++-- result.go | 5 +++-- testing/fixtures/common_test.go | 3 ++- 5 files changed, 9 insertions(+), 27 deletions(-) diff --git a/crypto/beacon.go b/crypto/beacon.go index 604135f..b981e46 100644 --- a/crypto/beacon.go +++ b/crypto/beacon.go @@ -16,26 +16,6 @@ const ( ETH1WithdrawalPrefixByte = byte(1) ) -// GetNetworkByFork translates the network fork bytes into name -// -// TODO: once eth2_key_manager implements this we can get rid of it and support all networks ekm supports automatically -func GetNetworkByFork(fork [4]byte) (core.Network, error) { - switch fork { - case [4]byte{0x90, 0x00, 0x00, 0x69}: - return core.SepoliaNetwork, nil - case [4]byte{0x10, 0x00, 0x09, 0x10}: - return core.HoodiNetwork, nil - case [4]byte{0x00, 0x00, 0x10, 0x20}: - return core.PraterNetwork, nil - case [4]byte{0x01, 0x01, 0x70, 0x00}: - return core.HoleskyNetwork, nil - case [4]byte{0, 0, 0, 0}: - return core.MainNetwork, nil - default: - return core.MainNetwork, fmt.Errorf("unknown network") - } -} - func ETH1WithdrawalCredentials(withdrawalAddr []byte) []byte { withdrawalCredentials := make([]byte, 32) copy(withdrawalCredentials[:1], []byte{ETH1WithdrawalPrefixByte}) @@ -107,7 +87,7 @@ func DepositDataRootForFork( withdrawalCredentials []byte, amount phase0.Gwei, ) (phase0.Root, error) { - network, err := GetNetworkByFork(fork) + network, err := core.NetworkFromForkVersion(fork) if err != nil { return phase0.Root{}, err } diff --git a/go.mod b/go.mod index 2b346be..424de6a 100644 --- a/go.mod +++ b/go.mod @@ -8,7 +8,7 @@ require ( github.com/ferranbt/fastssz v0.1.4 github.com/google/uuid v1.6.0 github.com/herumi/bls-eth-go-binary v1.36.4 - github.com/ssvlabs/eth2-key-manager v1.5.3 + github.com/ssvlabs/eth2-key-manager v1.5.4-0.20250331132632-d56040ea96f4 github.com/stretchr/testify v1.10.0 github.com/wealdtech/go-eth2-types/v2 v2.8.2 ) diff --git a/go.sum b/go.sum index bdcc9a6..55ae6c7 100644 --- a/go.sum +++ b/go.sum @@ -168,8 +168,8 @@ github.com/shirou/gopsutil v3.21.11+incompatible h1:+1+c1VGhc88SSonWP6foOcLhvnKl github.com/shirou/gopsutil v3.21.11+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= -github.com/ssvlabs/eth2-key-manager v1.5.3 h1:B9U+mrdQpWMWfIEhWGW2m3b95IqvzFv9sLtq7kQEcyI= -github.com/ssvlabs/eth2-key-manager v1.5.3/go.mod h1:yeUzAP+SBJXgeXPiGBrLeLuHIQCpeJZV7Jz3Fwzm/zk= +github.com/ssvlabs/eth2-key-manager v1.5.4-0.20250331132632-d56040ea96f4 h1:S+xR3OVRyO5uM8p+6v5LJHXHIgswxziK49kHtOKyqH8= +github.com/ssvlabs/eth2-key-manager v1.5.4-0.20250331132632-d56040ea96f4/go.mod h1:yeUzAP+SBJXgeXPiGBrLeLuHIQCpeJZV7Jz3Fwzm/zk= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= diff --git a/result.go b/result.go index 31b9ffd..30041b2 100644 --- a/result.go +++ b/result.go @@ -10,6 +10,7 @@ import ( eth_crypto "github.com/ethereum/go-ethereum/crypto" "github.com/herumi/bls-eth-go-binary/bls" "github.com/ssvlabs/dkg-spec/crypto" + "github.com/ssvlabs/eth2-key-manager/core" ) func BuildResult( @@ -125,7 +126,7 @@ func ValidateResults( if err != nil { return nil, nil, nil, err } - network, err := crypto.GetNetworkByFork(fork) + network, err := core.NetworkFromForkVersion(fork) if err != nil { return nil, nil, nil, err } @@ -286,7 +287,7 @@ func VerifyPartialDepositDataSignatures( pks []*bls.PublicKey, amount phase0.Gwei, ) error { - network, err := crypto.GetNetworkByFork(fork) + network, err := core.NetworkFromForkVersion(fork) if err != nil { return err } diff --git a/testing/fixtures/common_test.go b/testing/fixtures/common_test.go index 609031f..83f7433 100644 --- a/testing/fixtures/common_test.go +++ b/testing/fixtures/common_test.go @@ -9,6 +9,7 @@ import ( spec "github.com/ssvlabs/dkg-spec" "github.com/ssvlabs/dkg-spec/crypto" + "github.com/ssvlabs/eth2-key-manager/core" "github.com/attestantio/go-eth2-client/spec/phase0" "github.com/ethereum/go-ethereum/common" @@ -116,7 +117,7 @@ func TestSignNonce(t *testing.T) { } func TestSignDeposit(t *testing.T) { - network, err := crypto.GetNetworkByFork(TestFork) + network, err := core.NetworkFromForkVersion(TestFork) require.NoError(t, err) shareRoot, err := crypto.ComputeDepositMessageSigningRoot(network, &phase0.DepositMessage{ PublicKey: phase0.BLSPubKey(ShareSK(TestValidator13Operators).GetPublicKey().Serialize()), From ca6d36e7b38142375bdb96a34b849a4b4b76038c Mon Sep 17 00:00:00 2001 From: Matus Kysel Date: Tue, 1 Apr 2025 14:09:15 +0200 Subject: [PATCH 2/2] update to ekm release --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 424de6a..d78db21 100644 --- a/go.mod +++ b/go.mod @@ -8,7 +8,7 @@ require ( github.com/ferranbt/fastssz v0.1.4 github.com/google/uuid v1.6.0 github.com/herumi/bls-eth-go-binary v1.36.4 - github.com/ssvlabs/eth2-key-manager v1.5.4-0.20250331132632-d56040ea96f4 + github.com/ssvlabs/eth2-key-manager v1.5.4 github.com/stretchr/testify v1.10.0 github.com/wealdtech/go-eth2-types/v2 v2.8.2 ) diff --git a/go.sum b/go.sum index 55ae6c7..c7cfbf8 100644 --- a/go.sum +++ b/go.sum @@ -168,8 +168,8 @@ github.com/shirou/gopsutil v3.21.11+incompatible h1:+1+c1VGhc88SSonWP6foOcLhvnKl github.com/shirou/gopsutil v3.21.11+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= -github.com/ssvlabs/eth2-key-manager v1.5.4-0.20250331132632-d56040ea96f4 h1:S+xR3OVRyO5uM8p+6v5LJHXHIgswxziK49kHtOKyqH8= -github.com/ssvlabs/eth2-key-manager v1.5.4-0.20250331132632-d56040ea96f4/go.mod h1:yeUzAP+SBJXgeXPiGBrLeLuHIQCpeJZV7Jz3Fwzm/zk= +github.com/ssvlabs/eth2-key-manager v1.5.4 h1:TnKbS3HeWE+txUyxf0n0EhSIxeFWSKpLwm5VfmMeegw= +github.com/ssvlabs/eth2-key-manager v1.5.4/go.mod h1:yeUzAP+SBJXgeXPiGBrLeLuHIQCpeJZV7Jz3Fwzm/zk= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=