# StarkEx：透明、可扩展的交易所解决方案

By [0xBai_](https://paragraph.com/@alpies) · 2023-11-08

---

### **长话短说**

*   中心化交易所的用户要求提供偿付能力证明，仅声称“交易所受到监管”是不够的
    
*   现有的方法（例如基于第三方审计的储备证明）存在弱点（它们不会每天更新，并且可以被利用）
    
*   在以太坊之上的 StarkEx Validity Rollup 上运行中心化交易所可以带来诸多好处：
    
    *   交易所可以受到限制并遵守相关司法管辖区的规定
        
    *   每个有效性证明都有一个储备证明（大约每天两次！）
        
    *   用户可以选择自我托管，但仍然积极交易
        
    *   如果交易所运营商关闭，用户可以通过以太坊提款
        
    *   交易所不能免除任何个人交易者的清算——每个人都遵循相同的规则
        

#### **介绍**

FTX 原本是一个完全受监管的交易所，以 1:1 的比例存储用户资产。他们让我们失望并欺骗了我们。

因此，用户希望获得更高的透明度。**他们想要一种无需信任的**方式来  验证交易所确实拥有能够满足其负债的确切资产。他们不信任监管，而是信任代码。此外，许多用户希望在不失去交易能力的情况下进行自我托管。

#### **储备证明还不够好**

储备金证明如何运作？通常，外部审计师每季度一次访问交易所的账簿。他们验证交易所控制的钱包是否有足够的资产来承担用户的负债。然后，审计员保留一棵 Merkle 树，其中每个叶子都包含每个用户的资产余额。然后，用户可以根据该审核员验证他们的余额是否出现在该树中。Kraken 多年来一直在这方面做得很好。请参阅他们的 [储备证明](https://www.kraken.com/proof-of-reserves) 网页。

问题在于，储备证明给最终用户带来了错误的安全感。为什么？

**储备证明不会每天更新**

交易所每季度拍摄一次快照，然后审计员需要几周的时间来准备好一切。在那段时间，该行业可能经历了一场传染事件，给交易所带来了巨大的压力。

**交易所可能与审计师串通**

虽然审计师可能希望维护自己的长期声誉，并避免违法，但简单的事实是，他们仍然存在被贿赂而撒谎的风险。FTX 声称受到 GAAP 审计的监管，看看发生了什么。

**交易所可以在快照之前借入资产**

交易所可以通过在快照之前从交易对手借入资产来欺骗审计。他们可以将这笔贷款记入账簿，并向审计师声称这些资金是从冷钱包转移的。这是一个真正的风险。

**交易所必须签署冷钱包来证明所有权**

交易所通常声称他们拥有与互联网隔离的冷钱包。这些钱包有严格的控制以避免黑客攻击。如果需要季度证明，则每个季度都会对这些钱包进行签名。这给交易所带来了操作风险。

#### **StarkEx 解决一切**

有比储备证明更好的选择。有一种架构存在，不仅可以证明交易所拥有确切的资产来满足用户的负债，而且还可以以可信 **的** **方式防止交易所完全窃取用户的资金**。

在继续阅读之前，请务必阅读 [Vitalik](https://vitalik.ca/general/2022/11/19/proof_of_solvency.html) 关于此问题的文章，特别是标题为“Plasma 和 validiums：我们可以使 CEX 成为非托管吗？”的部分。

#### **StarkEx架构**

使用 [StarkEx](https://starkware.co/starkex/) 架构（见上图），中心化交易所可以像现在一样运行大部分系统。他们的用户注册流程仍然与今天一样。它将具有与交易所目前根据其管辖范围所遵循的相同的 KYC/AML 要求。此外，订单簿和匹配引擎将保持集中化。这很重要，因为它确保流动性提供者可以实时提供定价，就像他们在传统金融世界中习惯的那样。链上订单引入了区块时间和网络同步的延迟，这阻碍了传统做市商提供流动性。

唯一的区别是，实际交易将被发送到 StarkEx 服务（REST API），并通过 STARK 证明的验证在以太坊上进行链上结算。这里有很多东西需要解开，所以让我们回顾一下流程。

1.  我拥有 1200 美元 USDC，我想用它换取 1 ETH。我对订单进行数字签名（使用我的私钥），表示我授权该订单。
    
2.  交易所将我与交易对手匹配，并自动地在彼此之间交换我们的资产。
    
3.  然后生成 STARK 有效性证明，证明网络的新状态，其中我的 ETH 余额增加了 1，而我的 USDC 余额减少了 1200 美元。
    
4.  然后，该证明由以太坊上的智能合约自主验证。此验证证明了新状态，我的私钥现在控制 1 ETH。
    
5.  利润！
    

上面的例子是现货交易。对于永续合约，这是一个类似的流程，只不过现在的证据证明了我的立场，而不是我的平衡。事实上，如果我在永续衍生品交易所（如 dYdX）上持有现已清算的头寸，我想更深入地解释一下流程。

1.  我在 dYdX 上有 100 美元 USDC
    
2.  我利用价值 1000 美元的 ETH 多头头寸
    
3.  然后 ETH 价格下跌 10%，所以我被清算了
    
4.  然后，StarkEx API 会收到预言机价格更新，确认价格下跌，并以密码方式证明我的清算遵循了系统的所有规则。然后交易所清算我的头寸
    

如果我有资金滞留在 StarkEx 实例中，并且想要提取它们，我可以在 StarkEx 实例上提交交易并等待证明到达链上并释放我的资金。然而，它变得凉爽。如果交易所的运营者选择恶意，或者关闭， **交易所就无法窃取用户的资金**。在这种情况下，用户可以无需信任地前往第 1 层以太坊并在那里提交提款请求。如果 StarkEx 实例未在足够的时间内兑现提款，资金将在以太坊上释放。[请参阅此处的](https://docs.starkware.co/starkex/README-forced-operations.html)StarkEx 文档 。

这听起来可能微不足道，但却意义深远。用户将获得与在传统交易所进行交易相同的用户体验，并具有所有其他好处：

*   用户可以选择自我托管，但仍然积极交易
    
*   如果交易所运营商关闭，用户可以通过以太坊提款
    
*   交易所不能免除任何个人交易者的清算——每个人都遵循相同的规则。还记得阿拉米达发生了什么吗？据透露，Alameda 在 FTX 上必须遵守特殊规则（无自动清算）。这在 StarkEx 上根本不可能——证明者永远无法证明头寸超出其保证金要求的有效状态
    

### **关于数据可用性模式的小注释**

除了在链上发送的证明之外，以太坊还需要知道新状态是什么。它可以通过将整个 Merkle 树发送到链上（Rollup 模式）或通过数据可用性委员会存储 Merkle 树，并且仅将树的根存储在链上来实现这一点。请参阅 [本文](https://starkware.medium.com/rollup-validium-volition-where-is-your-data-stored-c4015093f615) 了解更多信息和权衡。

### **这不是假设；而是假设。今天大规模直播**

今天，我们有 8 个团队在 StarkEx 上进行生产。请参阅此处的客户部分：  [https://starkware.co/starkex/](https://starkware.co/starkex/)

让我们以 [dYdX](https://dydx.exchange/) 作为现实世界的案例研究。

*   他们已经处理了超过 7500 亿美元的累计交易量，全部由 StarkEx 提供支持。
    
*   当 FTX 事件爆发时，它们的交易量增加了（！）
    
*   资产证明 [可以在链上检查](https://twitter.com/HaymanLiron/status/1591854001695657985?s=20&t=dQFxj12TNj3cHtWYcJFUpA)，并随每个证明进行更新
    
*   dYdX 使用汇总模式数据可用性，因此甚至不需要数据可用性委员会来释放其资金
    
*   用户通过私钥完全掌控资金
    

### **现实世界的资产又如何呢？**

许多人相信该解决方案对于以太坊原生资产的强大功能，但不知道它如何扩展到现实世界的代币化资产。对此，让我们复制 Vitalik 对此事的看法。

_最后一个问题是：_ **_你能在法定资产上进行资产证明吗？_** _交易所不仅持有加密货币，还在银行系统内持有法定货币。在这里，答案是：是的，但这样的程序将不可避免地依赖于“法定”信任模型：银行本身可以证明余额，审计师可以证明资产负债表等。鉴于法定货币不可通过密码验证，这就是在该框架内可以做到的最好的事情，但它仍然值得做。_

这种代币化有一个信任点，但也到此为止了。交换仍然可以按描述运行。

### **结论**

这是金融的未来，它解决了传统体系中遇到的实际问题。我们的愿景是 StarkEx 将在未来十年内为所有金融工具的交易提供支持和结算。

如果您想了解更多信息，请随时与我们联系。

---

*Originally published on [0xBai_](https://paragraph.com/@alpies/starkex-2)*
