Gasless DNSSEC Resolution
Demonstrates gasless DNSSEC resolution by combining CCIP-Read (EIP-3668) with the P-256 precompile (EIP-7951) for efficient on-chain verification. DNSSEC proofs are fetched off-chain via gateway.eketc.co and verified on-chain using the P-256 precompile, enabling zero-gas resolution of DNS-verified ENS records using Algorithm 13.
Resolver Dashboard
Resolver Contract
0x06A0388ff02830c848CbD5df80C0aE6780754827Verifier Contract
Loading...
Gateway URL
Loading...
ENS ↔ DNS Link
dnssec.eth↔eketc.co
Contract Owner
Loading...
Supported Interfaces (ERC-165)
ITextResolver: ...IAddrResolver: ...IExtendedResolver: ...
P256
EIP-7951 Enabled
Using P-256 precompile at 0x0100 for ECDSA verification
Stored Records
ETH Address
On-chainLoading...
Text Records
name...
description...
url...
avatar...
email...
com.twitter...
com.github...
org.telegram...
Set Records
Loading...
DNSSEC Verification Demo
eketc.co
1
Trigger CCIP-Read
Call text() or addr() on resolver, receive OffchainLookup revert
2
Fetch Proof Bundle
Request DNSSEC proof from gateway server
3
Send ccipCallback Transaction
Submit DNSSEC proof onchain for verification
4
Transaction Confirmed
DNSSEC proof verified onchain using EIP-7951 P-256 precompile
CCIP-Read Flow Diagram
1
Client RequestDApp / ENS App → Resolver
text("dnssec.eth", "name")
2
OffchainLookup RevertResolver → Client
revert OffchainLookup(urls, callData, callback)
3
Gateway RequestClient → Gateway
POST gateway.eketc.co/ccip-read
4
DNSSEC Proof BundleGateway → Client
{ proofBundle, question } for eketc.co
5
Callback ExecutionClient → Resolver
ccipCallback(proofBundle, question)
6
DNSSEC VerificationResolver → Verifier
verify(proofBundle) → EIP-7951 P-256
7
Verified ResultResolver → Client
return "estmcmxci" (verified)
Legend
Contract Call
Revert (EIP-3668)
Offchain Request
Response
Resolver: 0x06A0388f...
Verifier: 0x580F2Db4...

