
지난 2년 동안 NFT 열풍이 전 세계를 휩쓸었습니다. 다양한 블록체인에서 NFT를 발행하는 것이 보편화되었습니다. 그러나 이러한 NFT 자산의 저장은 종종 간과됩니다. Interplanetary File System으로도 알려진 IPFS는 NFT 자산을 저장하기 위한 공통 표준이 되었습니다.
종종 간과되는 세부 사항은 IPFS 자체가 스토리지 네트워크가 아니라는 것입니다. 데이터 라우팅 및 전송 프로토콜에 가깝습니다. IPFS 네트워크는 정보를 교환하는 노드 모음입니다. 파일 항목은 공용 IPFS DHT(분산 해시 테이블)에 "고정"되어 네트워크의 다른 노드에 어떤 호스트가 어떤 파일을 저장하고 있는지 알 수 있습니다.
IPFS 생태계에는 많은 퍼블릭 게이트웨이가 있습니다. 이러한 게이트웨이 중 일부는 파일 업로드를 허용하지만 일반적으로 파일이 온라인 상태로 유지된다는 보장은 없습니다. 파일이 IPFS 노드에 의해 명시적으로 고정되지 않는 한 다음에 가비지 수집 프로세스가 실행될 때 파일이 삭제됩니다. 이로 인해 NFT 스토리지와 관련된 몇 가지 문제가 노출됩니다.
이를 돕기 위해 몇 가지 다른 피닝 공급자가 등장했습니다. 이러한 공급자는 유료로 파일 업로드를 허용하고 파일을 고정하도록 제안합니다.
그러나 이것은 새로운 질문을 제기합니다. 이러한 파일은 실제로 어디에 저장됩니까? 개발자는 이 문제를 연구하는 데 많은 시간을 할애했으며 거의 10억 개에 가까운 파일을 분석하여 다음과 같은 문제를 발견했습니다.
1. 대부분의 IPFS 피닝 공급자는 백그라운드에서 Amazon S3 및 기타 중앙 집중식 객체 스토리지 서비스를 사용합니다. IPFS 서버의 "데이터 저장소"는 간단한 플러그인을 사용하여 S3를 가리킬 수 있습니다.
2. AWS S3를 사용하고 있기 때문에 공급자는 TB당 $150 이상을 청구합니다!
3. AWS S3가 실패하면 IPFS 서버도 실패합니다. 데이터가 어딘가에 캐시되지 않는 한 IPFS CID 링크에 더 이상 액세스할 수 없습니다. 이로 인해 NFT의 "러그 풀"과 같은 문제가 발생할 수 있습니다.
4. 이 구성의 시스템은 또한 AWS S3에 액세스하는 매우 독특한 방법을 도입합니다. 우리가 AWS에 너무 의존한다면 단순한 HTTP URL을 사용하지 않는 이유는 무엇입니까?
개발자는 위에 나열된 문제에 대한 해결책을 제시했으며 전체 암호화 생태계에 도움이 될 것입니다. 간단히 말해서 Web3로 Web3를 구축하십시오.
Filebase를 사용하여 IPFS에 고정된 모든 파일은 실제로 최고의 분산 스토리지 네트워크 중 하나인 Sia에 저장됩니다. 이는 IPFS 노드의 데이터 스토리지 계층이 가용성이 높고 가장 중요하게는 지리적으로 중복되는 환경을 만듭니다. 스토리지에 분산형 네트워크를 사용함으로써 우리는 더 이상 블록 스토리지 볼륨(AWS EBS) 또는 중앙 집중식 스토리지 버킷(AWS S3)을 위해 클라우드 공급자에 의존하지 않습니다.
IPFS에 데이터를 고정하는 방법은 무엇입니까? 쉽습니다. 두 가지 옵션이 있습니다.
1. Filebase 대시보드에서 간단한 끌어서 놓기 인터페이스 사용
2. 간단한 S3 호환 API 사용
파일을 업로드하면 IPFS CID(Content Identifier)가 반환됩니다. 그런 다음 이 CID를 사용하여 자체 IPFS 노드 또는 공용 인터넷의 다른 IPFS 게이트웨이에서 데이터에 액세스할 수 있습니다. CID는 대시보드에 명확하게 표시되며 프로그래밍 방식으로 검색할 수도 있습니다.
대시보드에서 IPFS 버킷을 열면 CID 열이 있습니다. 아무 CID나 클릭하면 자동으로 클립보드에 복사됩니다.
개체 개요 페이지에는 다른 세부 정보와 함께 CID도 표시됩니다.
S3 호환 API를 사용하는 경우 PutObject 호출에 대한 응답으로 CID가 반환됩니다. 예를 들어 다음 AWS CLI 명령을 실행하는 경우:
응답은 아래와 같습니다. 편의를 위해 해당 응답 헤더가 강조 표시됩니다.
또한 언제든지 HeadObject API를 호출하여 CID를 얻을 수 있습니다.
이제 IPFS 기능이 활성화되었으므로 개발자는 이 통합을 계속해서 구축할 계획입니다!