From a5f096c692df26bfecc7e5c8023d203f93414bda Mon Sep 17 00:00:00 2001 From: KK11 <79199535+KryStar11@users.noreply.github.com> Date: Thu, 20 Jun 2024 21:06:30 +0800 Subject: [PATCH 1/8] Create RGB++ Assets Convention Rules.md --- docs/RGB++ Assets Convention Rules.md | 63 +++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 docs/RGB++ Assets Convention Rules.md diff --git a/docs/RGB++ Assets Convention Rules.md b/docs/RGB++ Assets Convention Rules.md new file mode 100644 index 0000000..92d2b16 --- /dev/null +++ b/docs/RGB++ Assets Convention Rules.md @@ -0,0 +1,63 @@ +This document is a repost of [_xUDT Information Convention RFC_](https://talk.nervos.org/t/xudt-information-convention-rfc/8030) post on NervosTalk forum, +with a few refinements for greater consistency and readability. + +## Background + +xUDT (RGB++) assets on CKB similar to ERC20 assets on Ethereum in that they lack protocol-level uniqueness constraints for token names. +Considering the conventions of the Bitcoin ecosystem, Considering the conventions of the Bitcoin ecosystem, it is necessary to introduce +standards regarding uniqueness and length. + + +## Scope +- The following conventions cover **inscription info cell** and **unique cell**, combining the two for processing. + For example, each asset has a unique name among them. +- These conventions consider only the `Symbol` and do not consider the `Name` field. + +```yaml +# Unique cell +{ + "code_hash": "0x2c8c11c985da60b0a330c61a85507416d6382c130ba67f0c47ab071e00aec628", + "hash_type": "data1", + "out_point": { + "tx_hash": "0x67524c01c0cb5492e499c7c7e406f2f9d823e162d6b0cf432eacde0c9808c2ad", + "index": "0x0" + }, + "dep_type": "code" +} +``` + +## Name Confliction +- Only the first occurrence of an asset name on-chain is acknowledged; subsequent occurrences are marked as “duplicate”. +- Case sensitivity is ignored during duplicate comparison, for example: “Seal” is considered the same as “SEAL”. +- Any addition of invisible characters (including spaces) to the name, regardless of whether there are similar assets, + is treated as a “**duplicate**”. +- For wallets and exchanges, duplicate assets are directly hidden. +- For browsers: + - “duplicate assets” are labeled as “Risk Asset - RGB++ incompatible”; + - non-duplicate assets are labeled as “RGB++ Compatible”; + - In places where the aforementioned text is too long to display, symbols such as [!] and [+] are used for marking. + + +## Letters +- For exchanges, only the ASCII visible character subset is supported. +- For wallets and browsers, the supported character range includes: + - ASCII visible characters subset + - A subset of emojis: to be determined +- For assets that use unsupported characters, the asset name is uniformly displayed as “INVALID”. + +## Length Range +- Only assets with Symbol length of 4-5 characters are processed normally. +Assets falling outside this range are treated as “duplicate assets”. + +## Verification +- Whitelisted assets are set to bypass the rules mentioned above. +- To get whiltelist, To get on the whitelist, project owners should submit their token information to Cell Studio’s GitHub repository. + After verification, the token information will be reviewed and released. Assets on the whitelist are given priority for display + regardless of the above rule, and any other assets with the same name are automatically labeled as "duplicate assets". +- As of now, the whitelist submission is not open yet. + + +## Assets Mark +Ecosystem apps should add label / mark for every asset to provide some critical information: +- Issuance mark: `L1 issue` / `L2 issue` to identify where the coins are issued, on Bitcoin with `rpgpp_lock` or CKB with normal lock +- Supply mark: `Limited supply` / `Unlimited supply` to identify whether a coin could be issued arbitrarily. From 8ad67003847d23375ba916f53ff4e2ab8ae232c1 Mon Sep 17 00:00:00 2001 From: KK11 <79199535+KryStar11@users.noreply.github.com> Date: Thu, 20 Jun 2024 21:08:07 +0800 Subject: [PATCH 2/8] Update RGB++ Assets Convention Rules.md --- docs/RGB++ Assets Convention Rules.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/RGB++ Assets Convention Rules.md b/docs/RGB++ Assets Convention Rules.md index 92d2b16..966039d 100644 --- a/docs/RGB++ Assets Convention Rules.md +++ b/docs/RGB++ Assets Convention Rules.md @@ -26,7 +26,7 @@ standards regarding uniqueness and length. } ``` -## Name Confliction +## Name Conflict - Only the first occurrence of an asset name on-chain is acknowledged; subsequent occurrences are marked as “duplicate”. - Case sensitivity is ignored during duplicate comparison, for example: “Seal” is considered the same as “SEAL”. - Any addition of invisible characters (including spaces) to the name, regardless of whether there are similar assets, From 41d3064036e298536ffe11046d05056ba0ba8833 Mon Sep 17 00:00:00 2001 From: KK11 <79199535+KryStar11@users.noreply.github.com> Date: Fri, 21 Jun 2024 10:43:15 +0800 Subject: [PATCH 3/8] Update RGB++ Assets Convention Rules.md --- docs/RGB++ Assets Convention Rules.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/RGB++ Assets Convention Rules.md b/docs/RGB++ Assets Convention Rules.md index 966039d..2144826 100644 --- a/docs/RGB++ Assets Convention Rules.md +++ b/docs/RGB++ Assets Convention Rules.md @@ -47,7 +47,7 @@ standards regarding uniqueness and length. ## Length Range - Only assets with Symbol length of 4-5 characters are processed normally. -Assets falling outside this range are treated as “duplicate assets”. +- Assets falling outside this range are treated as “duplicate assets”. ## Verification - Whitelisted assets are set to bypass the rules mentioned above. @@ -59,5 +59,8 @@ Assets falling outside this range are treated as “duplicate assets”. ## Assets Mark Ecosystem apps should add label / mark for every asset to provide some critical information: -- Issuance mark: `L1 issue` / `L2 issue` to identify where the coins are issued, on Bitcoin with `rpgpp_lock` or CKB with normal lock +- Issuance mark: `L1 issue` / `L2 issue` to identify where the coins are issued, on Bitcoin with `rpgpp_lock` or CKB with normal lock; - Supply mark: `Limited supply` / `Unlimited supply` to identify whether a coin could be issued arbitrarily. + + _Note: The issue (For Support tags of xudt #620)[https://github.com/Magickbase/ckb-explorer-public-issues/issues/620] defines the + existing tags and display of xUDTs on the CKB Explorer._ From af1b2d33b001ff54c28756abf3abe0ab4b4b75c5 Mon Sep 17 00:00:00 2001 From: KK11 <79199535+KryStar11@users.noreply.github.com> Date: Fri, 21 Jun 2024 10:45:38 +0800 Subject: [PATCH 4/8] Rename RGB++ Assets Convention Rules.md to RGB++-assets-convention-rules.md --- ...ssets Convention Rules.md => RGB++-assets-convention-rules.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/{RGB++ Assets Convention Rules.md => RGB++-assets-convention-rules.md} (100%) diff --git a/docs/RGB++ Assets Convention Rules.md b/docs/RGB++-assets-convention-rules.md similarity index 100% rename from docs/RGB++ Assets Convention Rules.md rename to docs/RGB++-assets-convention-rules.md From 52b4549d06742ee73e8622f0e06bb687fd54d44d Mon Sep 17 00:00:00 2001 From: KK11 <79199535+KryStar11@users.noreply.github.com> Date: Fri, 21 Jun 2024 10:47:25 +0800 Subject: [PATCH 5/8] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d0a288a..dfe8bac 100644 --- a/README.md +++ b/README.md @@ -14,3 +14,4 @@ Documents list: | 01 | [RGB++ Script Standard](./docs/lockscript-design-prd-en.md) | [RGB++ 合约规范](./docs/lockscript-design-prd-cn.md) | | 02 | [CKB Bitcoin SPV Type Script](https://github.com/ckb-cell/ckb-bitcoin-spv-contracts/blob/master/contracts/ckb-bitcoin-spv-type-lock/README.md) | CKB BTC SPV 合约设计 | | 03 | [CKB Bitcoin SPV Library Design](https://github.com/ckb-cell/ckb-bitcoin-spv/blob/master/docs/Design.md) | CKB Bitcoin SPV 库的设计 | +| 04 | [CKB Bitcoin SPV Library Design](./docs/RGB++-assets-convention-rules.md) | RGB++ 资产规则 | From 9bdd7640cfaf1bcdf4140416ed65a33aa5621ea3 Mon Sep 17 00:00:00 2001 From: KK11 <79199535+KryStar11@users.noreply.github.com> Date: Fri, 21 Jun 2024 10:47:52 +0800 Subject: [PATCH 6/8] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index dfe8bac..b235b47 100644 --- a/README.md +++ b/README.md @@ -14,4 +14,4 @@ Documents list: | 01 | [RGB++ Script Standard](./docs/lockscript-design-prd-en.md) | [RGB++ 合约规范](./docs/lockscript-design-prd-cn.md) | | 02 | [CKB Bitcoin SPV Type Script](https://github.com/ckb-cell/ckb-bitcoin-spv-contracts/blob/master/contracts/ckb-bitcoin-spv-type-lock/README.md) | CKB BTC SPV 合约设计 | | 03 | [CKB Bitcoin SPV Library Design](https://github.com/ckb-cell/ckb-bitcoin-spv/blob/master/docs/Design.md) | CKB Bitcoin SPV 库的设计 | -| 04 | [CKB Bitcoin SPV Library Design](./docs/RGB++-assets-convention-rules.md) | RGB++ 资产规则 | +| 04 | [RGB++ Assets Convention Rules](./docs/RGB++-assets-convention-rules.md) | RGB++ 资产规则 | From eb863fdce0ada43a8cf74d5eacdbb8995db03b97 Mon Sep 17 00:00:00 2001 From: KK11 <79199535+KryStar11@users.noreply.github.com> Date: Fri, 21 Jun 2024 10:51:59 +0800 Subject: [PATCH 7/8] Update RGB++-assets-convention-rules.md --- docs/RGB++-assets-convention-rules.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/RGB++-assets-convention-rules.md b/docs/RGB++-assets-convention-rules.md index 2144826..64049ca 100644 --- a/docs/RGB++-assets-convention-rules.md +++ b/docs/RGB++-assets-convention-rules.md @@ -1,4 +1,4 @@ -This document is a repost of [_xUDT Information Convention RFC_](https://talk.nervos.org/t/xudt-information-convention-rfc/8030) post on NervosTalk forum, +> This document is a repost of [_xUDT Information Convention RFC_](https://talk.nervos.org/t/xudt-information-convention-rfc/8030) post on NervosTalk forum, with a few refinements for greater consistency and readability. ## Background @@ -62,5 +62,5 @@ Ecosystem apps should add label / mark for every asset to provide some critical - Issuance mark: `L1 issue` / `L2 issue` to identify where the coins are issued, on Bitcoin with `rpgpp_lock` or CKB with normal lock; - Supply mark: `Limited supply` / `Unlimited supply` to identify whether a coin could be issued arbitrarily. - _Note: The issue (For Support tags of xudt #620)[https://github.com/Magickbase/ckb-explorer-public-issues/issues/620] defines the - existing tags and display of xUDTs on the CKB Explorer._ + > Note: The [issue For Support tags of xudt #620](https://github.com/Magickbase/ckb-explorer-public-issues/issues/620) defines the + existing tags and display of xUDTs on the CKB Explorer. From 413d4397ed9d6e1f01d0f52cd3106568ab4f0419 Mon Sep 17 00:00:00 2001 From: KK11 <79199535+KryStar11@users.noreply.github.com> Date: Fri, 21 Jun 2024 11:04:29 +0800 Subject: [PATCH 8/8] Update RGB++-assets-convention-rules.md --- docs/RGB++-assets-convention-rules.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/RGB++-assets-convention-rules.md b/docs/RGB++-assets-convention-rules.md index 64049ca..51a6f07 100644 --- a/docs/RGB++-assets-convention-rules.md +++ b/docs/RGB++-assets-convention-rules.md @@ -1,5 +1,5 @@ -> This document is a repost of [_xUDT Information Convention RFC_](https://talk.nervos.org/t/xudt-information-convention-rfc/8030) post on NervosTalk forum, -with a few refinements for greater consistency and readability. +> This document is a repost of _[_xUDT Information Convention RFC_](https://talk.nervos.org/t/xudt-information-convention-rfc/8030)_ +> post on NervosTalk forum, with minor refinements for improved consistency and readability. ## Background