# Execution Layer Data Retrieval and Verification

## EVM-Compatible Chains

Since the Corpus Core Colibri Client (C4) is not part of the peer-to-peer network, it retrieves blockchain data from external providers, such as centralized or decentralized RPC services. To ensure trustless verification, all retrieved data is accompanied by cryptographic proofs, precisely Merkle proofs obtained via EIP-1186 (`eth_getProof`).

C4 enables verification of execution layer data through:

* **Account and Storage Validation**—Uses Merkle proofs to verify balances, nonce values, and smart contract storage against blockchain state.
* **Transaction Inclusion Verification**—This process ensures that a transaction is part of a specific block by validating Merkle proofs against the block header.
* **Receipt and Event Log Verification**—Authenticates transaction receipts, gas usage, and emitted events.
* **Block Header Validation**—Confirms the correctness of block hashes, state roots, and receipts roots.
* **Smart Contract Execution Validation**—Runs smart contracts within the embedded EVM and verifies state changes and execution results using Merkle proofs.

C4 ensures interoperability and trustless validation without requiring network synchronization by applying the same verification approach across all EVM-compatible chains. However, at this stage, only the integrity of the retrieved information is guaranteed, meaning that the data belongs to a specific block. The correctness of the block itself is only established through the consensus verification process, which ensures that the block was legitimately produced and signed by the correct validators.

## Non-EVM Chains

While C4 is initially designed for EVM chains, it can extend its functionality to other Layer-1 and Layer-2 blockchains that provide verifiable proof mechanisms. For non-EVM chains, the verification approach depends on:

* **Availability of State Proofs**—The blockchain must support cryptographic proofs that validate the correctness of state data.
* **Block Inclusion Proofs**—Proofs must exist to verify that specific data belongs to a given block.
* **Smart Contract Execution Proofs**—If applicable, the blockchain must provide a way to prove the correct execution of smart contract logic, such as zk-proofs or fraud proofs in optimistic rollups.

By adapting its verification model to different proof structures, C4 can extend its trustless verification approach beyond EVM-based networks to support a broader range of blockchain ecosystems.
