본문 바로가기
Coding(코딩)/웹 3(Web 3)

[Web 3] NFT 발행하기 전 IPFS에 대해 이해해보자.

by DevKev 2022. 12. 7.

NFT를 테스트넷에 발행하기 앞서, IPFS에 대한 간단한 이해가 필요할 것 같습니다.

 

먼저, 웹(web)은 인터넷을 통해 데이터를 얻는 방법 중 하나입니다.

세상에 존재하는 수많은 데이터는 어딘가에는 저장이 되어있기 때문에 저희가 볼 수 있습니다.

어딘가 라고 하면? 서버가 될 수도 있고, 클라우드 형태가 될 수도 있죠.

 

저희에게 익숙한 채팅 어플 카카오톡이 몇 달 전 다운되었죠.

데이터를 기업에서 소유하고 있는데 데이터 센터에 불이나면 그런 불편한 상황이 종종 야기됩니다.

 

이런 문제점 때문에 AWS, 구글 클라우드 같은 서비스가 생기게 되었습니다.

그럼 우리가 이용하고자 하는 IPFS는 뭘까요?

 

IPFS

IPFS란 InterPlanetary File System의 약자로 P2P 분산형 파일 시스템입니다. 

 

'분산형 파일 시스템'이라는 단어에서 느낄 수 있는 부분이

한 기기에서 데이터가 삭제돼도 다른 기기에 분산된 데이터를 통해 원하는 데이터에 접근할 수 있습니다. 

HTTP와 IPFS를 통한 데이터 통신 [출처: hash.kr]

IPFS는 스탠포드 대학교에서 컴퓨터 공학을 전공한 후안 베넷(Juan Benet)이 고안한 아이디어입니다.

IPFS에 저장된 데이터는 작게 분할돼서 여러 저장 공간에 분산됩니다.

추후 사용자가 데이터를 요청했을 때, 저장 시 할당된 해시(Hash)값 즉 CID(Contents ID)를 활용해  데이터를 가져오게 됩니다.

CID 구조 [출처: Protocol Labs]

이후 IPFS를 다운로드해서도 볼 수 있는데, 데이터를 담고 있는 폴더에도 CID가 부여됩니다.

업로드한 데이터에 접근하는 방법은 https://ipfs.io/ipfs/{CID} 로 접근이 가능합니다.

 

Web 3.0의 시대로 넘어가면서 IPFS는 매우 중요한 역할을 할 것으로 기대되므로

간단하게 IPFS가 뭔지 건드려 봤습니다.

 

다음으로 실습을 하기 위해 IPFS를 다운로드 하겠습니다.

 

IPFS 다운로드

 

1. 다음의 링크에서 데스크탑 앱을 다운로드합니다.

https://ipfs.tech/#install

 

IPFS Powers the Distributed Web

The InterPlanetary File System is a peer-to-peer hypermedia protocol designed to preserve and grow humanity's knowledge by making the web upgradeable, resilient, and more open.

ipfs.tech

2. art 폴더, metadata 폴더를 업로드해줍니다.

 

일단 이 포스트에서는 IPFS가 뭔지 그리고 다운로드까지 진행해봤고,

자세한 사항은 다음 포스트에서 NFT를 발행해보면서 알아보겠습니다.