> For the complete documentation index, see [llms.txt](https://docs.bitoftrade.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bitoftrade.com/for-developers/cross-chain-messaging-protocol/how-it-works.md).

# How it works

Cross Chain Messaging Protocol consists of 3 steps:&#x20;

1. Emit event on the SRC chain
2. Verify the event and get proof from the Signer
3. Receive the event on the DEST chain&#x20;

The key part of the protocol is proof of the event. &#x20;

\
[Signer Service](/for-developers/cross-chain-messaging-protocol/how-it-works/signer-service/signer-interface.md) is responsible for producing proofs, whereas [Signers Registry smart contract](/for-developers/cross-chain-messaging-protocol/how-it-works/signers-registry-contract.md) is responsible for validation if proof was made by the correct Signer.&#x20;
