개요

이번 포스팅에서는 이더리움의 EIP중 Standard Track EIP에 해당하는 ERC에 해당하는 세가지 ERC-20, ERC-721, ERC-1155에 대해 정리해보는 시간을 갖도록 한다.
Chapter 1 에서는 EIP와 ERC용어에 대한 간단한 정리를 해보도록 하고,
Chapter 2 에서는 ERC-20과 ERC-721, 그리고 ERC-1155 토큰 표준에 대해 자세히 살펴보는 시간을 갖도록 한다. 이때 각 토큰 표준별로 제공해주는 표준함수들에 대해 자세히 살펴보는 시간을 가져보자.

Chapter 1

1. EIP

먼저 EIP에 대해 간단하게 이야기 해보자.
EIP는 Ethereum Improvement Proposals의 약자로, 이더리움의 품질 개선 제안을 의미한다. ERC는 표준이 되기전에 EIP를 통해 커뮤니티에서 수정, 주석처리 및 승인이 되어야 한다. 즉 실제로 ERC는 EIP의 특정 유형이라고 볼 수 있다.

EIP는 Standard Track EIP, Informational EIP, Meta EIP 3가지 종류로 구분되어지는데, ERC는 이중 Standard Track EIP에 해당된다.
즉, ERC-20, ERC-721, ERC-1155는 Standard Track EIP에 있는 ERC범주에 속해 있는 제안이라고 볼 수 있다.

Informational EIP는 이더리움 디자인 문제에 대해 설명하거나, 일반적인 지침 또는 이더리움 커뮤니티에 정보를 제공하지만, 새로운 기능을 제안하지는 않는다.
Informational EIP는 반드시 이더리움 커뮤니티 컨센서스 또는 권고를 나타내는 것은 아니므로 사용자 및 구현자는 Informational EIP를 무시하거나 따르거나 선택할 수 있다. (강제성X, 정보제공성O)

Meta EIP는 이더리움을 둘러싸는 프로세스를 설명하거나 변경하는 방법을 제안한다.
프로세스 EIP는 Standard Track EIP와 유사하지만, 이더리움 프로토콜 자체 이외의 영역에도 적용된다.

2. ERC

크게 ERC-20, ERC-721, ERC-1155에 대한 개념들을 간단하게 정리해보자
세부적으로 살펴보기에 앞서 간단하게 말하면,
ERC-20, ERC-721, ERC-1155 들은 이더리움 블록체인 네트워크에서 발행되는 토큰들의 "토큰표준"이라 칭하고, 이 토큰표준들을 기준으로 "토큰"들이 생성된다.

  • ERC-OO의 의미
    • ERC는 Ethereum Request for Comments를 의미하고, OO는 이 요청에 부여된 번호 이다.

2-1. ERC-20

  • 이더리움 "대체 가능 토큰"의 표준 (Fungible Token)
  • ERC-20은 가장 보편화된 토큰 표준
  • ERC-20은 Dapp이 발행하는 토큰을 이더리움의 통화인 이더와의 호환성을 충족시키기게 하기 위해서 규정하고 있는 프로그래밍 기준들이다
    • 따라서 ERC-20에 기준을 맞춰 Dapp을 설계한 후, 토큰을 발행하면 해당 토큰들을 이더와 쉽게 교환할 수 있고, My Ether Wallet에도 자유롭게 전송할 수 있게 된다.
  • ERC-20 기반으로 생성된 토큰들은 상호 호환성이 가능하기 때문에, ERC-20 기반 토큰들은 동일한 이더리움 지갑으로 전송이 가능하다

2-2. ERC-721

  • 이더리움 "대체 불가능 토큰"의 표준 (Non-Fungible Token)
    • 각 토큰은 고유의 가치를 가짐. ERC-20기반 토큰처럼 서로 교환하는 것이 불가능
  • 기존 ERC-20토큰과 ERC-72Q 토큰에는 많은 중복된 불필요한 데이터가 쌓이고 블록체인의 변경할 수 없는 속성으로 인해 불필요한 코드가 영원히 남게되어 대규모의 저장공간과 처리 용량, 전력을 소모하게 되는 문제를 안고 있어서 이에 대한 대안으로 제시된 토큰표준
  • ERC-20토큰들과 ERC-721토큰들은 이더리움 기반 토큰이라는 점이 동일
  • ERC-20토큰들과의 차이점은 "대체가능성(Fungibility)"
    • "대체가능성"이란, 어떤 자산이 누구에게나 동등한 가치를 지니고 있는것을 의미하는데, ERC-721토큰은 대체가능성을 갖고있지 않음

2-3. ERC-1155

  • ERC-1155는 단일 컨트랙트를 통해 대체 가능한 ERC-20이나 대체 불가능한 ERC-721을 무한히 발행할 수 있다
  • 복잡한 게임 아이템 시스템에 쓰일 수 있다
  • 아래와 같은 문제를 해결하기 위해 ERC-1155 토큰표준이 수립됨.
    • ERC-20 및 ERC-721 표준의 문제점은 하나의 스마트 컨트랙트가 단일 유형의 대체가능 또는 대체불가능 토큰만을 지원하도록 허용한다는 점이다. 따라서 이런 경우 새로운 토큰을 배포하려면 항상 새로운 스마트 컨트랙트를 작성해야 한다. 또한 ERC-20, ERC-721 표준은 "부분 대체 가능 토큰"을 생성하는 방법을 제시하지 않는다.
  • 즉, ERC-1155는 이더리움 개발자가 동일한 표준을 사용하여 쉽게 "대체가능", "부분대체가능", "대체불가능" 토큰을 생성하도록 해주는 표준이다
  • 예를들어, 개발자가 NFT게임을 개발하고자 하는 상황을 상상해보자.
    • 개발자는 하나의 FT토큰을 만들어 게임 내에서 통화로 사용하기로 한다.
    • 그리고 스킨, 총기, 상품 등과 같은 고유한 게임 내 자산에 대해서는 대체 불가능 토큰(NFT)을 여러가지 만든다.
    • 이러한 경우, ERC-20 및 ERC-721 표준을 사용하는 경우, 새로운 자산 유형을 생성할 때 마다 새로운 스마트 컨트랙트를 작성해야만 자산을 지원할 수 있다. 그러나 ERC-1155 토큰표준을 사용한다면 단 하나의 스마트컨트랙트만 작성해도 게임 내 모든 종류의 토큰을 지원할 수 있다.
profile
블록체인에 대해 같이 공부하는 채널입니다~

0개의 댓글