From 8163c9d5ff2e4ef02eccdc8b5a25a7f11b246515 Mon Sep 17 00:00:00 2001 From: Noah Citron Date: Thu, 26 Sep 2024 19:03:47 -0400 Subject: [PATCH] fix: correct p2p block signature data (#392) * fix: correct p2p block signature data * specs: p2p block signing spec - fix line length --------- Co-authored-by: protolambda --- specs/protocol/rollup-node-p2p.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/specs/protocol/rollup-node-p2p.md b/specs/protocol/rollup-node-p2p.md index 8bac04088..0e3ca19c5 100644 --- a/specs/protocol/rollup-node-p2p.md +++ b/specs/protocol/rollup-node-p2p.md @@ -288,7 +288,8 @@ The `signature` is a `secp256k1` signature, and signs over a message: - `domain` is 32 bytes, reserved for message types and versioning info. All zero for this signature. - `chain_id` is a big-endian encoded `uint256`. -- `payload_hash` is `keccak256(payload)`, where `payload` is the remaining bytes of the payload. +- `payload_hash` is `keccak256(payload)`, where `payload` is the `payload` in V1 and V2, + and `parentBeaconBlockRoot ++ payload` in V3. The `secp256k1` signature must have `y_parity = 1 or 0`, the `chain_id` is already signed over.