Ethereum/이더리움 - NFT / contract ERC721
·
Ethereum
이번 포스팅에서는 openzeppelin-solidity 와 같은 라이브러리의 도움 없이 직접 ERC721 컨트랙트를 만들어보고자 한다. 전체적인 흐름과 각각의 컨트랙트 안에서 정의된 함수들의 기능에 대한 설명을 초점으로 해서 작성하려 한다. interface IERC721Metadata interface IERC721 contract ERC721 contract ERC721Enumerable 1. interface IERC721Metadata 우선 ERC-721 컨트랙트 작성에 필요한 인터페이스를 만들어주고자 한다. IERC721Metadata 인터페이스와 IERC721 인터페이스를 만들어줄 것인데 interface IERC721Metadata 는 다음과 같다. /* interface IE..
Ethereum/이더리움 - NFT / Remix로 컨트랙트 배포하기 / OpenSea에 NFT 올리기
·
Ethereum
이번 포스팅에서는 NFT의 개념에 대해 알아보고 Remix를 사용해 테스트넷에 배포한 NFT를 OpenSea 마켓에 올려보면서 전체적인 흐름을 파악해보고자 한다. NFT ?? NFT & 이미지 ?? Remix로 컨트랙트 배포하기 OpenSea에 NFT 올리기 1. NFT ?? NFT는 "대체불가능토큰" ( Non-Fungible Token ) 의 약자로 말 그대로 하나의 토큰을 다른 토큰으로 대체하는 것이 불가능한 토큰을 일컫는다. 기존에 우리가 만들었던 것이 ERC-20 토큰이라면 NFT는 ERC-721 을 표준으로 해서 만들어진 토큰이라고 생각하면 된다. ERC-20이 아닌 ERC-721로 발행되는 토큰은 대체 불가능하며 모두 제 각각의 가치(value)를 갖고 있다. ERC-20 으로 ..
Ethereum/이더리움 - OpenZeppelin / 토큰 컨트랙트 / 스왑 컨트랙트
·
Ethereum
저번 포스팅에서는 interface IERC20 과 ERC20 컨트랙트 , 토큰 컨트랙트를 직접 작성해보면서 JwToken을 발행해보았다. 이번에는 OpenZeppelin을 이용해 토큰 컨트랙트와 스왑 컨트랙트를 작성해보고자 한다. 이전 게시글 참고) 2022.07.22 - [Ethereum] - Ethereum/이더리움 - 인터페이스 & ERC-20 / 토큰 발행하기 Ethereum/이더리움 - 인터페이스 & ERC-20 / 토큰 발행하기 이번 포스팅에서는 토큰을 발행하는 스마트 컨트랙트 코드를 작성하기 위한 전 단계로 인터페이스와 ERC-20에 대해 알아보고자 한다. 그리고 ERC-20을 토대로 실제 토큰 발행까지 진행해보도록 하 bitkunst.tistory.com OpenZeppeli..
Ethereum/이더리움 - 인터페이스 & ERC-20 / 토큰 발행하기
·
Ethereum
이번 포스팅에서는 토큰을 발행하는 스마트 컨트랙트 코드를 작성하기 위한 전 단계로 인터페이스와 ERC-20에 대해 알아보고자 한다. 그리고 ERC-20을 토대로 실제 토큰 발행까지 진행해보도록 하자. 인터페이스 (interface) ERC-20 컨트랙트 JwToken 발행하기 스마트 컨트랙트를 통해 토큰을 발행하기 위해서는 이더리움 네트워크 상에서 발행되는 토큰의 표준, 규격을 가리키는 ERC-20 에 맞춰 코드를 작성해줘야만 한다. 쉽게 말해, 이더리움이 정한 표준 토큰 스펙인 ERC-20에 맞춰 토큰을 발행한다고 생각하면 된다. ERC-20에 맞춰 스마트 컨트랙트를 작성하기에 앞서 Solidity에서 사용되는 interface에 대해 언급하고 넘어갈 필요성이 있다. 1. 인터페이스 (in..
Ethereum/이더리움 - Solidity(솔리디티) function payable
·
Ethereum
이번 포스팅에서는 스마트 컨트랙트 함수에서 사용되는 payable 속성에 대해 알아보고자 한다. Solidity 언어는 코인(coin) 혹은 토큰(token)이라는 가상화폐를 다루는 언어이다. 다른 언어들은 프로그램을 만들기 위한 언어로 탄생했지만 Solidity는 가상화폐라는 돈을 다루기 위한 언어로 탄생했기 때문에 다른 언어와는 다르게 payable이라는 키워드가 존재한다. Solidity 언어에서 payable 키워드는 이더리움 플랫폼 위에서 이더(ether)를 전송하는 스마트 컨트랙트를 작성하기 위해 반드시 사용돼야 하는 키워드이다. 즉, payable을 작성한 함수에서만 이더(ether)를 보낼 수 있고 payable을 작성하지 않은 함수에서는 이더(ether)를 보낼 수 없다. 코드를 살펴보면..