Using state proofs for secure cross-chain intents
a simple write-up for secure chain-agnostic intent transactions
This simple write-up proposes using Lagrange State Committees as the source of chain-agnostic verifiable data to settle cross-chain intent transactions.
“A Lagrange State Committee is an efficient ZK light client for optimistic rollups that settle on Ethereum. It is made up of a decentralized network of nodes, each attesting to the finality of blocks within an optimistic rollup. The attestations are then used to generate state proofs or aggregated ZK proofs, which applications can use as the source of truth for the state of that particular optimistic rollup, such as for bridging and interoperability messaging.” —lagrange.dev
With this method, solvers do not have to wait for the fraud proof window of optimistic rollups (7d in the case of OP Stack) to clear in order to claim their fronted liquidity.
Imagine 1inch Fusion / CoW swap, but extended for any chain. Also, there will be no liquidity requirements on both sourceChain and destChain in order to facilitate a cross-chain swap.
How it works:
User sends intent transaction on source chain: "swap my 1 ETH on Ethereum for 3k USDC on Arbitrum". This puts the user's 1 ETH in escrowContract on sourceChain, claimable by the solver upon settlement later.
A solver interacts with escrowContract to “book” the user’s intent, then fulfills it (sending 3k USDC to user destChain address) by fronting its own liquidity (consider them a cross-chain market maker, maintaining liquidity on each respective trading venues aka chains).
The solver requests a state proof from Lagrange’s State Committee to prove that they have successfully fulfilled the transaction on destChain. The user's 1 ETH is then released from escrowContract to the solver’s address upon successful verification. If it is inconsistent with the transaction (or the escrowContract doesn’t receive a response from the solver within a certain timeframe, say 24 hours), the user's 1 ETH will be returned back to the user.
Additional notes
The risk is all on the solver: they have to front liquidity, and prove the accuracy of their cross-chain fulfillment. For the user, worst-case is full reimbursement after a short delay — no capital risk is assumed.
For liquidity scaling / gas-optimization purposes, intent transactions may be aggregated offchain then combined into a single escrowContract. Solvers will first front capital and settle individually, then claim user funds in bulk with a single proof.
For example: assuming 1 ETH + 3 ETH + 2 ETH txns, users may use an offchain matching service to hold the orders first, then collectively submit them together under one escrowContract. Solvers will then settle to the offchain matcher's address on destChain, which is then distributed the funds to respective users. The contract isn't aware of the multiple-user arrangement: in case of dispute, storage proof will prove w.r.t. to the offchain matcher's address, and reimbursement are made to the offchain matcher as well. Small amount users will explicitly place trust on the offchain matcher, for cheaper gas cost.
But this isn't a concern: offchain matcher has no incentive to steal, lest they lose future business (offchain matching is like block builders / relays — competition is fierce and will be dog-eat-dog if one party misbehaves).
Alternatively, we could opt for dispute-based settlement, where onchain proof submission is only needed when a dispute is raised. However, this would mean liquidity is now the bottleneck, as solvers would need to lock capital equivalent in value or exceeding their settlement volume for the duration of the "available for dispute" period).
Potential risks
If a network of solver manages to attain 2/3 voting power of Lagrange State Committee, they might be able to attest to a fraudulent root to fool the escrowContract and claim user funds on sourceChain, even when they haven’t sent anything to the user on destChain.
However, this would gradually become a non-issue as Lagrange grows its cryptoeconomic security via EigenLayer or rETH. So long as the protocol’s aggregate “TVL on unsettled intents” doesn’t exceed Lagrange State Committee’s “Cost of Corruption”, the protocol will remain cryptoeconomically secure.