본문 바로가기
블록체인교육/솔리디티

13. 리믹스 솔리디티 8.0 버전 ERC20토큰 만들기

by Danny_Kim 2020. 11. 15.

🔑 100배 수익 경험자의 노하우가 담긴 치트키 공개 🔑

  1. 네이버, 카카오 임직원들이 듣고 있는 비트코인 강의
  2. 아무도 알려주지 않은 비트코인, 이더리움의 리스크
  3. 블록체인 전문가들도 놓치기 쉬운 비트코인, 이더리움의 핵심 가치
  4. 천배 수익이 가능한 디파이(DeFi), 코인 생태계 지도
  5. 토큰 제작, 1억 연봉의 블록체인 개발자로 거듭나자!

1. 스마트 계약의 시작, 리믹스 도구 사용해보기

2. 솔리디티 개발환경 구성

3. 스마트컨트랙트 작성 후 배포하기

4. openzeppelin 사용하여 ERC20 토큰 만들기

5. Ropsten 테스트넷에 ERC20토큰 배포하기

6. web3.js 와 자바스크립트를 활용한 간단한 예제

7. 솔리디티 기초, 리믹스로 컨트랙트 작성하기

8. 솔리디티 기본문법 (변수, 데이터타입, 구조체)

9. 솔리디티 배열, 맵핑

10. 솔리디티 조건문, 반복문(if, else, for)

11. 솔리디티 암호화폐 지불(호텔룸 예약하기 프로그램)

12. 솔리디티 상속

13. 리믹스 솔리디티 6.0 버전 ERC20토큰 만들기

14. web3.js 와 자바스크립트를 활용하여 (이더잔액조회) 지갑 만들기

15. 솔리디티 컨트랙트 Web.js 활용하여 웹으로 보여주기

* 블록체인 전문가들도 놓치기 쉬운 비트코인, 이더리움의 핵심가치 강의

 

내용이 어려우신 분들은 유튜브 영상 참고하세요!!

https://youtu.be/Yy5_x5SWS4U

 

 

1. 리믹스에서 mytoke.sol 파일을 생성합니다.

 

2. github에 있는 openzeppelin 라이브러리의 erc20.sol 소스를 import합니다.

 

3. import후 ctrl+s 하면(컴파일) 관련 파일들을 자동으로 다운로드합니다.

 

4. Mytoken.sol파일에 아래와 같이 코딩해줍니다.

소스는 이렇습니다.

 

pragma solidity ^0.8.0;

import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol";

contract MyToken is ERC20{
    constructor(string memory name, string memory symbol) ERC20(name,symbol){
        // mint 1000 token
        _mint(msg.sender, 1000*10**uint(decimals()));
    }
}

 

5. 컴파일 해줍니다. 버전을 8.0으로 맞춥니다.

 

 

 

6. Deploy를 해줍니다.

 - 메타마스크가 사전에 설치되어 있어야 합니다.(이 부분은 설명은 생략합니다.)

 - Injected Web3를 선택하면 메타마스크로 연결이 됩니다.

 

 - 메타마스크를 연결하고 Ropsten 테스트넷 계정을 연결합니다.

 

 

* 혹시 Ropsten 테스트넷 계정에 이더가 없으면, 아래 사이트에서 이더를 받습니다.

https://faucet.dimensions.network/

 

Ropsten Ethereum (rETH) Faucet

Ethereum Faucet - Ropsten

faucet.dimensions.network

 

 

이제 모든 준비가 끝났습니다. 마지막으로 컨트랙트 MyToken을 선택해주고 Deploy하면 Ropsten테스트넷 계정으로 컨트랙트가 배포됩니다. (delploy 오른쪽에 토큰명, 심볼을 지정해줍니다.)

Deploy를 클릭하면, 메타마스크로 자동연결이 되면서 승인을 누를것을 요청합니다. 승인해줍니다.

 

트랜잭션이 정상적으로 되었으면, 아래와 같이 메타마스크에서 Confirmed transaction 메세지를 보내줍니다.

해당 링크를 따라 들어가서 컨트랙트 주소를 살펴봅니다.

아래와 같이 150 MyToken(MT)이 만들어졌네요!!

와우!!!! 이제 이 MyToken을 친구들에게 보내주면 됩니다!!!!

 

뭔가 아쉬우니...마지막으로 리믹스로 돌아가서 기본적으로 어떤 기능을 제공하는지 살펴봅니다.

아래와 같은 기능들을 제공하고 있네요.

 

그런데, 우리에게는 조금 더 많은 기능이 필요합니다.

락이라든지..에어드랍이라든지..종류는 많이 있겠죠?

 

일단 기본적인 ERC20 토큰 생성법은 아래 메뉴얼에 잘 나와 있습니다.

docs.openzeppelin.com/contracts/3.x/erc20

 

ERC20 - OpenZeppelin Docs

Often, you’ll want to be able to divide your tokens into arbitrary amounts: say, if you own 5 GLD, you may want to send 1.5 GLD to a friend, and keep 3.5 GLD to yourself. Unfortunately, Solidity and the EVM do not support this behavior: only integer (who

docs.openzeppelin.com

 

 

기본적으로 제공하고 있는 기능과 추가적으로 제공하는 기능들은 아래와 같습니다.

 

ERC20 기본기능

 

추가적으로 사용할 수 있는 기능

 

ERC20Snapshot

ERC20Pausable

ERC20Burnable

ERC20Capped

SafeERC20

TokenTimelock

 

기본기능과 추가기능 모두 아래 API 메뉴얼을 통해서 사용법을 확인 할 수 있으니 한번씩 응용해서 토큰을 만들어보세요!!!

docs.openzeppelin.com/contracts/3.x/api/token/erc20

 

ERC 20 - OpenZeppelin Docs

For an overview of ERC20 tokens and a walk through on how to create a token contract read our ERC20 guide. There a few core contracts that implement the behavior specified in the EIP: IERC20: the interface all ERC20 implementations should conform to. ERC20

docs.openzeppelin.com

 

 

참고로 이 예제는 테스트넷에 배포하였는데, 메인넷 배포를 위해서는 메인넷 계정을 연결하고 Deploy하면 됩니다.

 

Deploy를 누르면  아래와 같은 화면이 뜹니다.

가스비가 아래와 같이 소요되네요~

 

트랜잭션이 성공했습니다. 10초도 안걸렸네요!!!

자, 그럼 이걸 제 지갑에 추가해야겠죠?

 

 

아래와 같이 토큰컨트랙트 주소를 추가하면 자동으로 추가됩니다.

토큰 추가 하면 제 지갑에서 토큰을 보낼 수 있습니다.

 

 

아래 이더리움 메인넷에서 제가 발행한 실제 토큰을 확인할 수 있습니다.

 

etherscan.io/token/0x50435674C82960070cFE34feE43bd8090Ac7a29B?a=0x2cB13725CBeA985a01d00a7090c1D7218B9dAF76

 

SANSTUDIO (SAN) Token Tracker | Etherscan

SANSTUDIO (SAN) Token Tracker on Etherscan shows the price of the Token $0.0000, total supply 150, number of holders 1 and updated information of the token. The token tracker page also shows the analytics and historical data.

etherscan.io

 

이제 ICO후에 상장하는 일만 남았군요!!! 

 

 

블록체인 교육 문의는 아래 링크 참고 바랍니다. 

https://kimsfamily.kr/414

 

블록체인 교육 커리큘럼 및 프로필

안녕하세요 제 프로필을 간략하게 정리하였습니다. 비즈니스 문의는 dannykim@kakao.com 으로 연락주시기 바랍니다. 감사합니다. 프로필) 블록체인 강의 경력) 1. 블록체인 강의 (20년~현재) 2022년  -

kimsfamily.kr

 

🔑 100배 수익 경험자의 노하우가 담긴 치트키 공개 🔑

  1. 네이버, 카카오 임직원들이 듣고 있는 비트코인 강의
  2. 아무도 알려주지 않은 비트코인, 이더리움의 리스크
  3. 블록체인 전문가들도 놓치기 쉬운 비트코인, 이더리움의 핵심 가치
  4. 천배 수익이 가능한 디파이(DeFi), 코인 생태계 지도
  5. 토큰 제작, 1억 연봉의 블록체인 개발자로 거듭나자!

댓글