Skip to content

Commit

Permalink
fix config test and remove caigo
Browse files Browse the repository at this point in the history
  • Loading branch information
augustbleeds committed Mar 25, 2024
1 parent d48ee18 commit 84b6a5a
Show file tree
Hide file tree
Showing 15 changed files with 62 additions and 71 deletions.
2 changes: 0 additions & 2 deletions core/scripts/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,6 @@ require (
github.com/golang/protobuf v1.5.4 // indirect
github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb // indirect
github.com/google/btree v1.1.2 // indirect
github.com/google/go-querystring v1.1.0 // indirect
github.com/google/go-tpm v0.9.0 // indirect
github.com/google/gofuzz v1.2.0 // indirect
github.com/google/pprof v0.0.0-20231023181126-ff6d637d2a7b // indirect
Expand Down Expand Up @@ -252,7 +251,6 @@ require (
github.com/shirou/gopsutil v3.21.11+incompatible // indirect
github.com/shirou/gopsutil/v3 v3.23.11 // indirect
github.com/sirupsen/logrus v1.9.3 // indirect
github.com/smartcontractkit/caigo v0.0.0-20230621050857-b29a4ca8c704 // indirect
github.com/smartcontractkit/chain-selectors v1.0.10 // indirect
github.com/smartcontractkit/chainlink-cosmos v0.4.1-0.20240213120401-01a23955f9f8 // indirect
github.com/smartcontractkit/chainlink-data-streams v0.0.0-20240220203239-09be0ea34540 // indirect
Expand Down
6 changes: 0 additions & 6 deletions core/scripts/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -604,8 +604,6 @@ github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck=
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
github.com/google/go-tpm v0.9.0 h1:sQF6YqWMi+SCXpsmS3fd21oPy/vSddwZry4JnmltHVk=
github.com/google/go-tpm v0.9.0/go.mod h1:FkNVkc6C+IsvDI9Jw1OveJmxGZUUaKxtrpOS47QWKfU=
github.com/google/gofuzz v0.0.0-20170612174753-24818f796faf/go.mod h1:HP5RmnzzSNb993RKQDq4+1A4ia9nllfqcQFTQJedwGI=
Expand Down Expand Up @@ -1175,8 +1173,6 @@ github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMB
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
github.com/smartcontractkit/caigo v0.0.0-20230621050857-b29a4ca8c704 h1:T3lFWumvbfM1u/etVq42Afwq/jtNSBSOA8n5jntnNPo=
github.com/smartcontractkit/caigo v0.0.0-20230621050857-b29a4ca8c704/go.mod h1:2QuJdEouTWjh5BDy5o/vgGXQtR4Gz8yH1IYB5eT7u4M=
github.com/smartcontractkit/chain-selectors v1.0.10 h1:t9kJeE6B6G+hKD0GYR4kGJSCqR1LNS7aI3jT0V+xGrg=
github.com/smartcontractkit/chain-selectors v1.0.10/go.mod h1:d4Hi+E1zqjy9HqMkjBE5q1vcG9VGgxf5VxiRHfzi2kE=
github.com/smartcontractkit/chainlink-automation v1.0.2-0.20240311111125-22812a072c35 h1:GNhRKD3izyzAoGMXDvVUAwEuzz4Atdj3U3RH7eak5Is=
Expand All @@ -1191,8 +1187,6 @@ github.com/smartcontractkit/chainlink-feeds v0.0.0-20240119021347-3c541a78cdb8 h
github.com/smartcontractkit/chainlink-feeds v0.0.0-20240119021347-3c541a78cdb8/go.mod h1:vy1L7NybTy2F/Yv7BOh+oZBa1MACD6gzd1+DkcSkfp8=
github.com/smartcontractkit/chainlink-solana v1.0.3-0.20240216142700-c5869534c19e h1:k8HS3GsAFZnxXIW3141VsQP2+EL1XrTtOi/HDt7sdBE=
github.com/smartcontractkit/chainlink-solana v1.0.3-0.20240216142700-c5869534c19e/go.mod h1:JiykN+8W5TA4UD2ClrzQCVvcH3NcyLEVv7RwY0busrw=
github.com/smartcontractkit/chainlink-starknet/relayer v0.0.1-beta-test.0.20240213121419-1272736c2ac0 h1:7m9PVtccb8/pvKTXMaGuyceFno1icRyC2SFH7KG7+70=
github.com/smartcontractkit/chainlink-starknet/relayer v0.0.1-beta-test.0.20240213121419-1272736c2ac0/go.mod h1:SZ899lZYQ0maUulWbZg+SWqabHQ1wTbyk3jT8wJfyo8=
github.com/smartcontractkit/chainlink-starknet/relayer v0.0.1-beta-test.0.20240325075535-0f7eb05ee595 h1:y6ks0HsSOhPUueOmTcoxDQ50RCS1XINlRDTemZyHjFw=
github.com/smartcontractkit/chainlink-starknet/relayer v0.0.1-beta-test.0.20240325075535-0f7eb05ee595/go.mod h1:vV6WfnVIbK5Q1JsIru4YcTG0T1uRpLJm6t2BgCnCSsg=
github.com/smartcontractkit/chainlink-vrf v0.0.0-20231120191722-fef03814f868 h1:FFdvEzlYwcuVHkdZ8YnZR/XomeMGbz5E2F2HZI3I3w8=
Expand Down
4 changes: 4 additions & 0 deletions core/services/chainlink/testdata/config-full.toml
Original file line number Diff line number Diff line change
Expand Up @@ -436,7 +436,11 @@ OCR2CacheTTL = '3m0s'
RequestTimeout = '1m3s'
TxTimeout = '13s'
ConfirmationPoll = '42s'
FeederURL = 'http://feeder.url'

[[Starknet.Nodes]]
Name = 'primary'
URL = 'http://stark.node'
# optional
APIKey = 'key'

8 changes: 4 additions & 4 deletions core/services/keystore/keys/starkkey/key.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import (
"io"
"math/big"

"github.com/smartcontractkit/caigo"
caigotypes "github.com/smartcontractkit/caigo/types"
"github.com/NethermindEth/juno/core/felt"
"github.com/NethermindEth/starknet.go/curve"
)

// Raw represents the Stark private key
Expand All @@ -19,7 +19,7 @@ func (raw Raw) Key() Key {
var err error

k.priv = new(big.Int).SetBytes(raw)
k.pub.X, k.pub.Y, err = caigo.Curve.PrivateToPoint(k.priv)
k.pub.X, k.pub.Y, err = curve.Curve.PrivateToPoint(k.priv)
if err != nil {
panic(err) // key not generated
}
Expand Down Expand Up @@ -75,7 +75,7 @@ func (key Key) ID() string {
// it is the X component of the ECDSA pubkey and used in the deployment of the account contract
// this func is used in exporting it via CLI and API
func (key Key) StarkKeyStr() string {
return caigotypes.BigToFelt(key.pub.X).String()
return new(felt.Felt).SetBytes(key.pub.X.Bytes()).String()
}

// Raw from private key
Expand Down
21 changes: 11 additions & 10 deletions core/services/keystore/keys/starkkey/ocr2key.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ import (

"github.com/pkg/errors"

"github.com/smartcontractkit/caigo"
caigotypes "github.com/smartcontractkit/caigo/types"
"github.com/NethermindEth/juno/core/felt"
"github.com/NethermindEth/starknet.go/curve"
"github.com/smartcontractkit/libocr/offchainreporting2plus/chains/evmutil"
"github.com/smartcontractkit/libocr/offchainreporting2plus/types"
)
Expand All @@ -26,7 +26,8 @@ func NewOCR2Key(material io.Reader) (*OCR2Key, error) {
}

func (sk *OCR2Key) PublicKey() types.OnchainPublicKey {
return caigotypes.BigToFelt(sk.pub.X).Bytes()
ans := new(felt.Felt).SetBytes(sk.pub.X.Bytes()).Bytes()
return ans[:]
}

func ReportToSigData(reportCtx types.ReportContext, report types.Report) (*big.Int, error) {
Expand All @@ -46,7 +47,7 @@ func ReportToSigData(reportCtx types.ReportContext, report types.Report) (*big.I
dataArray = append(dataArray, new(big.Int).SetBytes(splitReport[i]))
}

hash, err := caigo.Curve.ComputeHashOnElements(dataArray)
hash, err := curve.Curve.ComputeHashOnElements(dataArray)
if err != nil {
return &big.Int{}, err
}
Expand All @@ -58,14 +59,14 @@ func (sk *OCR2Key) Sign(reportCtx types.ReportContext, report types.Report) ([]b
if err != nil {
return []byte{}, err
}
r, s, err := caigo.Curve.Sign(hash, sk.priv)
r, s, err := curve.Curve.Sign(hash, sk.priv)
if err != nil {
return []byte{}, err
}

// enforce s <= N/2 to prevent signature malleability
if s.Cmp(new(big.Int).Rsh(caigo.Curve.N, 1)) > 0 {
s.Sub(caigo.Curve.N, s)
if s.Cmp(new(big.Int).Rsh(curve.Curve.N, 1)) > 0 {
s.Sub(curve.Curve.N, s)
}

// encoding: public key (32 bytes) + r (32 bytes) + s (32 bytes)
Expand Down Expand Up @@ -97,7 +98,7 @@ func (sk *OCR2Key) Verify(publicKey types.OnchainPublicKey, reportCtx types.Repo
// convert OnchainPublicKey (starkkey) into ecdsa public keys (prepend 2 or 3 to indicate +/- Y coord)
var keys [2]PublicKey
keys[0].X = new(big.Int).SetBytes(publicKey)
keys[0].Y = caigo.Curve.GetYCoordinate(keys[0].X)
keys[0].Y = curve.Curve.GetYCoordinate(keys[0].X)

// When there is no point with the provided x-coordinate, the GetYCoordinate function returns the nil value.
if keys[0].Y == nil {
Expand All @@ -116,11 +117,11 @@ func (sk *OCR2Key) Verify(publicKey types.OnchainPublicKey, reportCtx types.Repo
s := new(big.Int).SetBytes(signature[64:])

// Only allow canonical signatures to avoid signature malleability. Verify s <= N/2
if s.Cmp(new(big.Int).Rsh(caigo.Curve.N, 1)) == 1 {
if s.Cmp(new(big.Int).Rsh(curve.Curve.N, 1)) == 1 {
return false
}

return caigo.Curve.Verify(hash, r, s, keys[0].X, keys[0].Y) || caigo.Curve.Verify(hash, r, s, keys[1].X, keys[1].Y)
return curve.Curve.Verify(hash, r, s, keys[0].X, keys[0].Y) || curve.Curve.Verify(hash, r, s, keys[1].X, keys[1].Y)
}

func (sk *OCR2Key) Verify3(publicKey types.OnchainPublicKey, cd types.ConfigDigest, seqNr uint64, r types.Report, signature []byte) bool {
Expand Down
49 changes: 29 additions & 20 deletions core/services/keystore/keys/starkkey/ocr2key_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import (
"math/big"
"testing"

caigotypes "github.com/smartcontractkit/caigo/types"
"github.com/NethermindEth/juno/core/felt"

ocrtypes "github.com/smartcontractkit/libocr/offchainreporting2plus/types"
"github.com/stretchr/testify/assert"
Expand Down Expand Up @@ -34,13 +34,15 @@ import (
func TestStarknetKeyring_TestVector(t *testing.T) {
var kr1 OCR2Key
bigKey, _ := new(big.Int).SetString("2137244795266879235401249500471353867704187908407744160927664772020405449078", 10)
feltKey := caigotypes.BigToFelt(bigKey)
err := kr1.Unmarshal(feltKey.Bytes())
feltKey, err := new(felt.Felt).SetString(bigKey.String())
require.NoError(t, err)
bytesKey := feltKey.Bytes()
err = kr1.Unmarshal(bytesKey[:])
require.NoError(t, err)
// kr2, err := NewOCR2Key(cryptorand.Reader)
// require.NoError(t, err)

bytes, err := caigotypes.HexToBytes("0x004acf99cb25a4803916f086440c661295b105a485efdc649ac4de9536da25b")
bytes, err := hex.DecodeString("0004acf99cb25a4803916f086440c661295b105a485efdc649ac4de9536da25b")
require.NoError(t, err)
configDigest, err := ocrtypes.BytesToConfigDigest(bytes)
require.NoError(t, err)
Expand All @@ -58,44 +60,51 @@ func TestStarknetKeyring_TestVector(t *testing.T) {
}

var report []byte
report = append(report, caigotypes.BigToFelt(big.NewInt(1)).Bytes()...)
report = append(report, caigotypes.StrToFelt("0x00010203000000000000000000000000000000000000000000000000000000").Bytes()...)
report = append(report, caigotypes.BigToFelt(big.NewInt(4)).Bytes()...)
report = append(report, caigotypes.BigToFelt(big.NewInt(99)).Bytes()...)
report = append(report, caigotypes.BigToFelt(big.NewInt(99)).Bytes()...)
report = append(report, caigotypes.BigToFelt(big.NewInt(99)).Bytes()...)
report = append(report, caigotypes.BigToFelt(big.NewInt(99)).Bytes()...)
report = append(report, caigotypes.BigToFelt(big.NewInt(1)).Bytes()...)
b1 := new(felt.Felt).SetUint64(1).Bytes()
report = append(report, b1[:]...)
b2Bytes, err := hex.DecodeString("00010203000000000000000000000000000000000000000000000000000000")
require.NoError(t, err)
b2 := new(felt.Felt).SetBytes(b2Bytes).Bytes()
report = append(report, b2[:]...)
b3 := new(felt.Felt).SetUint64(4).Bytes()
report = append(report, b3[:]...)
b4 := new(felt.Felt).SetUint64(99).Bytes()
report = append(report, b4[:]...)
report = append(report, b4[:]...)
report = append(report, b4[:]...)
report = append(report, b4[:]...)
report = append(report, b1[:]...)

// check that report hash matches expected
msg, err := ReportToSigData(ctx, report)
require.NoError(t, err)

expected, err := caigotypes.HexToBytes("0x1332a8dabaabef63b03438ca50760cb9f5c0292cbf015b2395e50e6157df4e3")
expected, err := new(felt.Felt).SetString("0x1332a8dabaabef63b03438ca50760cb9f5c0292cbf015b2395e50e6157df4e3")
expectedBytes := expected.Bytes()
require.NoError(t, err)
assert.Equal(t, expected, msg.Bytes())
assert.Equal(t, expectedBytes[:], msg.Bytes())

// check that signature matches expected
sig, err := kr1.Sign(ctx, report)
require.NoError(t, err)

pub := caigotypes.BytesToFelt(sig[0:32])
r := caigotypes.BytesToFelt(sig[32:64])
s := caigotypes.BytesToFelt(sig[64:])
pub := new(felt.Felt).SetBytes(sig[0:32])
r := new(felt.Felt).SetBytes(sig[32:64])
s := new(felt.Felt).SetBytes(sig[64:])

bigPubExpected, _ := new(big.Int).SetString("1118148281956858477519852250235501663092798578871088714409528077622994994907", 10)
feltPubExpected := caigotypes.BigToFelt(bigPubExpected)
feltPubExpected := new(felt.Felt).SetBytes(bigPubExpected.Bytes())
assert.Equal(t, feltPubExpected, pub)

bigRExpected, _ := new(big.Int).SetString("2898571078985034687500959842265381508927681132188252715370774777831313601543", 10)
feltRExpected := caigotypes.BigToFelt(bigRExpected)
feltRExpected := new(felt.Felt).SetBytes(bigRExpected.Bytes())
assert.Equal(t, feltRExpected, r)

// test for malleability
otherS, _ := new(big.Int).SetString("1930849708769648077928186998643944706551011476358007177069185543644456022504", 10)
bigSExpected, _ := new(big.Int).SetString("1687653079896483135769135784451125398975732275358080312084893914240056843079", 10)

feltSExpected := caigotypes.BigToFelt(bigSExpected)
feltSExpected := new(felt.Felt).SetBytes(bigSExpected.Bytes())
assert.NotEqual(t, otherS, s, "signature not in canonical form")
assert.Equal(t, feltSExpected, s)
}
Expand Down
11 changes: 6 additions & 5 deletions core/services/keystore/keys/starkkey/utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,31 +6,32 @@ import (
"io"
"math/big"

"github.com/smartcontractkit/caigo"
"github.com/NethermindEth/starknet.go/curve"
)

// constants
var (
byteLen = 32
)

// reimplements parts of https://github.com/smartcontractkit/caigo/blob/main/utils.go#L85
// reimplements parts of
// https://github.com/NethermindEth/starknet.go/blob/0bdaab716ce24a521304744a8fbd8e01800c241d/curve/curve.go#L702
// generate the PK as a pseudo-random number in the interval [1, CurveOrder - 1]
// using io.Reader, and Key struct
func GenerateKey(material io.Reader) (k Key, err error) {
max := new(big.Int).Sub(caigo.Curve.N, big.NewInt(1))
max := new(big.Int).Sub(curve.Curve.N, big.NewInt(1))

k.priv, err = rand.Int(material, max)
if err != nil {
return k, err
}

k.pub.X, k.pub.Y, err = caigo.Curve.PrivateToPoint(k.priv)
k.pub.X, k.pub.Y, err = curve.Curve.PrivateToPoint(k.priv)
if err != nil {
return k, err
}

if !caigo.Curve.IsOnCurve(k.pub.X, k.pub.Y) {
if !curve.Curve.IsOnCurve(k.pub.X, k.pub.Y) {
return k, fmt.Errorf("key gen is not on stark curve")
}

Expand Down
4 changes: 2 additions & 2 deletions core/services/keystore/starknet.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import (

"github.com/pkg/errors"

"github.com/smartcontractkit/caigo"
"github.com/NethermindEth/starknet.go/curve"

"github.com/smartcontractkit/chainlink-common/pkg/loop"
adapters "github.com/smartcontractkit/chainlink-common/pkg/loop/adapters/starknet"
Expand Down Expand Up @@ -179,7 +179,7 @@ func (lk *StarknetLooppSigner) Sign(ctx context.Context, id string, hash []byte)
}

starkHash := new(big.Int).SetBytes(hash)
x, y, err := caigo.Curve.Sign(starkHash, k.ToPrivKey())
x, y, err := curve.Curve.Sign(starkHash, k.ToPrivKey())
if err != nil {
return nil, fmt.Errorf("error signing data with curve: %w", err)
}
Expand Down
8 changes: 4 additions & 4 deletions core/services/keystore/starknet_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import (
"github.com/stretchr/testify/mock"
"github.com/stretchr/testify/require"

"github.com/smartcontractkit/caigo"
"github.com/NethermindEth/starknet.go/curve"

"github.com/smartcontractkit/chainlink-common/pkg/utils"
"github.com/smartcontractkit/chainlink/v2/core/internal/cltest"
Expand Down Expand Up @@ -138,15 +138,15 @@ func TestStarknetSigner(t *testing.T) {

adapter := starktxm.NewKeystoreAdapter(lk)
baseKs.On("Get", starknetSenderAddr).Return(starkKey, nil)
hash, err := caigo.Curve.PedersenHash([]*big.Int{big.NewInt(42)})
hash, err := curve.Curve.PedersenHash([]*big.Int{big.NewInt(42)})
require.NoError(t, err)
r, s, err := adapter.Sign(testutils.Context(t), starknetSenderAddr, hash)
require.NoError(t, err)
require.NotNil(t, r)
require.NotNil(t, s)

pubx, puby, err := caigo.Curve.PrivateToPoint(starkKey.ToPrivKey())
pubx, puby, err := curve.Curve.PrivateToPoint(starkKey.ToPrivKey())
require.NoError(t, err)
require.True(t, caigo.Curve.Verify(hash, r, s, pubx, puby))
require.True(t, curve.Curve.Verify(hash, r, s, pubx, puby))
})
}
6 changes: 2 additions & 4 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ require (
github.com/Depado/ginprom v1.8.0
github.com/Masterminds/semver/v3 v3.2.1
github.com/Masterminds/sprig/v3 v3.2.3
github.com/NethermindEth/juno v0.3.1
github.com/NethermindEth/starknet.go v0.6.1-0.20231218140327-915109ab5bc1
github.com/XSAM/otelsql v0.27.0
github.com/avast/retry-go/v4 v4.5.1
github.com/btcsuite/btcd/btcec/v2 v2.3.2
Expand Down Expand Up @@ -68,7 +70,6 @@ require (
github.com/scylladb/go-reflectx v1.0.1
github.com/shirou/gopsutil/v3 v3.23.11
github.com/shopspring/decimal v1.3.1
github.com/smartcontractkit/caigo v0.0.0-20230621050857-b29a4ca8c704
github.com/smartcontractkit/chain-selectors v1.0.10
github.com/smartcontractkit/chainlink-automation v1.0.2-0.20240311111125-22812a072c35
github.com/smartcontractkit/chainlink-common v0.1.7-0.20240324144450-2bc22a6738ac
Expand Down Expand Up @@ -130,8 +131,6 @@ require (
github.com/DataDog/zstd v1.5.2 // indirect
github.com/Masterminds/goutils v1.1.1 // indirect
github.com/Microsoft/go-winio v0.6.1 // indirect
github.com/NethermindEth/juno v0.3.1 // indirect
github.com/NethermindEth/starknet.go v0.6.1-0.20231218140327-915109ab5bc1 // indirect
github.com/VictoriaMetrics/fastcache v1.12.1 // indirect
github.com/armon/go-metrics v0.4.1 // indirect
github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59 // indirect
Expand Down Expand Up @@ -211,7 +210,6 @@ require (
github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb // indirect
github.com/google/btree v1.1.2 // indirect
github.com/google/go-cmp v0.6.0 // indirect
github.com/google/go-querystring v1.1.0 // indirect
github.com/google/go-tpm v0.9.0 // indirect
github.com/google/gofuzz v1.2.0 // indirect
github.com/gorilla/context v1.1.1 // indirect
Expand Down
6 changes: 0 additions & 6 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -594,8 +594,6 @@ github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck=
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
github.com/google/go-tpm v0.9.0 h1:sQF6YqWMi+SCXpsmS3fd21oPy/vSddwZry4JnmltHVk=
github.com/google/go-tpm v0.9.0/go.mod h1:FkNVkc6C+IsvDI9Jw1OveJmxGZUUaKxtrpOS47QWKfU=
github.com/google/gofuzz v0.0.0-20170612174753-24818f796faf/go.mod h1:HP5RmnzzSNb993RKQDq4+1A4ia9nllfqcQFTQJedwGI=
Expand Down Expand Up @@ -1170,8 +1168,6 @@ github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMB
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
github.com/smartcontractkit/caigo v0.0.0-20230621050857-b29a4ca8c704 h1:T3lFWumvbfM1u/etVq42Afwq/jtNSBSOA8n5jntnNPo=
github.com/smartcontractkit/caigo v0.0.0-20230621050857-b29a4ca8c704/go.mod h1:2QuJdEouTWjh5BDy5o/vgGXQtR4Gz8yH1IYB5eT7u4M=
github.com/smartcontractkit/chain-selectors v1.0.10 h1:t9kJeE6B6G+hKD0GYR4kGJSCqR1LNS7aI3jT0V+xGrg=
github.com/smartcontractkit/chain-selectors v1.0.10/go.mod h1:d4Hi+E1zqjy9HqMkjBE5q1vcG9VGgxf5VxiRHfzi2kE=
github.com/smartcontractkit/chainlink-automation v1.0.2-0.20240311111125-22812a072c35 h1:GNhRKD3izyzAoGMXDvVUAwEuzz4Atdj3U3RH7eak5Is=
Expand All @@ -1186,8 +1182,6 @@ github.com/smartcontractkit/chainlink-feeds v0.0.0-20240119021347-3c541a78cdb8 h
github.com/smartcontractkit/chainlink-feeds v0.0.0-20240119021347-3c541a78cdb8/go.mod h1:vy1L7NybTy2F/Yv7BOh+oZBa1MACD6gzd1+DkcSkfp8=
github.com/smartcontractkit/chainlink-solana v1.0.3-0.20240216142700-c5869534c19e h1:k8HS3GsAFZnxXIW3141VsQP2+EL1XrTtOi/HDt7sdBE=
github.com/smartcontractkit/chainlink-solana v1.0.3-0.20240216142700-c5869534c19e/go.mod h1:JiykN+8W5TA4UD2ClrzQCVvcH3NcyLEVv7RwY0busrw=
github.com/smartcontractkit/chainlink-starknet/relayer v0.0.1-beta-test.0.20240213121419-1272736c2ac0 h1:7m9PVtccb8/pvKTXMaGuyceFno1icRyC2SFH7KG7+70=
github.com/smartcontractkit/chainlink-starknet/relayer v0.0.1-beta-test.0.20240213121419-1272736c2ac0/go.mod h1:SZ899lZYQ0maUulWbZg+SWqabHQ1wTbyk3jT8wJfyo8=
github.com/smartcontractkit/chainlink-starknet/relayer v0.0.1-beta-test.0.20240325075535-0f7eb05ee595 h1:y6ks0HsSOhPUueOmTcoxDQ50RCS1XINlRDTemZyHjFw=
github.com/smartcontractkit/chainlink-starknet/relayer v0.0.1-beta-test.0.20240325075535-0f7eb05ee595/go.mod h1:vV6WfnVIbK5Q1JsIru4YcTG0T1uRpLJm6t2BgCnCSsg=
github.com/smartcontractkit/chainlink-vrf v0.0.0-20231120191722-fef03814f868 h1:FFdvEzlYwcuVHkdZ8YnZR/XomeMGbz5E2F2HZI3I3w8=
Expand Down
Loading

0 comments on commit 84b6a5a

Please sign in to comment.