Bridge operation principle

A decentralized bridge allows transferring Toncoins from the TON network to the Ethereum network and back effortlessly.

Transfer Toncoins

From TON network to Ethereum Network

1
A user sends their Toncoins to an ad hoc smart contract in the network
2
These coins get locked on the smart contract.

Another ad hoc smart contract in Ethereum mints the same amount of ERC20 TONCOINS.
3
The Ethereum smart contract forwards newly generated TONCOINS to a user wallet.

1 Toncoin

Native

=

1 TONCOIN

ERC20

From Ethereum Network to TON Network

1
A user sends their TONCOINS to an ad hoc Ethereum smart contract
2
These TONCOINS are burnt and a counterpart contract in the TON Blockchain network unlocks the same number of Toncoins.
3
TON Blockchain contract sends the coins to a user wallet.

The total number of coins remains unchanged

Open Documentation

Bridge Oracles

Bridging is managed by oracles with PoS tools implemented to maintain system decentralization.

1
Creating an oracle takes starting an ad hoc software. It requires a server with strong connection to the Internet operating 24/7.
2
An oracle temporary releases its Toncoins by transferring them to a bridge smart contract.

This stake is returned after the work is done with surplus coins to reward the oracle.

The stake size is determined by the current TON configuration.

If an oracle tries to cheat or fails to perform, it is fined by other oracles that take hold of its stake.
3
Then TON validators have to vote for including the oracle to the oracle list.

The oracle list is an element of the TON configuration.

Validators giving votes to unfair oracles risk being fined.
4
Oracles monitor user applications for Toncoin cross network transfers and approve transfer transactions in the bridge smart contract.

A transfer is not approved unless and until at least 2/3 of all oracles approve it.
5
Therefore, oracles have to correctly process user transactions at maximum speed to get rewarded and avoid penalties.

Oracle reward

A small fee (fraction of a percentage) is charged on each bridged transfer to reward oracles.

The fee size is a part of the Bridge smart contract.

The total collected fee is equally distributed between all oracles upon completion of work to reward them for maintaining the system operational.

What if an oracle tries cheating?

If an oracle approves a transfer amount different from the user original request, it is considered a cheating attempt.

And, given that a transfer is not performed unless approved by 2/3 of all oracles and invalid transaction will be rejected.

Once a rejected transaction is detected, other oracles vote for excluding the cheater from the oracle list and fining the culprit by taking their stake.

Also, validators that originally voted for including the cheater to the list can be fined.