반응형

오늘은 솔리디티툴인 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
반응형

 비트코인과 가상자산의 실체라는 책을 한 권 모두를 읽고 각각의 장에서는 무엇이 중점적으로 다뤄진 내용인지 내용적인 측면을 읽고 그림을 보면서 책에 대한 전반적인 내용을 설명하겠다. 또한 이 책을 읽고 많은 지식들이 공유되었으면 하는 바람으로 글을 써봅니다. 책을 읽고 중요한 핵심 내용 이외에 내용들은 빼고 간략하고 그림을 통해 이해하기 쉽게 설명해보도록 하겠다. 

 

1.1장 비트코인과 블록 비교 

 기본적으로 비트코인은 블록과 체인의 합성어로 이해할 수 있다. 과거에 비트코인이 처음 나오고 제네시스 블록(흔히 최초의 비트코인 블록이라고 한다)이 생성되고 2020-05-11년 기준 643000번 블록 기준으로 현재까지 생성되었다. 과거의 최초의 블록을 채굴(블록을 만들었을 때) 최초의 보조금은 50비트코인이고, 643000번째 블록의 보조금은 6.25로 상당한 차이가 있는 것을 볼 수 있다. 블록을 만들면(채굴하면) 그 대가로 만든 이는 대가로 보상금이라는 비트코인을 얻는다. 현재까지 많은 반감기를 거치면서 비트코인의 채굴 보상금(보조금 + 수수료)은 적어진 것을 알 수 있다.

 

1.2장 블록과 체인

 

블록: 동시에 처리하는 논리적 데이터 단위를 의미

비트코인 블록: 거래내역을 기록하는 저장 단위 

 

비트코인 블록은 누구나 만들 수 있지만 아무나 만들 수는 없다. 이유는 해시 퍼즐이라고 부르는 퀴즈를 풀어야 하기때문이다. 또한 많은 자원이 들기 때문에 블록을 만드는 것은 쉽지 않다. 블록을 연결하여 체인처럼 연결하였다고 하여 블록체인이라고 부른다. 

 

1.3장 비트코인 단위 종류

 1.3.1 비트코인 단위 종류

 1. 사토시

 2. 마이크로 - 비트코인

 3. 밀리 - 비트코인

 4. BTC

 

비트코인갯수 BTC 밀리-비트코인 마이크로- 비트코인 사토시
1 1BTC 1밀리-비트코인 1마이크로 - 비트코인 1sat
1 1BTC
(= 1sat)
0.001BTC
(= 100000sat)
0.00001BTC
(= 1000sat)
0.00000001
BTC

 

 1.3.2 비트코인 최대 매장량: 2100만 BTC

비트코인은 오직 블록이 새로 생성될 때만 발행되고 블록을 만든 사람에게 지급한다. 블록 생성은 '채굴'을 통한 보상금을 확보하기 위한 행위이다. 채굴과 블록 만들기는 동의어이다. 블록을 생성하기 위해서는 일정 시간 이상 계산 자원을 소비해야 하는데 이를 작업 증명(Prove-Of-Work)이라고 한다. 작업 증명이란 누군가가 블록을 만들어 주어야 하는데, 블록을 만들려면 많은 자원을 투입할 만한 적절한 동기부여가 필요한데 이것이 바로 보상금 개념이다. 앞서 최초 블록과 함께 탄생한 보조금이 50 btc라고 설명했는데 21만 개의 블록이 만들어질 때마다 보조금이 절반으로 줄어들도록 설계돼 있다. 

 

이 지표는 비트코인의 총 누적 생산량으로 2140년이 되면 모든 비트코인 채굴이 중단 될 것이라고 한다. 또한 2140년 채굴 보상은 단지 1 사토시 밖에 되지 않는다. 

 

1.4장 사이버 펑크 

 

1975년 IBM은 미국국립표준기술국의 요청에 따라 새로운 암호체계인 DES를 연구했고, 이 암호화 기술은 민간에도 공개, 기존의 암호화 기술은 군이나 정부가 독점한 상태로 개인정보 악용, 스팸메일의 난립과 정부에 의한 프라이버시 침해에 환멸을 느낀 사람들이 프라이버시를 보호하고자 하는 움직임이 발생하였다. 이는 사이버펑크의 탄생의 배경이 된다. 

사이버 펑크는 '컴퓨터 네트워크를 사용할 때 특히 정부기관으로부터 프라이버시를 보호하기 위해 암호화 기술을 사용하는 사람'을 일컫는다.

 

* 데이비드 차움 - 암호화 퍼즐 기반 새로운 화폐

* 웨이 다이 - 분산 전자 캐리 시스템 제안

* 닉 사보 - 비트코인 채굴 모델의 기본 개념 제공

* 아담 백 - 작업증명 기반의 해시 캐시 제안

* 할 피니 - 재사용 가능한 작업 증명 R-POW 제시

>> 사이버펑크는 비트코인의 원형이 된 다양한 거래 시스템을 제안하였다. 

 

비트코인의 목적: 비트코인의 명백한 목적은 프라이버시 보호 금융기관을 배제한 어나니머스 방식을 택함, 절대 익명을 의미한다. 

 

1.5장 지급 결제 시스템

 

1. 지급: A가 40만원 송금 의뢰 

2. 청산: 금융 결제원에서 A은행과 D은행 간에 서로 주고받아야 할 계산 

3. 결제: 한국은행에 각은행이 개설해 둔 당좌예금 계좌가 있다면 은행은 금융 결제원이 계산한 최종 청산 금액에 A은행에 당좌 예금이 D은행으로 이동한다. 

 

 

 

책에 대하여 간단하게 1장을 알아보았다. 다음 글에서는 2장에 대해 책을 알아보겠다. 

반응형
반응형

 

비트코인과 블록체인에 대하여 알아보기 위하여 블록체인 책을 사서 읽어보고 다음 글 부턴 책에 대한 리뷰를 하겠습니다. 책을 읽고 설명하면서 블록체인에 대하여 부족했던 지식들을 쌓아 보겠습니다. 

반응형
반응형

  요즘 핫한 NFT를 민팅하는 방법을 알아 보겠다. 

민팅이란 동전과 같은 법정화폐를 주조할떄의 '주조'를 뜻하는 영어단어이다. NFT란 디지털화폐로 발행, 주조, 민팅이라는 단어가 적용된다. 쉽게 말해 민팅이란 어떠한 작품이나 증명서를 발행하고 판매하는 것이라고 생각하면 쉽게 이해할 수 있다. 오늘은 이러한 NFT 민팅을 하는 방법을 알아 보겠다.

  아래 작품은 2021년 3월 11일 미국 크리스티 경매에서 '매일: 첫 5000일'(Everydays: The First 5000 Days)’이라는 작품이 6930만달러(약 785억원)에 팔린 작품이다. 이 작품은 ‘비플’이라는 예명의 디지털 아티스트 마이크 윈켈만이 NFT 암호화 기술을 적용해 제작한 콜라주 작품으로 과거에는 기존의 디지털아트 범주가 블록체인과 암호화폐를 적용한 새로운 디지털아트인 NFT로 탄생하고 거래되게 되었다. 오늘은 이러한 민팅을 통해 누구나 쉽고 간단하게 NFT를 발행하는 법을 알아 보겠다.   

 

NFT발행의 대표 플랫폼인 오픈씨(OpenSea)를 사용한 민팅을 해보겠다.

 

1.  민팅에 앞서 디지털월렛인 메타마스크를 연동해야하기 때문에 메타마스크의 가입이 필요하다. 

2. 또한 민팅을 발행하기 위해선 이더리움의 가스비(수수료 개념)가 필요하기 때문에 메타마스크에 소량의 이더리움이 필요하다. 

 

3. Opensea에 로그인후, 이더리움 디지털 지갑 연결 

 

메타마스크와 Opensea연동

4. 오른쪽 상단의 지갑 이모티콘 옆에 계정에서 My Collections를 선택하고 Create a collection을 누른다. 

 

5. 자신이 올리고자 하는 NFT컬렉션 업로드하고 Name에 컬렉션의 제목, Description에 작품의 설명을 써준다. 아래에는 등록할 아이템의 기본 블록체인을 설정하여준다. (이 과정에서는 NFT를 만드는게 아닌 자신이 저장할 컬렉션 목록을 만드는 과정이다). 마지막으로 CREATE 버튼을 누르면 NFT저장할 Collections을 만들었다

6. OpenSea에서 My Collections에서 방금 만든 whiteapple의 오른쪽 상단에 마우스를 올리고 items를 클릭

7. Add Item 클릭

 

8. NFT를 만들고자 하는 파일을 업로드 한 후, NFT 이름과 NFT의 정보들을 기입한다. 

9. NFT에 대한 추가 정보 기입, 구매자에게만 보일수 있는 정보가 있으면 Unlockable Content 기입 후 create 버튼 클릭

 

10. Create new item 이 뜨면 민팅완료 이제 visit를 클릭해보자

 

11. 우측 상단의 판매하기 클릭

 

 

12. 원하는 판매 금액을 가상화폐로 기입 하고 post your listing 클릭

 

13. 해당 NFT의 판매 정보를 올리기 위해 디지털 지갑으로 거래를 승인하면 NFT가 OpenSea에 판매됩니다

14. WhiteApple 하단의 item을 들어가면 현재 팔리고 있는 NFT 작품들을 볼수 있다. 

15. OpenSea에서 현재 거래되고있는 NFT작품을 사고 팔 수 있다.

반응형

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

엑시 인피니티에 대해 알아보자! - NFT  (0) 2021.07.19
NFT에 대해 알아봅시다!  (0) 2021.07.17

+ Recent posts