Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 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
12 changes: 7 additions & 5 deletions types/consensus_data.go
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,11 @@ type ValidatorConsensusData struct {
// We do not need to support such a big DataSSZ size as 2^50 represents 1000X the actual block gas limit
// Upcoming 40M gas limit produces 40M / 16 (call data cost) = 2,500,000 bytes (https://eips.ethereum.org/EIPS/eip-4488)
// Explanation on why transaction sizes are so big https://github.com/ethereum/consensus-specs/pull/2686
// Adding to the rest of the data (see script below), we have: 1,315,964 + 2,500,000 = 3,815,964 bytes ~<= 2^22
// Adding to the rest of the data (see script below), we have: 3,291,849 + 2,500,000 = 5,791,849 bytes ~<= 2^23
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note new figure

// Python script for Deneb.BlockContents without transactions:
// # Constants
// KZG_PROOFS_SIZE = 6 * 48 # KZGProofs size
// BLOBS_SIZE = 6 * 131072 # Blobs size
// KZG_PROOFS_SIZE = 9 * 48 # KZGProofs size
// BLOBS_SIZE = 9 * 131072 # Blobs size
// BEACON_BLOCK_OVERHEAD = 2 * 32 + 2 * 8 # Additional overhead for BeaconBlock
// # Components of BeaconBlockBody
// ETH1_DATA_SIZE = 96 + 2 * 32 + 8 + 32 # ETH1Data
Expand All @@ -148,15 +148,17 @@ type ValidatorConsensusData struct {
// EXECUTION_PAYLOAD_NO_TRANSACTIONS = 32 + 20 + 2*32 + 256 + 32 + 4*8 + 3*32 + 16 * (2*8 + 20 + 8) + 8 + 8
// BLS_TO_EXECUTION_CHANGES_SIZE = 16 * (96 + (8 + 48 + 20)) # BLSToExecutionChanges
// KZG_COMMITMENT_SIZE = 4096 * 48 # KZGCommitment
// EXECUTION_REQUESTS_SIZE = (1 + 8192 * (1 + 48 + 32 + 8 + 96 + 8)) + (1 + 16 * (1 + 20 + 48 + 8)) + (1 + 2 * (1 + 20 + 48 + 48)) # Deposits + Withdrawls + Consolidations
// # BeaconBlockBody total size without transactions
// beacon_block_body_size_without_transactions = (
// ETH1_DATA_SIZE + PROPOSER_SLASHING_SIZE + ATTESTER_SLASHING_SIZE +
// ATTESTATION_SIZE + DEPOSIT_SIZE + SIGNED_VOLUNTARY_EXIT_SIZE +
// SYNC_AGGREGATE_SIZE + EXECUTION_PAYLOAD_NO_TRANSACTIONS + BLS_TO_EXECUTION_CHANGES_SIZE + KZG_COMMITMENT_SIZE
// SYNC_AGGREGATE_SIZE + EXECUTION_PAYLOAD_NO_TRANSACTIONS + BLS_TO_EXECUTION_CHANGES_SIZE + KZG_COMMITMENT_SIZE + EXECUTION_REQUESTS_SIZE
// )
// # Total size of Deneb.BlockContents and BeaconBlock without transactions
// total_size_without_execution_payload = KZG_PROOFS_SIZE + BLOBS_SIZE + BEACON_BLOCK_OVERHEAD + beacon_block_body_size_without_transactions
DataSSZ []byte `ssz-max:"4194304"` // 2^22
// print(total_size_without_execution_payload)
DataSSZ []byte `ssz-max:"8388608"` // 2^23 to account for potential gas limit increases
}

func (cid *ValidatorConsensusData) Validate() error {
Expand Down
12 changes: 6 additions & 6 deletions types/consensus_data_encoding.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion types/messages.go
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ type SignedSSVMessage struct {
OperatorIDs []OperatorID `ssz-max:"13"`
SSVMessage *SSVMessage
// Full data max value is the max value between ValidatorConsensusData and BeaconVote
FullData []byte `ssz-max:"4194532"`
FullData []byte `ssz-max:"8388608"`
}

// Encode returns a msg encoded bytes or error
Expand Down
12 changes: 6 additions & 6 deletions types/messages_encoding.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -38,38 +38,38 @@
167
],
"ExpectedCdRoot": [
17,
168,
0,
227,
152,
253,
191,
82,
64,
101,
129,
127,
170,
218,
129,
223,
242,
140,
66,
150,
12,
158,
3,
236,
87,
219,
220,
206,
54,
251,
241,
184,
74,
201,
9,
7,
149,
120,
124,
185,
196,
105,
27,
53,
51,
247,
103,
112,
85,
69,
192,
15
136,
183,
195,
166,
172,
8,
178,
76,
255,
139
],
"ExpectedError": ""
}
Original file line number Diff line number Diff line change
Expand Up @@ -38,38 +38,38 @@
167
],
"ExpectedCdRoot": [
96,
75,
168,
101,
88,
114,
230,
101,
105,
61,
145,
3,
196,
18,
234,
159,
195,
121,
251,
36,
246,
201,
209,
192,
97,
23,
190,
39,
109,
162,
250,
161,
90,
10,
116,
225,
252,
37,
253,
63,
171,
136,
64,
49,
170,
126,
111,
127,
103,
228,
234,
175
187,
227,
181,
250,
5,
231,
182,
93,
198,
222
],
"ExpectedError": ""
}

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -2,37 +2,37 @@
"Name": "blinded proposer encoding",
"Data": "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",
"ExpectedRoot": [
216,
63,
99,
214,
209,
139,
147,
249,
61,
144,
119,
51,
25,
150,
143,
41,
100,
43,
91,
20,
188,
58,
53,
7,
34,
110,
43,
62,
247,
203,
234,
177,
120,
233,
227,
171,
239,
182,
230,
110,
41,
89,
39,
18,
182,
95,
26,
60,
57,
140,
34,
88,
100,
192
1,
150,
53,
176,
213,
126,
29
]
}
Loading
Loading