반응형

오늘은 솔리디티툴인 REMIX와 OPEZEPELIN을 이용하여 ERC20 표준을 따르는 토큰을 만들어 보자! 

아주 쉽고도 간단하면 누구나 10초만에 코드를 만들 수 있다. 토큰을 만드는 것은 그렇게 어려운 행위가 아니며 이더리움과 여러 체인들에 많은 토큰들이 생겨 나고 있다. ERC20은 그중 EIP20에서 올라온 이더리움 개선 제안을 통해 현재는 STANDARD 즉 토큰 표준으로 사용되고 있다. 아래의 코드를 보고 간단하게 토큰을 개발하며 어떤 의미가 있는지 이해해 보자. 

 

 

// SPDX-License-Identifier: MIT
pragma solidity 0.8.16;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract SnowmenToken is ERC20 {
    uint256 private constant MAX_SUPPLY = 1_000_000_000 * 10 **18;
    constructor() ERC20("Snowmen","SNOW"){
        _mint(msg.sender, MAX_SUPPLY);
    }
}

 

 

1. 솔리디티 버젼을 설정한다.

// SPDX-License-Identifier: MIT
pragma solidity 0.8.16;

 

2. 오픈제플린의 ERC20 토큰 표준라이브러리를 장착

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

 

3. SnowmenToken을 ERC20 표준을 상속받아서 만드는 컨트랙트 작성

contract SnowmenToken is ERC20 {
    uint256 private constant MAX_SUPPLY = 1_000_000_000 * 10 **18;
    constructor() ERC20("Snowmen","SNOW"){
        _mint(msg.sender, MAX_SUPPLY);
    }
}

 

총 공급량은 10억 개로 설정하고, constructor 생성자에 토큰의 이름인 Snowmen과 티커명인 SNOW를 써주고 민트를 사용하여 msg.sender 즉 민트주체가 총공급량을 소유하게 한다. 이때 민트는 토큰을 주조한다, 만든다 정도로 이해하면 좋다. 아래글에 NFT 민트에 대한 실사용 사례도 있다.

 

https://r-blockchain.tistory.com/18

 

NFT 만들기(민팅하기)

요즘 핫한 NFT를 민팅하는 방법을 알아 보겠다. 민팅이란 동전과 같은 법정화폐를 주조할떄의 '주조'를 뜻하는 영어단어이다. NFT란 디지털화폐로 발행, 주조, 민팅이라는 단어가 적용된다. 쉽게

moneypepe.xyz

 

이렇게 쉽게 이미 만들어진 라이브러리들과 토큰 표준을 이용하여 블록체인 네트워크 상에서 동작할 수 있는 스마트 컨트랙트 즉, 스마트한 계약을 작성함으로 우리가 만든 토큰들을 블록체인 네트워크 상에서 사용할 수 있다.  아래는 실제 ERC20 토큰표준의 EIP 개선제안으로 EIP 읽어주는 남자 세션에서 설명하겠다. 


https://eips.ethereum.org/EIPS/eip-20

 

ERC-20: Token Standard

 

eips.ethereum.org

 

반응형

'블록체인' 카테고리의 다른 글

블록체인 MultiCall  (0) 2023.11.21
블록체인 블록의 구조  (0) 2021.09.27
블록체인 용어정리  (0) 2021.07.27
P2P 네트워크 와 블록체인 네트워크 설계  (0) 2021.07.19
데이터베이스와 분산원장?  (0) 2021.07.08

+ Recent posts