0. 요약
□ 이더리움은 자체 블록체인을 기반, 다양한 탈중앙화 된 어플들이 작동가능하게 고안된 플랫폼 네트워크.
□ 이더리움의 디앱은 스마트 계약을 이용해 쉽고 빠르게 토큰 발행가능.
□ 이더리움 블록체인에선 이더가 사용되고, 디앱은 여러 분야에 적용가능한 각각 솔루션들로 그에 맞는 토큰 발행.
□ 발행된 토큰은 독자적인 토큰인 듯 하지만 실제는 이더리움 생태계에서 호환 및 사용 가능.
□ 예)
○ 안드로이드 = 이더리움 플랫폼 / 그 안에 앱들 = 디앱들.
○ 각 앱 사용하면서 발생되는 일정 포인트를 통합 및 사용하는 건 같은 회사계열의 앱이 아니면 불가능하지만
○ 이더리움 플랫폼에서는 각각의 디앱이 발행한 토큰을 통합하여 현금화가 가능.
○ 디앱 내에서의 토큰 교환은 물론, 이더리움 플랫폼 기반의 타 디앱의 토큰과 교환 가능한데
○ 이를 위해 ERC-20 토큰 표준 있는 것.
○ 디앱들에 흩어져있는 ERC-20 표준 호환 토큰들은 나중에 통합되어 한 번에 이더로 모두 바꾸어 현금화 가능.
1. 배경
□ 비트코인(Bitcoin) 탄생 : ‘코인’ 개념 생성.
○ 2008년 10월 1세대 암호화폐. 기축 통화 (국제간 결제 및 금융거래에서 통용되는 통화. ex. 금)
□ 알트코인(Altcoin) 탄생 : 이 당시만 해도 코인들만 존재.
○ 암호화폐 생태계에, 독자적 알고리즘과 생태계 소유한 여러 암호화폐들 탄생
○ 비트코인과 유사한 이 암호화폐를 사람들은 알트코인으로 일컫음.
□ 이더리움(Ethereum) 탄생
○ 이더리움은 비트코인에선 제공하지 않는 스마트계약 기능 소재.
○ 스마트컨트랙트 기능 이용으로 이더리움은 플랫폼 코인으로 영역을 확장가능해짐.
★. 이더리움의 (코인)플랫폼 기능?
- 마치 아이폰의 앱스토어 기능.
- 독자적인 하드웨어(이더리움)를 개발하지 않고도
- 개발자들은 앱스토어에 본인의 어플 업로드 및 판매 가능 하게 되는 것.
|
2. 목적 및 생성
□목적
○ 토큰을 지분으로 투자자금 모음.
- 메인넷 개발완료 시 토큰으로 변환.
- 메인넷 개발 전 “개발할 때 까지의 자금”, “토큰거래만 가능”
- 메인넷 개발 후 “자체 네트워크 통화”, “자체기능 개발 및 배포”
○ 상호 호환 가능
- ERC-20 (기반) 토큰은 이더리움과 교환 가능 및 이더리움 지갑으로 전송이 가능.
- ex) 안드로이드 운영체제를 사용하는 네이버 지도를 카카오톡으로 바로 공유할 수 있는 것처럼.
□ 이더리움의 스마트컨트랙트로 생성
○ 독자적 생태계 구축없이 이더리움의 기능(스마트계약)을 이용, 암호화폐를 제작하게 됨.
○ 이렇게 제작된 암호화폐는 ERC-20 (Ethereum Request for Comment) 토큰이라 불림.
○ ERC-20 기반 토큰 : 펀디엑스(NPXS), 오미세고(OMG), 비체인(VEN) 등.
○ 이오스(EOS), 트론(TRX) 등은 이더리움 기반 토큰 생성 후, 자체 메인넷을 출시로 독립적 코인으로 재탄생.
3. ERC-20
□ 토큰?
○ ERC-20은 이더리움 블록체인 네트워크에서 정한 표준 토큰 스펙.
○ 각각의 커스텀 토큰을 관리 가능하게 해주는 기능(스펙)임.
○ 이더리움 블록체인에서 또 다른 토큰 실행위해선 ERC-20라는 스마트계약에서 코드나 기술 표준 설정필요.
○ (시장화폐로서) 필요한 이더리움과 호환성이 있는 모든 요구 사항의 표준은 ERC-20로 간주.
□ 규칙(함수)
○ totalSupply (): 총발행량. 토큰이 총 몇 개 있는지 알려주고 생성되어 사용가능한 토큰 수 지정.
○ transfer (): 송금. 토큰을 총 발행 주소에서 개인 계정으로 송금가능. 초기 토큰 배포를 지정된 지갑으로 실행. 이 함수로 인해 ICO 토큰이 일반적으로 ERC-20 토큰으로 사용.
○ balanceOf (): 잔액. 계정 내 토큰을 반환하고, 모든 지갑의 토큰 균형을 추적.
○ transferFrom (): 사용자는 송금 기능을 사용하여 측정 토큰을 사용자가 전송하고 교환가능. 이 함수는 지갑 주소, 수령인, 송금액을 얻은 중개인처럼 작동한 다음, 거래 수행.
○ approve (): 승인. 위조 토큰 제작 방지. 토큰 총 발행 양을 확인해 트랜잭션을 허용 및 거부, 최대 토큰 수를 유지 관리하고 어떤 지갑에 어떤 토큰이 있는지 추적.
○ allowance (): 허용. 누군가 시스템을 속이고 본인이 소유한 것보다 더 많은 토큰을 보내고자 할 때, 이를 방지함. 거래가 이뤄지면 취소되며 모든 트랜잭션은 실행되기 전 유효한지 이중 확인됨.
4. 다른 기준의 등장
□ 변화
○ 대부분 토큰들은 ERC-20 규정을 따르고 있는 만큼, 디앱 사용자들은 이들 토큰을 지갑에 저장가능.
○ 그러나 많은 디앱프로젝트들이 ERC-20을 수행할 때 발생한 토큰손실 등 ERC-20 시스템의 불완전성으로-
○ 이더리움 커뮤니티는 이를 수정하였고 다른 규칙들이 등장하게 됨.
□ ERC-223
○ 토큰을 스마트 컨트랙트에서 직접 보냈을 때 토큰 손실가능성 문제를 수정한 것.
○ ERC-223이 제공하는 또 다른 혜택은 토큰들이 스마트계약에서 한번에 다른 지갑으로 송금가능하게 지원.
- 이 기능으로 지갑은 원장 업데이트를 위해 토큰 스마트 컨트랙트가 필요하지 않음.
- 이 기능에 불러온 부산물은 가스비가 절반 정도 밖에 안됨. 두개가 아니라 하나의 기능을 확인하는 것이기 때문.
□ ERC-777
○ ERC-20 버그를 위한 또 다른 솔루션이 2017년 11월 20일 이더리움 커뮤니티에 제안됨.
○ 누구나 스마트계약 주소 및 기능 확인가능. (ERC-820 기능 가져온 것)
○ ERC-20의 간단한 전송과 확인에서, ERC-777의 보내기 기능으로 - 본질을 바꿈으로서-
○ 토큰과 스마트 컨트랙트 그 자체로 보다 많은 것들을 가능하게 함.
□ ERC-721
○ = NFT, Non-Fungible Token, 대체 불가능한 토큰.(성질)
○ 개발자들에게 복수의 소유자들 사이에서 공유불가한 토큰을 개발할 수 있게 함.
○ 개별적인 각각의 NFT를 위한 기능과 상태를 포함할 수 있게 해줌.
○ 디앱 게임들에 광범위하게 적용됨. (캐릭터나 아이템을 나타내기 위해 NFT를 구현한 게임들)
○ 대표적 사례) 이더몬. 각각의 이더몬은 ERC-721 기능을 수행하는 NFT임.
- 플레이어들은 이더몬을 상호 거래가능. 누구도, 이더몬의 한 조각을 공유불가.
- 누군가 타인에게 전송할 경우, 전체 NFT로서 전송됨.
- 반면, 게임에서 플레이어들은 그들의 이더몬을 훈련시키고 싸우게 할 수 있음.
- 이것은 이더몬 상태를 늘/줄이는 결과로 이어질 수 있음.
- 게임의 육성 기능은 새 이더몬이 생성 됐을 때, 새 NFT가 이더리움 네트워크에 만들어짐.
- 소유권은 자동으로 액션을 요구한 개인에게 감.
○ 본질적으로 토큰이, 디앱 내에서 공유가능하고, 미래 NFT 생성에 영향주는 수집물이 되도록 함.
○ NFT는 무제한 공급 가능하나 대부분 디앱 프로젝트는 전체 공급량을 제한함. (NFT의 가치유지 위함.)