# Sovereign

Sovereign 是一个开放的、相互关联的[汇总](https://www.sovereign.xyz/learn)生态系统。我们的目标是让所有开发人员能够部署可**在任何区块链上运行的无缝互操作和可扩展**的汇总。这就是我们构建 Sovereign SDK 的原因，这是用于创建安全且可互操作的主权 zk-rollup 的最简单框架。

### 问题：区块链应用程序无法扩展

#### 单体 L1 无法扩展

在寻求扩展区块链应用程序的过程中，出现了三种主要范例：特定于应用程序的第 1 层、optimistic rollups 和 zk-rollups。特定于应用程序的第 1 层最容易设计和实现——但它们有一个明显的缺点。每个第 1 层都必须招募自己的验证者，并说服他们投入足够的资金来保护链条免受攻击。资金成本是他们的本钱，这种方法只适用于少数资金充足的应用程序。

#### 乐观汇总打破可组合性

Rollups 试图通过允许开发人员使用新逻辑扩展*现有*区块链而不是启动新逻辑来解决这个问题。这大大降低了应用链开发的准入门槛。

但 optimistic rollups（如今[主导市场](https://l2beat.com/scaling/tvl)的 rollups ）并不是灵丹妙药。为了最大程度地减少共享验证器集的负担，optimistic rollups 依靠欺诈证明来防止不当行为。在攻击期间，这些欺诈证明可能会被审查——因此 optimistic rollups 有很长的“最终延迟”，在此期间交易可能会因欺诈证明的出现而回滚。这使得桥接 optimistic rollups 变得缓慢且代价高昂。

因此，乐观的汇总开发人员必须做出艰难的选择：他们是否构建狭窄的、特殊用途的汇总并期望用户在链之间频繁桥接？或者他们是否构建了通用汇总，试图在一个地方满足用户的所有需求？两种选择都不好。乐观链之间的桥接太慢、太昂贵，而且风险太大，无法成为日常操作。但是通用 optimistic rollups 存在单体 L1 的许多缺点：它们不仅存在自身的可扩展性问题，而且还无法支持应用链可以创建的全部功能多样性。

#### Zk-Rollups 是未来

出于所有这些原因，我们预计 zk-rollups 将成为主导的扩展范例。它们具有 optimistic rollups 的优点，但没有长时间的最终延迟。用户无需等待数天查看是否出现欺诈证明，只要创建有效性证明，用户就可以确信他们的交易是最终的——这个过程可能只需要几秒钟。

但是，如果 zk-rollups 是更好的扩展解决方案，为什么不是每个人都在使用它们呢？因为到目前为止，实际构建 zk-rollups 是一项艰巨的任务——需要专家密码学工程师多年的努力。

### 进入 Sovereign：Rollups 的互联网

#### 什么是主权 SDK？

[Sovereign SDK](https://github.com/Sovereign-Labs/sovereign-sdk)旨在为 zk-rollups 做 Cosmos SDK 为第 1 层链做的事情。

它将提供通常进入区块链的所有样板——p2p 网络、数据库和 RPC 节点——让构建者专注于他们链的业务逻辑。此外，它将提供一组在零知识环境中高效运行的默认模块：令牌实现、经过身份验证的数据存储和桥接模块。开发人员将能够将这些原语组合到应用链中，或者通过实施一组标准 API 完全从头开始构建自己的状态转换函数。

更好的是，Sovereign SDK 将成为第一个抽象出零知识细节的汇总框架。要利用它的强大功能，开发人员无需成为密码学专家。相反，开发人员将能够使用惯用的 Rust（或最终使用 C++）编写他们的应用程序，并且[SDK](https://github.com/Sovereign-Labs/sovereign-sdk/blob/research/specs/interfaces/zkvm.md)会自动将其编译为[高效的](https://github.com/nilfoundation/zkllvm) [zk 虚拟机](https://github.com/risc0/risc0)。

#### Sovereign SDK 将提供哪些属性？

1. 主权 SDK 汇总将**无缝互操作。**&#x6211;们使用一种基于证明聚合的新型桥接技术，允许共享 L1 上的 Sovereign SDK 汇总在没有受信任的第三方的情况下来回桥接。由于 zk-proofs 可以聚合，rollups 将能够以最小的成本维护尽可能多的桥接。链下中继器可以将所有 peer rollup 的证明聚合成一个证明，并且可以在链上验证这个证明。而且由于状态转换被证明是有效的，因此无需向流动性提供者支付费用或等待一周的时间来完成交易。**立即桥接，没有缺点**。
2. 主权 SDK 汇总将是**安全可扩展的。**&#x901A;过专门构建每个组件，特别是在 zk-rollups 中使用，Sovereign SDK 将默认提供出色的性能。由于并行性的进步，我们的证明将以秒为单位测量延迟。借助零知识证明的魔力，链将能够在不牺牲最终用户可验证性的情况下进行扩展。
3. Sovereign SDK Rollups 可以**在任何区块链上运行**。主权 SDK 链将检查证明的责任委托给最终用户，而不是底层的 L1。这就是使它们成为“主权”汇总而不是智能合约汇总的原因。由于数据可用性层不需要验证证明的能力，因此 Sovereign SDK rollups 可以自动移植到任何 L1。**一次编写，随处运行。**

#### 我们现在在哪里？

我们目前正在努力开发 Sovereign SDK。我们当前的路线图分为三个阶段。

**第一阶段：研究（进行中）**

Sovereign SDK 目前正在研发中。我们正在设计默认存储模块、加密经济学和核心 API。（如果您有兴趣解决这些问题，请查看我们的[工作委员会](https://sovereign.xyz/join)！）。我们也在研究一个研究原型。尽管 SDK 将支持广泛的数据可用性层和证明系统，但我们当前的原型集成了用于数据可用性的 Celestia 和用于证明的 Risc0。我们预计这一阶段将在 2023 年第二季度左右完成。

**第二阶段：初步实施**

Sovereign SDK 的初始实施将与其余研究同时开始。在此期间，我们将实现对等网络、RPC 节点、核心 API 以及默认存储和排序模块。

**第三阶段：硬化**

一旦 SDK 功能完善，我们将需要大量时间进行代码清理、测试、模糊测试和审计。在此期间，我们还将开始开发 SDK 的第一个用例（有关这些的更多详细信息将公布！）。在强化初始实施大约六个月后，我们希望看到主网链使用 SDK。

### 让缩放变得简单

在 Sovereign Labs，我们希望看到区块链支持*数十亿*用户。只有在没有密码学博士学位的开发人员可以使用零知识技术的情况下才会发生这种情况——如果非专业协议工程师的开发人员也可以访问构建汇总。

但是，如果以牺牲最终用户的可验证性为代价，无限的可扩展性就毫无价值。如果构建、运行或查看区块链的状态需要某个中心化实体的合作，那么我们就失败了。这就是为什么 Sovereign SDK 将始终完全免费和开源的原因 - 以及为什么我们致力于设计堆栈的每个组件以实现最大的弹性。但不要只相信我们的话。我们正在[公共场所](https://github.com/Sovereign-Labs/sovereign-sdk/)建设- 亲自来看看吧。

缩放应该很简单。有了 Sovereign SDK，它最终会成为现实。

#### 资源

* [团队](https://www.sovereign.xyz/join)
* [推特](https://twitter.com/sovereign_labs)
* [Discord](https://discord.gg/kbykCcPrcA)
* [Github](https://github.com/Sovereign-Labs/sovereign-sdk)
