# Runes

### What Are Runes?

**Runes** are a new protocol for creating and managing **fungible tokens** directly on the **Bitcoin base layer**, without relying on off-chain data, external indexers, or additional layers. The protocol was introduced by **Casey Rodarmor** (creator of Ordinals).

Unlike other Bitcoin-based token standards like **BRC-20**, which depend heavily on off-chain indexers and inscription parsing, **Runes are fully UTXO-based and on-chain**, making them more efficient, lightweight, and aligned with Bitcoin’s native architecture.

#### 🔧 How Runes Work

* Runes use **Bitcoin's UTXO model** to store and transfer token balances.
* Tokens are created through a process called **etching**, which defines the Rune's name, supply, divisibility, symbol, and optional terms.
* All data is embedded in the **OP\_RETURN** field of standard Bitcoin transactions.
* The protocol avoids account-based logic, keeping things lean and scalable.

#### 💡 Key Features

* Fully on-chain and indexer-free
* Simple UTXO-based transfers
* Flexible minting via etching rules
* Stateless and efficient by design

#### 🧱 Origin of Runes

Runes originate when someone **etches** (creates) a new Rune via a Bitcoin transaction.\
The creator defines:

* Token name (e.g., `MOONRUNE`)
* Symbol or ID
* Total supply
* Decimal places (divisibility)
* Minting rules (e.g., who can mint and when)

Once etched, these tokens can be distributed, traded, or held — all natively on Bitcoin.

### Swap Runes

#### ➱ **Open the Asigna multisig app**

Navigate to the Asigna multisig app in your web browser: <https://btc.asigna.io/>

#### ➱ **Select the Vault**

On the homepage page select the Vault and open it by clicking the Vault preview card.&#x20;

#### ➱ **Access Swap**

Navigate to the **Swap** section, where a modal window will appear.

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2FfKE1qItvBT27DpygwUS6%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-05-06%20%D0%B2%201.40.22%20PM.png?alt=media&#x26;token=5809ff56-fe56-4db5-97e3-c70f1597621c" alt=""><figcaption></figcaption></figure>

Input the **BTC Amount**, select the **Rune type** from the list of available Runes.

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2F3EXfIBJi1VhQSm0sM3d7%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-05-06%20%D0%B2%201.41.45%20PM.png?alt=media&#x26;token=f0e62030-3591-4561-a015-a2c8cbca5a78" alt=""><figcaption></figcaption></figure>

Configure the Max Slippage and Fee Rate if needed. Optimal Route will be selected automatically.

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2FCANeSMs7jICw3OKuyJyn%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-05-06%20%D0%B2%201.56.02%20PM.png?alt=media&#x26;token=cef17486-5821-4981-8a00-a0ecfcf8c769" alt=""><figcaption></figcaption></figure>

#### ➱ Transaction Confirmation

Click **Swap** button and confirm the transaction in the connected wallet.

{% hint style="warning" %}
Note, creating this transaction requires 2 signatures.
{% endhint %}

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2FEcX0QRtvDUf5y0UWlbMk%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-05-06%20%D0%B2%202.25.54%20PM.png?alt=media&#x26;token=30d633c5-08fc-4270-92da-ea7961ee8b73" alt=""><figcaption></figcaption></figure>

#### ➱ Transaction Execution

{% hint style="info" %}
**Receiving your Runes may take some time.**

This is because the swap service first sends your funds to an intermediate wallet. If the Rune price changes during transaction processing, the service will continue trying to complete the swap for up to **24 hours**.\
If the swap cannot be completed within that time, your funds will be **automatically returned** to your Vault.
{% endhint %}

Before the transaction is executed, it must be **signed by the required number of Vault owners**. Once the confirmation threshold is reached, locate this transaction in the **Transactions** section -> **Queue** tab and click the **Execute** button to start broadcasting of the transaction.

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2F7Gb4s6wcYIk482NOWCDt%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-05-06%20%D0%B2%202.27.10%20PM.png?alt=media&#x26;token=c6c2e306-e02a-403d-aa39-581d84c816ec" alt=""><figcaption></figcaption></figure>

### Transfer Runes

#### ➱ **Open the Asigna multisig app**

Navigate to the Asigna multisig app in your web browser: <https://btc.asigna.io/>

#### ➱ **Select the Vault**

On the homepage page select the Vault and open it by clicking the Vault preview card.&#x20;

#### ➱ **Access Runes**

Navigate to the **Assets** section -> **Runes** tab, where you will find a list of the available **Runes**. Runes can be transferred to other Vaults or Wallets just like any other token.

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2FpR10X9c0nlg1yNPEV0QL%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-04-07%20%D0%B2%203.50.36%20PM.png?alt=media&#x26;token=9de91e77-751c-4cbe-a2bf-a902748c830d" alt=""><figcaption></figcaption></figure>

#### ➱ Send Runes

To initiate a transfer, click the **Send** button.&#x20;

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2F6c56bo1R7h652ukVrerw%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-04-07%20%D0%B2%203.50.36%20PM.png?alt=media&#x26;token=eda541bd-0356-438f-ae24-71dd938543d5" alt=""><figcaption></figcaption></figure>

A modal window will appear, prompting you to input the **Rune type**, **Amount**, and **Recipient Address**.

{% hint style="success" %}
You can send any amount of **Runes** from your available balance — either a portion or the full amount.\
Sending a portion of your Runes will create **two new UTXOs with Runes**, each with a size of **546 sats**.
{% endhint %}

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2FcZv2IrEQktxdM2Rp50nN%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-04-07%20%D0%B2%203.57.08%20PM.png?alt=media&#x26;token=7bc92ade-31c9-44aa-b5a8-6ece24344c8f" alt=""><figcaption></figcaption></figure>

After entering the necessary details, you'll be prompted to select a transaction fee. You can choose from the **recommended fee options** or input a **custom fee**.

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2FHjorV60YgRpP8u3LnO40%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-04-07%20%D0%B2%203.57.24%20PM.png?alt=media&#x26;token=9fdc3b64-a9a8-4f77-96cb-7729c301b0ba" alt=""><figcaption></figcaption></figure>

#### ➱ Transaction Review and Confirmation

Once the fee is set, you'll be able to **review** the transaction details. If everything is correct, click **Confirm** button and confirm the transaction in the connected wallet.

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2FgxnMdwqk6p6ni1OkywDX%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-04-07%20%D0%B2%203.58.03%20PM.png?alt=media&#x26;token=9546be7f-db04-4a64-80fa-5da280f73403" alt=""><figcaption></figcaption></figure>

#### ➱ Transaction Execution

Before the transaction is executed, it must be **signed by the required number of Vault owners**. Once the confirmation threshold is reached, locate this transaction in the **Transactions** section -> **Queue** tab and click the **Execute** button to start broadcasting of the transaction.

<figure><img src="https://254144762-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FLmUskow6Yg0G4jQRE0Lf%2Fuploads%2FZ3dTIYJ2jtsIDMY6a67J%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-04-07%20%D0%B2%204.07.42%20PM.png?alt=media&#x26;token=19251484-21c1-4ae4-b9fe-b19aca76a57f" alt=""><figcaption></figcaption></figure>
