EAS Resolvers
EAS Resolvers unlock location-based smart contracts. They allow you to execute arbitrary logic whenever an attestation is created — turning geospatial policy attestations into triggers for onchain actions.For background on the Ethereum Attestation Service, see the EAS documentation.
What is a Resolver?
In the Ethereum Attestation Service, a resolver is a smart contract that gets called whenever an attestation is made against a specific schema. This enables:- Validation: Accept or reject attestations based on custom logic
- Side Effects: Execute actions atomically with attestation creation
- Composability: Combine attestations with any onchain logic
The Pattern
Basic Resolver Contract
Code snippets need testing — Verify against actual implementation before use.
About the Astral signer: The
astralSigner address is the key that signs policy attestations inside the TEE. Signer management (multisig, key rotation, etc.) is on the roadmap. See Security for more details.Common Patterns
NFT Minting
Token Distribution
Access Control
Numeric Policies (Distance-Based)
Use numeric policy attestations (distance, area, length) for more sophisticated logic like spatial demurrage — where transfer fees vary based on distance from a target location.Decoding Attestation Data
Boolean Policies
Numeric Policies
Verification Best Practices
Verify Attester
Verify Attester
Always check
attestation.attester == astralSigner:Check Timestamp
Check Timestamp
Prevent replay of old attestations:
Verify Input References
Verify Input References
Ensure the right locations were checked:
Track Used Attestations
Track Used Attestations
Prevent reuse of attestations:
Registering Your Schema
Key Rotation
Resolver contracts should support updating the Astral signer address. For the research preview, we recommend a simple owner-controlled approach:For production deployments, you may want the owner to be a multisig. We plan to provide more graceful key rotation mechanisms in future releases.
Next: Verifiable Computation
Learn how EigenCompute provides trust