ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ERC와 조합가능성
    블록체인/이더리움 2024. 4. 13. 17:13

    ERC는 EIP 종류의 일부이다. ERC는 애플리케이션 단에서 조합 가능성이라는 것을 가능하게 하여 디앱들 간의 효율성을 높여주고 있다. 

     

    ERC란, Standard Track 중에 하나로 '이더리움 생태계의 어플리케이션 레이어의 표준'에 대한 기술이다.


    1) 주로 '스마트 계약 및 토큰 상호 운용성을 보장'하기 위한 목적으로 제안되며,

    2) EIP Core와 달리 '모두에게 의무적으로 적용되는 것은 아니지만, 몇몇 통용되는 ERC는 상호운용성 보장을 위해 적용하는 것이 효율적이다.

     

     

    ...

     

     

    Core는 검증인들이 트랜잭션을 확인하고 확정하는 단 (블록체인 단) 에서 '무조건 적용'을 해야 한다. 만약 하지 않으면 '포크'를 진행해야 한다.

     

     

    ERC는 스마트 컨트랜드 단에서 애플리케이션을 만들다가 '이런 표준이 있으면 좋을 것 같다'는 제안을 하고 채택이 되더라도 모든 서비스를 만드는 개발자들이 선택적으로 적용할 수 있다.

     

     

    내 서비스에 맞게 표준을 가지고 오면 다른 애플리케이션들과 상호작용하기가 좋아진다는 것이기에 선택적이다. 

     

     

    ...

     

     

    ERC는 채택이 되면 [ERC + 숫자] 로 명명하게 된다. 대표적인 채택된 ERC를 살펴보자.

     

     

    1) 15.11 ERC-20: Fungible Token Standard

    돈의 성질을 지닌 자산 표준

     

    2) 2016 ERC-137, 162, 181: ENS

    Ethereum Name Service를 가능하게 한 표준

     

    3) 2018 ERC-721, 1155: NFT Standard

    고유한 성질을 가지는 자산 표준

     

    4) 18.06 ERC-1167: Proxy Contract

    수정 가능한 컨트랙트 (Upgradable Contract)

     

    컨트랙트는 배포를 하면 수정이 불가능하다. 이를 수정가능하게끔 하는 방법이 'Proxy(대리) 컨트렉트'를 하나 두고, 이를 거쳐서 구조를 짜면 수정(업그레이드)이가능해진다. 

     

    5) 20.09 ERC-2981: NFT Royalty

    크리에이터들을 위한 NFT 로열티

    (NFT를 사고 팔 때마다 로열티가 크리에이터한테 가게끔 하는 것)

     

    6) 23.02 EIP-6551: NFT-bound Accounts

    NFT을 지갑화하여 자산 보관.

    (현재 In review 상태이다.)

     

    원래 NFT는 자산 자체이다. 이 NFT 안에다가 NFT, 돈도 넣을 수 있는 기술이 제안됐다. 

     

     

     

    이외에도 많은 ERC가 있다. 무조건 적용해야하는 것이 아니다. 개발자들이 필요에 따라서 사용하는 것이다.

     

     

    ... 

     

     

    ERC는 '조합가능성, 상호운용성, 효율성'을 가져오는 효과가 있다. 어떻게 이것이 가능한지 살펴보자.

     

     

    토큰과 토큰을 교환하는 디앱은 누구나 구현할 수 있고,

    누구나 토큰을 발행할 수 있고,

    누구나 유동성을 제공할 수 있고,

    누구나 토큰끼리 교환을 할수 있으려면 ERC 라는 것이 필요하다. 

     

     

    유니스왑에는 ERC-20 토큰끼리 교환할 수 있게끔 스마트 컨트랙트가 만들어져 있다. 만약 ERC-20 으로 만들지 않게되면 유니스왑에서 다른 ERC-20 토큰들과 교환될 수 없게 된다.

     

     

    ERC를 통해서 규격화를 하게 되면 스마트 컨트랙트간에 상호 운용과 높은 효율성을 갖게된다.

     

     

    스마트 컨트랙트에 대한 대표적인 특성은 아래 두 가지가 있다.

    1) 자동 실행 

    2) 조합 가능성 

     

     

    이러한 특성 때문에 이더리움 네트워크 위에서 디앱이 만들어지면 서로 조합이 될 수 있다.

     

     

    ...

     

     

    세 개의 스마트 컨트랙트를 사용하여 dex dApp을 구현했다고 가정해보자.

     

     

    하나는 토큰 A를 발행한 사람이 만들고, 다른 하나는 토큰 B를 발행한 사람이 만들었다. 토큰을 교환하는 스마트 컨트랙트 또한 다른 사람이 만들었다.

     

     

    이들이 토큰 교환을 위해서 '토큰은 ERC-20 규격을 맞추자' 라고 하면 dex 의 상호운용성이 증가하게 된다.

     

     

    ...

     

     

    탈중앙 블록체인과 조합가능성에 의해 가능한 상황

     

     

    만약 내가 ERC-20 규격의 토큰을 발행했다고 가정해보자. 이는 어떤 조합성을 가질 수 있게 될까?

     

     

    1) dex 에서는 다른 ERC-20 토큰과의 조합이 가능해진다. 

    2) 투표 시스템에서는 내가 만든 ERC-20 을 가지고 있는 홀더에게만 투표권을 줄 수 있다.

    3) 게임에서는 ERC-721, 1155, 6551 NFT를 만들었다. 이 때 사용되는 게임머니는 내가 만든 토큰을 채택하게 만들 수 있다.

    4) k-pop 티켓을 발매하는 디앱을 만들 때 ERC-721로 티켓을 발행하고 이것을 사려면 내가 만든 토큰으로 살 수 있게끔 할 수 있다.

     

     

    이러한 것들이 '파트너십'이나 '허락없이 다른 프로젝트'에서 활용하는게 가능해진다. 기존 웹2에서는 파트너십으로 서로의 데이터에 접근 권한을 줬어야 가능했다.

     

     

    이더리움 네트워크는 개방성이라고 하는 특징이 있다. 그리고 ERC와 같은 규격화 때문에 '상호 운용성, 조합 가능성'이 생긴다. 이로 인해서 이더리움 네트워크 위에 디앱 간에 파트너십 없이도 다른 사람들이 만든 스마트 컨트랙트를 자유롭게 활용할 수 있는것이 가능한 환경을 갖추고 있다. 

     

     

    다른 프로젝트들과 어떤 식으로 관계를 맺어야 되고 어떻게 우리 프로덕트와 다른 스마트 컨트랙트를 연결시키고 결합시킬 수 있을지에 대한 생각으로 나아갈 수 있다. 

     

     

    ...

     

     

    ERC를 제안하고 채택한다는 것의 의미

     

     

    ERC를 제안한다는 것의 의미는 디앱을 개발하는 개발자들에게 자신들의 서비스에 알맞은 레고블록들이 더 많이 생겨나는 것에 비유할 수 있다.

     

     

    많은 사람들이 커뮤니티 위에서 각자의 생각을 공유하고 그것이 규격으로 만들어지면 이 또한 내가 가져다 쓸 수 있는 소스가 되는 것이다. 이러한 상호운용성이 확보가 되면 내가 모든 것을 다 만들지 않더라도 다른 사람들이 만들어 놓은 규격을 가지고 와서 쉽게 나만의 프로덕트를 만들 수 있는 효율성을 가지고 오게 된다. 

     

     

    ...

     

     

    이러한 맥락속에서 ERC-6511 을 다시 한번 살펴보자.

     

     

    EIP/ERC-6511: NFT-bound Accounts

    NFT을 지갑화하여 자산을 보관할 수 있게하는 표준이다. 

     

     

    이전에는 게임 캐릭터와 캐릭터가 가지고 있는 아이템, 머니를 효과적으로 표현할 수 있는 방법이 없었다. 기존 지갑에는 특정 게임과 관련된 캐릭터 아이템도 있고, 돈도 있고, 이것들과 전혀 상관없는 NFT와 토큰들이 쭉 나열되어 있었다. 즉 기존 지갑에서는 게임과 관련된 자산들만 모아져 있는 것을 구현하는 게 힘들었다.

     

     

    이를 해소하기 위해 ERC-6551 이라고 하는 것을 제안하였고 이는 결과적으로 생각해보면 디지털 경제에서 아이덴티티를 가지는 것과도 밀접한 연관이 있다. 

     

     

    이더리움 네트워크에서 내가 특정 게임에서 가지고 있는 히스토리 (아이덴티티, 소셜 네트워크), SNS에서 가지고 있는 히스토리나 자산들을 따로 따로 가지고 싶은 니즈가 있다. 이것을 구현하기 위해서 게임 또는 디지털 아이덴티티에 대해서 생각하는 사람들끼리 수많은 논의들을 만들어 냈고 그 결과 ERC-6511 표준을 가져올 수 있었다. 

     

     

    현재 이것이 게임 쪽에서는 핫한 표준이여서 많이 채택하고 있다. 그리고 이것을 가지고 여러 서비스들이 나오고 있다.  

     

     

    ...

     

     

    정리

     

    1) ERC 란 EIP > Standard Track 중 하나로 이더리움 생태계의 어플리케이션 레이어의 표준이다.

    2) 내 서비스에 맞게 표준을 가지고 오면 다른 서비스들과 상호작용하기 가 좋아진다. 이는 개발자들은 선택적 적용을 할 수 있다.

    3) Core 는 의무적으로 적용해야 하며 적용을 하지 않을 시 Fork 를 해야한다.

    4) 파트너십이나 허락 없이 활용하는것이 가능하다. 이는 조합 가능성을 높게 만들어준다. 

    5) 이를 통해 우리 서비스와 다른 스마트 컨트랙트를 어떻게 연결시키고 결합시킬 수 있을지에 대한 생각으로 나아갈 수 있다.

    6) ERC-6511이란 NFT를 지갑화하여 자산을 보관할 수 있게 하는 표준이다.

    7) 이를 활용하면 특정 서비스에서만 제공되는 토큰(nft, 토큰, 계정 등) 들을 한 곳에 모아볼 수 있다.

Designed by Tistory.