Skip to content

Commit fc4ece0

Browse files
lightsinglispcroynalnaruto
authoredMar 4, 2025··
feat: zkvm support (#91)
* feat: add EIP-7702 tx support (#85) * upgrade * upgrade * Update Cargo.toml * change branches * remove poseidon field * fix scroll types * trailing lf * feat: dump utils (#83) * provide utils lib * clippy * unify imports * fix * style fix * add EIP-7702 tx support * upgrade reth --------- Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com> * feat: msg queue hash (#84) * upgrade * upgrade * Update Cargo.toml * change branches * remove poseidon field * fix scroll types * trailing lf * feat: dump utils (#83) * provide utils lib * clippy * unify imports * fix * style fix * impl msg queue hash * remove legacy test * move chunk into primitives and impl EuclidV2 * set prev_msg_queue_hash * use is_l1_message * feat: num l1 msgs in scroll block * fix: usize instead of u64 for num txs * chore: clippy fix remove unused import * apply suggestion --------- Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com> Co-authored-by: Rohit Narurkar <rohit.narurkar@proton.me> * fix Eip7702 signature * chore: update reth dep * fix bytecode construct * upgrade to fix * add euclid v2 test cases * fix cli * remove unused * impl is_euclid_v2 in chunk * clippy * fix ChunkInfo * fix chunk mode * refactor * refactor * fix patches * remove serde flatten * export reth chain spec --------- Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com> Co-authored-by: Rohit Narurkar <rohit.narurkar@proton.me>
1 parent 34cd296 commit fc4ece0

File tree

14 files changed

+303
-309
lines changed

14 files changed

+303
-309
lines changed
 

‎Cargo.lock

+168-198
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎Cargo.toml

+23-23
Original file line numberDiff line numberDiff line change
@@ -38,25 +38,25 @@ alloy-trie = { version = "0.7", default-features = false }
3838
# https://github.com/alloy-rs/core
3939
alloy-primitives = { version = "0.8", default-features = false, features = ["map-hashbrown", "map-fxhash", "rkyv"] }
4040

41-
reth-chainspec = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
42-
reth-evm = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
43-
reth-evm-ethereum = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
44-
reth-ethereum-forks = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
45-
reth-execution-types = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
46-
reth-primitives = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
47-
reth-primitives-traits = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
48-
reth-storage-errors = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
49-
reth-trie = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
50-
reth-trie-sparse = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
51-
52-
reth-scroll-chainspec = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
53-
reth-scroll-evm = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
54-
reth-scroll-forks = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
55-
reth-scroll-primitives = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
56-
57-
scroll-alloy-consensus = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
58-
scroll-alloy-rpc-types = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
59-
scroll-alloy-network = { git = "https://github.com/scroll-tech/reth", branch = "feat/euclid-v2", default-features = false }
41+
reth-chainspec = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
42+
reth-evm = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
43+
reth-evm-ethereum = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
44+
reth-ethereum-forks = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
45+
reth-execution-types = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
46+
reth-primitives = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
47+
reth-primitives-traits = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
48+
reth-storage-errors = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
49+
reth-trie = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
50+
reth-trie-sparse = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
51+
52+
reth-scroll-chainspec = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
53+
reth-scroll-evm = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
54+
reth-scroll-forks = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
55+
reth-scroll-primitives = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
56+
57+
scroll-alloy-consensus = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
58+
scroll-alloy-rpc-types = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
59+
scroll-alloy-network = { git = "https://github.com/scroll-tech/reth", branch = "zkvm/euclid-v2", default-features = false }
6060

6161
async-trait = "0.1"
6262
auto_impl = "1.2"
@@ -121,10 +121,10 @@ ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" }
121121

122122
alloy-primitives = { git = "https://github.com/scroll-tech/alloy-core", branch = "v0.8.18" }
123123

124-
revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/feat/v55/euclid-v2" }
125-
revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/feat/v55/euclid-v2" }
126-
revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/feat/v55/euclid-v2" }
127-
revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/feat/v55/euclid-v2" }
124+
#revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/feat/v55/euclid-v2" }
125+
#revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/feat/v55/euclid-v2" }
126+
#revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/feat/v55/euclid-v2" }
127+
#revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/feat/v55/euclid-v2" }
128128

129129
# for local development
130130
# [patch."https://github.com/scroll-tech/revm"]

‎crates/primitives/src/chainspec.rs

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use std::sync::Arc;
22

3+
pub use reth_chainspec;
34
pub use reth_chainspec::*;
45

56
#[cfg(feature = "scroll")]

‎crates/primitives/src/types/auth_list.rs

-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ pub struct Authorization {
3838
#[rkyv(derive(Debug, Hash, PartialEq, Eq))]
3939
pub struct SignedAuthorization {
4040
/// Inner authorization.
41-
#[serde(flatten)]
4241
inner: Authorization,
4342
/// Signature parity value. We allow any [`U8`] here, however, the only valid values are `0`
4443
/// and `1` and anything else will result in error during recovery.

‎crates/primitives/src/types/block_header.rs

+3-6
Original file line numberDiff line numberDiff line change
@@ -125,23 +125,21 @@ pub struct BlockHeader {
125125
#[serde(
126126
default,
127127
with = "alloy_serde::quantity::opt",
128-
skip_serializing_if = "Option::is_none"
129128
)]
130129
#[rkyv(attr(
131130
doc = "A scalar representing EIP1559 base fee which can move up or down each block according to a formula which is a function of gas used in parent block and gas target (block gas limit divided by elasticity multiplier) of parent block. The algorithm results in the base fee per gas increasing when blocks are above the gas target, and decreasing when blocks are below the gas target. The base fee per gas is burned."
132131
))]
133132
pub base_fee_per_gas: Option<u64>,
134133
/// The Keccak 256-bit hash of the withdrawals list portion of this block.
135134
/// <https://eips.ethereum.org/EIPS/eip-4895>
136-
#[serde(default, skip_serializing_if = "Option::is_none")]
135+
#[serde(default)]
137136
#[rkyv(attr(doc = "The Keccak 256-bit hash of the withdrawals list portion of this block."))]
138137
pub withdrawals_root: Option<B256>,
139138
/// The total amount of blob gas consumed by the transactions within the block, added in
140139
/// EIP-4844.
141140
#[serde(
142141
default,
143142
with = "alloy_serde::quantity::opt",
144-
skip_serializing_if = "Option::is_none"
145143
)]
146144
#[rkyv(attr(
147145
doc = "The total amount of blob gas consumed by the transactions within the block, added in EIP-4844."
@@ -153,7 +151,6 @@ pub struct BlockHeader {
153151
#[serde(
154152
default,
155153
with = "alloy_serde::quantity::opt",
156-
skip_serializing_if = "Option::is_none"
157154
)]
158155
#[rkyv(attr(
159156
doc = "A running total of blob gas consumed in excess of the target, prior to the block. Blocks with above-target blob gas consumption increase this value, blocks with below-target blob gas consumption decrease it (bounded at 0). This was added in EIP-4844."
@@ -166,7 +163,7 @@ pub struct BlockHeader {
166163
/// and more.
167164
///
168165
/// The beacon roots contract handles root storage, enhancing Ethereum's functionalities.
169-
#[serde(default, skip_serializing_if = "Option::is_none")]
166+
#[serde(default)]
170167
#[rkyv(attr(
171168
doc = "The hash of the parent beacon block's root is included in execution blocks, as proposed by EIP-4788. This enables trust-minimized access to consensus state, supporting staking pools, bridges, and more. The beacon roots contract handles root storage, enhancing Ethereum's functionalities."
172169
))]
@@ -175,7 +172,7 @@ pub struct BlockHeader {
175172
/// [EIP-7685] request in the block body.
176173
///
177174
/// [EIP-7685]: https://eips.ethereum.org/EIPS/eip-7685
178-
#[serde(default, skip_serializing_if = "Option::is_none")]
175+
#[serde(default)]
179176
#[rkyv(attr(
180177
doc = "The Keccak 256-bit hash of the an RLP encoded list with each [EIP-7685] request in the block body."
181178
))]

‎crates/primitives/src/types/transaction.rs

-9
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@ pub struct Transaction {
5151
#[serde(
5252
default,
5353
with = "alloy_serde::quantity::opt",
54-
skip_serializing_if = "Option::is_none"
5554
)]
5655
pub gas_price: Option<u128>,
5756
/// Gas amount
@@ -67,15 +66,13 @@ pub struct Transaction {
6766
#[serde(
6867
default,
6968
with = "alloy_serde::quantity::opt",
70-
skip_serializing_if = "Option::is_none"
7169
)]
7270
pub max_priority_fee_per_gas: Option<u128>,
7371
/// Configured max fee per blob gas for eip-4844 transactions
7472
#[rkyv(attr(doc = "Configured max fee per blob gas for eip-4844 transactions"))]
7573
#[serde(
7674
default,
7775
with = "alloy_serde::quantity::opt",
78-
skip_serializing_if = "Option::is_none"
7976
)]
8077
pub max_fee_per_blob_gas: Option<u128>,
8178
/// Data
@@ -87,33 +84,28 @@ pub struct Transaction {
8784
#[rkyv(attr(
8885
doc = "All _flattened_ fields of the transaction signature. Note: this is an option so special transaction types without a signature (e.g. <https://github.com/ethereum-optimism/optimism/blob/0bf643c4147b43cd6f25a759d331ef3a2a61a2a3/specs/deposits.md#the-deposited-transaction-type>) can be supported."
8986
))]
90-
#[serde(flatten, skip_serializing_if = "Option::is_none")]
9187
pub signature: Option<Signature>,
9288
/// The chain id of the transaction, if any.
9389
#[rkyv(attr(doc = "The chain id of the transaction, if any."))]
9490
#[serde(
9591
default,
96-
skip_serializing_if = "Option::is_none",
9792
with = "alloy_serde::quantity::opt"
9893
)]
9994
pub chain_id: Option<ChainId>,
10095
/// Contains the blob hashes for eip-4844 transactions.
10196
#[rkyv(attr(doc = "Contains the blob hashes for eip-4844 transactions."))]
102-
#[serde(skip_serializing_if = "Option::is_none")]
10397
pub blob_versioned_hashes: Option<Vec<B256>>,
10498
/// EIP2930
10599
///
106100
/// Pre-pay to warm storage access.
107101
#[rkyv(attr(doc = "EIP2930 Pre-pay to warm storage access."))]
108-
#[serde(skip_serializing_if = "Option::is_none")]
109102
pub access_list: Option<AccessList>,
110103
/// EIP7702
111104
///
112105
/// Authorizations are used to temporarily set the code of its signer to
113106
/// the code referenced by `address`. These also include a `chain_id` (which
114107
/// can be set to zero and not evaluated) as well as an optional `nonce`.
115108
#[rkyv(attr(doc = "EIP7702 Authorizations"))]
116-
#[serde(skip_serializing_if = "Option::is_none")]
117109
pub authorization_list: Option<Vec<SignedAuthorization>>,
118110
/// EIP2718
119111
///
@@ -131,7 +123,6 @@ pub struct Transaction {
131123
#[serde(
132124
default,
133125
with = "alloy_serde::quantity::opt",
134-
skip_serializing_if = "Option::is_none"
135126
)]
136127
pub queue_index: Option<u64>,
137128
}

‎testdata/scroll_witness/euclid_v2/1.json

+6-4
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,14 @@
3030
"max_fee_per_gas": "0x3b9aca00",
3131
"max_priority_fee_per_gas": "0x1",
3232
"input": "0x6080604052348015600e575f80fd5b506104a58061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063c566b2091461002d575b5f80fd5b61004760048036038101906100429190610298565b61005e565b604051610055929190610359565b60405180910390f35b5f606061010073ffffffffffffffffffffffffffffffffffffffff168360405161008891906103c1565b5f604051808303815f865af19150503d805f81146100c1576040519150601f19603f3d011682016040523d82523d5f602084013e6100c6565b606091505b5080925081935050508161010f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161010690610431565b60405180910390fd5b7fa82cc8725dfeb485badf0c830fc554a37ed268855e35805056c77c86946342098160405161013e919061044f565b60405180910390a1915091565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101aa82610164565b810181811067ffffffffffffffff821117156101c9576101c8610174565b5b80604052505050565b5f6101db61014b565b90506101e782826101a1565b919050565b5f67ffffffffffffffff82111561020657610205610174565b5b61020f82610164565b9050602081019050919050565b828183375f83830152505050565b5f61023c610237846101ec565b6101d2565b90508281526020810184848401111561025857610257610160565b5b61026384828561021c565b509392505050565b5f82601f83011261027f5761027e61015c565b5b813561028f84826020860161022a565b91505092915050565b5f602082840312156102ad576102ac610154565b5b5f82013567ffffffffffffffff8111156102ca576102c9610158565b5b6102d68482850161026b565b91505092915050565b5f8115159050919050565b6102f3816102df565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f61032b826102f9565b6103358185610303565b9350610345818560208601610313565b61034e81610164565b840191505092915050565b5f60408201905061036c5f8301856102ea565b818103602083015261037e8184610321565b90509392505050565b5f81905092915050565b5f61039b826102f9565b6103a58185610387565b93506103b5818560208601610313565b80840191505092915050565b5f6103cc8284610391565b915081905092915050565b5f82825260208201905092915050565b7f507265636f6d70696c652063616c6c206661696c6564000000000000000000005f82015250565b5f61041b6016836103d7565b9150610426826103e7565b602082019050919050565b5f6020820190508181035f8301526104488161040f565b9050919050565b5f6020820190508181035f8301526104678184610321565b90509291505056fea26469706673582212200f74a92387ae88fee4fc7c9238aa9bb6091756accf22046271bf9d976083ed3664736f6c63430008190033",
33-
"r": "0xe6de9d0c2690cb78e410ee6a968110d5a713de6b9f613986ff5a987d32afea31",
34-
"s": "0x4e07c4fe9b184edef8c2c7a58e7b252fc19542c11474cd428d24c9da11bb9fcb",
35-
"y_parity": true,
3633
"chain_id": "0x51615",
3734
"access_list": [],
38-
"transaction_type": 2
35+
"transaction_type": 2,
36+
"signature": {
37+
"r": "0xe6de9d0c2690cb78e410ee6a968110d5a713de6b9f613986ff5a987d32afea31",
38+
"s": "0x4e07c4fe9b184edef8c2c7a58e7b252fc19542c11474cd428d24c9da11bb9fcb",
39+
"y_parity": true
40+
}
3941
}
4042
],
4143
"withdrawals": null,

‎testdata/scroll_witness/euclid_v2/2.json

+48-32
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,14 @@
3030
"max_fee_per_gas": "0x3b9aca00",
3131
"max_priority_fee_per_gas": "0x1",
3232
"input": "0x4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e10e",
33-
"r": "0x46ebf50743ce9a1d90ab42952373e50cc6fadd5b7c6e0331962feb9648afb030",
34-
"s": "0x497b36360dbaf92ded051f34e4b45883bfdc881d91dbd9b56d6ea636d30d824a",
35-
"y_parity": false,
3633
"chain_id": "0x51615",
3734
"access_list": [],
38-
"transaction_type": 2
35+
"transaction_type": 2,
36+
"signature": {
37+
"r": "0x46ebf50743ce9a1d90ab42952373e50cc6fadd5b7c6e0331962feb9648afb030",
38+
"s": "0x497b36360dbaf92ded051f34e4b45883bfdc881d91dbd9b56d6ea636d30d824a",
39+
"y_parity": false
40+
}
3941
},
4042
{
4143
"hash": "0xb9e273887813361e65dc9404133e53d073aebf31fc88723d0901c8e04ce0b087",
@@ -47,12 +49,14 @@
4749
"max_fee_per_gas": "0x3b9aca00",
4850
"max_priority_fee_per_gas": "0x1",
4951
"input": "0x4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e1",
50-
"r": "0xd2a81c1a107acefda7512ff57124e64430e6976ae04d4591517ea554fab96577",
51-
"s": "0x754aaea2817491db269d1189e8cf4cebb5acc462cc91c4045b83a92bbb05d9b",
52-
"y_parity": true,
5352
"chain_id": "0x51615",
5453
"access_list": [],
55-
"transaction_type": 2
54+
"transaction_type": 2,
55+
"signature": {
56+
"r": "0xd2a81c1a107acefda7512ff57124e64430e6976ae04d4591517ea554fab96577",
57+
"s": "0x754aaea2817491db269d1189e8cf4cebb5acc462cc91c4045b83a92bbb05d9b",
58+
"y_parity": true
59+
}
5660
},
5761
{
5862
"hash": "0xa403604b2fe028b4de480157e543d02d77272b4ffe2325cb8c54e51938de4e42",
@@ -64,12 +68,14 @@
6468
"max_fee_per_gas": "0x3b9aca00",
6569
"max_priority_fee_per_gas": "0x1",
6670
"input": "0x4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e10eff",
67-
"r": "0x4a228148c6cc653ac74b1c45d20aabe8686106bbacfb023f52f07be26fcf9d1e",
68-
"s": "0x68350a31097b54db9370b78d0d91738682a747f310bd3a954c3440ca45fb0e0b",
69-
"y_parity": true,
7071
"chain_id": "0x51615",
7172
"access_list": [],
72-
"transaction_type": 2
73+
"transaction_type": 2,
74+
"signature": {
75+
"r": "0x4a228148c6cc653ac74b1c45d20aabe8686106bbacfb023f52f07be26fcf9d1e",
76+
"s": "0x68350a31097b54db9370b78d0d91738682a747f310bd3a954c3440ca45fb0e0b",
77+
"y_parity": true
78+
}
7379
},
7480
{
7581
"hash": "0xf553c9392d6d9caa98861b99119745deaa936f5d0077972edad60e4e23cdb40c",
@@ -81,12 +87,14 @@
8187
"max_fee_per_gas": "0x3b9aca00",
8288
"max_priority_fee_per_gas": "0x1",
8389
"input": "0x4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e100",
84-
"r": "0x385c30794917338d3301c9ca3a93f56d6f6d0d2dfff136cd0a9c597980eb493b",
85-
"s": "0x14f07248e6a8dbd676c3576fcb7d49ab4d6f8bcd124eb071907831ceb52bfe50",
86-
"y_parity": true,
8790
"chain_id": "0x51615",
8891
"access_list": [],
89-
"transaction_type": 2
92+
"transaction_type": 2,
93+
"signature": {
94+
"r": "0x385c30794917338d3301c9ca3a93f56d6f6d0d2dfff136cd0a9c597980eb493b",
95+
"s": "0x14f07248e6a8dbd676c3576fcb7d49ab4d6f8bcd124eb071907831ceb52bfe50",
96+
"y_parity": true
97+
}
9098
},
9199
{
92100
"hash": "0xe62c94089fb8f7ed2349b120fb2d24b03df3481298067dff671f3015d931760d",
@@ -98,12 +106,14 @@
98106
"max_fee_per_gas": "0x3b9aca00",
99107
"max_priority_fee_per_gas": "0x1",
100108
"input": "0xc566b209000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a04cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e10e",
101-
"r": "0xc2de0d5111ed370802ec6549c63eb4cd64f0b36628b74773cf21908a9a043e38",
102-
"s": "0x6eadaf8e1cf402578bf4695f4d40477aa1c1327757013f7e92311789a0e3191a",
103-
"y_parity": false,
104109
"chain_id": "0x51615",
105110
"access_list": [],
106-
"transaction_type": 2
111+
"transaction_type": 2,
112+
"signature": {
113+
"r": "0xc2de0d5111ed370802ec6549c63eb4cd64f0b36628b74773cf21908a9a043e38",
114+
"s": "0x6eadaf8e1cf402578bf4695f4d40477aa1c1327757013f7e92311789a0e3191a",
115+
"y_parity": false
116+
}
107117
},
108118
{
109119
"hash": "0x1409d2efd1f4052f63535421d13678f3664f9f7513de493947019bbced0ad416",
@@ -115,12 +125,14 @@
115125
"max_fee_per_gas": "0x3b9aca00",
116126
"max_priority_fee_per_gas": "0x1",
117127
"input": "0xc566b2090000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000009f4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e100",
118-
"r": "0x94d7b30351deb61158398597f81c888b3d24db2c88f09091fbfd4a23f1da4999",
119-
"s": "0x17a2df719e21b4b23ea06ce52414ee5062283f755c2691e36f7e448ba8677aa6",
120-
"y_parity": true,
121128
"chain_id": "0x51615",
122129
"access_list": [],
123-
"transaction_type": 2
130+
"transaction_type": 2,
131+
"signature": {
132+
"r": "0x94d7b30351deb61158398597f81c888b3d24db2c88f09091fbfd4a23f1da4999",
133+
"s": "0x17a2df719e21b4b23ea06ce52414ee5062283f755c2691e36f7e448ba8677aa6",
134+
"y_parity": true
135+
}
124136
},
125137
{
126138
"hash": "0xb712acf01736e3f2d973a0c52ed754b97ba1fa122645b08770fb18c992e6af43",
@@ -132,12 +144,14 @@
132144
"max_fee_per_gas": "0x3b9aca00",
133145
"max_priority_fee_per_gas": "0x1",
134146
"input": "0xc566b209000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a14cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e10eff00000000000000000000000000000000000000000000000000000000000000",
135-
"r": "0xc390036a156f1cbcb06ec04dbb031c9f4d87843399a8dd1b650190ead16150c6",
136-
"s": "0x3dea83877425cd265840a6acd1b4a732ecb2d17687b0d2760b35abb4f5fd23fc",
137-
"y_parity": false,
138147
"chain_id": "0x51615",
139148
"access_list": [],
140-
"transaction_type": 2
149+
"transaction_type": 2,
150+
"signature": {
151+
"r": "0xc390036a156f1cbcb06ec04dbb031c9f4d87843399a8dd1b650190ead16150c6",
152+
"s": "0x3dea83877425cd265840a6acd1b4a732ecb2d17687b0d2760b35abb4f5fd23fc",
153+
"y_parity": false
154+
}
141155
},
142156
{
143157
"hash": "0x216326474e436bdfe99ecee1ab6c4a6575dfd531581910ec0d1c7229d2993f5b",
@@ -149,12 +163,14 @@
149163
"max_fee_per_gas": "0x3b9aca00",
150164
"max_priority_fee_per_gas": "0x1",
151165
"input": "0xc566b209000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a04cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e100",
152-
"r": "0x86bf5a768e794c374445d8df3f504a80fc9fc2aea67f5079e95904d8ff20d222",
153-
"s": "0x4f022f362ebfdf3ce82e500c9fd7f0a4fa60858c348660cfa647ce64038b4677",
154-
"y_parity": false,
155166
"chain_id": "0x51615",
156167
"access_list": [],
157-
"transaction_type": 2
168+
"transaction_type": 2,
169+
"signature": {
170+
"r": "0x86bf5a768e794c374445d8df3f504a80fc9fc2aea67f5079e95904d8ff20d222",
171+
"s": "0x4f022f362ebfdf3ce82e500c9fd7f0a4fa60858c348660cfa647ce64038b4677",
172+
"y_parity": false
173+
}
158174
}
159175
],
160176
"withdrawals": null,

‎testdata/scroll_witness/euclid_v2/3.json

+6-4
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,14 @@
3030
"max_fee_per_gas": "0x3b9aca00",
3131
"max_priority_fee_per_gas": "0x1",
3232
"input": "0x6080604052348015600e575f80fd5b506102618061001c5f395ff3fe60806040526004361061001d575f3560e01c8063d50f6bf014610021575b5f80fd5b61003b60048036038101906100369190610147565b61003d565b005b5f8173ffffffffffffffffffffffffffffffffffffffff16346040516100629061019f565b5f6040518083038185875af1925050503d805f811461009c576040519150601f19603f3d011682016040523d82523d5f602084013e6100a1565b606091505b50509050806100e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100dc9061020d565b60405180910390fd5b5050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610116826100ed565b9050919050565b6101268161010c565b8114610130575f80fd5b50565b5f813590506101418161011d565b92915050565b5f6020828403121561015c5761015b6100e9565b5b5f61016984828501610133565b91505092915050565b5f81905092915050565b50565b5f61018a5f83610172565b91506101958261017c565b5f82019050919050565b5f6101a98261017f565b9150819050919050565b5f82825260208201905092915050565b7f5472616e73666572206661696c656400000000000000000000000000000000005f82015250565b5f6101f7600f836101b3565b9150610202826101c3565b602082019050919050565b5f6020820190508181035f830152610224816101eb565b905091905056fea26469706673582212202a5c055e4367f030f500411364630895f8cd9dc26305098bfa0300261421697564736f6c63430008190033",
33-
"r": "0x91bc4e62d35a8b4be15ec8b1549acf39536d636f2f005c346d6b6fe8bd105520",
34-
"s": "0x96471830f9884799b12f755ffaea42c872e6a4de62cf257ff0255d5e2f17494",
35-
"y_parity": false,
3633
"chain_id": "0x51615",
3734
"access_list": [],
38-
"transaction_type": 2
35+
"transaction_type": 2,
36+
"signature": {
37+
"r": "0x91bc4e62d35a8b4be15ec8b1549acf39536d636f2f005c346d6b6fe8bd105520",
38+
"s": "0x96471830f9884799b12f755ffaea42c872e6a4de62cf257ff0255d5e2f17494",
39+
"y_parity": false
40+
}
3941
}
4042
],
4143
"withdrawals": null,

‎testdata/scroll_witness/euclid_v2/4.json

+12-8
Original file line numberDiff line numberDiff line change
@@ -30,22 +30,26 @@
3030
"max_fee_per_gas": "0x3b9aca00",
3131
"max_priority_fee_per_gas": "0x1",
3232
"input": "0x",
33-
"r": "0x97430388f4eeb5a0ddc66fb50950acab5b3b769491631eebb7adfd2e44316526",
34-
"s": "0x1f8a7a95cc723657bcc06ce2a19f5cab3744875b9586f133f9375585b14ba8cd",
35-
"y_parity": false,
3633
"chain_id": "0x51615",
3734
"access_list": [],
3835
"authorization_list": [
3936
{
40-
"chain_id": "0x51615",
41-
"address": "0x6f4c950442e1af093bcff730381e63ae9171b87a",
42-
"nonce": "0xb",
4337
"yParity": "0x0",
4438
"r": "0x3947f12c751a62a1aaa44e44637935d15968b9044ce55ed91ee67afbc5e82326",
45-
"s": "0x50ea6a71096a4e98041505c02f90b19fce59ab5c4ff6f58810e42cb54da0f4b9"
39+
"s": "0x50ea6a71096a4e98041505c02f90b19fce59ab5c4ff6f58810e42cb54da0f4b9",
40+
"inner": {
41+
"chain_id": "0x51615",
42+
"address": "0x6f4c950442e1af093bcff730381e63ae9171b87a",
43+
"nonce": "0xb"
44+
}
4645
}
4746
],
48-
"transaction_type": 4
47+
"transaction_type": 4,
48+
"signature": {
49+
"r": "0x97430388f4eeb5a0ddc66fb50950acab5b3b769491631eebb7adfd2e44316526",
50+
"s": "0x1f8a7a95cc723657bcc06ce2a19f5cab3744875b9586f133f9375585b14ba8cd",
51+
"y_parity": false
52+
}
4953
}
5054
],
5155
"withdrawals": null,

‎testdata/scroll_witness/euclid_v2/5.json

+12-8
Original file line numberDiff line numberDiff line change
@@ -30,22 +30,26 @@
3030
"max_fee_per_gas": "0x3b9aca00",
3131
"max_priority_fee_per_gas": "0x1",
3232
"input": "0x",
33-
"r": "0x616ed4ee45177a8c63447f401d239947da5877afbc4d49144d09c58d2136f3bc",
34-
"s": "0x29e168f0595b7712cf4b533fcc435480879a3d3988d2a0699a20fcd3aa58a0dc",
35-
"y_parity": true,
3633
"chain_id": "0x51615",
3734
"access_list": [],
3835
"authorization_list": [
3936
{
40-
"chain_id": "0x51615",
41-
"address": "0x1111111111111111111111111111111111111111",
42-
"nonce": "0xd",
4337
"yParity": "0x1",
4438
"r": "0x4ccb90d1b3df98057fd248b0c6625a5d0deba57bb7ee5bd9d2080eb2c4979da6",
45-
"s": "0x38d124cd9051080ee3d0ddd2aedf4427afe92730e253b7e3ac8cae16b69e3a94"
39+
"s": "0x38d124cd9051080ee3d0ddd2aedf4427afe92730e253b7e3ac8cae16b69e3a94",
40+
"inner": {
41+
"chain_id": "0x51615",
42+
"address": "0x1111111111111111111111111111111111111111",
43+
"nonce": "0xd"
44+
}
4645
}
4746
],
48-
"transaction_type": 4
47+
"transaction_type": 4,
48+
"signature": {
49+
"r": "0x616ed4ee45177a8c63447f401d239947da5877afbc4d49144d09c58d2136f3bc",
50+
"s": "0x29e168f0595b7712cf4b533fcc435480879a3d3988d2a0699a20fcd3aa58a0dc",
51+
"y_parity": true
52+
}
4953
}
5054
],
5155
"withdrawals": null,

‎testdata/scroll_witness/euclid_v2/6.json

+12-8
Original file line numberDiff line numberDiff line change
@@ -30,22 +30,26 @@
3030
"max_fee_per_gas": "0x3b9aca00",
3131
"max_priority_fee_per_gas": "0x1",
3232
"input": "0x",
33-
"r": "0xf1d8199bdf49e2e9e8b562d14c18edfe4c38c80d28637f9452841c18b75e5426",
34-
"s": "0x3672d35f23d51f442d327fa0e8dc85dd1a8b6984b4af44e843ca44333e599c22",
35-
"y_parity": true,
3633
"chain_id": "0x51615",
3734
"access_list": [],
3835
"authorization_list": [
3936
{
40-
"chain_id": "0x51615",
41-
"address": "0xd4b75dfda0a9ab5bbcd7969dafc0bc19589157af",
42-
"nonce": "0xf",
4337
"yParity": "0x0",
4438
"r": "0x859d91855104b6d36e2fe1013ddf265a7fc13e3ee9e144b00ec79d54da7df575",
45-
"s": "0x6eb518f81d06f041e2e6b7ce9b5adf845319f946ea20b54cbb973e959c460dd1"
39+
"s": "0x6eb518f81d06f041e2e6b7ce9b5adf845319f946ea20b54cbb973e959c460dd1",
40+
"inner": {
41+
"chain_id": "0x51615",
42+
"address": "0xd4b75dfda0a9ab5bbcd7969dafc0bc19589157af",
43+
"nonce": "0xf"
44+
}
4645
}
4746
],
48-
"transaction_type": 4
47+
"transaction_type": 4,
48+
"signature": {
49+
"r": "0xf1d8199bdf49e2e9e8b562d14c18edfe4c38c80d28637f9452841c18b75e5426",
50+
"s": "0x3672d35f23d51f442d327fa0e8dc85dd1a8b6984b4af44e843ca44333e599c22",
51+
"y_parity": true
52+
}
4953
}
5054
],
5155
"withdrawals": null,

‎testdata/scroll_witness/euclid_v2/7.json

+6-4
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,14 @@
3030
"max_fee_per_gas": "0x3b9aca00",
3131
"max_priority_fee_per_gas": "0x1",
3232
"input": "0xd50f6bf00000000000000000000000001111111111111111111111111111111111111111",
33-
"r": "0x2bdc8c5db0c98ecd677847152493512fe702fec10ef2d2fefad9a9b39f7f2869",
34-
"s": "0x35803ef4be52ed8247d25ef46fd25774f029129ab159ace266a70b593780b0a0",
35-
"y_parity": true,
3633
"chain_id": "0x51615",
3734
"access_list": [],
38-
"transaction_type": 2
35+
"transaction_type": 2,
36+
"signature": {
37+
"r": "0x2bdc8c5db0c98ecd677847152493512fe702fec10ef2d2fefad9a9b39f7f2869",
38+
"s": "0x35803ef4be52ed8247d25ef46fd25774f029129ab159ace266a70b593780b0a0",
39+
"y_parity": true
40+
}
3941
}
4042
],
4143
"withdrawals": null,

‎testdata/scroll_witness/euclid_v2/8.json

+6-4
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,14 @@
3030
"max_fee_per_gas": "0x3b9aca00",
3131
"max_priority_fee_per_gas": "0x1",
3232
"input": "0x",
33-
"r": "0x15c0b59f613d197d01f67cee9ac2300f7ad624b73dac16677aa87b6b2bb4129b",
34-
"s": "0x38a580d316edc8f28f6e9512f4f355b2dbaa0863406e39d1e911576be1d049b7",
35-
"y_parity": false,
3633
"chain_id": "0x51615",
3734
"access_list": [],
38-
"transaction_type": 2
35+
"transaction_type": 2,
36+
"signature": {
37+
"r": "0x15c0b59f613d197d01f67cee9ac2300f7ad624b73dac16677aa87b6b2bb4129b",
38+
"s": "0x38a580d316edc8f28f6e9512f4f355b2dbaa0863406e39d1e911576be1d049b7",
39+
"y_parity": false
40+
}
3941
}
4042
],
4143
"withdrawals": null,

0 commit comments

Comments
 (0)
Please sign in to comment.