Across V4 introduces new and improved crosschain architecture.
The system combines intents and zero-knowledge proofs (ZKPs) to expand to more chains, faster.
Here’s the technical breakdown. 🧵

Previously, Across used “canonical bridges” or chain-specific adapters to verify messages from Ethereum’s HubPool.
This worked fine for L2s like Arbitrum and Optimism, which expose Ethereum-finalized state.
But this design was limiting…
For non-EVM chains like BSC, this model breaks down.
There’s no canonical way to verify Ethereum state. This either meant building custom adapters or not supporting those chains at all.
Neither of those are optimal solutions. So we figured out a better way using ZKPs.
Here’s the process:
When relayers fill crosschain orders, the transactions are batched into relayer repayment bundles, which are then verified by @UMAProtocol’s Optimistic Oracle.
This always happens on Ethereum mainnet.

Once a bundle is verified, the Across HubPool triggers the settlement process.
It then writes the repayment message hashes to the HubPoolStore contract in specific storage slots.
This storage event also happens on Ethereum mainnet.
Each message hash in the HubPoolStore contract corresponds to an intent to repay a relayer on a destination chain.
Note that L1 → L2 messages can represent multiple repayments (including slow fills). This is because they are root bundles.
When the HubPoolStore contract writes a stored message hash, it emits a StoredCallData event.
This event contains the message hash and storage slot.
The event + the stored data form the anchor for ZK verification downstream.
A service called the finalizer listens for those events.
Once it detects a new one, it initiates a process to prove that the message hash was indeed written on Ethereum.
Every message, for which the hash is stored, has a target which can be specific to its chain.
This proof allows the message to be safely executed on the destination chain.
But Ethereum finality isn’t instantaneous.
Once the finalizer sends the data to the ZK API, the API waits through Ethereum’s finality window before generating a proof.
To generate a valid ZK proof, the Ethereum sync committee must sign off on a specific finalized block.
If the message was included in or before that block, the required signatures become available to start generating the ZK proof.
The finalizer queries the ZK API to generate a proof that a specific message hash was written to a known HubPoolStore storage slot in a finalized Ethereum block.
This enables trustless verification of relayer repayments on any destination chain.

The ZK API prepares proof inputs including (but not limited to):
- Finalized beacon headers
- Sync committee signatures
- Merkle proofs of storage from Ethereum’s execution layer
These form the basis for generating the proof.
Across deploys a generic stack on destination chains:
- A Verifier contract (validates the ZK proof)
- SP1Helios by @Succinct (stores finalized Ethereum state)
- UniversalSpokepool contract (verifies the authenticity of messages during execution)

Once the ZK proof is verified and state is confirmed, executeMsg() can safely run the payload on the destination chain.
Trustless. Secure. Universal.
This means Across no longer needs custom adapters for each chain.
Just one pipeline that works everywhere:
storeMsg() on Ethereum → ZK proof → executeMsg() on any destination chain that can verify the SP1Helios proof.

No trust assumptions.
No integration overhead.
Just Intents + ZK.
Why is this a big deal?
It dramatically expands Across’ reach by unlocking support for long-tail chains that can’t verify Ethereum state natively and don’t have canonical bridges.
This makes onboarding faster, safer, and more scalable.
Across doesn’t need a canonical bridge for these chains. It just needs the ability to verify a ZK proof of Ethereum state.
This reduces integration overhead, avoids centralized bridging risk, and reinforces Ethereum’s role as the root of crosschain truth.
7.68K
42
The content on this page is provided by third parties. Unless otherwise stated, OKX is not the author of the cited article(s) and does not claim any copyright in the materials. The content is provided for informational purposes only and does not represent the views of OKX. It is not intended to be an endorsement of any kind and should not be considered investment advice or a solicitation to buy or sell digital assets. To the extent generative AI is utilized to provide summaries or other information, such AI generated content may be inaccurate or inconsistent. Please read the linked article for more details and information. OKX is not responsible for content hosted on third party sites. Digital asset holdings, including stablecoins and NFTs, involve a high degree of risk and can fluctuate greatly. You should carefully consider whether trading or holding digital assets is suitable for you in light of your financial condition.