Skip to content

Transactions

A saline transaction is an atomic state change describing asset transfers, intent management actions and related bookkeeping.

Native

Since a transaction allows for arbitrary asset transfers between pairs of addresses, then swaps and more complex operations can be described purely native and don't need to pay the overhead of smart contract execution, worry about auditing ad-hoc code, or be broken into multiple transactions, each with their own gas costs (e.g. as would be the case for multiple transfers of native ETH in Ethereum).

Atomic

All transfers are performed at a single logical time and validated all at once. Either all effects are accepted or none are. As a consequence, it is possible to perform operations that when interpreted sequentially would temporarily cause balances to go negative and possibly cause a revert. Put another way, flash loans become native and seamless. This extra flexibility removes several cumbersome hurdles and we also avoid some chicken-and-egg scenarios. For instance, one can pay gas for a transaction with SALT purchased (say, via swap with ETH) during that same transaction, facilitating bridging of funds from other chains.

Performant

Another benefit of this structure is that the effects of transactions can be run in parallel, as can the validation that they fulfill the relevant intents. This allows for more efficient use of resources, meaning cheaper gas costs, lower latency and higher throughput. Additionally, given intents do away with the common requirement that every involved party to actively sign the transaction, even transactions with complex transfer networks can have a single signer, meaning a single signature verification of a single public key, minimizing the intensive and expensive resource usage of cryptography operations.