# StarkNet 和 Ethereum 的桥接之旅

By [Charles Paul](https://paragraph.com/@charles-paul) · 2022-11-13

---

原文作者及链接：[Sean](https://medium.com/@0xs34n) from [StarkScan](https://starkscan.co/)

[https://medium.com/@starkscan/how-to-bridge-between-starknet-and-ethereum-3f1b9704aed2](https://medium.com/@starkscan/how-to-bridge-between-starknet-and-ethereum-3f1b9704aed2)

### 引言

桥接来自不同生态系统的代币一直是一个挑战。记得当我在 2020 年末第一次从Ethereum 跨链到 Polygon（当时是 MATIC）时。我问了与现在使用过 StarkGate 的 [StarkNet 社区](https://discord.com/invite/QypNMzkHbc)成员相同的问题：

> _我的资金在哪里？代币什么时候才能跨过去？资金安全吗？_

用户的跨链体验更像是祈祷。你祈祷资金会安全地到达另一条链。当资金确实以某种方式出现时，这是一种解脱和惊喜。跨链体验似乎总有一种风险感。

通过 Rollup 跨链
------------

Rollup 的独特之处在于，继承了 Ethereum 的安全性，Ethereum 是真理。即使 StarkNet 产生区块，StarkNet 区块上的所有交易都会“汇总”并由 Ethereum 验证。因此，最终的安全性永远来自是 Ethereum。

这个特性为我们提供了一个阐明桥接过程的机会。当我们从 Ethereum 跨链到 StarkNet 时，从 Ethereum 发送到 StarkNet 的信息最终都会返回到 Ethereum 上。当我们从 StarkNet 跨到 Ethereum 时，信息就像正常交易一样被 “汇总” 到 Ethereum 上。

让我们看一个非常简化的桥接过程图（更多细节请参考 [StarkNet documention](https://docs.starknet.io/documentation/develop/L1-L2_Communication/messaging-mechanism/)）：

Ethereum → StarkNet
-------------------

![](https://storage.googleapis.com/papyrus_images/8669b9f3fb87ec3cc46c3e0ba9f95379a8dc8c2b0b991dfddc4ed620e320f549.png)

StarkNet→Ethereum
-----------------

![](https://storage.googleapis.com/papyrus_images/9344cc6247b7ecc8656488dac326f46ead5eaa450c4e255d23b4df7dd6f67e46.png)

**通过** [**StarkScan**](https://starkscan.co/)**，我们可以清楚地掌握跨链过程的每个阶段，无论是 Ethereum 到 StarkNet 还是 Starknet 到 Ethereum！**

StarkScan 与 StarkGate
---------------------

[StarkGate](https://starkware.co/) 是由 StarkWare 开发的在 Ethereum 和 StarkNet 之间的跨链桥。

[StarkScan](https://starkscan.co/) 是为 StarkNet 构建的下一代区块浏览器。

团队构建的 StarkScan 具有独特的功能，使跨链过程更加清晰明朗。

让我们看看如何在 Ethereum 和 StarkNet 之间桥接代币！

如何在Ethereum 和 StarkNet 之间跨链
---------------------------

让我们从将代币从 Ethereum 存入 StarkNet 开始。

前往 [StarkGate](https://starkgate.starknet.io/)：

Ethereum → StarkNet
-------------------

1、输入您要桥接的 ETH 数量，然后点击 **Transfer**

![](https://storage.googleapis.com/papyrus_images/ae1468051498f1c1e722ebedfe65bbe2710ca88b18f7217e6bc3d10d9e18a94f.png)

2、要跟踪您的跨链进度，请点击上方图片中的 **View on StarkScan** ，然后往下拖动界面到 **StarkGate** 部分再点击 **Track progress with Message Hash** 。

![](https://storage.googleapis.com/papyrus_images/dc6716afb3f597faad2cf879e44b6cbb9d4ff1326f446ce1c1a6f1c10b904833.png)

3、信息的 **Status** 变化的过程为: **Registered on L1 → Consumed on L2 → Cleared on L1** .当 **Status** 变为 **Cleared on L1** 后，您应该能够在 **StarkNet** 上看到您的资金！

接下来，我们将看看从 StarkNet 提款到 Ethereum。

StarkNet→Ethereum
-----------------

1、点击 **Withdraw** 选项。输入您要桥接的 ETH 数量，然后点击 **Transfer。**

![](https://storage.googleapis.com/papyrus_images/277b1ccc995a087e4b617dd5d5911d2234b817ba57ac64f870352ab0d38868af.png)

2、要跟踪您的跨链进度，请点击 **View on StarkScan** 并等待交易状态从 **Received** 变为 **Pending or Accepted to L2** 。这可能需要几分钟到一个小时。一旦状态为 **Pending 或 Accepted to L2** ，您可以看到下方 **StarkGate** 部分。点击 **Track progress with Message Hash** 跟踪您的交易传输进程。

![](https://storage.googleapis.com/papyrus_images/3440acff8e38aeea5de9b9264b31ba295ba4a2e613d0fdbc99e9d4f71f53949a.png)

3、信息的 **Status** 将会从 **Sent on L2 → Attached on L1 。Status** 达到 **Attached on L1** 后，点击 **StarkGate**上的 **Complete Transfer**. _Status 变成_ **_Attached on L1_** _可能需要几个小时！_

![](https://storage.googleapis.com/papyrus_images/161f6c3db207ce044fa259d95ee95de2dd1dc5842533639d7b371443e8c5c6b5.png)

4、点击 **Complete the Transfer** 并签署交易后，导航到 **Starkscan** 。您将看到信息的 **Status** 已变为 **Consumed on L1** 。这意味着您已成功从 StarkNet 跨链到 Ethereum！

### 展望

在 Ethereum 和 StarkNet 跨链交易中添加 message logs、StarkGate 和 Message Status 是我们使跨链过程更加清晰、具有确定性和信心的第一步。我们正在探索进一步与 StarkGate 集成的方法，以帮助用户进行与 StarkNet 相关的跨链操作。

感谢阅读！

---

*Originally published on [Charles Paul](https://paragraph.com/@charles-paul/starknet-ethereum)*
