> For the complete documentation index, see [llms.txt](https://corpus-core.gitbook.io/specification-colibri-stateless/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://corpus-core.gitbook.io/specification-colibri-stateless/specifications/ethereum/block-receipts-proof.md).

# Block Receipts Proof

A **Block Receipts Proof** verifies all transaction receipts of a given block. Instead of proving a single receipt via Patricia Merkle Proof, the proof includes **all** raw serialized receipts and the full transactions list from the execution payload.

1. **Receipt Trie Verification:** The verifier builds the complete Patricia Merkle Trie from all serialized receipts and computes the `receiptsRoot`, comparing it against the value in the ExecutionPayload.
2. **Transactions Verification:** The raw transactions list is included so the verifier can compute each `transactionHash` and verify `transactionIndex` for every receipt.
3. **Execution Payload Proof:** An SSZ multi-Merkle proof connects `blockNumber`, `blockHash`, `receiptsRoot`, and the `transactions` hash tree root to the `blockBodyRoot`.
4. **Consensus Reference:** The BeaconBlockHeader provides the `slot` for sync committee identification.
5. **Sync Committee Signature:** The BLS aggregate signature from the sync committee confirms canonical chain membership.

## EthBlockReceiptsProof

The main proof data for all receipts of a block.

The Type is defined in [src/chains/eth/ssz/verify\_proof\_types.h](https://github.com/corpus-core/colibri-stateless/blob/v2.0.2/src/chains/eth/ssz/verify_proof_types.h#L822).

```python
class EthBlockReceiptsProof(Container):
    transactions  : List [transactionsBytes, 1048576] # all transactions from the execution payload
    receipts      : List [bytesList, 65536]           # all RLP-serialized receipts of the block
    blockNumber   : Uint64                            # the number of the execution block
    blockHash     : Bytes32                           # the blockHash of the execution block
    baseFeePerGas : Uint256                           # for effectiveGasPrice when building receipt data in verifier
    block_proof   : List [bytes32, 64]                # the multi proof of transactions, receiptsRoot, blockNumber, blockHash and baseFeePerGas
    header        : BeaconBlockHeader                 # the header of the beacon block
    header_proof  : Union [                           # the proof for the correctness of the header
        EthSignatureBlockProof,                       # proof by providing the signature of the sync committee
        EthHistoricBlockProof,                        # proof for a historic block using the state_root of a current block
        EthHeadersBlockProof,                         # proof block giving a chain of headers up to a verifiable header
        EthCheckpointProof]                           # WSP anchor via LightClientBootstrap (currentSyncCommittee branch)
```

**Referenced Types**

* [BeaconBlockHeader](https://ethereum.github.io/consensus-specs/specs/phase0/beacon-chain/#beaconblockheader)
* [EthSignatureBlockProof](/specification-colibri-stateless/specifications/ethereum/header-proof.md#ethsignatureblockproof)
* [EthHistoricBlockProof](https://github.com/corpus-core/colibri-stateless-doc/tree/main/specification/specifications/ethereum/historic-block-proof.md#ethhistoricblockproof)
* [EthHeadersBlockProof](https://github.com/corpus-core/colibri-stateless-doc/tree/main/specification/specifications/ethereum/historic-block-proof.md#ethheadersblockproof)
* [EthCheckpointProof](/specification-colibri-stateless/specifications/ethereum/header-proof.md#ethcheckpointproof)
