# Previous Version 1.0

<figure><img src="https://4066971637-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsEofTPGAFPy7UMlvFhJe%2Fuploads%2FFuZGVqwnf2RzWArnoQOG%2FBRC1155_banner.png?alt=media&#x26;token=cd1ad406-fbce-4525-8640-6b7f39f17206" alt=""><figcaption><p>Version 1.0</p></figcaption></figure>

Author: Ivan Tsang (@ivantkf)

Created: 2023-03-13

Require: Ordinals

{% embed url="<https://docs.ordinals.com/>" %}

## Vision

> Be Your Own Bank.

Inscription (NFT) is one of the ways to achieve Bitcoin-M instead of USD-M. When Ethereum NFTs have been shown up at the beginning, there was a moment when people were more focused on Ether ($ETH) than USD to reach Ether-M instead of USD-M, and that's what I am trying to achieve and promote to the general public.&#x20;

## Idea

The concept is inspired by the brc-20 and ERC-1155 standards. The inscriptions with BRC-1155 standard are just another kind of Ordinals inscriptions, they can be traded, collected, and transferred as usual. Meanwhile, I am studying more standard protocols on Ethereum and seeing if they are possible to deploy on Bitcoin Core Network to support the inscriptions. The Ordinals Inscription here will be defined as BRC-721.

<figure><img src="https://4066971637-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsEofTPGAFPy7UMlvFhJe%2Fuploads%2Fb7jTyhN1inmN8U6Q1aS3%2Fsample1.png?alt=media&#x26;token=24936906-2787-472d-936f-c2ffa12e3be8" alt=""><figcaption><p>Inspiration</p></figcaption></figure>

## Introduction

| Project Owner | Inscription Holders | All Users |
| :-----------: | :-----------------: | :-------: |
|     Deploy    |    Fractionalize    |    Mint   |
|      Burn     |         Burn        |           |
|      Mint     |         Mint        |           |
|               |       Recovery      |           |

This is demonstrating what operations we can do above {deploy, burn, fractionalize, recovery, mint} by using the BRC-1155 standard, and the function structure below,

<figure><img src="https://4066971637-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsEofTPGAFPy7UMlvFhJe%2Fuploads%2FpDQ7pMdlJJR5DSyWNkib%2Fsample.png?alt=media&#x26;token=f43026ff-7b8a-4828-bf98-60ba18b87fca" alt=""><figcaption><p>Function Structure</p></figcaption></figure>

## Operations

{% embed url="<https://emn178.github.io/online-tools/sha256.html>" %}
A secret code should be set by using SHA-256 algorithm for safety and transperancy during the verification
{% endembed %}

### 1.　Deploy

The project owners could create a BRC-1155 collection of their inscriptions with a single image to inscribe the rules and save the cost. Here is a basic example below (replace the x),

```
{
 "p": "brc-1155",
 "op": "deploy",
 "abbrev": "xxxx",
 "url": "inscription xxxxxx"
}
```

{% hint style="danger" %} <mark style="color:red;">**An inscription with a picture MUST be inscribed before deploying the BRC-1155 standard**</mark>
{% endhint %}

<table><thead><tr><th width="104.33333333333331" align="center">Key</th><th width="81" align="center">Must?</th><th>Description</th></tr></thead><tbody><tr><td align="center">p</td><td align="center">✅</td><td>Protocol: To identify and process BRC-1155 events</td></tr><tr><td align="center">op</td><td align="center">✅</td><td>Operation: Type of events {deploy, fractionalize, mint...}</td></tr><tr><td align="center">abbrev</td><td align="center">✅</td><td>Abbreviation: Set a max. 10 letters identifier of the BRC-1155</td></tr><tr><td align="center">url</td><td align="center">✅</td><td>Identifier of the original image location of the inscription</td></tr><tr><td align="center">author</td><td align="center">❌</td><td>Identifier of the project creator/ team with {.sats} / {.ord} domain</td></tr><tr><td align="center">max</td><td align="center">❌</td><td>Set the total quantity in pieces of the operation, default to "∞"</td></tr><tr><td align="center">lim</td><td align="center">❌</td><td>Limit: Set the fixed amount in every inscription, default to "1"</td></tr><tr><td align="center">vfy</td><td align="center">❌</td><td>Verify: Encrypted by SHA-256 Algorithm for a further action</td></tr></tbody></table>

### 2.　Inscribe (Mint)

All users are allowed to inscribe different quantities of the inscriptions with BRC-1155 standard to collect a valid piece of the expensive inscriptions at an affordable price until it reaches the maximum quantity. The reminding available quantity is only valid according to a first-come-first-served basis. Here is a basic example below (replace the x),

```
{
 "p": "brc-1155",
 "op": "mint",
 "abbrev": "xxxx",
 "url": "inscription xxxxxx"
}
```

{% hint style="danger" %} <mark style="color:red;">**Stay alert for scammers and focus on the maximum inscription number.**</mark>
{% endhint %}

<table><thead><tr><th width="102.33333333333331" align="center">Key</th><th width="85" align="center">Must?</th><th>Description</th></tr></thead><tbody><tr><td align="center">p</td><td align="center">✅</td><td>Protocol: To identify and process BRC-1155 events</td></tr><tr><td align="center">op</td><td align="center">✅</td><td>Operation: Type of event {deploy, fractionalize, mint...}</td></tr><tr><td align="center">abbrev</td><td align="center">✅</td><td>Abbreviation: Set a max. 10 letters identifier of the BRC-1155</td></tr><tr><td align="center">url</td><td align="center">✅</td><td>Identifier of the original image location of the inscription</td></tr><tr><td align="center">author</td><td align="center">❌</td><td>Identifier of the project creator/ team with {.sats} / {.ord} domain</td></tr><tr><td align="center">atm</td><td align="center">❌</td><td>Amount to mint in a BRC-1155 inscription, default to {deploy} setting</td></tr><tr><td align="center">txt</td><td align="center">❌</td><td>Write a short message on the inscription</td></tr></tbody></table>

### 3.　Burn

The project owners / Fractionalized creators could burn inscriptions / fractionalized pieces within the BRC-1155 collections by connecting {deploy} with the verify code if it contains too many uninscribed inscriptions to decrease the total supply or achieve deflation in various activities. Here is a basic example below (replace the x),

```
{
 "p": "brc-1155",
 "op": "burn",
 "abbrev": "xxxx",
 "url": "inscription xxxxxx",
 "vfy": "xxxxx"
}
```

{% hint style="danger" %} <mark style="color:red;">**An {deploy} MUST be inscribed before deploying the {burn} action to connect the {vfy}**</mark>
{% endhint %}

<table><thead><tr><th width="104.33333333333331" align="center">Key</th><th width="81" align="center">Must?</th><th>Description</th></tr></thead><tbody><tr><td align="center">p</td><td align="center">✅</td><td>Protocol: To identify and process BRC-1155 events</td></tr><tr><td align="center">op</td><td align="center">✅</td><td>Operation: Type of events {deploy, fractionalize, mint...}</td></tr><tr><td align="center">abbrev</td><td align="center">✅</td><td>Abbreviation: Set a max. 10 letters identifier of the BRC-1155</td></tr><tr><td align="center">url</td><td align="center">✅</td><td>Identifier of the original image location of the inscription</td></tr><tr><td align="center">author</td><td align="center">❌</td><td>Identifier of the project creator/ team with {.sats} / {.ord} domain</td></tr><tr><td align="center">vfy</td><td align="center">✅</td><td>Verify: Encrypted and show the last 5 digits by SHA-256 Algorithm</td></tr></tbody></table>

### 4.　Fractionalize

The holder of each BRC-721 inscription could fractionalize to separate a BRC-721 Inscription into many pieces to save the inscribing cost by inscribing **WITHOUT** the duplicated images. Here is a basic example below (replace the x),

```
{
 "p": "brc-1155",
 "op": "fractionalize",
 "abbrev": "xxxxxxxxx",
 "url": "inscription xxxxxx"
}
```

{% hint style="danger" %} <mark style="color:red;">**This operation is ONLY available for the inscriptions with the BRC-721 standard.**</mark>&#x20;
{% endhint %}

<table><thead><tr><th width="106.33333333333331" align="center">Key</th><th width="80" align="center">Must?</th><th>Description</th></tr></thead><tbody><tr><td align="center">p</td><td align="center">✅</td><td>Protocol: To identify and process BRC-1155 events</td></tr><tr><td align="center">op</td><td align="center">✅</td><td>Operation: Type of events {deploy, fractionalize, mint...}</td></tr><tr><td align="center">abbrev</td><td align="center">✅</td><td>Abbreviation: Set a max. 10 letters identifier of the BRC-1155</td></tr><tr><td align="center">url</td><td align="center">✅</td><td>Identifier of the original image location of the inscription</td></tr><tr><td align="center">author</td><td align="center">❌</td><td>Identifier of the project creator/ team with {.sats} / {.ord} domain</td></tr><tr><td align="center">max</td><td align="center">❌</td><td>Set the total quantity in pieces of the operation, default to "∞"</td></tr><tr><td align="center">lim</td><td align="center">❌</td><td>Limit: Set the fixed amount in every inscription, default to "1"</td></tr><tr><td align="center">vfy</td><td align="center">❌</td><td>Verify: Encrypted and show the last 5 digits by SHA-256 Algorithm</td></tr></tbody></table>

### 5.　Recovery

The inscription holder could recover or even get the inscription back by fractionalizing the original inscription for 1 more piece and using the verification code to prove the ownership of the inscription to re-inscribe for taking back control.  Here is a basic example below (replace the x),

```
{
 "p": "brc-1155",
 "op": "recovery",
 "abbrev": "xxxxxxxxx",
 "url": "inscription xxxxxx",
 "vfy": "xxxxx"
}
```

{% hint style="danger" %} <mark style="color:red;">**The recovery function for taking back control is depending on the view of project teams.**</mark>&#x20;
{% endhint %}

<table><thead><tr><th width="104.33333333333331" align="center">Key</th><th width="81" align="center">Must?</th><th>Description</th></tr></thead><tbody><tr><td align="center">p</td><td align="center">✅</td><td>Protocol: To identify and process BRC-1155 events</td></tr><tr><td align="center">op</td><td align="center">✅</td><td>Operation: Type of events {deploy, fractionalize, mint...}</td></tr><tr><td align="center">abbrev</td><td align="center">✅</td><td>Abbreviation: Set a max. 10 letters identifier of the BRC-1155</td></tr><tr><td align="center">url</td><td align="center">✅</td><td>Identifier of the original image location of the inscription</td></tr><tr><td align="center">author</td><td align="center">❌</td><td>Identifier of the project creator/ team with {.sats} / {.ord} domain</td></tr><tr><td align="center">vfy</td><td align="center">✅</td><td>Verify: Encrypted and show the last 5 digits by SHA-256 Algorithm</td></tr></tbody></table>

## 6.　Lock / Unlock (coming soon)

{% hint style="info" %}
The locking capability of BRC-721 / BRC-1155 will be included in BRC-5058 standard
{% endhint %}

## Suggestions

It is welcomed to provide recommendations for better improvement upon the structure, designs, rules, or compression issues it poses. For traceability json {} is required, as well as the minimum required information to satisfy one of the functions.

## Ending

The standard is still updating. Thank you for taking the time to read the whole passage. You are going to be one of the historical witnesses in Bitcoin development. Please bear in mind that these might be worthless, but the journey should be priceless.&#x20;

## Extention  of Supporting Standard

{% embed url="<https://ivantkf.gitbook.io/brc-721a/>" %}

{% embed url="<https://ivantkf.gitbook.io/brc-4907/>" %}

> BRC-5058 Standard: Locking Capability of BRC-721 / BRC-1155
>
> Coming Soon
