# FERC20：一个更公平的ERC20方案

By [fercgo](https://paragraph.com/@fercgo) · 2023-08-13

---

Written by Jacky Gu on May.29, 2023

[https://mirror.xyz/jackygu.eth/l6Z0PIFnzpKJkzhkOanNGaqUZfJNOYlvck3Lq5ZihVU](https://mirror.xyz/jackygu.eth/l6Z0PIFnzpKJkzhkOanNGaqUZfJNOYlvck3Lq5ZihVU)

简介
--

我们非常高兴地宣布，[erc20.cash](https://erc20.cash/) 上线了。这是一个更公平的的`ERC20`代币方案，我们将它命名为：`Fair ERC-20`，简称`FERC20`。

今年3月8日，`BRC20`代币在比特币链上通过`Ordinals`部署成功，在短短一两个月内吸引了大量关注和资金的参与。`BRC20`代币的成功得益于以下几个原因：

*   简洁的`Ordinals`协议使得`BRC20`发行方无法在代币上做过多的编程，避免了在以太坊合约中各种安全风险和一些自私的设计。
    
*   人人平等的铸币权。`BRC20`的发行方或项目团队，无法像在以太坊智能合约中通常做的那样，给自己或相关利益方预留一部分免费（低价）代币。在铸造`BRC20`时，所有人都站在同一起跑线上，即使发行方和团队也是如此。
    
*   比特币的`UTXO`机制和低性能，让很多具有速度优势的智能合约机器人无法在比特币网络上工作，从而防止了通过技术手段获得比正常参与者更大的优势以及由此造成的不公平。
    

上述原因使得`BRC20`对社区参与者来说，更公平，从而吸引了更多人参与。

但是，即使如此，有个非常有意思的现象是：大多数以太坊社区的成员尚未参与`BRC20`。

所以，我们想，是否能将`BRC20`的公平发售（Fairlaunch）精神通过智能合约在以太坊（及其他EVM链）上实现，让更多的社区参与？

`FERC20`**就是这个想法的实验结果。**

FERC20基于ERC20标准协议，所以具有BRC20不具备的**特点**，包括但不限于：

*   **可以方便的在大众所熟悉的钱包内转账，不需要下载新的钱包软件；**
    
*   **可以在以太坊强大的DEFI生态中使用，包括DEX，借贷，多签等等；**
    
*   **FERC20代币无owner权限，即无主代币；**
    
*   **Tick字符数可升级；**
    
*   **没有预挖，代币总量从零开始挖，到达到硬顶为止；**
    
*   **高度去中心化，系统架构无服务器，包括搜索、查找等功能，全部在智能合约中进行；**
    
*   **不是BRC20代打平台，用户直接与合约交互；**
    

在以太坊上实现BRC20，主要的难度在于如何在以太坊上实现比特币链上较为有效的对女巫和智能合约机器人的防范，以维护参与者的公平性。

为此，我们尝试了在`ERC20`标准合约基础上，添加了3组属性：

*   **冷冻期：**\\ 当用户第一次铸币后，会进入冷冻期，在冷冻期内如果想继续铸币，需要向平台支付小费。每次额外的铸币，小费都会翻倍。如：在冷冻期内第一次铸币，将支付0.00025 ETH，第二次需要支付0.0005 ETH，第三次需要支付0.001 ETH。。。
    
    _需要注意的是，对于设置了冷冻期的FERC20，不能批量铸币（Rollup Mint）_
    
*   **持仓条件：**\\ 部署人可以设置持仓条件，用于防止女巫帐号大规模快速铸币。\\ 持仓资产包括NFT和其他ERC20代币。
    
*   **预售/众筹：**\\ 部署人可以设置代币的预售/众筹价格，用于在铸币时收取一定的费用。
    

根据上述3组属性的不同组合，有以下8种子类型：

![](https://storage.googleapis.com/papyrus_images/9d66b9607ee6210bc85a6975c8c5f757fdfe38700878001c895ff8ad74cc03ee.png)

发行人在部署代币合约时，可以根据需要，自行设置以上三组属性。

使用说明
----

### 1- 基本资料

#### 网站：[https://erc20.cash](https://erc20.cash/)

![Home page](https://storage.googleapis.com/papyrus_images/44819105aa326f3a80bd39022b52c33dbcdf67b86f13ed3f2768761efd7b5f5a.png)

Home page

Home page

### 2- 部署新的代币

点击橙色【DEPLOY】按钮，出现下图：

![](https://storage.googleapis.com/papyrus_images/43abe36f5f36be54e79675333c3b8607ea7d706b207959b56969cd518af4dd81.png)

上图中：

*   Tick: 4个字母的代币符号，这是唯一的，先到先得
    
*   Name：代币名称，最多20个字符
    
*   Hard Cap：最大发行量
    
*   Limit Per Mint：每次铸造得到的代币数量
    

如果只填上述四项，则会发行一个**无冷冻期，无持仓条件，免费铸造的FERC20代币**。

填完后，点击右下方【DEPLOY】按钮，调用【metamask钱包】，开始部署新代币。

### 3- 部署高阶代币

点击上图【More Setting...】按钮，显示高阶代币配置。

![](https://storage.googleapis.com/papyrus_images/078a49aec31f72d571694e65575a411f984f19e0f8d141728783d341c4eea03f.png)

填完后，点击右下方【DEPLOY】按钮，调用【metamask钱包】，开始部署新代币。

### 4- 铸造FERC20代币

![](https://storage.googleapis.com/papyrus_images/1eb2dbb65e22d22a8bdfc798450f2da5f913fe561aa3ae44e15406eaf4bf6300.png)

点击上图按钮，即可开始铸造。首先会显示该代币的详情，如下图：

![](https://storage.googleapis.com/papyrus_images/5ebf89525a2f6c65a848cf21978a797b76910f1d0f4c6f9215fca1440ff4ee03.png)

查看铸造参数是否正确。

**注意：如果有持仓条件的代币铸造，如果持仓条件不满足，会出现红色提示，这时无法继续铸造。**

点击【MINT】按钮后，会弹出【metamask钱包】要求确认，见下图：

![](https://storage.googleapis.com/papyrus_images/2764e8d77d381164289fb28c334f5c052be5561273d3a7818e28a3c1e7882cfb.png)

仔细查看上图中绿色框部分，这是铸造费用（因为本教程是在Polygon测试网上运行，故而显示MATIC，在以太坊主网上是ETH）

确认无误后，在【metamask钱包】中点击【确认】按钮，签名并发送交易。

过一会，会显示交易确认，完成铸币。

### 5- 冷冻期内铸造FERC20代币

如果代币有冷冻期，则在免费铸造后，会进入冷冻期。

在冷冻期内，可以继续铸造，但是需要向平台支付一笔小费（ETH计价）。进入冷冻期后第一笔铸造小费为0.00025ETH，第二次为0.0005ETH，第三次为0.001ETH。。。即每次增加一倍。

在冷冻期内，点击【MINT】按钮，会出现下图提示：

![](https://storage.googleapis.com/papyrus_images/55e0162ae358d2bd7f6bc3ccc249b06a3796b2f21175c92c288a941dbcb070f8.png)

点选确认支付小费后，再次点击【MINT】按钮，启动铸造。

![](https://storage.googleapis.com/papyrus_images/276ed91b9631d91426e5a678c1078311fdc713b2d726db22739f53c26c01c9a7.png)

**注意：上图红框中包括了两笔费用，一笔是小费，一笔是众筹费（如果代币没有众筹费，则只有小费）**

如果要继续在冷冻期内铸造，小费数量会翻倍，如下图：

![](https://storage.googleapis.com/papyrus_images/768493136404f32a2e7137f5a3e324d18396da69cf6236bcca3483c165560603.png)

收费规则
----

### \- 部署FERC20代币：

免费（只支付Gas费，下同）

### \- 铸造无冷冻期的FERC20：

免费

### \- 铸造有冷冻期的FERC20：

第一次免费，进入冷冻期后，第二次收取0.00025ETH，第三次收取0.0005ETH，每次翻倍。直至冷冻期结束，拥有一次免费铸造，再次进入冷冻期。

### \- 铸造众筹的FERC20：

每次收取1%手续费。如众筹价格为0.1ETH每FERC20，则手续费为0.001ETH，0.099ETH即时进到众筹组织者账户。

风险提示
----

`InscriptionFactory.sol`和`Inscription.sol`合约未经审计，请自行评估合约风险。

合约开源地址：[https://gist.github.com/jackygu2006/39dbc920703bcc46c8aa0fb2a071f720](https://gist.github.com/jackygu2006/39dbc920703bcc46c8aa0fb2a071f720)

---

*Originally published on [fercgo](https://paragraph.com/@fercgo/ferc20-erc20)*
