> For the complete documentation index, see [llms.txt](https://cvnnt.gitbook.io/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cvnnt.gitbook.io/documentation/security-model/onion-layered-transactions-and-onion-layered-routing-protocol.md).

# Onion (layered) transactions and onion (layered) routing protocol

Covenant system has deterministic data flow for all its processes and activities. All involved parties are predefined, step-by-step flow sequences are predetermined and programmed.&#x20;

Onion routing a technique for secure encrypted communication over the network that is used on Covenant message supply chain to route and process data securely step by step with a predefined data flow.

Using onion transaction structure and onion routing, Covenant provides atomic and stateful complex transaction (messaging) handling with structured, algorithmic failure rollback .

Onion cryptography design approach allows Covenant to specify and route secured messages in an effective, secure and trustless manner, and also significantly lowers message attack surface (messages revealing / spam / spoofing / tampering) .

The main principle of an onion (layered) routing concept is that the core message is encapsulated in several layers of encryption (challenges), analogous to the layers of an onion, so process of delivering a message is the process of layered step-by-step opening (solving the challenge) of layers one by one, when the core layer is a message itself and can be opened only by the recipient itself. &#x20;

On Covenant system each layer of encryption (challenge) can be resolved only by a specific, predefined party via a strictly predefined process. Each party in the message supply chain can operate only with a single layer where they know only their own challenge and next destination step, without any access to the underlying message or other layers. On Covenant, each layer in addition serves as a routing ‘label’, allowing parties to ultimately recognize messages that are intended for the exact party at the exact specific stage. Covenant system utilizes onion (layered) signatures for onion routing process to ensure that at each step the message can only be processed with a party that is ultimately recognized and is responsible for this step processing.&#x20;

\
\ <br>
