BTC
ETH
HTX
SOL
BNB
View Market
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

The road to L2 interoperability

ECN以太坊中国
特邀专栏作者
This article is about 2814 words, reading the full article takes about 5 minutes
StarkEx 2.0 was launched in November, and conditional trading provides more possibilities for L2 interoperability.
AI Summary
Expand
StarkEx 2.0 was launched in November, and conditional trading provides more possibilities for L2 interoperability.

source|StarkWare 

Summary

background

StarkEx 3.0 (launching in February 2021), will provide L2-L2 interoperability between StarkEx systems using off-chain conditional transactions.

background

  • Layer-2 expansion solutions are developing rapidly. There are already multiple validity proof systems on the Ethereum mainnet, and some fraud proof systems have also launched testnets. L2 solutions, while providing scalability, come at a price: some of the advantages we had of operating entirely on L1 may suffer.

  • We don't want a certain L2 solution to dominate: Different apps have different requirements for scalability, so you can choose a suitable L2 solution according to your own needs. Next, let us explain two important terms to you:

Interoperability: Allow users to efficiently transfer funds between app1 (initial environment) and app2 (target environment).

Composability: the ability to combine the operations contained in app1...appn into a single transaction to send.

Note: Composability will be discussed in detail in a future article.

conditional transactiondiscussA conditional transaction is a block constructed from a password (we first

discuss

Through this concept), it aims to achieve interoperability for permissionless blockchains. A conditional transaction means that whether a transaction takes effect or not depends on whether certain events occur (such as whether payment occurs or the state changes). Conceptually, we first set up a conditional transaction in the initial environment, which takes effect once certain conditions are met in another environment (ie, the target environment).

step by step

We need to do better. For this reason, we have specially made the following plan to achieve L2 interoperability step by step.

“Quick withdrawalPhase I: StarkEx (L2) → Ethereum (L1) — Fast Withdrawal

"(Fast Withdrawals) can solve the problem that users need to quickly withdraw money from L2 system StarkEx to L1. Through fast withdrawal, users can not only transfer funds to their own L1 address, but also transfer funds to any target address of L1 Among them, such as Compound, Aave, etc. Importantly, this allows users to make withdrawals measured in "block time", regardless of how often StarkEx attests to batch transactions.

Participants:

  • Use case: Alice wants to transfer 1 ETH from her dYdX account on L2 to her L1 address.

  • Participants:

  • LP (Liquidity Provider who holds funds on L1)

The StarkEx operator in the initial environment (dYdX in the above example)

image description

Figure 1: Quick withdrawal process

Process: (1) Alice sends a conditional transaction worth 1 ETH to LP (plus a handling fee for LP), the condition is that LP needs to transfer 1 ETH to Alice's L1 address; (2) LP is in After L1 transfers to Alice, the conditional transaction takes effect, and then (3) LP submits the conditional transaction to the operator, and then it is packaged into the next batch of transactions waiting to be proved; (4) Wait until these proofs are submitted After arriving at L1 and being verified, LP's account in L2 received Alice's transfer.

Regular rebalancing: LPs need to regularly take out the funds they gradually accumulated in the L2 account to supplement the funds they gradually consumed in the L1 account.

Initial StarkEx deployments will each host an application. At this stage, we want users to be able to move funds quickly between these different applications. Much like fast withdrawals, we want to minimize on-chain costs for users and save them the time of waiting for the next batch of transactions to be packaged for proof.

Participants:

  • Use case: Alice wants to transfer 1 ETH from her dYdX account (L2_1) to her DeversiFi account (L2_2).

  • Participants:

  • LP (liquidity provider who holds funds on L2_2)

The StarkEx operator on the initial environment (dYdX in the above example)

image description

Figure 2: Off-chain conditional transaction process

Process: (1) Alice sends a signed conditional transaction worth 1 ETH to LP on L2_1 (plus a handling fee for LP), the condition is that LP needs to transfer 1 ETH to Alice's L2_2 account; (2) After LP transfers money to Alice's L2_2 account; (3) The payment is packaged into a batch of transactions, which is then certified by the operator of L2_2 and verified on L1. After these transactions are published on L1 and accepted, the conditional transaction sent by Alice will take effect; (4) LP submits the conditional transaction to the operator of L2_1 and packs it into the next batch of transactions waiting to be proven ; (5) Once the batch of transactions on L2_1 is certified and submitted to L1 for verification, the LP's account on L2_1 receives Alice's transfer.

Regular rebalancing: LP needs to periodically rebalance the funds between the two systems, L2_1 and L2_2, according to the flow of funds between the two systems.

Expanding on Phase 2 to allow funds to be transferred between arbitrary L2 solutions, be it proof-of-validity or proof-of-fraud systems (e.g. Optimistic Rollup, Plasma). The caveat here is that Optimistic Rollups face inherent capital inefficiencies when using LPs to support interoperability (seehere)。

here

first level title

trust model

Now to summarize the trust model we rely on.

for users

Totally trustless.

for LP

  • LPs need to trust the operator (in the initial environment) that it will package their valid conditional transactions, that is, not censor them during processing. This trust can be removed in several ways.

  • If the operator fails to process LP's conditional transactions in a timely manner, LP can:

  • Anti-censorship: Submitting a censored conditional transaction to the smart contract of the operator on the chain will freeze the operator so that the proofs submitted later cannot be processed.

  • Security Collateral: Submit the reviewed conditional transaction to a security collateral smart contract on the chain, and receive funds directly from the contract.

  • Phase 1 will be released on the Ethereum mainnet in November 2020 (i.e. StarkEx 2.0), and phase 2 will be released in the first quarter of 2021 (i.e. StarkEx 3.0). There are already a number of LPs lining up for service.

Disclaimer: ECN's translation work aims to deliver high-quality information and learning resources for the Chinese Ethereum community. The copyright of the article belongs to the original author. Reprints must indicate the source of the original text and ethereum.cn. For long-term reprints, please contact ethereumcn@gmail.com Authorize.

ETH
开发者
Welcome to Join Odaily Official Community