ERC-1404
ERC-1404는 Tokensoft에서 개발한 표준이다. ERC-1404는 몇 줄의 코드로 ERC-20 토큰에 간단한 기능 하나를 추가한다. ERC-1404를 사용하면 토큰 발행자는 오퍼링의 요구와 해당 관할권의 규정에 따라 해당 토큰의 전송을 제한할 수 있다.
개요
ERC-1404는 발행자가 규제 이전 제한을 시행할 수 있도록 몇 가지 주요 개선사항을 통해 간단하고 쉽게 배포하고 전체 이더리움 유니버스와 상호 운용할 수 있는 ERC-20 토큰의 동일한 이점을 모두 제공한다. 새로운 표준은 두 가지 기본 기능을 추가한다.
배경
그동안 발행된 일부 증권형 토큰은 이더리움에서 발행되는 ERC-20 토큰 표준을 따르고 있다. 하지만 ERC-20만으로는 증권형 토큰의 규제 준수 수준 등을 충족시킬 수 없다는 업계 중론이다. 이에 따라 최근 이더리움 진영에서도 증권형 토큰의 특성을 반영한 ‘ERC-1404’에 대한 논의가 시작됐다. 해시드 측에 따르면 ERC-1404는 기존 암호화폐공개(ICO)에서 주로 활용된 유틸리티형 토큰과 다르게 송금에 제한을 둔 새로운 이더리움 발행 기준이다. 해시드 관계자는 “최근 미국에서 열린 샌프란시스코 블록체인 위크에서도 유틸리티 토큰과 시큐리티(증권형) 토큰을 비교하는 세션과 이더리움의 새로운 발행 기준인 ERC1404를 소개하는 세션이 준비돼 있었다”며 “앞으로 나올 대부분의 플랫폼 코인이 시큐리티로 분류될 수 있다는 의견이 제시되면서 ERC1404에 대한 활발한 논의가 진행 중”이라고 전했다. [1]
핵심원칙
토큰 발행자는 ERC-20 토큰의 거래가 증권법 및 기타 계약 의무를 준수하도록 제한하는 방법이 필요하다. 현재는 이러한 요구사항을 다루고 있지 않다.
몇 가지 주요 예시:
- 토큰 잠금 기간
- AML/KYC 검사 시행
- 민간 부동산 투자 신탁
- 델라웨어 주 법률 공유
기술
ERC-20토큰은 다음과 같은 기본 기능을 제공한다.
contract ERC20 { function totalSupply() public view returns (uint256); function balanceOf(address who) public view returns (uint256); function transfer(address to, uint256 value) public returns (bool); function allowance(address owner, address spender) public view returns (uint256); function transferFrom(address from, address to, uint256 value) public returns (bool); function approve(address spender, uint256 value) public returns (bool); event Approval(address indexed owner, address indexed spender, uint256 value); event Transfer(address indexed from, address indexed to, uint256 value); }
ERC-1404 표준은 ERC-20의 인터페이스를 기반으로 다음 두 가지 기능을 추가한다.
contract ERC1404 is ERC20 { function detectTransferRestriction (address from, address to, uint256 value) public view returns (uint8); function messageForTransferRestriction (uint8 restrictionCode) public view returns (string); }
결론
각주
- ↑ 김미희 기자,〈STO 플랫폼-커뮤니티 활기 본격화〉,《TheBlockPost》2018-11-25
참고자료
- https://erc1404.org/ ERC-1404 공식홈페이지
- https://github.com/simple-restricted-token/reference-implementation#readme ERC-1404 테스트 사례 및 구현