区块链研习社区块链大学区块链研究

通往STO之路|以太坊ERC1404标准解读

2018-12-24  本文已影响6人  Codefine好码实验室
ERC1404

9月份以太坊社区相继出现 ERC1400/1404/1410/1411等STO标准提案,预示着通证市场开始主动拥抱政策监管, 寻求通证合规的出路。Codefine团队在CSDN首发《通往STO之路 | 以太坊ERC1410方案详解》之后, 今天继续带来《以太坊ERC1404方案详解》,  带来以太坊社区的最新技术动态。

缘起ERC20

ERC1404是对ERC20的可监管改进, 全称为"Simple Restricted Token Standard 简单监管性通证标准"。由TokenSoft团队提出,旨在为证券型通证通证化证券以及其他合规要求复杂的通证, 提供一种统一的技术实现标准。

在了解ERC1404之前, 我们首先看ERC20的标准实现:

ERC20方案具备简单、易部署、生态互操作性好等优点, 但同时存在以下问题:

a) 如何满足政府的反洗钱审查, 比如AML/KYC要求

b) 如何满足投资合规性检查, 比如: 保证投资者资质(国别、年薪、投资额等)、保证投资者的数量上限

ERC1404实现

ERC1404继承了ERC20的所有优点, 同时在ERC20的基础上增加了两个新的函数, 用以适配转移通证过程中的合规条件。

解释:

detectTransferRestriction:

a) 必须由发行方实现

b) 必须在 transfer/transferFrom 中被调用。

c) 如果返回一个非0值, 则交易需要被revert。

d) 发行者需要在该函数中实现token的各种限制: 检查接收方是否在某个白名单上、检查发送方的token是否处于锁定期。第三方也可以通过调用该接口得知transfer是否受限。通过返回一个uint8,调用者可以得知失败的原因,并针对不同的原因做不同类型的处理。

需要说明的是:

a) 检查的逻辑没有限制一定在链上,可以利用Oracle接入线下官方资源进行合规性检查。

b) 也可以用一个第三方合约,实现检查逻辑,而第三方的合约是可以进行升级的。

messageForTransferRestriction

a) 必须由发行方实现

b) 用来将一个错误码解释为可读的错误信息。这在某些场景下非常有用(比如钱包跟交易所之间的交易)。

需要说明的是:此函数只是为了进行错误码的转换,如果错误码已经标准化,此函数就可以不需要了,ERC-1066正是在做这方面的努力。详情请参考小编上一篇文章《ERC1066标准解析》。

新增的这2个接口为ERC20通证带来了控制条件: 何时、何种条件下可以转移多少通证。比如发行方在转移通证之前, 可以查询客户是否在白名单, 以及发送的通证是否在锁定期内。

因此, ERC1404虽然只是增加了2个接口,却提供了新的灵活性。

ERC1404示例

单个账号份额限制 http://t.cn/E4UZuZ1

账号数量限制 http://t.cn/E4Uwykb

白名单管理 http://t.cn/E4UwMMz

Token精确拆分 http://t.cn/E4UwOjf

结语

STO是区块链产业圈下半年的一个热点词汇, 整个圈子的从业人员都在寻找一种替代IC0的可受法律监管的通证发行途径。

ERC1404就是Tokensoft 团队在获取发行商、顶级证券律师事务所、主要交易所的通证合规要求反馈后,提出的可监管通证的标准草案。

目前该草案在链上已有若干运行实例, 但标准仍在社区进行广泛review。

参考

https://erc1404.org

https://github.com/ethereum/EIPs/issues/1404

https://github.com/simple-restricted-token/simple-restricted-token

https://medium.com/erc1404/erc-1404-simple-restricted-token-standard-f71290a48faa

---

作者简介:Codefine好码安全团队专注于智能合约安全审计和全生命周期管理, 已为全球多家交易所、钱包、公链做过智能合约安全审计和开发管理。团队通过独有的多维审计引擎,持续为合作伙伴提供正确、安全、可用的智能合约基础设施。官网地址: www.codefine.io

---

原创声明:

本文经「原本」原创认证,作者好码实验室,访问yuanben.io查询【EVE6QN4H】获取授权信息。

上一篇 下一篇

猜你喜欢

热点阅读