Each time some data coming from a different domain is accessed on another domain in order to ensure it's cryptographic correctness a commitment is required, such commitment can be:
- State root
- Block hash
- Transactions root
- Receipts root
These roots are received by a contract called
CommitmentsInboxthese can be delivered in multiple ways like:
- Receiving those as asynchronous messages.
- Validating the network consensus in a verifiable manner. (Available only for decentralized L2s)
- Optimistic relayers.
Once a commitment is accepted by the
CommitmentsInboxit gets passed to the