RGB资产转账流程

我将用一个示例具体的介绍RGB的转账到底是如何进行的

👇

1️⃣ 首先，我们有两个人：
--Alice ：作为⽀付⽅ （ payer）
--Bob   ：作为受益⽅ （ beneficiary）

2️⃣受益⽅（Bob）创建invoice
--Bob 负责创建⼀个名为“invoiceˮ 的应付帐单。
--这个清单包含了交易的基本信息 ，如受益⽅的地址、转移资产的数量和类型 等。
--有点类似于⽀付宝收款码。

$ rgb invoice RGB20 100 USDT tapret1st: . . . :0
$ send <invoice> --to alice

3️⃣⽀付⽅（Alice）确认并创建consignment
--Alice 作为资产转移的⽀付⽅ ，需要对 Bob 发送的交易清单进⾏确认 ，并创建⼀个 PSBT 和“consignmentˮ（寄售单）， 这个寄售单包含了交易的详细信息和状态。

$ wallet construct tx.psbt

这时候，PSBT 会被创建、存储但尚未签名（所以是没有执行的）。⽽寄售单会发⼀个副本 ，回给 Bob。

$ rgb transfer tx.psbt <invoice> consignment .rgb
$ send consigment .rgb --to bob

4️⃣签名与验证
--现在双⽅都有了寄售单 ，他们会验证寄售单 ，并把寄售单合并到私藏（stash）。 
--同时 Bob 会在寄售单 ID 上签字 ，并回传给 Alice。

$ rgb accept consignment .rgb # sign, and merge to stash
... # output a signature
$ send consignment .rgb --to alice # the consignment with sigature will be sent to alice

5️⃣交易发布与执⾏
--PSBT 经过签名和验证后 ，Alice 将最终的交易信息发布到区块链⽹络中。
--⼀旦交易被⽹络确认并执⾏ ，资产就会从 Alice 转移到 Bob。

$ rgb check <sign>
$ wallet sign --publish tx.psbt

观察整个过程：
Alice实现了资产转移的目的；
对 Bob ⽽⾔ ，整个过程中 UTXO 不会暴露给 Alice 或任何⽹络，所以 UTXO 是私密的 。

#BTC #RGB