# Overview

**IERC-20 is an inscription Ethereum Request for comments**&#x20;

**IERC 20 A fairer inscription trading market**

## **What is IERC Protocol?**

As the pioneering open trading market within the Ethereum inscription ecosystem, our platform serves as a scalable solution for Ethereum and enhances compatibility with a diverse range of Inscription protocol services. The IERC Protocol facilitates the seamless buying and selling of a wide array of inscriptions based on the IERC and Ethscription protocols, ensuring a user-friendly and accessible experience for all.

## Indexer

The IERC 20 has introduced a comprehensive set of efficient and gas-saving indexes built on Ethereum. By utilizing hexadecimal representation, event information is permanently stored in the EVM input, ensuring tamper-proof data integrity.&#x20;

When no value is sent, events are directed to the black hole address, facilitating faster information retrieval for indexing purposes. This approach optimizes the protocol's performance and enhances the efficiency of data retrieval and analysis.

```
0x0000000000000000000000000000000000000000
```

On the content, we use JSON, which is consistent with brc20. But due to the particularity of Ethereum, we need to add a prefix to match the type, so the content of the inscription tick needs to be prefixed.

```
data:application/json,
```

Followed by JSON, their events are: Deploy\Mint\Transfer\Proxy transfer\Freeze sell.

Here is a simple example:

```
Deploy
data:application/json,{"p":"ierc-20","op":"deploy","tick":"ethi","max":"21000000","lim":"1000","wlim":"10000","dec":"8","nonce":"10"}

Mint
data:application/json,{"p":"ierc-20","op":"mint","tick":"ethi","amt":"1000","nonce":"11"}

Transfer
data:application/json,{"p": "ierc-20","op": "transfer","tick": "ethi","nonce": "45","to": [{"recv": "0x7BBAF8B409145Ea9454Af3D76c6912b9Fb99b2A9","amt": "10000"}]}

Proxy transfer
data:application/json,{"p":"ierc-20","op":"proxy_transfer","proxy":[{"tick":"ethi","nonce":"20","from":"0x22222222222222222222222222222222222222222222","to":"0x22222222222222222222222222222222222222222222","amt":"333","value":"0.001","sign":"0x000"}]}

Freeze sell
data:application/json,{"p":"ierc-20","op":"freeze_sell","freeze":[{"tick":"eth
```

##

### Community Links

​**Website:** [https://ierc20.com/](https://ierc20.com/#/​)

**Twitter:** <https://twitter.com/EthinscXYZ>

​**Github:** <https://github.com/peoplecoin00/terc20#readme>​

**Discord:** <https://discord.gg/wXxAKTUH>

**Mirror:** <https://mirror.xyz/0x0afdffE12556E81D6e57789F972EFAb3cA12F1d7>


# Why use IERC 20?

We are committed to Ethereum's core principles of decentralization and security while prioritizing both cost-effective and user-friendly construction of an open and scalable ecosystem that fully harnesses the native potential of the EVM.

&#x20;

The IERC 20 market maintains a leading position in terms of indexing speed within the Ethereum inscription ecosystem. It aims to revolutionize the crypto landscape by prioritizing the interests of individual participants and fostering a secure and inclusive platform. Anyone can effortlessly deploy, mint, and trade inscriptions. We firmly believe in the immense potential of inscriptions and are enthusiastic about exploring inscription technology.

##


# Use Cases and Features

## Use cases

* Deploy (Live)
* Mint (Live)
* Transfer (Live)
* Bulk Transfer (Live)
* Trade Tokens (Live)
* Stake & Unstake (Live)
* DPoS & PoW Mining (Live)

##

## Major Features

A suite of features that enhance IERC Protocol appeal to users:

* **Secure**

Built on the Ethereum mining mechanism, our protocol leverages Ethereum's inherent security features to ensure the ultimate decentralization and trustlessness and fulfil our commitment to safeguarding user assets.

* **Low Cost**

IERC-20 natively supports arbitrary splitting and batch transfers, resulting in the lowest gas fees and minimizing the costs by embedding interactions within transfer transactions, capitalizing on the inherent structure of Ethereum. For users to enjoy reduced transaction fees while maintaining seamless security and time efficiency.

* **Fast**

With its exceptional processing speed, the system swiftly verifies transactions in just one block, achieving an impressive completion time of approximately 12 seconds.

* **Decentralization**

We uphold the principles of decentralization and security by dedicating ourselves to constructing an open and scalable ecosystem that fully harnesses the compatibility of EVM. We ensure transparency, enabling independent verification for all.&#x20;

## Composition of the IERC Protocols

The IERC protocols comprise a diverse set of components, including:

* **IERC-20:** A foundational building block for secure and efficient inscription transactions. The most scalable inscription solutions support all Inscription's fundamental features and enable arbitrary token splitting.

* **IERC PoW (Beta):** The first protocol on Ethereum to produce inscriptions through Proof-of-Work (PoW) ming, as a consensus mechanism used to confirm and record cryptocurrency transactions, offering various mining methods to reduce gas consumption and increase efficiency.&#x20;

&#x20;

* **IERC-721/IERC-1155(Beta):** IERC-721 has specified properties that allow each **participant** to be uniquely identified and valued independently. IERC-1155 allows for fungible, non-fungible, and semi-fungible tokens to be managed by a single smart contract simultaneously. These standards offer a smoother, more efficient process for showcasing and exploring NFTs.

* &#x20;**UGC Domain Name:** This innovation extends the potential use cases of our protocol.


# Roadmap

### **Insights and Demands Arise**

The IERC Protocol was established in response to the pressing need to tackle numerous critical issues in the crypto market and to the demand for cost-effective and highly secure Ethereum inscription transactions. Meanwhile, problems such as liquidity withdrawals, rug pulls, and hidden positions have significantly eroded trust and led to substantial financial losses for participants. To effectively tackle these challenges while prioritizing the security of investors' interests. IERC20 is actively mitigating disruptions and cultivating a robust ecosystem. We drive stability, minimize disruptions, and promote a transparent and accountable ecosystem. This represents a significant milestone in the IERC 20 market's journey towards complete decentralization and openness.

### Milestones of the Marketplace

Since its inception, we have achieved noteworthy strides and remarkable success in the crypto market.  As a scalable inscription that facilitates faster and more cost-effective transactions while upholding the security of the Ethereum mainnet, the IERC 20 market supports all fundamental features of inscription ticks, establishing a solid foundation for the platform's robust economic model. IERC 20 market launched the groundbreaking $ETHI tick and the OG Card, which early contributors can benefit from, such as renewal exemption, market profit sharing, and pledge bonuses.

The IERC 20 ecosystem places paramount importance on the security of user assets and strives to promote a secure and thriving trading environment.  Following the principles of scientific rigour and operational efficiency, the current **indexing** speed of IERC is in first place in the Ethereum ecosystem. We support various user cases, including Deploy, Mint, Transfer, Proxy Transfer, and Freeze sell indexings. Our indexing approach benchmarks zero and specialized addresses to ensure efficient block retrieval. This streamlined method maximizes efficiency and encourages broader participation, enabling more individuals to contribute to the IERC ecosystem.

To enhance compatibility with a wide range of Inscription protocol services, meticulously designed to safeguard the rights and interests of retail investors, ensuring a secure and inclusive market environment, IERC 20 has added multiple sets of user-friendly and high-performance protocols to optimize gas fees and catalyzes advancing the inscription technology.  We have launched the **IERC-721 BETA test net**. On top of that, the newly introduced **Proof-of-Work (PoW)** mining mechanism is designed to emphasize further and ensure the decentralized nature of assets and fair emission, revitalizing Ethereum's POW mining and allowing it to regain its prominence in the crypto space.&#x20;

The IERC 20 market paves the way for a renewed and thriving ecosystem by balancing scientific principles and practical performance. We have achieved tremendous success within a month of our grand opening, drawing thousands of users' attention and active participation in the market platform. This enthusiastic response shows strong affirmation within the Inscription community, solidifying our position as a leading player in the Inscription community.

&#x20;

### &#x20;**Path to the Ideal Ecosystem**

In the next phase, leveraging our solid foundation and the current market stability, we are strategically focused on advancing our products and ecosystem growth. In the market, alliances with various ecosystems and partnerships with different public chains are integral to our strategy. We've proactively communicated with multiple stakeholders to explore collaborative opportunities. This includes potential cooperative endeavors with various public chains as we seek to enrich and diversify our project's impact.

In TechWise, our commitment extends to enhancing compatibility with multiple inscription protocol services, aiming to create a comprehensive ecosystem within the IERC 20 trading market that caters to the diverse needs of our users.  To achieve this vision, we are  on the way towards the development of the following features:&#x20;

**API and SDK**&#x20;

To promote the development of inscription technology, we use an integrated approach, deepen our technical path, and facilitate user-friendly access through API and SDK offerings.&#x20;

**Creator Royalty**

The IERC 20 marketplace is committed to empowering creators by offering comprehensive royalty services that ensure they receive well-deserved incentives for their valuable contributions.

**Cross-Chain Bridge & Stablecoin**

1. EVM Cross-Chain Bridge: Breaking through the barrier of the Ethereum ecosystem to achieve interoperability and introduce more mainstream inscriptions into the ecosystem.
2. BRC20 Cross-Chain Bridge: Enabling Ethereum users to participate in the BTC inscription ecosystem carnaval easily.

**Domain (DNS) & NFTs**

Leveraging the IERC20 protocol as a base, introducing data protocols like domain and NFTs diversifies the ecosystem, enabling a wider range of use cases and functionalities.

**IERC block explorer**

Develop an ecologically exclusive IERC block explorer to clarify users' data and historical transaction records and empower the protocol system.

**Plugin wallet**

Develop an ecological plugin wallet to support functions such as IERC20 tick transfer and balance inquiry to empower the ecosystem.

**Cross-Validation & Offline Signature**

Offline signature cross-validation uses the zk Layer2 solution to reduce the congestion on Ethereum.

**IERC SWAP**

IERC SWAP will be one of the core segments in extending the IERC protocol. IERC is setting to collaborate closely with esteemed members of the Ethereum Foundation, forging a synergistic partnership to establish a robust theoretical foundation for the groundbreaking IERC SWAP initiative.

**Eco Union & Ambassador Program**

1. Alliance Ethscriptions, BRC20, Taproot, and other ecosystem partnerships.
2. An official ambassador program is on the horizon, poised to be launched eagerly. Please wait for the official announcement of details and consult the official to establish cooperation intentions in advance.


# Explore IERC-20

## The full list of ETH Inscriptions

You can see all IERC-20 Inscription Ticks. Select a tick and enter the tick details page.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2F16cmxEY2JhYc84TkyYxu%2Fimage.png?alt=media&amp;token=db5fa616-e5ff-4c12-8829-f00f062284af" alt=""><figcaption><p>IERC-20 Inscription List</p></figcaption></figure>

## Inscription Details Page

You can view all detailed parameters, including Total supply, Limit per mine, Max mining times for a single address, Decimal, Deploy time, Holders, and Total transactions.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2F8ZevFcgHja9Qo9vstCv6%2Fimage.png?alt=media&amp;token=6aff374c-5063-4658-ab31-27e32ff33d2c" alt=""><figcaption><p>Inscription Details Page</p></figcaption></figure>

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2F958LjUzxgOrreqc8nN3E%2Fimage.png?alt=media&amp;token=f8c7edb6-2aae-4bfe-9c75-0a8d9d73b285" alt=""><figcaption><p>Transactions</p></figcaption></figure>

### &#x20;

### Inscriptions  **have two official certification marks:**

&#x20;     ![](https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FBJRNgNDLsVPpAEen0HOx%2Fimage.png?alt=media\&token=69ce5c59-7e67-4eda-bd8d-307acc9a374d) ![](https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2F86VftvSXJJqGDDw6h2SY%2Fimage.png?alt=media\&token=455c4ba4-6b71-4e49-b6dc-d29404cc25b5)

1. **Golden Mark**: \
   This tick is verified because it is an official organization cooperating with IERC20.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FdkQZisEchH2vXiQ22vin%2Fimage.png?alt=media&amp;token=c22a95d2-bd66-4f0b-95e7-e2d4d44f1ccd" alt="" width="210"><figcaption></figcaption></figure>

2. **Blue Mark**: \
   This tick is verified in the IERC 20 market.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FmKAgczmcUYyuTPNYw5OG%2Fimage.png?alt=media&amp;token=08741c25-ba0b-4cc3-b0b1-a3fd9bc3ef7b" alt="" width="209"><figcaption></figcaption></figure>


# How To Mine

A step-by-step guide about how to Mint IERC-20 Token

A step-by-step guide about how to Mint IERC-20 Inscriptions：

1. **Search the IERC20 inscriptions available to mint**
2. **Connect your wallet**
3. **Mint IERC20 inscription directly**
4. **Check your IERC20 inscription balance**

## 1. Search the IERC20 inscriptions available to mint

First, go to <https://app.ierc20.com/>. You can see all the inscriptions that have been deployed and the progress of the tick mining.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FlUQKStPTvVlXFGOb5Wn5%2Fimage.png?alt=media&amp;token=912bf1f7-098f-4f30-a11f-e412613d8948" alt=""><figcaption><p>IERC-20 Inscriptions List</p></figcaption></figure>

Next, go to the Inscriptions <mark style="color:blue;">Details Page</mark> to ensure the mining progress is not completed and how many inscriptions are left to mine.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FfQ9o09LEhw1Cay3SFLdL%2Fimage.png?alt=media&amp;token=4494767c-0be2-4f80-96a5-123cfd9e06a8" alt=""><figcaption><p>Inscriptions Info</p></figcaption></figure>

{% hint style="warning" %}
Don't forget to double-check that the **"inscriptions name"** is correct.

Also, check the **"limit amount of mint"** and **"the max minting times for a single address".**
{% endhint %}

## 2. **Connect Wallet**&#x20;

Click **"Connect Wallet"** on the header or **"Mint"** to connect your wallet. Don't forget to switch to **Ethereum chain mainnet**.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2F8zdwqTEBUng7xeea5ZjF%2Fimage.png?alt=media&amp;token=c43adbbb-4c83-4e4e-8d6e-d2fc7d487b70" alt=""><figcaption><p>Mint Inscriptions</p></figcaption></figure>

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2Fi5tGUBNhJyW7gromKj3B%2Fimage.png?alt=media&amp;token=72374ded-2153-4ebf-8738-2599edd635ee" alt=""><figcaption><p>Connect Wallet</p></figcaption></figure>

## 3. Mine Normal IERC20 inscription

Click **"Mine"** button, and **the amount** will be filled in automatically. Confirm the transaction. Minting transaction will only charge you for gas.

Please confirm again before you Mint: \
1\.  Each address can mint **inscriptions** **up to 10 times** and any excess minting times will be invalid.\
2\. Due to block update speed, the current progress of inscription minting may not be accurate and inscriptions may have completed mint.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2Foty8i7AZhhujt08pfKnh%2Fimage.png?alt=media&amp;token=bc944103-6f62-4ddd-8648-dbca3f53de9d" alt=""><figcaption><p>Mint Directly</p></figcaption></figure>

{% hint style="danger" %}
&#x20;Before mint, please do not receive transfers from others, transfers are also counted as balance.
{% endhint %}

After the transaction succeeds, your wallet address will appear in the holder list below, and you can also view your transaction.&#x20;

You can [Trade](https://ierc20.com/market/ethi) your inscriptions, or make a <mark style="color:blue;">Transfer</mark>.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FnYhqnQPJQCwP256WSEO9%2Fimage.png?alt=media&amp;token=40ab9935-0c50-4438-ae05-31bb8f04fe39" alt=""><figcaption><p>Transfer &#x26; Trade</p></figcaption></figure>

## 4. Check your IERC20 inscription balance

Click on the wallet address on the header, then click on **"My Balance"** in the drop-down menu.&#x20;

Or you can also go back to the [H<mark style="color:blue;">omepage</mark>](https://ierc20.com/) and search by wallet address.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FZljxsazF6qH9T02BiVPq%2Fimage.png?alt=media&amp;token=8ffe60ad-6e2d-47e6-8893-19d5fb703edd" alt=""><figcaption><p>My Balance</p></figcaption></figure>

Here you can retrieve all the IERC20 inscriptions held, and all inscription transactions related to the address.&#x20;

Click the **highlighted wallet address** in the transaction history to switch to view the IERC20 balance and transactions of that address.


# How To Deploy

A step-by-step guide about how to Deploy IERC-20 Token

**You can readily complete the deployment of a new IERC20 tick within three steps at** [**https://app.ierc20.com/inscribe**](https://app.ierc20.com/inscribe)**.**

### 1. Enter the **Tick of the** tick

There is no limit to the text length of the Tick and letters are case insensitive, but be careful not to use an already used tick.&#x20;

{% hint style="danger" %}
If the deployed tick is used, no IERC20 tick will be deployed even if the transaction is successful.
{% endhint %}

### 2. Enter the Total supply, Limit per mint and Maximum minting times

The default total supply of ticks is 21,000,000, the limit amount per mint is 1,000 and the maximum minting times for a single address is 10. All data can be customized before deployment.

### 3. Click **"Deploy"** and confirm the transaction

Connect your wallet and switch to **Ethereum** mainnet. After confirming the information, click on **"Deploy"** button and confirm the transaction in your wallet.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FXehxJpXhUW7yPNSTtMn2%2Fimage.png?alt=media&amp;token=b7eb6b8d-0427-433d-a62a-d880296f0f53" alt=""><figcaption><p>Deploy IERC20 Tick</p></figcaption></figure>

Once the transaction is successful, you can go to <mark style="color:blue;">Tick Details Page</mark> for minting. Read more minting details [here](/users-guide/how-to-mine).

{% hint style="info" %}
Deployment and minting are valid according to the order of transactions on the chain.
{% endhint %}


# How To Transfer

The transfer function of IERC20 is super advanced and supports Bulk Transfers. You can fill in multiple inscriptions receiving addresses and customize the amount of inscriptions.

### 1. Check your IERC20 balance

Before transferring, you should connect wallet and check your wallet balance first.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FgHQNeRTlmiYTgj6WFIYo%2Fimage.png?alt=media&amp;token=b9ac0e72-23be-46b6-bf10-c62f88e15718" alt=""><figcaption><p>My Balance</p></figcaption></figure>

Here you can retrieve all the IERC20 inscriptions you are holding and all inscription transactions related to this address.

### **2. Enter** multiple **receiving address and** inscription **amount**

Click on the **“Transfer”** button on the <mark style="color:blue;">Balance page</mark> directly or go to the Inscription <mark style="color:blue;">details page</mark>.&#x20;

Then you can fill in only one receiving address, or you can add multiple receiving addresses by clicking **"Add transfer address"**.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FWY2IyCR2VrRnpb5Z0hOo%2Fimage.png?alt=media&amp;token=1bd0f6e5-977b-4e8f-9bd4-2c10bff1dcc6" alt=""><figcaption><p>Transfer Inscriptions</p></figcaption></figure>

Package multiple transfers in the same on-chain transaction can effectively providing smooth interaction and reducing costs.

### 3. Click "Send" and confirm the transaction

Transactions may take a few seconds to confirm, and soon you will be able to view the new balances. If the balance is incorrect, please refresh the page and wait, or contact the community administrator on [Discord](https://discord.gg/wXxAKTUH).

\* Please make sure you have enough balance. Check your balance first.

\* Before mint, please do not receive transfers from others, transfers are also counted as balance.


# Market

The IERC-20 Inscription Market serves as the first of its kind on Ethereum, offering a unique and trader-friendly platform for users to engage in inscription trading. Inscription ticks, 24-hour volume, total trading volume, and floor price are presented. By clicking on an inscription tick, you will enter the inscription page and see a full list of all available orders.


# How To Buy

A step-by-step guide about how to start buying IERC20 ticks in the market.

### 1. Browse the Market

Go to <https://app.ierc20.com/market> and browse the market. First, you need to connect to your wallet and switch to the Ethereum mainnet.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FdDP5Ia6cAJe5VsYbb3Rp%2Fimage.png?alt=media&amp;token=c627eb99-df86-4756-ae83-b034466a99bc" alt=""><figcaption><p>Tick Market</p></figcaption></figure>

### 2. Select the tick and view the "Listed" section

**All IERC-20 Inscriptions** are now allowed to trade on the market. Select the tick you want to buy, and you will see all orders in the **"Listed"** section.&#x20;

You can see the tick amount, tick price, and Total price of each order on the card. The List is sorted in ascending order by Tick Price. Refresh to view new market orders.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FjNNdLFeHsI1H3YS8mL90%2Fimage.png?alt=media&amp;token=bed5a689-60d9-45cc-a266-8e1432ee784b" alt=""><figcaption><p>Listed</p></figcaption></figure>

The status of all listed orders will be automatically updated, including:

1. **Sold Out**: The order has been sold, click on the address to view the transaction details;&#x20;
2. **Canceled**: The seller canceled the listing;&#x20;
3. **Expired**: The seller’s listing has expired;&#x20;
4. **Pending**: The order is being purchased, including all addresses involved;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FQ6BMB9EqNiNNNZd4EinB%2Fimage.png?alt=media&amp;token=b3c4161a-19bd-4c91-a250-0f7343930648" alt=""><figcaption><p>The status of orders</p></figcaption></figure>

Before buying, you can also switch to the **"Orders"** section to view the latest transaction history and order prices.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2Fu0C7R9KmLPAOFIXS0zkY%2Fimage.png?alt=media&amp;token=f49e9951-d889-4237-a5fa-2247a2c948bf" alt=""><figcaption><p>Purchase History</p></figcaption></figure>

### 3.  Click "Buy" and confirm the transaction

After confirming the order information, click on the **"Confirm"** button and confirm the transaction in your wallet. Transactions may take a few seconds to confirm, and later you will be able to view the new balances. &#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2Fir460FSonAeTdAfEgIes%2Fimage.png?alt=media&amp;token=a751c2c9-6f47-4487-98ac-ef155cd0161b" alt=""><figcaption><p>Purchase</p></figcaption></figure>

If the balance is incorrect, please refresh the page and wait, or contact the community administrator on [Discord](https://discord.gg/wXxAKTUH).


# How To List

A step-by-step guide about how to start listing IERC20 ticks in the market.

### 1. Browse the Market

Go to <https://app.ierc20.com/market/ethi> and browse the market. First, you need to connect to your wallet and switch to the Ethereum mainnet.&#x20;

### 2. Select the tick and click on "Quick List"

**All IERC-20 Inscriptions** are now allowed to trade on the market. Select the tick you want to list, and you will see all orders in the **"Listed"** section.&#x20;

You can see the tick amount, tick price, and Total price of each order on the card. Check the current market price and click the **"Quick List"** button to list your order.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FLJUdfrWjsrpfkmlasu6B%2Fimage.png?alt=media&amp;token=1041288e-67f5-4317-b7ad-a465898fd3ef" alt=""><figcaption><p>Orders in the market</p></figcaption></figure>

{% hint style="info" %}
An address can have maximum one unfilled order in the market. Before listing a new order, please make sure that there are no uncancelled and unfilled orders.
{% endhint %}

### 3. List a new order

Enter the Amount and Price of ticks you want to sell (currency is ETH).

The **"Auto"** button will help you automatically fill the total price of the order with the floor price of the current market.&#x20;

You also need to set the listing duration, default is 7 days. After expiration, the order will be automatically removed from the market.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FUvrWSwKcZbtN5UgU3EfL%2Fimage.png?alt=media&amp;token=9eb0af31-d9c8-45b1-b6b1-4ddd224915d9" alt=""><figcaption><p>Token Listing</p></figcaption></figure>

Click **"Confirm"** and sign the transaction in your wallet. Transactions may take a few seconds to confirm. And there is no gas fee for listing.

### 4. Check Your List

After the transaction is confirmed, you can view your listings in the **"My List"** section.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FvQ06LgLVGHFrYuMWkleF%2Fimage.png?alt=media&amp;token=d5e9347c-d143-4061-8d83-49698eade318" alt=""><figcaption><p>My List</p></figcaption></figure>

Find your order in the "Listed", you can also cancel the listing here.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FVanMQFKIAfpb0TRUwyUl%2Fimage.png?alt=media&amp;token=74a8a8e0-20e3-424e-886a-d23569aed9fe" alt=""><figcaption><p>Unlist</p></figcaption></figure>


# How To Bulk Buy

A step-by-step guide about how to bulk trade IERC20 ticks using the shopping cart in the market.

### 1. Browse the Market&#x20;

Go to <https://app.ierc20.com/market/ethi> and browse the market. First, you need to connect to your wallet and switch to the Ethereum mainnet.&#x20;

### 2. Select the Inscription and click the "Add button"

**All IERC-20 Inscriptions** can now create up to 10 multi-item bundles to buy in one transaction on the market. Select the items you want to buy, click the **+** button, and it will appear in the **"Cart"** at the top right of your screen.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FmPdNlX9TUEk9Syjo9zMA%2Fimage.png?alt=media&amp;token=c8dc6d49-efcc-48da-84af-4c88ea791de7" alt=""><figcaption></figcaption></figure>

###

### 3. Bulk buy the items in your "Cart"&#x20;

Click the **"Cart"** button at the top right of your screen. You will see the item details and quantity of the desired items in bulk.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2Fyo8EZoJlQF83qOjnpjJN%2Fimage.png?alt=media&amp;token=4b5b1546-58ab-4ebe-809b-e892edccb8b4" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Please note that items cannot be reserved if you do not finish the full transaction process, and they may become "out of stock" while you are placing your order.
{% endhint %}

###

### 4. View your transaction history

You may also view your transaction history.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FZic8SMqEccJuw6NF4k1e%2FUntitled%20(1).png?alt=media&amp;token=b3d3885d-b8a4-43b1-8aee-32ac9495e5f3" alt=""><figcaption></figcaption></figure>

### &#x20;


# How to IERC Swap

IERC Swap is a modular built on top of the ERC-20 protocol. It allows users to swap, provide liquidity, and earn inscriptions directly. Currently, the exchange only supports trading between $ETH and $ethi inscription pairs, additional trading pairs will be added soon.

**IERC Swap consists of:**

**Swap** - the trading interface for executing swaps on IERC Swap and locking inscriptions to the platform's custodial address.

**Pools** - the liquidity provider interface, where LPs can add liquidity to IERC-Swap pools.

**Transactions** - interface for users to view the past IERC-Swap interactions.&#x20;

### 1. Connect your wallet

Go to <https://app.ierc20.com/swap>. First, you need to connect to your wallet and switch to the Ethereum mainnet.

### 2. Click on the "Swap" tab at the bottom of the main page

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2Fct2BmMPG49GP8vHsUkA9%2FFrame%201871880709.png?alt=media&amp;token=a2664bb4-a549-4262-82a5-fec3c0d8ed04" alt="" width="375"><figcaption></figcaption></figure>

Enter the amount of $ethi you desire to swap.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FdC2BNGhJk23ZN4oQPEYl%2F%E7%A1%AE%E8%AE%A4%E4%BA%A4%E6%98%93.png?alt=media&amp;token=ff6d4445-a545-42be-a3cd-47ba2acd3630" alt="" width="206"><figcaption></figcaption></figure>

Check the "Slippage Tolerance" setting, the slippage tolerance is set at 0.5% by default. Adjust it if necessary to account for potential price changes during the transaction.

### 3. Approve and Comfirm to Swap

In order to swap on IERC-Swap, converting inscriptions to ERC20 tokens, you must first lock inscriptions to the platform's custodial address.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FGgF574IicROkHqrYasES%2FFrame%201871880718.png?alt=media&amp;token=76b6a890-c64b-4e2d-8f18-44bb273efb51" alt=""><figcaption></figcaption></figure>

Swap confirmation to add the liquidity pool and the corresponding amount of $ETH required will pop up.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FT1MTrKQJA05NWUDcoO9m%2F%E7%A1%AE%E8%AE%A4swap%E9%93%AD%E6%96%872.png?alt=media&amp;token=bec84c19-81f3-4f59-8798-c8ca182198f8" alt=""><figcaption></figcaption></figure>

Note that IERC Swap requires you to add an equivalent value of both tokens.

### **4. Verify the Swap**

Once the transaction is successful, you should see the updated  balances in your wallet.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FouHeImkXakrD6Q7GdtYC%2FFrame%201871880709.png?alt=media&amp;token=cd90390e-bef0-4de3-9ba2-72c1be65f404" alt=""><figcaption></figcaption></figure>

You can check the "Swap" or  transaction history section to confirm the successful swap.


# How to add Liquidity

### 1. Connect your wallet

Go to <https://app.ierc20.com/swap>. First, you need to connect to your wallet and switch to the Ethereum mainnet.

### **2. Go to the "Pool" Section and Select the Pair**

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FjwZFDvmFAkP3PpfNHY6W%2FFrame%201871880719.png?alt=media&amp;token=ff406d46-1adf-441f-bc84-a4da0316066b" alt=""><figcaption></figcaption></figure>

On the liquidity addition section, select the inscriptions pair you want to add liquidity to. &#x20;

> IERC Swap for now supports trading between $ETH and $ethi inscription pairs, the additional trading pairs will be added soon.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FP3oKuVFfATCY0m9iOLJ6%2Fmodal.png?alt=media&amp;token=97cc43fb-a9e8-43a3-a77d-c6e65bfa8b45" alt="" width="206"><figcaption></figcaption></figure>

In the input fields, enter the amounts of inscription s you want to add to the liquidity pool. Make sure the amounts are balanced based on the current exchange rate.

### 3. Approve and Comfirm to add Liquidity

In order to swap & add liqidity on IERC-Swap, you must first lock inscriptions to the platform's custodial address. \
If the transaction is canceled, you will need to manually unlock them.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FQ8qUCBArqyp6rDrxjvMb%2F%E7%A1%AE%E5%AE%9A%E6%B7%BB%E5%8A%A0%E6%B5%81%E5%8A%A8%E6%80%A7.png?alt=media&amp;token=a0a79dcc-9f41-4423-9a6c-0d675f02b2ba" alt=""><figcaption></figcaption></figure>

Swap confirmation to add the liquidity pool and the corresponding amount of $ETH required will pop up.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FXCUajNkixVq9slIm8QqF%2F%E7%A1%AE%E8%AE%A4%E6%B7%BB%E5%8A%A0%E6%B5%81%E5%8A%A8%E6%80%A72.png?alt=media&amp;token=fbe382ac-4012-4345-afa5-a62bbccf9e39" alt=""><figcaption></figcaption></figure>

### **4. Verify the Liquidity Addition**

Once the transaction is successful, you should see the updated liquidity pool.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2F3urPmqKRo3bhKMfSZcyi%2Fpool%20final.png?alt=media&amp;token=2acbed0e-4ca5-42a0-9c14-deaf3e325637" alt=""><figcaption></figcaption></figure>

You can check the "Pool" section to confirm your contribution.

### Withdrawing the Liquidity

On the liquidity interface, you'll see a list of pairs for which you have provided liquidity.

Enter the amount of liquidity you want to remove.

Check the "Slippage Tolerance" setting and adjust it if necessary to account for potential price changes during the transaction.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2F02ZpxMurzwVNPBTIgjr8%2F%E7%A1%AE%E8%AE%A4%E4%BA%A4%E6%98%932.png?alt=media&amp;token=9c391ff1-7bc5-4113-909b-d541a1eba080" alt="" width="206"><figcaption></figcaption></figure>

&#x20;If you're satisfied with the withdrawal details, click the "Withdraw" button.&#x20;

#### **Confirm the Withdrawal**

Carefully review the withdrawal details. Your wallet will prompt you to confirm the withdrawal transaction.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FnuOmBGELHNy9ENWD5YuE%2F%E7%A1%AE%E8%AE%A4%E7%A7%BB%E9%99%A4%E6%B5%81%E5%8A%A8%E6%80%A7.png?alt=media&amp;token=d5808442-0bc8-48fe-9896-d5f901c13658" alt=""><figcaption></figcaption></figure>

Once the transaction is successful, you should see the updated  balances in your wallet.&#x20;


# Liquidity providers (LPs)

When you provide liquidity, you will receive LP tokens in return.&#x20;

The IERC SWAP transaction service fee is 1.3%, where:&#x20;

* 1% goes to the Liquidity Providers&#x20;
* 0.3% goes to the IERC DAO

When providing liquidity, it is necessary to add an equivalent amount of ethi and ETH according to the current ratio of the pool (inscriptions need to be locked), and obtain LP certificate tokens.&#x20;

When removing liquidity, you will receive an equivalent amount of both types of tokens and additional transaction fees according to your share.


# FAQ

#### 1. **What is 1.3% service fee for?**

A:Liquidity providers (LPs) will receive a 1% transaction fee and IERC DAO will receive 0.3%.

#### **2. Is it possible to use $ethi as gas during the swap?**

**A:** Transaction fees, commonly referred to as “gas”, still require the use of $ETH (Ethereum) rather than $ethi. Additionally, service fees are paid in $ETH.

#### **3. How to add liquidity of a token pair at IERC Swap?**

**A:** Connect your wallet and enter the amount of $ethi you want to add to the liquidity pool and the corresponding amount of $ETH required will pop up. Note that IERC Swap requires you to add an equivalent value of both tokens. For example, if you add $100 worth of ETH, you also need to add $100 worth of $ethi. After successfully providing liquidity, you can see the total value in $USDT of your total liquidity and the percentage (%) of your liquidity accounting for the total amount.

#### **4. Can users create their own liquidity pools when we launch Swap?**

**A:** The first phase of the swap function only supports the exchange of $ethi and $ETH inscription pairs. Other inscription exchange pairs will be onboard at a later stage.

#### **5. Why do users need to lock $ethi before swapping for $ETH?**

**A:** When converting inscriptions to ERC20 tokens, inscriptions need to be locked to the platform’s custodial address. If the swap action is canceled, the inscriptions need to be unlocked. When swapping $ETH for $ethi inscriptions, users receive the inscriptions directly.

#### **6. Does LP earn a percentage of the service fee when they add liquidity into the pool?**

**A:** Liquidity providers (LPs) will receive a 1% transaction fee. When providing liquidity, it is necessary to add an equivalent amount of ethi and ETH according to the current ratio of the pool (inscriptions need to be locked), and obtain LP certificate tokens. When removing liquidity, you will receive an equivalent amount of both types of tokens and additional transaction fees according to your share.

#### **7. What is slippage tolerance in IERC Swap?**

**A:** Slippage tolerance refers to the maximum percentage difference between the expected price of a trade and the actual price at which the trade is executed. It accounts for price fluctuations that can occur due to market volatility between the time the trade is initiated and when it is finalized. Setting a slippage tolerance helps ensure that trades are executed within an acceptable range of the expected price, protecting users from significant price deviations. The slippage tolerance is set at 0.5% by default, and users can change it to customized numbers.

#### **8. What are the main features of the transaction page?**

**A:** There is Status for swap success or failure, Date\&Time, Block Number, Type for Buy or Sell Amount of inscriptions, Unit Price in $USDT, Total Value in $USDT, Address conductor, TNX Hash traceable to etherscan, and a price chart.


# PoW\&DPoS

### IERC PoW and DPoS Mechanism

The IERC protocol presents an innovative inscription tick distribution system, which is outlined in a development roadmap consisting of three key phases:

1. Base Phase: During this stage, we establish the output model for Proof of Work (PoW) Mint by validating it through hash rules. This approach enables anyone to mint inscriptions by providing computational power, gaining widespread recognition and participation from market users.
2. Integration Phase (PoW & DPoS Phase): During this stage, the mechanisms of PoW and DPoS (Delegated Proof of Stake) are combined to create a more equitable inscription output model. This integrated model maintains the fairness of PoW, where rewards are based on provided computational power, while introducing DPoS to enhance network governance and security.
3. Final Phase: In the final stage of the roadmap, the IERC protocol will achieve full modularity of PoW and DPoS. This means that any user will be able to build and customize their own PoW & DPoS extension applications on this infrastructure, making it truly community and user-centric. Additionally, the computational power of PoW will be redirected to support the construction of decentralized indexes, further enhancing the efficiency and transparency of the ecosystem.

Through these three phases, the IERC protocol will drive a decentralized, scalable, and fair cryptocurrency ecosystem for all participants. The design of each stage takes into account sustainability and user engagement, which means stable growth and technological innovation are well-ensured across the entire network.

## What is IERC PoW?

IERC POW is a mining output inscription scheme introduced by the IERC protocol for computational power users. It serves as a social experiment within the Ethereum inscription ecosystem.🧪

By utilizing Ethereum's "pre-generated hash mechanism," IERC PoW establishes a computational power output threshold for inscription assets. This threshold validates the rarity and value of the assets in a decentralized Proof of Work (PoW) form. IERC PoW follows scientific reasoning and incorporates minimal modifications to enhance the functionality and capabilities of the IERC native protocol.

## What is IERC DPoS?

The DPoS (Delegated Proof of Stake) component of the IERC protocol is a two-stage process that encompasses staking and stake mining. Users stake their valid Inscriptions in designated pools to earn DPoS\_EOA points, which can be accumulated and consumed within DPoS to obtain mining rewards. Different staking targets and pools offer varying rates of point generation, allowing users to choose the most suitable staking strategy based on their preferences. Valid Inscriptions refer to assets that are included in the indexing node plans, giving participants the opportunity to make their assets eligible as valid Inscriptions.

##

##


# How to PoW\&DPoS Mining

{% embed url="<https://youtu.be/-rua14LZabk?feature=shared>" %}

A step-by-step guide about how to burn points to DPoS Mining.

### **1. Browse the Market**

Go to <https://ierc20.com/market/ethi> and browse the market. First, you must connect to your wallet and switch to the Ethereum mainnet.

### 2. Go to the PoW\&DPoS section

Select the amount of DPoS points you wish to burn and start mining.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FHKZhwp516WRAzTIue4IA%2FFrame%201871880030.png?alt=media&amp;token=d1e38422-e480-4ed9-a702-3adb2a0d18e4" alt="" width="563"><figcaption></figcaption></figure>

**The PoW\&DPoS Overview**&#x20;

It shows the PoW Difficulty and DPoS Points Consumed of the latest 24-hour data, accurate to the real-time block. The white represents PoW, and the blue represents DPoS.

The greyish blocks represent the latest generated outputs, with darker colours indicating a higher PoW computational power.

The blue blocks represent the latest generated outputs, with the darker colours consumption of DPoS points.

You can also view all your previous DPoS mining data down below.

{% hint style="info" %}
Please make sure to check your mining strategy details before confirming to mine.: \
1\. It will be invalid if you choose an exceeding amount of mining.\
2\. The amount of points you wish to use will be burned and consumed.

3\. There will be limited output per block (Max 500).
{% endhint %}

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FFrKghGswBgxjYxIyp1nk%2Fspaces_hgfSULx6VEo6eLaLSwM0_uploads_uTkf2QSMNG40ZbGIrkUJ_photo_2024-01-15_17-04-24%201%201%201.png?alt=media&amp;token=193e19a3-5be7-4cc6-a9a2-6ee02a75828f" alt="" width="285"><figcaption></figcaption></figure>

### 3.   How to PoW mining

For PoW mining, click the GitHub tutorial and follow the steps to operate:  <https://github.com/IErcOrg/ierc-miner-js>

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2F4QIpjHTwaXmqioXYGQll%2FFrame%201871880031.png?alt=media&amp;token=a962acbc-4066-416e-83d4-a43d2665ca95" alt="" width="563"><figcaption></figcaption></figure>

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FQIipEzXPBYDbR9ZKlvL4%2Fimage%20586.png?alt=media&amp;token=d10c4c0a-a205-4a15-acfd-fb20eb76434d" alt="" width="375"><figcaption></figcaption></figure>


# IERC PoW

Decentralization is a fundamental concept in the world of cryptocurrencies and blockchain. IERC PoW is designed to emphasize further and ensure assets' decentralized nature.

The future development of inscriptions relies on a robust digital object format that can handle various use cases while reducing software implementation errors.

1. **Core Decentralization**: Decentralization is crucial for network security, trust, and empowerment in blockchain applications and cryptocurrencies. With the PoW model, IERC PoW achieves additional decentralization in the output of inscription assets, encompassing both technical implementation and asset distribution.
2. **Ensuring Rarity and Value of Assets**: IERC PoW establishes a computational power output threshold that prevents excessive production and malicious attacks on inscription assets by adopting the PoW approach. This enhances the rarity and value of inscription assets, distinguishing them from assets produced in traditional centralized systems that are susceptible to central authority.
3. **Fair Distribution and Ideal Ecosystem**: The PoW model allows any participant to potentially obtain inscription assets based on the computational power they contribute. This encourages more participants to join while ensuring fair asset distribution, contributing to a long-term stable and ideal ecology.
4. **Role as Infrastructure Provider**: IERC PoW is a platform and toolset for participants to mine and produce assets according to their needs, without making decisions about specific asset targets. This ensures neutrality and fairness, as IERC PoW is unaffected by changes in the value of any particular asset.

## Value of IERC PoW Assets

IERC PoW is the first and only implementation of the concept of PoW output in the Ethereum inscription protocol. It has a complete trading market and a large consensus user base. In the current market conditions, unrestricted access to inscriptions would discourage potential users and lead to concentrated initial distribution, which is detrimental to long-term project development. The current IERC PoW output assets are fully compatible with the trading mechanism of the IERC 20 Market and can be freely traded.

Opinions in the market regarding PoW inscription mining vary. However, as pioneers and creators of Ethereum inscriptions, we believe in the potential of technology. We are dedicated to the ongoing exploration and development of the inscription ecosystem, firmly believing that our endeavours will earn widespread recognition in the market. We are committed to ensuring that supporters of our community receive the value and rewards they deserve.

We welcome all forms of cooperation to promote the development of the Ethereum inscription ecosystem. For business cooperation, you can contact us through our official Twitter channel or via the email address <support@ierc20.com>.

#### **We have deployed two sets of PoW experience** inscriptions **on the Ethereum mainnet:**

> ⚠️ Notice: These inscriptions are not official targets in any form, and any market activities associated with them are unrelated to the official project.

* ierc-m4: Requires a mining threshold difficulty of "0x0000".
* Ierc-m5: Requires a mining threshold difficulty of "0x00000".

###


# Phrase I: PoW - Base

### Workc & MintHash

IERC PoW builds upon the IERC native protocol by introducing the "workc" field to describe the mining output difficulty. Only Mint Transaction Hashes that meet the workc format are recognized by indexers. All indexers strictly adhere to this rule.

Apart from workc, no other complex or unreasonable concepts or changes have been introduced.

> Workc: Describes the mining output difficulty. Only transactions with hash headers meeting this rule will be included.
>
> MintHash: Refers to the transaction hash that complies with the [Mint operation in IERC Protocols](https://docs.ierc20.com/developers/mint).

For instance, if you want to mine ierc-m4 inscriptions, your Mint Transaction Hash must start with "0x0000".

```jsx
const regex = /^0x0000[a-fA-F0-9]{36}$/;
const isValidity = regex.test(mintHash)

// isValidity => true : 0x0000edd685500ca4c1c261e15a3267d364a4a9548966d45a70085c2cfba534b
// isValidity => false : 0xe6cc5edd685500ca4c1c261e15a3267d364a4a9548966d45a70085c2cfba534b
// isValidity => true : 0x0000000685500ca4c1c261e15a3267d364a4a9548966d45a70085c2cfba534b
```

### Deploy & Mint

Before proceeding, you need to understand the deployment mechanism of IERC20 inscriptions through the documentation.

Based on IERC20, you need to add a field called `workc` in the methods to explain the mining difficulty.

Like this:

```jsx
// deploy; send 0eth from self to 0x0000000000000000000000000000000000000000;
{    
	"p":"ierc-20", //protocol name: ierc20 | terc-20    
	"op":"deploy", //operation: deploy/mint/transfer/freeze_sell/proxy_transfer    
	"tick":"ierc-m4", //token tick, can't be repeatable, case insensitive.    
	"workc":"0x0000",    
	"max":"21000000", //max supply    
	"lim":"1000", //limit for each mint    
	"wlim":"10000", //limit for each address can maximum mint, address balance < deploy.wlim (Before mint, please do not receive transfers from others, transfers are also counted as balance)    
	"dec":"8", //decimal for minimum divie    
	"nonce":"0", //increasing interger
}
```

If you want to mint inscriptions, the data format follows the same mechanism as regular IERC20 inscriptions. Just ensure that your `mintHash` complies with `workc`.

##

#### **We have deployed two sets of PoW experience** inscriptions **on the Ethereum mainnet:**

> ⚠️ Notice: These inscriptions are not official targets in any form, and any market activities associated with them are unrelated to the official project.

* ierc-m4: Requires a mining threshold difficulty of "0x0000".
* Ierc-m5: Requires a mining threshold difficulty of "0x00000".


# How to Mine

## Using CLI Code

If you have programming basics, you can run our CLI for mining.

1. Fork our CLI code repository.

```
git clone https://github.com/IErcOrg/ierc-miner-js
```

2. Initialize the package.

```
yarn install
# or npm install
```

3. Import or create a mining account.

```
# View help information
yarn run cli wallet --help

# Create a new account
yarn run cli wallet -create

# Import an existing account
yarn run cli wallet -set <Your PrivateKey>

# View account information
yarn run cli wallet -show <Your Address>
yarn run cli wallet -show --all
```

4. Start mining.

<pre><code><strong>yarn run cli mine &#x3C;Tick> --account &#x3C;Your Miner Account>
</strong></code></pre>

5. View help information.

```
yarn run cli --help
```

## Using the Website

If you have no programming background, you can use our web interface for mining.

Website: <https://miner.ierc20.com>

This website is fully open-source, and you can check it out at <https://github.com/IErcOrg/ierc-miner-js>

## Other Methods

If you are an excellent developer, you can rewrite the mining program in any language, as long as it can quickly compute `mintHash` and submit it to the chain.

We will only rely on the actual `mintHash` on the chain as the sole criterion for indexing.

If you develop an outstanding mining program and are willing to share it as open-source, please contact us.


# Phase II: PoW - Advanced

### Output Model

The output is completely determined by the CPU computing power. The miner can customize the appropriate strategy according to its own computing power. We describe the mining difficulty as m4-m64. For example, m4 represents the mint hash value starting with "O×0000" as a valid, m6 represents the mint hash value starting with "0×000000" as a valid value. The miner can do it by itself before deciding on mint.

### DPoS points & Computational Power

In the IERC protocol, the mining output of PoW (Proof of Work) is entirely dependent on the computational power of the miners. Miners can customize their mining difficulty by evaluating their own computational power and choosing an appropriate strategy. The levels of effective mining difficulty range from m4 to m64, where the m4 level signifies that the effective Mint hash value starts with "0x0000," while the m6 level indicates that the hash value starts with "0x000000."

When miners decide on the desired mining difficulty and successfully find a hash value that meets the criteria, they need to pay a certain amount of gas fees to have the Mint transaction added to the blockchain. The mined block reward is calculated using the following formula:

1. **The formula for calculating the weight of PoW is as follows:**

   $$Weight=10^{m−4}$$

* $$Weight$$ represents the proportion of rewards allocated to the miner in that block, and **m** represents the selected mining difficulty level.

2. **The formula for calculating the PoW reward is as follows:**

$$Rewards=\frac{Weight}{Weight\_T}×(BlockRewards×Ratio\_{PoW}×(1+LastEmptyCount))$$

* $$Rewards$$ represent the mining rewards that a miner can obtain in the current block.
* $$Weight\_T$$ represents the total sum of the weights of all valid mining activities in the current block.
* &#x20;$$BlockRewards×Ratio\_{PoW}$$ represents the PoW output reward for each block. For example, in the first two years, the block reward is 50% of the base reward, which is 50% of 1000 inscriptions. Afterwards, the block reward is halved every two years.&#x20;
* $$LastEmptyCount$$ represents the number of consecutive blocks without valid PoW transactions in the previous block or blocks. This value will increase the reward for subsequent blocks until a valid transaction is generated.

This reward mechanism ensures that as the mining difficulty increases, miners have the potential for higher profits. It also encourages continuous network participation and provides cumulative rewards for blocks without transactions, thus providing strong motivation for miners to continue contributing their computational power even during periods of lower participation.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2Fb0eANcsJ8OF9VHcbYNiD%2Fimage.png?alt=media&amp;token=e53ed636-50d1-49ba-aa3f-2bf87075232f" alt=""><figcaption></figcaption></figure>

1. In the first scenario, at BlockNumber X,&#x20;

There are four miners participating in mining: A, B, C, and D. A and B choose mining difficulty level m4, C choose m5, and D choose m6. According to the PoW weight calculation formula, The weights of A and B are $$10^{4−4}=10^{0}=1$$, the weight of C is $$10^{5-4}=10^1=10$$ , the weight of D is $$10^{6-4}=10^2=100$$. If the block reward is 1000 ticks and the PoW output ratio is 50%, then each of miners A and B will receive $$\frac{1}{112}\*500=4.46$$ Ticks, miner C will receive $$\frac{10}{112}\*500=44.64$$ Ticks, and miner D will receive $$\frac{100}{112}\*500=446.42$$ Ticks.

2. In the second scenario, at BlockNumber X+1,

No miner successfully mines the block, meaning that the block is empty. According to the IERC protocol, the reward for this block will not disappear but will accumulate and be carried over to the next block. This means that the reward for the next block will increase as a result.

3. In the third scenario, at BlockNumber X+2,

&#x20;After the previous empty block, miners E, F, and G successfully mine new blocks. Suppose miner F chooses the difficulty level m5, while miners E and G both choose the difficulty level m6. According to the previous weight calculation, the weight of F is $$10^{5-4}=10^1=10$$, and the weights of E and G are $$10^{6-4}=10^2=100$$. Since the previous block was empty, according to the reward calculation formula, the $$LastEmptyCount$$ is 1, which will increase their rewards. If we assume that the base block reward is still 1000 ticks, then the reward that miner F will receive are  $$\frac{10}{210}*(500+500)=47.61$$ Ticks, and the rewards that miners E and G will receive are $$\frac{100}{210}*(500+500)=476.19$$ Ticks.

<figure><img src="https://d5cuifdrq9i.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=Y2FhOGZmOTc2NDljMzM4YjdjMzE0NDY5ZTVlMjM5OTZfYzVMTUNudGVzbTlaemF0NXN5ZWw5d2FGYm92b1Y5MFJfVG9rZW46Q00zdGJRYlFXb3pESER4aVdZTmx0d01HZ1pjXzE3MDM4NTIxNjM6MTcwMzg1NTc2M19WNA" alt=""><figcaption></figcaption></figure>


# How to Participate

Coming soon...


# IERC DPoS

In a DPoS system, the mining output of users is entirely determined by the DPoS\_EOA (Delegated Proof of Stake Externally Owned Account) points they hold. When users are ready to perform a Mint operation, they can choose the amount of points they want to consume and pay gas fees to have the transaction added to the blockchain. The calculation of rewards follows the following formula:

1. **The formula for calculating the DPoS weight is as follows:**

$$Weight = \frac{BurnPoints}{BurnPoints\_T}$$

* $$Weight$$ represents the proportion of rewards that you will receive in this block.
* $$BurnPoints$$ Represents the number of points you consume in this transaction.
* $$BurnPoints\_T$$ Represents the total sum of points used effectively in the block where this transaction is included.

2. **The formula for calculating DPoS rewards is as follows:**

$$Rewards = \frac{Weight}{Weight\_T} \* (BlockRewards \* Ratio\_{DPoS} \* (1+LastEmptyCount))$$

* $$Weight$$ represent the mining rewards that you can obtain in the current block.
* $$Weight\_T$$ represents the total sum of weights of all valid mining activities in the current block.
* $$BlockRewards \* Ratio\_{DPoS}$$ represents the output rewards of each DPoS block. Initially, it is 50% of 1000 tokens. After every two years, it halves until the fourth year, when it maintains a fixed output ratio.
* $$LastEmptyCount$$ is the number of consecutive blocks without valid DPoS transactions in the previous block or blocks. This value increases the rewards for subsequent blocks until a valid transaction occurs.

### DPoS **Staking**

Staking is an important component of Delegated Proof of Stake (DPoS). In DPoS, users have the option to stake or delegate their tokens by choosing an appropriate staking strategy.

<table data-header-hidden><thead><tr><th width="174"></th><th width="144"></th><th width="166"></th><th></th></tr></thead><tbody><tr><td>Inscriptions/Stake Type</td><td>Free</td><td>Lockout 30D</td><td>Lockout more</td></tr><tr><td>$ethi</td><td>1x</td><td>1.5x</td><td>...</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td></tr></tbody></table>


# Staking Rules

### Stake $ethi to Earn DPoS Points

&#x20;The IERC-20 protocol synergizes DPoS and PoW, unlocking a new equitable inscription distribution mechanism and paving the way for advancements in the field of PoW mining. By staking $ethi, users can earn DPoS points, which grant users computing power; the DPoS point release rate is established at 10 points per block / 1,000 $ethi to ensure a balanced and consistent distribution process. This also enables users to participate in Proof of Work (PoW) without upgrading hardware.

<figure><img src="https://d5cuifdrq9i.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=MGRhODJkMGZlMzQ1ZmY4M2ZhOTRmOWUyZmUyOGIxYTBfalRzWWRHZTFZRG85ZU5TSFY1alRGNDdEdHBxVkgzd0lfVG9rZW46RHhiRWJ3Y1lLb005RFd4V2hac2xHQ0FQZ0tjXzE3MDM4NTc1OTE6MTcwMzg2MTE5MV9WNA" alt=""><figcaption></figcaption></figure>

**Quick start to earn in 4 Steps：**

1. Stake $ethi to the pool. DPoS points are earned by multiplying your staked amount with this reward ratio to get your yield speed.
2. Your DPoS Points will increase automatically. And all data is recorded on blockchain in real-time.
3. Your DPoS Points can be used as computing power for PoW mining in the future.
4. You can withdraw the staked $ethi anytime. For the “free duration” pool, you can stake and unstake the inscriptions without impacting earned points. The total supply of the new inscription is set at 21 billion.&#x20;

Each block will initially release 1,000 inscriptions, and this quantity will decrease by half every two years in the first four years, and then see a linear release. In the near future, more inscriptions will be integrated into the staking cooperation, offering more opportunities for staking and the acquisition of points. $ethi and other inscriptions will unlock their enduring and limitless potential on the IERC20 platform. PoW miners and DPoS holders will collaborate to ensure an equitable distribution of the inscription.


# How to Stake

A step-by-step guide about how to stake $ethi and earn DPoS points on the market.

### **1. Browse the Market**

Go to <https://ierc20.com/market/ethi> and browse the market. First, you need to connect to your wallet and switch to the Ethereum mainnet.

### 2. **Click on the "Stake" menu at the bottom of the main page**

Select a pool you wish to stake.

Please enter the number of inscriptions you have selected to deposit.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FiFhgAHFaSIyN93R9j8Vs%2FFrame%201871880027.png?alt=media&amp;token=490a87d2-d00b-4fe6-b91b-72a5a07408b8" alt=""><figcaption></figcaption></figure>

Make sure to read the stake rules.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FLfSBr3x3A4GIrTNfxD0Q%2FFrame%201871880028.png?alt=media&amp;token=cb66e7a2-f2b0-4946-88ad-132531927146" alt=""><figcaption></figcaption></figure>

### **3. Confirm and Stake** inscription **and track your DPoS rewards**

Confirm details and deposit the inscription; you will see a confirmation in your wallet.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FNcNK9OsmBiVe6F7HPbxc%2Fimage%20579.png?alt=media&amp;token=81cf61b7-a3cb-4146-86fb-28084519615b" alt="" width="168"><figcaption></figcaption></figure>

{% hint style="info" %}
DPoS points are earned by multiplying your staked amount by your choice's different inscription reward ratios to get your yield speed. The DPoS point release rate is established at 10 points per block / 1,000 $ethi to ensure a balanced and consistent distribution process. Your obtained points will be transformed into computing power for PoW mining.
{% endhint %}

### **4. Flexible & Fixed Stake Pool**

For the "Flexible Stake Pool", you can stake and withdraw the staked inscriptions anytime without impacting earned points.&#x20;

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FL4xodqu8Nti5nvKPzZu6%2FFrame%201871880030.png?alt=media&amp;token=bd462241-9a6e-461c-8de3-11a932433b5f" alt="" width="227"><figcaption></figcaption></figure>

The "Fixed Stake Pool"  has a predetermined stake lock-up period and stake amount. All inscriptions will stop yielding rewards after the lock-up period. ​

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FID8JPRxryxrPXqdy2AAT%2FFrame%201871880029111111.png?alt=media&amp;token=4aace02d-1546-4036-bd9d-e5ef62233697" alt="" width="227"><figcaption></figcaption></figure>


# Rewards Program

## Introduce

To ignite the enthusiasm of our community and encourage broader participation, we are excited to introduce a new DPoS mining reward program. The primary goal of this program is to motivate more users to actively engage in the construction of the DPoS project, not only for individual gain but also to promote the stability and development of the entire network. Through this incentive mechanism, we hope to attract more users to understand and participate in DPoS mining, thereby collectively propelling the project forward.

At the same time, this reward program is also dedicated to fostering the healthy and long-term development of our economic model. With a fair and transparent reward distribution, we aim to establish an incentive system that ensures every participant is rewarded for their contribution to the network. We believe that this approach will not only stimulate the activeness of community members but also maintain the stability and sustainability of our economic model, laying a solid foundation for the long-term prosperity of the entire project.

## Rule Details

**Event Starts:** January 26, 2024 at 0:00 UTC

**Event Closing:** waiting for total outputs to be reached after the conclusion of the governance vote

**Total Daily Prize Pool:** 3.6 million $ethpi Distribution: Allocated based on daily rankings of DPoS mining participants  

The daily standings will be refreshed at 0:00 UTC and the $ethpi airdrop rewards will be automatically settled within the next 24 hours.

💰 Reward Details:

<table><thead><tr><th width="244">Rank</th><th>Shared Reward Amount</th></tr></thead><tbody><tr><td>🏆 1st Place</td><td>5% share, 180,000 $ethpi reward</td></tr><tr><td>🥈 2nd Place</td><td>4% share, 144,000 $ethpi</td></tr><tr><td>🥉 3rd Place</td><td>3% share, 108,000 $ethpi</td></tr><tr><td>4th Place</td><td>2% share, 72,000 $ethpi</td></tr><tr><td>5th Place</td><td>1.5% share, 54,000 $ethpi</td></tr><tr><td>6th to 10th Place</td><td>Each 1% share, 36,000 $ethpi</td></tr><tr><td>11th to 150th Place</td><td>Every 5 rank improvement increases the reward by 1,000, with 11-15th getting up to 30,000 $ethpi</td></tr><tr><td>151st to 702nd Place</td><td>Each receives 0.03%, i.e., 1,000 $ethpi</td></tr></tbody></table>

🔥 Special Notes: Our objective is to create an ecosystem where every member can participate and benefit, achieving a more equitable and sustainable network development through our collective efforts and wisdom.

 🔥 Community Support:  For more information on how to engage in DPoS mining, please visit \[[mining tutorial](/users-guide/how-to-mine)]. For any queries, join our community discussion \[[Telegram](https://t.me/IERC20OFFICIAL) / [Discord](https://discord.com/invite/pTYsCKZnmF)]. We have a professional team ready to assist.

## Precautionary Note

**Limitations on the number of Participants:** If the Daily Reward exceeds the maximum number of Participants, only the first 702 winners will be rewarded, and if there are fewer than 702 Participants, the remaining unallocated Tokens will be burned.

**Same use of points:** comparison of last participation time, earlier participation is ranked first.

**Ranking and Reward Claim:** Ranking is updated once every 24 hours at 0:00 UTC every day. Rewards do not need to be claimed manually, they will be automatically airdropped within 24 hours after the end of the daily ranking.\ <br>


# Tokenomics

## Tokenomic

* Inscription Tick: ethpi
* Total amount of inscriptions: 21,000,000 \* 1000
  * PoW: 50% total 21,000,000 \* 500
  * DPoS: 50% total 21,000,000 \* 500

*<mark style="color:orange;">⚠️ In order to preserve the rarity of this token, we plan to initiate a governance proposal aimed at adjusting the total token supply. Once the predefined supply cap is reached, we reserve the right to prematurely destroy all unmined tokens, effectively ending the mining cycle ahead of schedule. The final decision will be determined by the community through a governance vote.</mark>*

* Release rules:&#x20;

All inscriptions are generated by PoW and DPoS without any pre-distribution, maintaining absolute fairness. Initially, a total of 1,000 inscriptions will be produced in each block, and PoW and DPoS will each produce 500 inscriptions in each block. The output is halved every two years. After two halvings, the reward output will be 250 coins per block. Subsequently, the output will continue to be fixed at 3.125% per year until the circulation reaches 100% in the 24th year.

<table data-header-hidden><thead><tr><th width="225"></th><th width="183"></th><th></th><th></th></tr></thead><tbody><tr><td>Issue Period (by years)</td><td>Per Block Output</td><td>Output Amount</td><td>Inscription Market circulation Ratio</td></tr><tr><td>0-2</td><td>1000</td><td>5,256,000,000</td><td>25.03%</td></tr><tr><td>3-4</td><td>500</td><td>2,628,000,000</td><td>37.55%</td></tr><tr><td>5-6</td><td>250</td><td>1,314,000,000</td><td>43.8%</td></tr><tr><td>7-24（18 years）</td><td>250</td><td>657,000,000 * 18 （3.125% / year）</td><td>100%</td></tr></tbody></table>

In a bid to ensure efficiency and add value to our new token system, we have implemented a series of innovative production mechanisms. These are designed not just to bolster the system's robustness but also to align with modern cryptographic standards.

1. **Weighted Game Mechanism**: At the heart of both Proof of Work (PoW) and Delegated Proof of Stake (DPoS) lies our newly introduced balancing strategy. In the realm of PoW, the velocity of computational power and the level of difficulty directly dictate the rewards. Conversely, in DPoS, credits are treated as a reserve of computational power, necessitating strategic foresight for optimal utilization of benefits. This approach is not only equitable but also intriguing.
2. **Burn Mechanism**: Merging the principles of DPoS and PoW, we've set a ceiling on the maximum reward blocks. Immutable post-deployment, this cap means that when the count of the last empty blocks (LastEmptyBlock) surpasses the maximum reward blocks (MaxRewardBlock), miners are restricted to rewards equivalent to the MaxRewardBlock. Any surplus rewards are automatically diverted to a 'black hole address' and subsequently annihilated. For example, with a MaxRewardBlock pegged at 5, should 20 blocks remain unmined, the first successful miner is entitled to rewards for merely 5 blocks (2500 Ticks), leading to the destruction of the remaining 7500 Ticks.
3. **Deflationary Mechanism**: Augmenting the token's value further, we employ deflationary strategies in several key areas:
   * **Gas Consumption**: Within our ecosystem, the token is earmarked as a consumable for Gas, propelling network operations.
   * **Fee Reduction**: Looking ahead, the token will also facilitate reductions in transaction and service fees, effectively lowering the costs associated with its use. Keep an eye out for more application scenarios.
   * **Ecosystem Recognition**: Token holders may reap additional benefits, such as eligibility for airdrops or inclusion in whitelists for our high-value ecosystem projects.

These mechanisms form the cornerstone of our new token's production and deflationary framework. We are confident that these innovative measures will not only enhance value but also enrich the experience for token holders.

The Personal Estimated Annual Percentage Rate (APR) reflects the potential value users can obtain by consuming the currently generated output through DPoS based on the points produced at their current rate. It considers the pool's production speed of points, market prices, consumption dynamics per block, target price of the output, and the initial investment value.

The staking pool's Annual Percentage Rate (APR) reflects the potential value users can obtain by consuming the currently generated output through DPoS based on the points produced from their stake in the pool. It considers the pool's production speed of points, market prices, consumption dynamics per block, target price of the output, and the initial investment value.

### Newly Updates

* **18.01.2024 -** Minimum DPoS point consumption: For all DPoS miners, the minimum required DPoS points per mine will be 1,000.&#x20;
* **18.01.2024** -Optimization of PoW difficulty in the reward program: PoW difficulty weight decreases from 10 square "x" to 5 square "x," narrowing the gap between high and low computational power and offering more opportunities for PoW low-power miners.

### <br>


# FAQ

#### DPoS Points

In the DPoS (Delegated Proof of Stake) phase of the IERC protocol, EOA points serve as a scoring system to measure users' historical staking behavior. By staking crypto assets, users accumulate EOA points over time, which serve as a reward and voucher for their past staking activities. These accumulated EOA points can subsequently be consumed within the DPoS system in exchange for entitlement to future mining rewards. Specifically, users can choose to consume a portion or all of their points to increase their weight in specific block rewards. In other words, EOA points act as voting rights, allowing users to enhance their proportion in the distribution of DPoS mining rewards by consuming them. This mechanism ensures that the allocation of rewards in the DPoS phase is based on users' long-term contributions and commitments to the network. It rewards not only long-term and stable stakers but also encourages new users to join and stake assets, thus building a more secure and decentralized network. Through this approach, the DPoS phase of the IERC protocol facilitates a fair and sustainable reward system, rewarding participants who make substantial contributions to the network.

**Is there only one type of EOA point?**

In the IERC protocol, there are multiple types of EOA points, which reflect users' participation in different staking strategies and staking pools. As the IERC protocol enters its final stage, the permission to deploy arbitrary EOA staking will be open to all users. This means that users will be able to create and participate in different staking pools according to their needs and strategies, generating various types of EOA points. The diversity and scalability of these points symbolize the maturity of the IERC ecosystem infrastructure, allowing for more customization and flexibility beyond being limited to a single staking model. Each type of EOA point may have different characteristics and uses, such as different reward weight calculation methods or different usage scenarios, further promoting ecosystem diversification and scalability. Such a design allows the IERC protocol to adapt to various market demands and user preferences while fostering broader community participation and innovation. Within the IERC ecosystem, these points serve not only as tools for staking and rewards but also as incentives for user participation in network governance, support for decentralized application development, and promotion of ecosystem diversification.

#### What is the IERC Foundation?

The IERC Foundation is a governance body with attributes of a Decentralized Autonomous Organization (DAO), dedicated to managing and guiding activities and developments related to IERC. The foundation's primary responsibilities include handling all external affairs of IERC, organizing and overseeing the voting decision-making process, and ensuring the effective implementation of these decisions. Operating in a similar manner to the Ethereum Foundation, the IERC Foundation plays a central role within its ecosystem, aiming to drive the long-term development and success of the project.

As a DAO, the IERC Foundation operates in a decentralized manner, meaning it does not rely on a single centralized leadership structure but rather on collective decision-making by community members. This structure enables the foundation to be more flexible in responding to the needs and changes within the community while ensuring transparency and fairness in the decision-making process. Through this approach, the IERC Foundation aims to foster continuous innovation and progress for the projects and technologies it supports.<br>

#### Regarding IERC's future vision

The IERC protocol is committed to making groundbreaking advancements in the decentralized space. The Index Node initiative, as a preliminary step towards this vision, is just the beginning. Our ultimate goal is to achieve full decentralization, particularly in the realm of data indexing using Proof of Work (PoW) computational power. By applying PoW computational power to create and maintain a decentralized indexing system, IERC aims to enhance network availability and transparency, providing a more open and autonomous data environment.

Additionally, the implementation of Delegated Proof of Stake (DPoS) signifies our exploration of network scalability. The successful implementation of this mechanism has demonstrated its potential, and we expect to extend these innovations to all construction areas of the IERC protocol. As technology evolves, these applications of DPoS will bring more flexibility and customization options to the IERC ecosystem, enabling it to adapt to evolving market demands and user expectations.

In terms of security, the IERC protocol intends to leverage the mature security mechanisms of Ethereum to build a robust tokenized asset ecosystem. We believe that by integrating Ethereum's security features, we can provide users with a secure and convenient experience for token transactions and management. This will further solidify the IERC protocol, ensuring its long-term prosperity and stability.

In summary, the IERC protocol is advancing towards becoming a decentralized, scalable, and secure blockchain ecosystem that not only meets current needs but also addresses various challenges and opportunities that may arise in the future.


# IERC-20

## What is IERC-20 <a href="#what-is-ierc-20" id="what-is-ierc-20"></a>

IERC20 is an Ethereum-based token protocol that provides a low-cost token ecosystem for Ethereum users without affecting existing infrastructure, unlike typical Layer 2 solutions.​

<figure><img src="https://2324600624-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy69iHN0DdPdrO4kssWFr%2Fuploads%2FQR1OQSkeNAlwaqpufgOp%2F89b0aca9-2028-4348-84d0-3ff07567b3d6.jpg?alt=media&#x26;token=ecb22224-3cb1-47cd-9cd3-e469db2d52be" alt=""><figcaption><p>IERC-20 Ecosystem</p></figcaption></figure>

## What is ETHI <a href="#what-is-ethi" id="what-is-ethi"></a>

ETHI is the first token in the IERC20 ecosystem, and it is available for trading on the [Market](https://ierc20.com/market/ethi).

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FvnZHHJsolINQQ2R8dvnp%2Fimage.png?alt=media&amp;token=771de8aa-cc4a-4b04-bea2-9e0a5900ac16" alt=""><figcaption></figcaption></figure>


# Deploy

Deployment requires JSON to be prefixed, and then the content encoding is sent to the specified address 0x0000000000000000000000000000000000000000. If the JSON is legal and the check has not been deployed, it is a valid deployment.

When deploying, we need to specify some required fields.

<table><thead><tr><th width="107">Key</th><th width="106.33333333333331">Required</th><th>Description</th></tr></thead><tbody><tr><td>p</td><td>yes</td><td>protocol name，ierc-20</td></tr><tr><td>op</td><td>yes</td><td>operation type: "deploy" | "mint" | "transfer" | "proxy_transfer" | "freeze_sell". Use "deploy".</td></tr><tr><td>tick</td><td>yes</td><td>token name.</td></tr><tr><td>max</td><td>yes</td><td>max supply.</td></tr><tr><td>lim</td><td>yes</td><td>limit for each mint.</td></tr><tr><td>wlim</td><td>yes</td><td>limit for each address can maximum mint.</td></tr><tr><td>dec</td><td>yes</td><td>decimal for minimum divie.</td></tr><tr><td>nonce</td><td>yes</td><td>don't repeat numbers with yourself.</td></tr></tbody></table>

**Requires attention:**

* tick itself is case-sensitive, but it is recommended that the index be case-insensitive.
* Since different indexes have different versions of JSON, here is a restriction, the last field of JSON cannot have a comma (,).

For example:

```
// deploy; send 0eth from self to 0x0000000000000000000000000000000000000000;
{
    "p":"ierc-20", //protocol name: ierc20
    "op":"deploy", //operation: deploy/mint/transfer/freeze_sell/proxy_transfer
    "tick":"ethi", //token tick, can't be repeatable, case insensitive.
    "max":"21000000", //max supply
    "lim":"1000", //limit for each mint
    "wlim":"10000", //limit for each address can maximum mint, address balance < deploy.wlim (Before mint, please do not receive transfers from others, transfers are also counted as balance)
    "dec":"8", //decimal for minimum divie
    "nonce":"0", //increasing interger
}
```


# Mint

In Mint, it is sent to address 0x0000000000000000000000000000000000000000 as in deployment, and the JSON field is guaranteed to be modified to legal content. The nonce has not been used by itself, it has not exceeded the maximum total limit, and it has not exceeded a single number. It is recommended to use a timestamp.

In Mint, we need to specify some required fields.

<table><thead><tr><th width="105.33333333333331">Key</th><th width="125">Required</th><th>Description</th></tr></thead><tbody><tr><td>p</td><td>yes</td><td>protocol name，ierc-20, there is no difference between the two.</td></tr><tr><td>op</td><td>yes</td><td>mint</td></tr><tr><td>tick</td><td>yes</td><td>same as deployment.</td></tr><tr><td>amt</td><td>yes</td><td>Mint quantity, not exceeding the limit.</td></tr><tr><td>nonce</td><td>yes</td><td>unique value, timestamp is recommended.</td></tr></tbody></table>

**Requires attention:**

Do not mint multiple times in the same block.

For example:

```
// mint; send 0eth from self to 0x0000000000000000000000000000000000000000;
// The initiator of the transaction is the receiver
{
    "p":"ierc-20",
    "op":"mint", //mint operation
    "tick":"ethi",
    "amt":"1000", //mint amount
    "nonce":"1"
}
```


# Transfer

The transfer is the same as the above event, sent to address 0, and then you can choose to send to an unlimited number of recipients, it only needs one gas. （If the ETH limit is not exceeded).

<table><thead><tr><th width="101.33333333333331">Key</th><th width="106">Required</th><th>Description</th></tr></thead><tbody><tr><td>p</td><td>yes</td><td>protocol name，ierc-20, there is no difference between the two.</td></tr><tr><td>op</td><td>yes</td><td>transfer</td></tr><tr><td>tick</td><td>yes</td><td>same as deployment.</td></tr><tr><td>nonce</td><td>yes</td><td>unique value, timestamp is recommended.</td></tr><tr><td>to</td><td>yes</td><td>array object, "recv" and "amt", "recv" and "amt" fields, recv is the recipient address, amt is the quantity, the recipient address must start with 0x, and the length is appropriate, otherwise the entire transaction is invalid.</td></tr></tbody></table>

For example:

```
// transfer; send 0eth from self to 0x0000000000000000000000000000000000000000
{
  "p": "ierc-20",
  "op": "transfer", //transfer operation
  "tick": "ethi",
  "nonce": "2",
  "to": [ //batch transfer, the sum of amt must equal the previous amt param
    {
      "recv": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", //receiver address
      "amt": "50" //receiver amount
    },
    {
      "recv": "0x0000000000085d4780B73119b644AE5ecd22b376",
      "amt": "50"
    }
  ]
}
```


# Freeze Sell

Freeze funds, generally used with proxy, send the inscription to zero address, or platform address.

<table><thead><tr><th width="101.33333333333331">Key</th><th width="126">Required</th><th>Description</th></tr></thead><tbody><tr><td>p</td><td>yes</td><td>protocol name，ierc-20, there is no difference between the two.</td></tr><tr><td>op</td><td>yes</td><td>proxy_transfer</td></tr><tr><td>freeze</td><td>yes</td><td>array object, Agent information.</td></tr></tbody></table>

For example:

```
// The buyer is buying and the seller's token is frozen;  send x eth from self to 0x0000000000000000000000000000000000000000 or 0x33302dbff493ed81ba2e7e35e2e8e833db023333 or platform address
{
  "p": "ierc-20",
  "op": "freeze_sell",
  "freeze": [
    {
      "tick": "ethi", // Seller Signature Information
      "nonce": (+new Date()).toString(), // Seller Signature Information
      "platform": "0x33302dbff493ed81ba2e7e35e2e8e833db023333", // Seller signature information: corresponding platform
      "seller": "0x22222222222222222222222222222222222222222222", // Freeze the corresponding seller
      "amt": "333", // Seller Signature Information
      "value": "0.001", // Seller Signature Information
      "gasPrice": "33988168450", // gasPrice
      "sign": sign // The seller authorizes the signature to verify the use
    }
  ]
}
```


# Proxy Transfer

Proxy transfer allows the authorized party to transfer money through signature, which is generally used in trading platforms, and it can be used alone.

It can also be used in conjunction with freezing, and generally requires cooperation.

In order to prevent inconsistent signatures, ierc20 has developed a signature standard.

```
const message = JSON.stringify({
  title: 'ierc-20 one approve', // one approve
  to: '0x33302dbff493ed81ba2e7e35e2e8e833db023333', // platform address
  tick: 'ethi', // token
  amt: "333", // token amt
  value: "0.01", // eth value
  nonce: (+new Date()).toString(),
}, null, 4)
```

Through authorization, a signature can be obtained, and the same method will be used to verify it on the chain.

The verification code reference is as follows:

```
export const verifyMessage = (data: {
    tick: string;
    amt: string;
    nonce: string;
    value: string;
    sign: string;
}, seller: string) => {
    const message = JSON.stringify({
        title: 'ierc-20 one approve',
        to: DEX_ADDRESS, 
        tick: data.tick,
        amt: data.amt,
        value: data.value,
        nonce: data.nonce,
    }, null, 4)
    const recoveredAddress = ethers.utils.verifyMessage(message, data.sign)
    if(recoveredAddress.toLocaleLowerCase() === seller?.toLocaleLowerCase()){
        return {
            isVerify: true, 
            message
        }
    }else{
        return {
            isVerify: false, 
            message
        }
    }
}
```

The sending agent on the chain can also send to address 0,

But if you use ETH as the payment currency, then send it along with the amount and send it to the seller.

<table><thead><tr><th width="101.33333333333331">Key</th><th width="126">Required</th><th>Description</th></tr></thead><tbody><tr><td>p</td><td>yes</td><td>protocol name，ierc-20, there is no difference between the two.</td></tr><tr><td>op</td><td>yes</td><td>proxy_transfer</td></tr><tr><td>proxy</td><td>yes</td><td>array object, Agent information.</td></tr></tbody></table>

For example:

```
// proxy transfer; send 0eth from self to 0x0000000000000000000000000000000000000000 or 0x33302dbff493ed81ba2e7e35e2e8e833db023333 or platform address
{
  "p": "ierc-20",
  "op": "proxy_transfer", //transfer operation
  "proxy": [
    {
      "tick": "ethi", // tick
      "nonce": "12222", // nonce
      "from": sellerAddress, // seller address, verify
      "to": "0x22222222222222222222222222222222222222222222", // buyer address (test)
      "amt": "333",
      "value": "0.001",
      "sign": sign // the agent must carry the signature to the chain, which can be confirmed
    }
  ]
}
```


# Stake

In Stake, just like in Mine. It is necessary to send to the address: 0x0000000000000000000000000000000000000000. The following data are mandatory fields. Please enter the correct staking pool ID and its corresponding tick.

<table><thead><tr><th width="130.33333333333331">Key</th><th width="137">Required</th><th>Description</th></tr></thead><tbody><tr><td>p</td><td>yes</td><td>protocol name，ierc-20</td></tr><tr><td>op</td><td>yes</td><td>stake</td></tr><tr><td>pool</td><td>yes</td><td>staking pool address</td></tr><tr><td>id</td><td>yes</td><td>staking pool id</td></tr><tr><td>details</td><td>yes</td><td>Staking Pool Details, including the tick name and the amt quantity.</td></tr></tbody></table>

**Requires attention:**

The details include the tick name corresponding to the stake, as well as the quantity of staked assets (amt).<br>

For example:

```JSON
 //stake; send 0eth from self to 0x0000000000000000000000000000000000000000;
 {
     "p": "ierc-20",
     "op": "stake",        // stake operation
     "pool": "0x0000000000000000000000000000000000000000",
     "id": "1",            // staking pool id
     "details": [
       {
         "tick": "ethi",
         "amt": "10000"    // stake amount
       }
     ]
 }
```


# Unstake

In unstake, just like in Stake. It is necessary to send to the address: 0x0000000000000000000000000000000000000000. The following data are mandatory fields. Please enter the correct staking pool ID and its corresponding tick.

<table><thead><tr><th width="127.33333333333326">Key</th><th width="133">Required</th><th>Description</th></tr></thead><tbody><tr><td>p</td><td>yes</td><td>protocol name，ierc-20</td></tr><tr><td>op</td><td>yes</td><td>unstake</td></tr><tr><td>pool</td><td>yes</td><td>staking pool address</td></tr><tr><td>id</td><td>yes</td><td>staking pool id</td></tr><tr><td>details</td><td>yes</td><td>Unstaking Pool Details, including the tick name and the amt quantity.</td></tr></tbody></table>

**Requires attention:**

Tthe details include the tick name corresponding to the unstake, as well as the quantity to be unstaked (amt).

\
For example:

```JSON
// unstake; send 0eth from self to 0x0000000000000000000000000000000000000000;
 {
     "p": "ierc-20",
     "op": "unstake",
     "pool": "0x0000000000000000000000000000000000000000",
     "id": "1",
     "details": [
       {
         "tick": "ethi",
         "amt": "10000"
       }
     ]
 }
```


# More

#### Offline communication

The protocol operation ends here. For more effective communication and security considerations, it is recommended to collect the platform addresses uniformly.

<table><thead><tr><th width="122.33333333333331">Platform </th><th width="320">Transaction address</th><th>Link</th><th data-hidden>Transaction address</th><th data-hidden></th><th data-hidden>Website address</th></tr></thead><tbody><tr><td>ETHINSC</td><td>0x33302dbff493ed81ba2e7e35e2e8e833db023333</td><td><a href="https://ierc20.com/market/ethi">https://ierc20.com/market/ethi</a></td><td></td><td></td><td></td></tr></tbody></table>


# DINX EVM (beta)

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FckLUpVU1aA4PaiOc2Dzo%2Fimage.png?alt=media&amp;token=0021c894-1a37-4c6d-bc5b-1e770934b439" alt=""><figcaption></figcaption></figure>

### What is DINX?

DINX (short for **Distributed Indexer**) is an innovative system designed to offer efficient and reliable data indexing for inscriptions. It utilizes a **Layer 1.5 architecture**, to build a virtual chain for inscriptions, separating them from the main Ethereum chain. This structure enhances scalability and reduces the usability threshold.

The DINX consensus system is maintained jointly by the **DINX protocol**, the **Inscription Protocol Party**, and a **Distributed Mining System**. This collaborative effort ensures the security and integrity of inscription data, providing a reliable framework for indexing.

By leveraging the **security and decentralization** of Layer 1 public chains and combining them with the scalability and performance benefits of Layer 2 solutions, DINX ensures high efficiency in handling large datasets, real-time queries, and supports multiple inscription indexing environments.

***

### How DINX Works

DINX employs a virtual blockchain architecture, abstracting inscriptions across multiple protocols into a unified framework. Each protocol is supported by a decentralized network of indexers to ensure consistent and verifiable data. To guarantee data consistency, **becoin nodes** (official protocol indexers) are employed, along with **dedicated data validators** who conduct third-party checks.

In this structure, all **fungible tokens (FT)** in the inscription protocols are unified under a single **DINX ERC20** standard. The unique value of each inscription is derived from its **protocol name** and **tick**, allowing us to calculate corresponding virtual FT contract addresses. These addresses can be interacted with using the standard **ERC20 methods** (e.g., `getBalance`, `totalSupply`), enabling all inscriptions to follow a uniform execution standard. This consistency is easily understood and recognized by most users, facilitating seamless integration for wallets and dApps.

DINX also provides a standardized RPC interface for structured data output. This ensures that all data can be easily consumed by wallets, dApps, and other applications, playing a key role in unified ecosystem development.

***

### What Problems Does DINX Solve?

DINX leverages **EVM** to build a high-performance virtual public chain for storing inscription-related data, similar to **HyperLiquid**. By isolating inscription data from the non-inscription data (which makes up only a small fraction of overall transactions on the main chain), we significantly improve the operational efficiency of the network.

DINX is designed as a **decentralized indexing service** for **B2B service providers** and ecosystem developers, including wallet applications and exchanges with embedded tokens. The system is fully decentralized, maintained by a network of contributors. Miners gather data packets through DINX nodes, capturing requests related to the supported inscription records within the index.

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FytXgadA4SKco77TaBTN5%2Fimage.png?alt=media&amp;token=585824b8-8307-4a04-a9f7-2c5aa4f92b9f" alt=""><figcaption></figcaption></figure>

***

### DINX Beta

DINX EVM is now in **beta**. You can experience the following features via [`https://explorer.dinx.io`](https://explorer.dinx.io):

* Add DINX RPC to your wallet to extend inscription support for Ethereum's native network.
* View **IERC protocol assets** in your wallet (currently only balance viewing is supported).
* Explore inscriptions using the **Block Explorer** (currently in progress).

Access **DINX Yellow Book V1.0** at [Yellow Paper](https://hackmd.io/@DINX/yellow_paper).


# RPC

The JSON-RPC endpoint is `https://testrpc.dinx.io`. The chain ID inherited from ethereum is 1.

#### Add DINX RPC to MetaMask

You can add the DINX RPC endpoint in two ways: **automatically** or **manually**.

1. **Manual Setup via MetaMask:**
   * Click on the MetaMask settings and add DINX as your RPC provider.
2. **Automatic Setup via URL:**
   * You can switch to DINX by visiting[`https://explorer.dinx.io`](https://explorer.dinx.io) to easily configure your RPC.

Below is an example of how to add the DINX RPC programmatically:

```javascript
try {
  await provider // Or window.ethereum if you don't support EIP-6963.
    .request({
      method: "wallet_switchEthereumChain",
      params: [{ chainId: "0x1" }],
    });
} catch (switchError) {
  // This error code indicates that the chain has not been added to MetaMask.
  if (switchError.code === 4902) {
    try {
      await provider // Or window.ethereum if you don't support EIP-6963.
        .request({
          method: "wallet_addEthereumChain",
          params: [
            {
              chainId: "0x1",
              chainName: "DINX",
              rpcUrls: ["https://testrpc.dinx.io"], // DINX RPC endpoint
            },
          ],
        });
    } catch (addError) {
      // Handle any "add" error.
    }
  }
  // Handle other "switch" errors.
}
```

**Note:** This process is just for switching your RPC provider and does not collect any personal information or introduce additional security risks.

### Wallet support

<table><thead><tr><th width="249">Wallet</th><th width="367">support</th><th>Link</th></tr></thead><tbody><tr><td><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FfICwLdcST4DOkdJEGgwg%2Fimage.png?alt=media&amp;token=87a0c59c-da34-4344-afbe-f10c03cf2ee3" alt="" data-size="line"> Metamask</td><td>Yes</td><td><a href="https://chromewebstore.google.com/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn">Download</a></td></tr><tr><td><img src="https://lh3.googleusercontent.com/sO4GPPbgvTCXEFWp-uALYYju9vxVOr5YSr2jqRAclNFSq8FrAIVTQOYmpJV4kMuDM1ZazcgUdjNGLIGKpmMRvR3NzQ=s60" alt="“欧易 Web3 钱包”的产品徽标图片" data-size="line"> OKX Wallet</td><td>Yes</td><td><a href="https://chromewebstore.google.com/detail/%E6%AC%A7%E6%98%93-web3-%E9%92%B1%E5%8C%85/mcohilncbfahbmgdjkbpemcciiolgcge">Download</a></td></tr><tr><td><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2Fx1wGRVKQlJV103LfKFft%2Fimage.png?alt=media&amp;token=b3a72e19-3361-4951-87ee-b8277f872267" alt="" data-size="line"> TokenPocket</td><td>Yes</td><td><a href="https://chromewebstore.google.com/detail/tokenpocket-web3-nostr-%E9%92%B1%E5%8C%85/mfgccjchihfkkindfppnaooecgfneiii">Download</a></td></tr><tr><td><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FqtV0nI3552Au21ACJxso%2Fimage.png?alt=media&amp;token=de2c2fa3-5eb3-476e-9a36-14d89987b79a" alt="" data-size="line"> UniSat Wallet</td><td>No</td><td><a href="https://chromewebstore.google.com/detail/unisat-wallet/ppbibelpcjmhbdihakflkdcoccbgbkpo">Download</a></td></tr></tbody></table>

<br>


# Add Token

When DINX RPC is enabled, you can add your inscription assets to your asset list .

You can add assets manually by entering the token address in metamask

<div align="center" data-full-width="false"><figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FnjhZdKGzBO53kCaBxzfN%2Fimage.png?alt=media&amp;token=3a1849d2-feaf-4de9-b82d-a00d2e0fcd0d" alt="" width="278"><figcaption></figcaption></figure></div>

Also you can programmatically add

```javascript
await window.ethereum.request({
 "method": "wallet_watchAsset",
 "params": {
  type: "ERC20",
  options: {
    address: "0x8ada557a6a1cdf21a0794ab3394e0ab745ca2259",
    symbol: "ETHI",
    decimals: 8,
    image: "https://app.ierc20.com/static/images/logos/ethi.png"
  }
},
});
```

You can also try a one-click add at [`https://explorer.dinx.io`](https://explorer.dinx.io) to add

### Calculation of virtual contract addresses

All current and future protocol tokens can be calculated using DINX's virtual contract address calculation. The principle of the calculation is as follows

```go
package main

import (
	"crypto/sha3"
	"encoding/hex"
	"fmt"
	"strings"
)

// Function to compute keccak256 hash of a string
func keccak256(input string) string {
	hasher := sha3.NewLegacyKeccak256()
	hasher.Write([]byte(input))
	hash := hasher.Sum(nil)
	return hex.EncodeToString(hash)
}

// Function to convert a hash to an Ethereum address
func hashToAddress(hash string) string {
	// Extract the last 20 bytes (40 hex characters)
	last20Bytes := hash[len(hash)-40:]
	return "0x" + strings.ToLower(last20Bytes)
}

func main() {
	// Define the input string
	inputString := "ierc:ethi"

	// Compute the keccak256 hash of the input string
	hash := keccak256(inputString)
	fmt.Println("Keccak256 Hash:", hash)

	// Extract the Ethereum address from the hash
	address := hashToAddress(hash)

	// Output the results
	fmt.Println("Ethereum Address (Lowercase):", address)
}

```

Currently Supported Protocols

<table><thead><tr><th>Protocol</th><th width="186">Support</th><th>Chain</th></tr></thead><tbody><tr><td>IERC20</td><td>yes.</td><td>Ethereum</td></tr><tr><td>BRC20</td><td>Not for a while.</td><td>BTC,Requires wallet association</td></tr><tr><td>Facet</td><td>Not for a while.</td><td>Ethereum</td></tr><tr><td>Bnbs</td><td>Not for a while.</td><td>Bsc</td></tr><tr><td>Sols</td><td>Not for a while.</td><td>Solana,Requires wallet association</td></tr><tr><td>Pols</td><td>Not for a while.</td><td>Polygon</td></tr><tr><td>Avas</td><td>Not for a while.</td><td>Avalanche</td></tr></tbody></table>

### IERC20 Token Contract Mapping (eg.)

<table><thead><tr><th width="246">Tick</th><th>Contract Address</th></tr></thead><tbody><tr><td>ETHI</td><td>0x8ada557a6a1cdf21a0794ab3394e0ab745ca2259</td></tr><tr><td>ETHPI</td><td>0xfca7fdce880d3a328bd03e5c4271b195685c1eaa</td></tr></tbody></table>

Future support for more protocols can be derived from the virtual contract address calculations.

### ERC-20 Standard Interface

**Core Functions:**

1. **`totalSupply()`**: Returns the total number of tokens in existence.
2. **`balanceOf(address account)`**: Provides the token balance of a specific account.
3. **`transfer(address recipient, uint256 amount)`**: Transfers a specified amount of tokens from the caller's account to a recipient.
4. **`approve(address spender, uint256 amount)`**: Authorizes another account (the spender) to spend a certain amount of tokens on behalf of the caller.
5. **`allowance(address owner, address spender)`**: Returns the remaining number of tokens that the spender is permitted to spend on behalf of the owner.
6. **`transferFrom(address sender, address recipient, uint256 amount)`**: Facilitates the transfer of tokens from one account to another, utilizing the allowance mechanism.

**Events:**

* **`Transfer(address indexed from, address indexed to, uint256 value)`**: Emitted when tokens are transferred, including zero-value transfers.
* **`Approval(address indexed owner, address indexed spender, uint256 value)`**: Emitted when an account's allowance for a spender is set by a call to `approve`.

*⚠️ Currently DINX RPC only supports read type operations, not write operations.*


# Explorer

explorer is a browser developed specifically for DINX.

{% embed url="<https://explorer.dinx.io>" %}

Currently only supports inscription information on the Ethereum mainnet, more inscription protocols will be integrated in the future


# API

Coming Soon


# Ambassador Program

The IERC Protocol is currently seeking like-minds to join our global ambassador and promoter program!

<figure><img src="https://145503242-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhgfSULx6VEo6eLaLSwM0%2Fuploads%2FA7WLcs4UGTnAebTDaZhL%2FPoster.png?alt=media&amp;token=7d752ef1-ed18-4157-8f2f-33c034c56b9c" alt=""><figcaption></figcaption></figure>

### **What can you gain from this program?**

1\. By assisting the IERC Protocol in establishing strategic partnerships or expanding marking promotion, you can receive rewards ranging from 100 to 'no upper limit' USDT case by case. These rewards will be promptly paid upon successful cooperation announced, and there is no maximum limit to what you can earn.\
2\. Join the extended global team of the IERC Protocol. Your passion and contributions will play a significant role in shaping the future of the IERC Protocol.

### **What is expected from ambassadors?**

As an ambassador, your responsibilities will involve business development and marketing promotion. This includes reaching out to Inscriptions, Cross-bridges, Launchpads, NFT/GameFi, crypto-related projects, or platforms active on any blockchain to form mutually beneficial partnerships and boost protocol exposure.&#x20;

When communicating with potential ecosystem partners or expanding the market, you can try the following strategies:

1\. Project collaborations: Engage in partnerships with other projects to jointly develop activities and share resources, thereby promoting ecosystem growth.

2\. Ecosystem event promotion: Organize and promote various ecosystem events such as developer webinars, community engagement events, and anything you specialize in to attract more developers and users to participate.

3\. Engage with industry influencers: Connect with industry thought leaders, experts, and well-known individuals, inviting them to participate in promotional activities such as interviews, collaborative articles, or speaking engagements.

4\. Organize Twitter Spaces or video/text AMAs: Host interactive AMA sessions on platforms like Twitter Spaces or other live streaming platforms, providing an opportunity for community members and potential users to engage and learn about IERC Protocol.

5\. Social media promotion: Utilize various social media platforms, such as Twitter, LinkedIn, Medium, etc., to share project updates, news, tutorials, or other relevant content, attracting more attention and engagement.

6\. Attend industry conferences and exhibitions: Participate in relevant industry conferences, exhibitions, or forums to showcase the project's advantages and innovations and establish connections with other industry participants.

These activities aim to increase market attention and awareness of the IERC protocol. Depending on your target audience and available resources, you can choose suitable activities and develop a corresponding marketing plan.&#x20;

### **To become valuable and qualified ambassadors:**

1\. A strong passion for Web3 and the blockchain industry.\
2\. Good comprehension of the IERC Protocol.\
3\. Following the IERC Protocol on Twitter and being a member of the IERC Protocol Official Telegram Group.\
Active presence or experience as a Key Opinion Leader (KOL) on social platforms such as YouTube, TikTok, Instagram, etc., or having your own community group.\
4\. Proficiency in a target language (English, German, Filipino, Korean, French, Spanish, or any other preferred language).\
5\. Familiarity with collaborating with tech groups, local communities, foundations, projects, startup incubators, etc. Possessing your own community and the ability to connect with project managers will be advantageous.<br>

\
Join us today and embark on an incredible journey as a Global Ambassador for the IERC Protocol!&#x20;

<https://forms.gle/9hbY6YsCShou4iZp8>


# FAQ

Problems you may encounter

### About Deploy

<details>

<summary>Q1. <strong>What happens if I deploy a token whose tick already exists?</strong></summary>

The transaction of deploying can be successfully confirmed, but no new IERC20 tokens will be deployed, nor will any new IERC20 tokens be minted.

Therefore, before deploying any tokens, please double-check the ticks are not used.&#x20;

</details>

### About Mine

<details>

<summary>Q1. The maximum minting times for a single address is 10, why can't I mint 10 times?</summary>

It is possible to happen. Before mine, transfers were counted as balance if you have received token transfers from others.

</details>

### In the Market

<details>

<summary>Q1. <strong>What’s the difference between Blue labels and Gold labels for Inscriptions on IERC20.com?</strong></summary>

Blue-label inscriptions are community inscription projects that have been verified through voting by the IERC community. Gold-label inscriptions are high-quality inscriptions verified and collaborated on by the official IERC Protocol.

</details>

<details>

<summary>Q2. <strong>Is $ethi the native token for the IERC team and protocol?</strong></summary>

No, $ethi is not the native token of the IERC protocol. It is the first Inscription inscribed on the IERC-20 platform, and it is currently the most popular Inscription on IERC20.com.

</details>

<details>

<summary>Q3. <strong>Can I only purchase one type of inscription during bulk purchases?</strong></summary>

During bulk purchases, users can buy up to a maximum of ten types of inscriptions. Inscriptions that have not been settled will remain in the user’s shopping cart until they are successfully purchased by other users. When an inscription is purchased by another user, the corresponding inscription in your shopping cart will be marked as invalid. You can click to clear it and continue purchasing the remaining inscriptions.

</details>

<details>

<summary>Q4. <strong>Why not use $ethi to pay gas fees?</strong></summary>

$ethi is not the native/platform inscription of IERC. It is the first inscribed and currently most popular inscription on IERC20. You don’t pay BNB when withdrawing ETH in Binance.

</details>

### About DPoS & PoW

<details>

<summary><strong>Q1. Can you limit the amount of points used each time?</strong></summary>

We just had a new update for all DPoS miners; the minimum required DPoS points per mine will then be 1,000.

</details>

<details>

<summary><strong>Q2. Is it possible to transfer DPoS points?</strong></summary>

Although points currently cannot be transferred, we are considering implementing a points delegation feature in the upcoming days, enabling users to delegate their points to others fostering collaborative customization of DPoS points consumption strategies. By doing so, users would have the opportunity to collectively enhance their advantage in the game while simultaneously reducing Gas fees.

</details>

<details>

<summary><strong>Q3. Can you limit the amount of points used each time?</strong></summary>

We just had a new update for all DPoS miners; the minimum required DPoS points per mine will be 1,000.

</details>

<details>

<summary><strong>Q4.</strong> How does the point conversion calculation reflect ethpi during the mining process?</summary>

Take a look at this story:

**DPoS Mining & Burning Mechanism:** Let's assume only two individuals, Alice and Bob, are participating in DPoS staking and mining. Alice stakes 100 DPoS points, while Bob stakes 400 DPoS points. The action of staking points requires Gas to be spent to record the points on the chain. In the next block, Alice will receive 100 inscriptions, and Bob will receive 400 inscriptions as a reward. The points staked by Alice and Bob only participate in the production of new inscriptions for the next block and do not contribute to the production of blocks beyond block+1.

Now, let's consider a scenario where there is no participant in DPoS inscription mining for 99 consecutive blocks. In the 100th block, David becomes the sole participant. In this case, David will receive the rewards for all the new inscriptions produced in the past five blocks, and the DPoS burning mechanism will burn the rewards from the previous 95 blocks. In other words, regardless of the accumulated rewards from previous blocks, in the next block, even if multiple participants are involved, they will receive rewards based on the weight of the DPoS points they have staked, with a maximum of 5 blocks' worth of rewards. Any remaining accumulated rewards will be burnt.

</details>

<details>

<summary><strong>Q5. When will the difficulty of mining be increased?</strong></summary>

Following the process outlined in the whitepaper, we plan to halve the mining rewards every two years.

We just had a new adjustment optimizing the PoW difficulty in the reward program: PoW difficulty weight decreases from 10 square “x” to 5 square “x”, narrowing the gap between high and low computational power and offering more opportunities for PoW low-power miners.

</details>

Visit the IERC 20 Medium to delve deeper into our platform and gain a comprehensive understanding of our offerings.

<https://medium.com/@IERC_Protocol>


