Skip to content

Commit

Permalink
[blog] Update the application layer of bitcoin (#1831)
Browse files Browse the repository at this point in the history
* [blog] Update the application layer of bitcoin

* update links
  • Loading branch information
jolestar authored Jun 6, 2024
1 parent aeb9892 commit 07e0ab7
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 16 deletions.
19 changes: 12 additions & 7 deletions docs/website/pages/blog/the-application-layer-of-bitcoin.en-US.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ import PostHeader from "/components/blog/postHeader";

## What is Rooch Network?

Rooch Network is the Application Layer of Bitcoin, an Asset-Centric infrastructure that provides indexing, trading, and enables application scenarios for all Bitcoin assets.
Rooch Network is a native application layer for the Bitcoin ecosystem, based on the Stackable L2 solution, serving as the go-to Bitcoin assets launchpad and Bitcoin application infra for users and devs.

## Why Rooch Network?

In 2023, the Bitcoin ecosystem saw the emergence of various new asset protocols, characterized by registering asset ownership on Bitcoin with validity verified off-chain, collectively known as [client-side validation](/learn/core-concepts/client-side-validation) assets. What future does this suggest for the Bitcoin ecosystem? Opinions vary, but we believe **these new asset protocols on Bitcoin signify a new paradigm for building application ecosystems**.
In 2023, the Bitcoin ecosystem saw the emergence of various new asset protocols, characterized by registering asset ownership on Bitcoin with validity verified off-chain, collectively known as [client-side validation](/learn/in-depth-tech/client-side-validation) assets. What future does this suggest for the Bitcoin ecosystem? Opinions vary, but we believe **these new asset protocols on Bitcoin signify a new paradigm for building application ecosystems**.

Client-side validation assets validate asset validity off-chain, thus allowing for the design of a cross-layer asset migration protocol that truly enables the migration of assets from on-chain to off-chain, simulating a "cash" effect in the digital world. This provides usage scenarios for assets that are no longer limited by the scalability issues of the chain, offering a new scaling solution and infinite possibilities for applications.

Expand Down Expand Up @@ -52,7 +52,7 @@ Using this application container, application developers can almost convert most

### Root to Bitcoin

With the VApp container in place, we need to integrate it with Bitcoin. Rooch's approach involves executing all blocks on the Bitcoin network within the VApp container, verifying UTXOs and extensions built on top of UTXOs, and translating them into Move Object, providing an off-chain smart contract Layer2 solution for Bitcoin.
Once we have the VApp container in place, we need to integrate it with Bitcoin. Rooch's approach involves directly executing all blocks from the Bitcoin network within the VApp container, validating UTXOs and the protocols extended on top of UTXOs, and converting them into Move Objects. This provides Bitcoin with a L2 solution that includes the L1 state.

This smart contract layer primarily provides three capabilities:

Expand All @@ -64,7 +64,7 @@ With the complete state of Bitcoin, we stack an L2 state layer on top, allowing

**Settling with Bitcoin L1 assets**

This includes "[Atomic swap](https://en.bitcoin.it/wiki/Atomic_swap)", "[PSBT](https://github.com/bitcoin/bitcoin/blob/master/doc/psbt.md)," and "on-chain payment triggers off-chain settlement" modes. These modes are suitable for swap or payment scenarios, settling directly on-chain, thus requiring an asynchronous programming model to lower the barrier for developers. The Move community has already experimented with async Move extensions, and we can continue to explore this direction.
This include "[Atomic swaps](https://en.bitcoin.it/wiki/Atomic_swap)," "[PSBT](https://github.com/bitcoin/bitcoin/blob/master/doc/psbt.md)," and "on-chain payment triggers off-chain settlement." These methods are suitable for exchange or payment scenarios and are settled directly on Bitcoin. Developers can utilize the smart contracts provided by Rooch to implement the display and matching of trade orders, as well as to simplify settlements with Bitcoin.

**Atomic Binding**

Expand All @@ -78,7 +78,12 @@ Deriving new assets from Bitcoin L1 assets, which is a model based on issuing ne

Using Bitcoin L1 assets as props or identity in applications. For example, a certain Inscription representing game equipment, directly used in games on L2. Or using L1 assets for voting governance.

Further exploration of these models is needed. We refer to this approach as the "**stackable**" application construction mode, where **applications build an additional layer of state on top of the chain's state to repurpose existing data and assets**. For more details on the "stackable" mode, please refer to [Stackable L2](./stackable-l2.en-US.mdx).

**Programming Bitcoin Scripts**

Generate Bitcoin scripts and transactions within smart contracts, and enforce user compliance through constraints built on L2 (such as governance or collateral). Users must sign these transactions and include them in L1 blocks, or they face penalties. This feature allows for the creation of on-chain multisig wallets, DAOs, and provides additional security for multisig bridges on Bitcoin.

Further exploration of these models is needed. We refer to this approach as the "**stackable**" application construction mode, where **applications build an additional layer of state on top of the chain's state to repurpose existing data and assets**. For more details on the "stackable" mode, please refer to [Stackable L2](./stackable-l2).For programming documentation and examples related to Bitcoin and Move, please see [Extending Bitcoin](/build/bitcoin).

### Distributed State Tree Protocol (DSTP)

Expand Down Expand Up @@ -121,7 +126,7 @@ This protocol has several advantages over the current bridge models:
2. Assets can migrate between networks like "cash." Separating the storage of assets from their application scenarios can solve the state explosion problem as well as issues related to the massive issuance of new assets.
3. This model requires wallets to play a significant role, not just as the current "dumb" wallets that only trust RPC, but rather more "smart" ones.

To this end, the Rooch team has designed the SFT protocol based on Ordinals, [Bitseed](https://bitseed.pro/), and will explore asset migration protocols based on the Bitseed protocol in the future. For more details, please refer to the asset leap protocol section of the [Client-side validation protocol](/learn/core-concepts/client-side-validation/).
To this end, the Rooch team has designed the SFT protocol based on Ordinals, [Bitseed](https://bitseed.pro/), and will explore asset migration protocols based on the Bitseed protocol in the future. For more details, please refer to the asset leap protocol section of the [Client-side validation protocol](/learn/in-depth-tech/client-side-validation/).

### Security Issues

Expand Down Expand Up @@ -155,7 +160,7 @@ On the pre-mainnet, we will first experiment with the design of the cross-layer

We will also experiment with games based on Bitcoin assets and encourage developers to build games and applications, establishing an application ecosystem under the VApp model. Through games and applications, we will distribute options for Rooch Network mainnet tokens to users, which can be exchanged for mainnet tokens in the future.

Then, we will connect to the P2P network, integrate a data availability layer, and achieve node decentralization. We seek partners to co-develop security solutions based on Bitcoin and upgrade the pre-mainnet to the mainnet.
Then, we will connect to the P2P network, integrate a data availability layer, and achieve node decentralization. We seek partners to co-develop security solutions based on Bitcoin and upgrade the pre-mainnet to the mainnet. For more details, please refer to the [Rooch Network Roadmap](/learn/miscellaneous/roadmap).

## Conclusion

Expand Down
20 changes: 12 additions & 8 deletions docs/website/pages/blog/the-application-layer-of-bitcoin.zh-CN.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ import PostHeader from "/components/blog/postHeader";

## Rooch Network 是什么?

Rooch Network 是 Bitcoin 的应用层,给 Bitcoin 上的所有资产提供索引、交易以及应用场景的以资产为中心的基础设施
Rooch Network 是 Bitcoin 的原生应用层,基于堆叠式 L2 解决方案,为用户和开发者提供比特币资产的启动平台和比特币应用基础设施

## 为什么需要 Rooch Network?

2023 年 Bitcoin 生态涌现出了各种新型资产协议,这些新型资产的特点是只在 Bitcoin 上登记资产的所有权,有效性在链下验证,可以统称为基于客户端验证([Client side validation](/learn/core-concepts/client-side-validation))的资产。而这些新资产协议预示的 Bitcoin 生态的远景是什么?业界存在着不同的看法,我们认为 **Bitcoin 上的新型资产协议预示着一种新的应用生态构建范式**
2023 年 Bitcoin 生态涌现出了各种新型资产协议,这些新型资产的特点是只在 Bitcoin 上登记资产的所有权,有效性在链下验证,可以统称为基于客户端验证([Client side validation](/learn/in-depth-tech/client-side-validation))的资产。而这些新资产协议预示的 Bitcoin 生态的远景是什么?业界存在着不同的看法,我们认为 **Bitcoin 上的新型资产协议预示着一种新的应用生态构建范式**

客户端验证资产将资产的有效性放在链下验证,所以可以设计出一种跨层资产迁移协议,真正实现资产从链上到链下的迁移,在数字世界模拟出“现金”效果。这样为资产提供使用场景不再受限于链的可扩展性难题,是一种新的扩容方案,也为应用提供了无限可能。

Expand All @@ -36,7 +36,7 @@ Rooch Network 是 Bitcoin 的应用层,给 Bitcoin 上的所有资产提供索

### 可验证应用容器(VApp Container)

链下的应用环境首先要保证可验证,可验证是去中心化的前提条件。我们把**可验证应用(Verifiable App)**简称为 **[VApp](/learn/core-concepts/vapp)**
链下的应用环境首先要保证可验证,可验证是去中心化的前提条件。我们把可验证应用(Verifiable App)简称为 **[VApp](/learn/core-concepts/vapp)**

**智能合约来保证计算的可验证,状态树来保证状态的可验证,组合起来就是可验证应用容器**

Expand All @@ -52,7 +52,7 @@ Rooch 团队经过一年时间的开发,完成了 Move 语言的 VApp 容器

### Root 到 Bitcoin

有了 VApp 容器后,我们需要和 Bitcoin 结合起来。Rooch 采用的方案是直接在 VApp 容器中执行 Bitcoin 网络上的所有区块,验证 UTXO 以及 UTXO 之上附加的扩展协议,转换成 Move 的 Object,为 Bitcoin 提供一种链下智能合约的 Layer2 解决方案。
有了 VApp 容器后,我们需要和 Bitcoin 结合起来。Rooch 采用的方案是直接在 VApp 容器中执行 Bitcoin 网络上的所有区块,验证 UTXO 以及 UTXO 之上附加的扩展协议,转换成 Move 的 Object,为 Bitcoin 提供一个包含 L1 状态的 L2 解决方案。

这个智能合约层主要提供三种能力:

Expand All @@ -64,7 +64,7 @@ Rooch 团队经过一年时间的开发,完成了 Move 语言的 VApp 容器

**用 Bitcoin L1 资产结算**

主要有“[原子交换](https://en.bitcoin.it/wiki/Atomic_swap)”,“[PSBT](https://github.com/bitcoin/bitcoin/blob/master/doc/psbt.md)”,“链上支付触发链下结算”三种模式。这几种模式都适合交换或者支付场景,直接在链上结算,所以需要一种异步编程模型来降低开发者的门槛,这方面 Move 社区已经有 async Move 的扩展尝试,我们可以继续探索这个方向
主要有“[原子交换](https://en.bitcoin.it/wiki/Atomic_swap)”,“[PSBT](https://github.com/bitcoin/bitcoin/blob/master/doc/psbt.md)”,“链上支付触发链下结算”三种模式。这几种模式都适合交换或者支付场景,直接在 Bitcoin 上结算,开发者可以利用 Rooch 提供的智能合约来实现交易订单的展示,撮合,以及简化与 Bitcoin 的结算

**原子绑定**

Expand All @@ -78,7 +78,11 @@ Rooch 团队经过一年时间的开发,完成了 Move 语言的 VApp 容器

在应用中将 Bitcoin L1 的资产作为道具或者身份标志。比如某种 Inscription 代表游戏中的装备,直接在 L2 中的游戏中使用。或者用 L1 的资产进行投票治理。

更多的模式还需要探索,我们把这种模式叫做“**堆叠式**”的应用构建模式,**应用在链的状态之上堆叠一层状态,来实现对已有的数据和资产的复用**。关于“堆叠式”模式的详细方案请参考 [Stackable L2](./stackable-l2.zh-CN.mdx)
**对 Bitcoin 脚本进行编程**

在智能合约中生成 Bitcoin 的脚本以及交易,通过 L2 构建的约束力(治理或者抵押),来保证用户必须签名这个交易并包含在 L1 的区块中,否则会被惩罚。通过这个特性,可以构建 Bitcoin 上的链上多签钱包,DAO,以及给多签桥提供附加的安全保证。

更多的模式还需要探索,我们把这种模式叫做“**堆叠式**”的应用构建模式,**应用在链的状态之上堆叠一层状态,来实现对已有的数据和资产的复用**。关于“堆叠式”模式的详细方案请参考 [Stackable L2](./stackable-l2)。关于 Bitcoin 和 Move 的编程文档以及案例请参看 [扩展 Bitcoin](/build/bitcoin)

### 分布式状态树协议(Distributed State Tree Protocol - DSTP)

Expand Down Expand Up @@ -117,7 +121,7 @@ RGB/Ordinals 这样的基于客户端验证(Client side validation)的资产
2. 资产可以像“现金”一样在各种网络之间迁移。将资产的存储和资产的应用场景分开,既能解决状态爆炸问题,也能解决新型资产的大规模发行问题。
3. 这种模式要求钱包扮演重要的角色,而不仅仅是当前这种只信任 RPC 的“笨”钱包,需要更“智能”一些。

为此,Rooch 团队设计了基于 Ordinals 的 SFT 协议 [Bitseed](https://bitseed.pro/),未来会基于 Bitseed 协议来探索资产的迁移协议,更详细的内容请参看 [客户端验证协议](/learn/core-concepts/client-side-validation/) 的资产跃迁协议部分。
为此,Rooch 团队设计了基于 Ordinals 的 SFT 协议 [Bitseed](https://bitseed.pro/),未来会基于 Bitseed 协议来探索资产的迁移协议,更详细的内容请参看 [客户端验证协议](/learn/in-depth-tech/client-side-validation/) 的资产跃迁协议部分。

### 安全问题

Expand Down Expand Up @@ -151,7 +155,7 @@ Rooch VApp 容器的研发即将发布一个新的稳定版本,我们会基于

同时,我们会尝试基于 Bitcoin 资产的游戏,也鼓励开发者来构建游戏和应用,构建 VApp 模式的应用生态,通过游戏和应用来给用户分发 Rooch Network 主网代币的期权资产,未来可以用来兑换主网代币。

然后我们会接入 P2P 网络,接入数据可用层,实现节点的去中心化,寻求合作伙伴一起研发基于 Bitcoin 的安全方案,将先行网升级为主网。
然后我们会接入 P2P 网络,接入数据可用层,实现节点的去中心化,寻求合作伙伴一起研发基于 Bitcoin 的安全方案,将先行网升级为主网。详细的路线图请参看 [Roadmap](/learn/miscellaneous/roadmap)

## 总结

Expand Down
2 changes: 1 addition & 1 deletion docs/website/pages/learn/overview.en-US.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,4 @@ Rooch allows the state transitions in the applications smart contracts to be bin
### CSV Assets
Client Side Validation Assets (CSV Assets) are the core for enabling all innovations in the Bitcoin ecosystem. Rooch provides a metaprotocol design of Ordinals called Bitseed to enable the CSV asset leaping between Bitcoin states and the Rooch application states, making all Bitcoin assets can be leaped into any of the Rooch based Bitcoin applications in a permissionless way.

> For more details, please refer to [CSV Assets](./in-depth-tech/client-side-validation.en-US.mdx)
> For more details, please refer to [CSV Assets](./in-depth-tech/client-side-validation)

0 comments on commit 07e0ab7

Please sign in to comment.