Polygon PoS Hook
Polygon PoS has their own interface for message passing between Ethereum and Polygon called the fx portal
. Messages passed via this interface benefit from the security of the Polygon state sync mechanism.
To provide this security as an option in Hyperlane, we created a Hook and ISM combo that can be transparently configured to reuse the fx-portal interface.
See the addresses page for Hook and ISM addresses.
How It Works
Polygon FX-Portal provide FxChild (FxChild.sol) and FxRoot (FxRoot.sol) as the main contracts on which the bridge works. It calls and passes data to user-defined methods on another chain without needing a mapping.
The FxChild/FxRoot contract are provided and maintained by the polygon team. You can find the address of this contract in Polygon’s Fx-Portal repo.
The PolygonPosHook sends payloads with FxRoot. Validators will pick up the message and pass it to the other chain. You can find detailed state sync mechanism in documentation StateReceiver
at 0x0000000000000000000000000000000000001001
is allowed to call onStateReceive
in FxChild contract. FxChild calls processMessageFromRoot
in abstract CrossChainEnabledPolygonChild
on which PolygonPosISM implements. CrossChainEnabledPolygonChild
is maintained by OpenZeppelin