Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bump-avago-master #1446

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ go 1.23.6
require (
github.com/VictoriaMetrics/fastcache v1.12.1
github.com/antithesishq/antithesis-sdk-go v0.3.8
github.com/ava-labs/avalanchego v1.12.3-0.20250218154446-f1ec9a13b90a
github.com/ava-labs/avalanchego v1.12.3-0.20250224161924-06777fd91bc2
github.com/cespare/cp v0.1.0
github.com/crate-crypto/go-ipa v0.0.0-20231025140028-3c0104f4b233
github.com/davecgh/go-spew v1.1.1
Expand Down Expand Up @@ -57,7 +57,7 @@ require (
require (
github.com/DataDog/zstd v1.5.2 // indirect
github.com/NYTimes/gziphandler v1.1.1 // indirect
github.com/ava-labs/coreth v0.14.1-rc.1.0.20250217192834-6060a4a6a6d3 // indirect
github.com/ava-labs/coreth v0.14.1-rc.1.0.20250219185827-6a9db205a450 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/bits-and-blooms/bitset v1.10.0 // indirect
github.com/btcsuite/btcd/btcec/v2 v2.3.2 // indirect
Expand Down
8 changes: 4 additions & 4 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,10 @@ github.com/antithesishq/antithesis-sdk-go v0.3.8/go.mod h1:IUpT2DPAKh6i/YhSbt6Gl
github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/ava-labs/avalanchego v1.12.3-0.20250218154446-f1ec9a13b90a h1:cBuGdwpaB1TBnfHS0w7oJyBJlM2UGOS4CEioxqMCG2g=
github.com/ava-labs/avalanchego v1.12.3-0.20250218154446-f1ec9a13b90a/go.mod h1:pgUuh27zaeaXeMiIqqu/OWpbAhJQkYMJMft6nxXG9FE=
github.com/ava-labs/coreth v0.14.1-rc.1.0.20250217192834-6060a4a6a6d3 h1:0OrQidq+b3kb7KlnDqc5mkB/73i1zxYEMiXioWSU4+w=
github.com/ava-labs/coreth v0.14.1-rc.1.0.20250217192834-6060a4a6a6d3/go.mod h1:/XrU+CAm/0wiY5Ui05TLj2/n+czbCV6/Qrw/UMWp5aI=
github.com/ava-labs/avalanchego v1.12.3-0.20250224161924-06777fd91bc2 h1:K0VBtP+zMdyBT6Fx9LzHmwaCxmdLmxAsSFdMScqicH0=
github.com/ava-labs/avalanchego v1.12.3-0.20250224161924-06777fd91bc2/go.mod h1:DfZ1/FHFxr1XnpDMfbMmex8bKxAtIISCGASdMUNFXtY=
github.com/ava-labs/coreth v0.14.1-rc.1.0.20250219185827-6a9db205a450 h1:xSoL6plkPrb2w21v4JRnQg3BIJSg2svBHXyil09RMAg=
github.com/ava-labs/coreth v0.14.1-rc.1.0.20250219185827-6a9db205a450/go.mod h1:AEQcF8MWrKH0sS114wEZlkSfeGF5F66xTbQYqqimNLI=
github.com/aymerick/raymond v2.0.3-0.20180322193309-b565731e1464+incompatible/go.mod h1:osfaiScAUVup+UC9Nfq76eWqDhXlp+4UYaA8uhTBO6g=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
Expand Down
11 changes: 8 additions & 3 deletions plugin/evm/vm_warp_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -284,13 +284,15 @@ func testWarpVMTransaction(t *testing.T, unsignedMessage *avalancheWarp.Unsigned
blsSecretKey1, err := localsigner.New()
require.NoError(err)
blsPublicKey1 := blsSecretKey1.PublicKey()
blsSignature1 := blsSecretKey1.Sign(unsignedMessage.Bytes())
blsSignature1, err := blsSecretKey1.Sign(unsignedMessage.Bytes())
require.NoError(err)

nodeID2 := ids.GenerateTestNodeID()
blsSecretKey2, err := localsigner.New()
require.NoError(err)
blsPublicKey2 := blsSecretKey2.PublicKey()
blsSignature2 := blsSecretKey2.Sign(unsignedMessage.Bytes())
blsSignature2, err := blsSecretKey2.Sign(unsignedMessage.Bytes())
require.NoError(err)

blsAggregatedSignature, err := bls.AggregateSignatures([]*bls.Signature{blsSignature1, blsSignature2})
require.NoError(err)
Expand Down Expand Up @@ -553,11 +555,14 @@ func testReceiveWarpMessage(
newSigner := func(networkID ids.ID, weight uint64) signer {
secret, err := localsigner.New()
require.NoError(err)
sig, err := secret.Sign(unsignedMessage.Bytes())
require.NoError(err)

return signer{
networkID: networkID,
nodeID: ids.GenerateTestNodeID(),
secret: secret,
signature: secret.Sign(unsignedMessage.Bytes()),
signature: sig,
weight: weight,
}
}
Expand Down
10 changes: 8 additions & 2 deletions precompile/contracts/warp/predicate_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,10 @@ func init() {
}

for _, testVdr := range testVdrs {
blsSignature := testVdr.sk.Sign(unsignedMsg.Bytes())
blsSignature, err := testVdr.sk.Sign(unsignedMsg.Bytes())
if err != nil {
panic(err)
}
blsSignatures = append(blsSignatures, blsSignature)
}

Expand Down Expand Up @@ -235,13 +238,16 @@ func testWarpMessageFromPrimaryNetwork(t *testing.T, requirePrimaryNetworkSigner
getValidatorsOutput := make(map[ids.NodeID]*validators.GetValidatorOutput)
blsSignatures := make([]*bls.Signature, 0, numKeys)
for i := 0; i < numKeys; i++ {
sig, err := testVdrs[i].sk.Sign(unsignedMsg.Bytes())
require.NoError(err)

validatorOutput := &validators.GetValidatorOutput{
NodeID: testVdrs[i].nodeID,
Weight: 20,
PublicKey: testVdrs[i].vdr.PublicKey,
}
getValidatorsOutput[testVdrs[i].nodeID] = validatorOutput
blsSignatures = append(blsSignatures, testVdrs[i].sk.Sign(unsignedMsg.Bytes()))
blsSignatures = append(blsSignatures, sig)
}
aggregateSignature, err := bls.AggregateSignatures(blsSignatures)
require.NoError(err)
Expand Down
48 changes: 32 additions & 16 deletions precompile/contracts/warp/signature_verification_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -213,8 +213,10 @@ func TestSignatureVerification(t *testing.T) {
signers.Add(1)

unsignedBytes := unsignedMsg.Bytes()
vdr0Sig := testVdrs[0].sk.Sign(unsignedBytes)
vdr1Sig := testVdrs[1].sk.Sign(unsignedBytes)
vdr0Sig, err := testVdrs[0].sk.Sign(unsignedBytes)
require.NoError(err)
vdr1Sig, err := testVdrs[1].sk.Sign(unsignedBytes)
require.NoError(err)
aggSig, err := bls.AggregateSignatures([]*bls.Signature{vdr0Sig, vdr1Sig})
require.NoError(err)
aggSigBytes := [bls.SignatureLen]byte{}
Expand Down Expand Up @@ -285,7 +287,8 @@ func TestSignatureVerification(t *testing.T) {
require.NoError(err)

unsignedBytes := unsignedMsg.Bytes()
vdr0Sig := testVdrs[0].sk.Sign(unsignedBytes)
vdr0Sig, err := testVdrs[0].sk.Sign(unsignedBytes)
require.NoError(err)
aggSigBytes := [bls.SignatureLen]byte{}
copy(aggSigBytes[:], bls.SignatureToBytes(vdr0Sig))

Expand Down Expand Up @@ -324,10 +327,12 @@ func TestSignatureVerification(t *testing.T) {
signers.Add(1)

unsignedBytes := unsignedMsg.Bytes()
vdr0Sig := testVdrs[0].sk.Sign(unsignedBytes)
vdr0Sig, err := testVdrs[0].sk.Sign(unsignedBytes)
require.NoError(err)
// Give sig from vdr[2] even though the bit vector says it
// should be from vdr[1]
vdr2Sig := testVdrs[2].sk.Sign(unsignedBytes)
vdr2Sig, err := testVdrs[2].sk.Sign(unsignedBytes)
require.NoError(err)
aggSig, err := bls.AggregateSignatures([]*bls.Signature{vdr0Sig, vdr2Sig})
require.NoError(err)
aggSigBytes := [bls.SignatureLen]byte{}
Expand Down Expand Up @@ -368,7 +373,8 @@ func TestSignatureVerification(t *testing.T) {
signers.Add(1)

unsignedBytes := unsignedMsg.Bytes()
vdr0Sig := testVdrs[0].sk.Sign(unsignedBytes)
vdr0Sig, err := testVdrs[0].sk.Sign(unsignedBytes)
require.NoError(err)
// Don't give the sig from vdr[1]
aggSigBytes := [bls.SignatureLen]byte{}
copy(aggSigBytes[:], bls.SignatureToBytes(vdr0Sig))
Expand Down Expand Up @@ -408,11 +414,14 @@ func TestSignatureVerification(t *testing.T) {
signers.Add(1)

unsignedBytes := unsignedMsg.Bytes()
vdr0Sig := testVdrs[0].sk.Sign(unsignedBytes)
vdr1Sig := testVdrs[1].sk.Sign(unsignedBytes)
vdr0Sig, err := testVdrs[0].sk.Sign(unsignedBytes)
require.NoError(err)
vdr1Sig, err := testVdrs[1].sk.Sign(unsignedBytes)
require.NoError(err)
// Give sig from vdr[2] even though the bit vector doesn't have
// it
vdr2Sig := testVdrs[2].sk.Sign(unsignedBytes)
vdr2Sig, err := testVdrs[2].sk.Sign(unsignedBytes)
require.NoError(err)
aggSig, err := bls.AggregateSignatures([]*bls.Signature{vdr0Sig, vdr1Sig, vdr2Sig})
require.NoError(err)
aggSigBytes := [bls.SignatureLen]byte{}
Expand Down Expand Up @@ -455,8 +464,10 @@ func TestSignatureVerification(t *testing.T) {
signers.Add(2)

unsignedBytes := unsignedMsg.Bytes()
vdr1Sig := testVdrs[1].sk.Sign(unsignedBytes)
vdr2Sig := testVdrs[2].sk.Sign(unsignedBytes)
vdr1Sig, err := testVdrs[1].sk.Sign(unsignedBytes)
require.NoError(err)
vdr2Sig, err := testVdrs[2].sk.Sign(unsignedBytes)
require.NoError(err)
aggSig, err := bls.AggregateSignatures([]*bls.Signature{vdr1Sig, vdr2Sig})
require.NoError(err)
aggSigBytes := [bls.SignatureLen]byte{}
Expand Down Expand Up @@ -499,8 +510,10 @@ func TestSignatureVerification(t *testing.T) {
signers.Add(2)

unsignedBytes := unsignedMsg.Bytes()
vdr1Sig := testVdrs[1].sk.Sign(unsignedBytes)
vdr2Sig := testVdrs[2].sk.Sign(unsignedBytes)
vdr1Sig, err := testVdrs[1].sk.Sign(unsignedBytes)
require.NoError(err)
vdr2Sig, err := testVdrs[2].sk.Sign(unsignedBytes)
require.NoError(err)
aggSig, err := bls.AggregateSignatures([]*bls.Signature{vdr1Sig, vdr2Sig})
require.NoError(err)
aggSigBytes := [bls.SignatureLen]byte{}
Expand Down Expand Up @@ -560,8 +573,10 @@ func TestSignatureVerification(t *testing.T) {
signers.Add(1) // vdr[2]

unsignedBytes := unsignedMsg.Bytes()
vdr1Sig := testVdrs[1].sk.Sign(unsignedBytes)
vdr2Sig := testVdrs[2].sk.Sign(unsignedBytes)
vdr1Sig, err := testVdrs[1].sk.Sign(unsignedBytes)
require.NoError(err)
vdr2Sig, err := testVdrs[2].sk.Sign(unsignedBytes)
require.NoError(err)
aggSig, err := bls.AggregateSignatures([]*bls.Signature{vdr1Sig, vdr2Sig})
require.NoError(err)
aggSigBytes := [bls.SignatureLen]byte{}
Expand Down Expand Up @@ -622,7 +637,8 @@ func TestSignatureVerification(t *testing.T) {

unsignedBytes := unsignedMsg.Bytes()
// Because vdr[1] and vdr[2] share a key, only one of them sign.
vdr2Sig := testVdrs[2].sk.Sign(unsignedBytes)
vdr2Sig, err := testVdrs[2].sk.Sign(unsignedBytes)
require.NoError(err)
aggSigBytes := [bls.SignatureLen]byte{}
copy(aggSigBytes[:], bls.SignatureToBytes(vdr2Sig))

Expand Down
12 changes: 8 additions & 4 deletions warp/aggregator/aggregator_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,17 +44,21 @@ func TestAggregateSignatures(t *testing.T) {
vdr1sk, vdr1 := newValidator(t, vdrWeight)
vdr2sk, vdr2 := newValidator(t, vdrWeight+1)
vdr3sk, vdr3 := newValidator(t, vdrWeight-1)
sig1 := vdr1sk.Sign(unsignedMsg.Bytes())
sig2 := vdr2sk.Sign(unsignedMsg.Bytes())
sig3 := vdr3sk.Sign(unsignedMsg.Bytes())
sig1, err := vdr1sk.Sign(unsignedMsg.Bytes())
require.NoError(t, err)
sig2, err := vdr2sk.Sign(unsignedMsg.Bytes())
require.NoError(t, err)
sig3, err := vdr3sk.Sign(unsignedMsg.Bytes())
require.NoError(t, err)
vdrToSig := map[*avalancheWarp.Validator]*bls.Signature{
vdr1: sig1,
vdr2: sig2,
vdr3: sig3,
}
nonVdrSk, err := localsigner.New()
require.NoError(t, err)
nonVdrSig := nonVdrSk.Sign(unsignedMsg.Bytes())
nonVdrSig, err := nonVdrSk.Sign(unsignedMsg.Bytes())
require.NoError(t, err)
vdrs := []*avalancheWarp.Validator{
{
PublicKey: vdr1.PublicKey,
Expand Down
Loading