NFT를 만드는 방법은 크게 3가지로 나뉜다.
1. Ethereum 네트워크를 활용하여
2. Polygon 네트워크를 활용하여
3. Klaytn 네트워크를 활용하여
각각의 장단점이 있는데
시장 크기 : ETH > MATIC > KLAY
수수료(낮은 순) : MATIC > KLAY > ETH
정도로 요약할 수 있을 것 같다.
Solidity 공부도 할겸 각각의 네트워크도 사용해볼겸 NFT도 발행해볼겸 각각의 네트워크(메인넷과 테스트넷 모두)에서 NFT를 발행하는 과정을 기록해보고자 한다.
그 첫번째 순서는 'Ethereum Network를 활용한 NFT 만들기'이며 https://ethereum.org/en/developers/tutorials/how-to-write-and-deploy-an-nft/를 참고하였다.
0. 준비하기
만들기 위해서
- MetaMask
- Solidity
- Hardhat
- Pinata
- Alchemy
가 필요하다고 하는데 내가 판단한 나의 이해도는 다음과 같다
MetaMask ●●●●○
- 코인 전송 가능
- 멀티체인 활용 불가
Solidity ●○○○○
- 이더리움 기반 언어
- 문법 익숙함
- 직접 작성해본 경험 없음
- 코드 활용 가능할 것 같음
Hardhat ○○○○○
- 이름만 들어봄
Pinata ●●●○○
- NFT 만들 때 ipfs에 데이터 올리는 것으로 활용해봄
Alchemy ●○○○○
- 바이낸스에서 매매 경험 다수 있음
이렇게 정리하고 보니 이야기가 길어질 것 같다! 순서를 나누어서 글을 작성하면 좋을 것 같아 이 게시글에는 내가 모르는 것을 정리해두는 것을 목표로 해야할 것 같다.
1. 각각에 대한 이해
1-1. Hardhat
우선 전혀 모르는 Hardhat을 알기 위해 ChatGPT한테 물어봤다!
약간 대충 설명을 요약하자면 이더리움 스마트 컨트랙트 개발 환경이라는 것 같다! 잘은 모르지만 비슷한 것으로 Remix가 있었던 것 같아서 같은 것인가 싶어 물어보았다.
아닌가보다...ㅎㅎ 개발 환경이라고 해서 IDE를 떠올렸는데 IDE와 DE는 NFT와 FT의 차이만큼이나 큰 차이를 가지는걸지도 모르겠다. 언젠가 이 부분에 대한 정리도 해봐야겠다.
그래서 요약하자면 Hardhat은
- 이더리움 스마트 컨트랙트를 위한 개발 환경이고
- 개발 워크플로우에 중점을 두고 컴파일, 테스트 실행, 배포와 같은 작업을 처리하는 작업 실행자이다
이 설명만으로는 이해가 부족해서 직접 마주해보려고한다.
1-2. Hardhat 마주하기
우선 Hardhat 문서 링크를 들어간다.
https://hardhat.org/hardhat-runner/docs/guides/project-setup
Hardhat | Ethereum development environment for professionals by Nomic Foundation
Hardhat is an Ethereum development environment. Compile your contracts and run them on a development network. Get Solidity stack traces, console.log and more.
hardhat.org
첫 글이 WSL2를 쓰라는 것... 문제는 WSL가 뭔지 모른다는 것이기에 알아보려고 했는데 꽤 글이 긴 것 같다...
Windows Subsystem for Linux 2의 약자이며 윈도우의 가상화 기능을 활용해서 윈도우 위에서 리눅스를 사용할 수 있게 해주는 것이라고 한다.
그렇다면 내가 알아야하는 것은 'Windows와 Linux의 차이점'이 될 것 같다.
일단 나는 핑프이기에 일단 ChatGPT한테 시켰고 굉장히 긴 답변을 받았다.
요약은 다음과 같다.
Windows | Linux | |
Open Source? | Proprietary | Open Source |
Cost? | Pay | Free |
User Interface | Consistent | Various |
Software Compatibility | Relatively high | Relatively low |
Command Line Interface | Relatively weak | Relatively powerful |
Security and Stability | Relatively bad | Relatively good |
Customizability and Flexibility | Relatively low | Relatively high |
아무튼.... 대충 차이를 알았으니 시작해보자!
*미션 속 미션 : WSL 설치하기!
1. PowerShell이나 Windows Command Prompt를 관리자 모드로 연다.
2. $wsl --install을 입력한다.
3. 설치를 기다린다.(한 30분은 걸린듯 ㄷㄷ)
4. 설치가 완료되고 다시 껐다 킨다!
5. 다시 키면 이런게 생긴다! 유저 이름을 치라고 해서 Meganpark으로 쳤다(대소문자 주의!)
(
아 ctrl + CC 눌렀다가 꺼져버렸다.... ㅠ
설정하고 다시 껏다키면 되는줄 알았는데 그것도 안된다ㅜ
하...
이렇게 뜨는 모습을 보니 UNIX username 안쳤다고 나중에 억까할 것 같은데 일단 넘어가야겠다...
)
그렇게 설치를 확인해보았다.
설치가 된 것 같다!
이제 이것을 활용해야하는데 이 과정에서 내가 하나라도 실수하면 또 컴퓨터가 억까를 할 예정이기에 친철한 chatGPT한테 물어봐야한다.... 그렇게 받은 답변은
라고 하는데 일단 해보도록 하겠다!
1. $sudo apt update
2. $sudo apt install nodejs npm
Y를 안누르면 안넘어갈테니... Y
3. 완료!
하지만? 내가 만든 디렉토리로 이동하는 곳에서 막혀버렸다.....
대부분의 프로젝트가 이런 환경설정에서 막히는 것 같은데 일단은 하라는 것을 해봐야겠다.
안되면 이 곳으로 돌아오면 되니 너무 걱정하지 않고 출발해봐야겠다!
'블록체인' 카테고리의 다른 글
Klaytn Network로 NFT를 만드는 코드 (1) | 2023.09.19 |
---|---|
번외) External Owned Accouts & Contract Accounts (0) | 2023.07.21 |
NFT 만들기 _ Ethereum (2) (0) | 2023.07.18 |
잃어버린 Polygon 찾기 -1- (0) | 2023.07.14 |