EAS Module
Seamless integration of Ethereum Attestation Service within the Maroo ecosystem.
The x/eas module serves as a bridge between the Cosmos SDK layer and the EVM-based Ethereum Attestation Service (EAS) contracts. It allows developers and system components to query attestations, schemas, and indexing data directly through Maroo's standard gRPC and CLI interfaces without needing a separate EVM RPC provider. This module is critical for Maroo's Identity and Compliance systems, which rely on on-chain attestations for KYC, KYB, and AI agent verification.
Key Features
Cross-Layer Querying
Access EVM smart contract state (attestations) via Cosmos SDK gRPC and CLI tools.
Native Indexer Support
Built-in support for querying the EAS Indexer contract to retrieve attestations by recipient.
Standardized Decoding
Automatically decodes Solidity ABI-encoded attestation data into structured Go types.
Architecture
graph TD User[Developer/Client] -->|gRPC/CLI| SDK[Cosmos SDK x/eas] SDK -->|EvmKeeper| EVM[EVM Layer] EVM -->|Call| EAS[EAS Contract] EVM -->|Call| IDX[Indexer Contract] EAS -->|Return Data| SDK SDK -->|JSON/Proto| User
The x/eas module acts as a read-only proxy, translating SDK queries into EVM contract calls.
How It Works
EvmKeeper to perform direct view calls to the deployed EAS and Indexer smart contracts on the EVM layer. When a query is received (e.g., GetAttestation), the module packs the parameters into Solidity ABI format, executes the call against the configured contract address, and unpacks the returned bytes into a structured Protobuf response.This architecture ensures that the Cosmos SDK layer always reflects the real-time state of the EVM contracts without data duplication or synchronization latency. It effectively exposes the EAS protocol as a native Cosmos module.