SwapSpace – 크로스체인 암호화폐 스왑

IPFS란 무엇인가?

John Martin

,

업데이트됨: ,3분

IPFS(InterPlanetary File System)는 피어들이 하나의 분산 파일 시스템에서 데이터를 저장하고 배포할 수 있게 해주는 오픈 소스 하이퍼미디어 프로토콜이다.

이 결정을 내린 사람 미국 스타트업 Protocol Labs의 설립자이자 대표인 Juan Benet는 이를 "분산된 영구 웹"이라고 불렀는데, 이는 IPFS에서 만들어진 사이트는 누구도 절대 폐쇄할 수 없다는 점을 염두에 둔 표현이다.

그는 백서 프로젝트에서 "IPFS는 콘텐츠 주소 지정 하이퍼링크를 갖춘 고성능 블록 스토리지 모델"이라고 설명했다.

인터플래너터리 파일 시스템은 인터넷을 더 빠르고, 더 안전하며, 더 개방적으로 만들기 위해 설계된 P2P(peer-to-peer) 하이퍼미디어 프로토콜이다.

이는 최대 100GB 크기의 과학 데이터 세트를 노드 간 전송하기 위해 만들어졌다. Benet는 네트워크에서 정보를 전송하고 저장하는 현대적인 방식이 느리고, 중앙화되어 있으며, 쉽게 해킹될 수 있다고 판단했다. 이러한 관찰을 바탕으로 Benet는 다음과 같은 측면에서 IPFS로 시스템을 개선하기로 결정했다:

  • 속도: 현재 하이퍼텍스트 전송 프로토콜(HTTP)은 클라이언트-서버(인터넷) 컴퓨팅 모델에서 요청-응답 프로토콜의 가장 일반적인 형태다. 그러나 HTTP는 단 하나의 서버에서만 데이터를 다운로드하는 반면, P2P IPFS는 여러 노드(사용자)에서 동시에 조각을 가져오므로 상당한 대역폭 절감 효과가 있다.
  • 효율성: 탈중앙화된 IPFS 구조는 BitTorrent와 유사하게 동작한다. 노드들은 데이터(파일, 동영상, 이미지 등)의 사본을 저장한 뒤, 파일의 고유 식별 코드인 해시 요청에 따라 이를 사용자에게 전송한다. 이는 시딩과 유사하다. 데이터가 처음 IPFS에 올라갈 때는 하나의 해시를 가진 단 하나의 사본만 생성되므로 처리해야 할 정보가 더 적고 필요한 저장 공간도 더 적다. 또한 이는 IPFS가 현대 시스템만큼 인터넷 연결에 의존하지 않음을 의미하며, 그만큼 정보 접근성이 높아진다.
  • 보안: IPFS는 데이터가 수정되거나 변조되지 않았는지 보장하기 위해 두 가지 시스템을 사용한다. 첫째, 시스템에 올라간 모든 데이터는 변경할 수 없다. 둘째, 각 파일에는 고유한 지문해시가 부여된다. 사용자는 자신이 찾고 있던 해시 코드와 받은 해시 코드를 비교할 수 있다. 두 코드가 동일하다면 내부 정보도 동일하다.
  • 탈중앙화: P2P IPFS 시스템은 검열 여부와 관계없이 정보의 가용성을 보장한다. 현재 인터넷은 매우 중앙화되어 있으며, Amazon Web Services나 Google Cloud 같은 개별 기업이 인터넷에 게시된 모든 데이터를 저장하는 거대한 서버 팜을 소유하고 있다. 정부나 대기업은 중국과 북한 등 일부 국가에서처럼 우리가 접근할 수 있는 정보를 검열하거나 아예 지워버릴 수 있다. 탈중앙화되고 신뢰할 수 있는 P2P를 사용함으로써 IPFS는 모든 사용자에게 데이터 가용성을 보장한다.

IPFS는 어떻게 작동하는가?

IPFS는 블록체인 기술을 기반으로 하며, 이는 탈중앙화되어 있고 신뢰를 필요로 하지 않으며, 네트워크를 통해 정보를 저장하고 교환하기 위해 노드에 의존한다는 뜻이다. 예를 들어 암호화폐에서 노드가 정보를 검증하고 저장하듯, IPFS는 자체 노드를 사용해 네트워크에서 정보(파일, 동영상 등)를 교환하고 저장한다. 이는 다음과 같은 방식으로 이루어진다:

  • 정보 검색: 현재 서버는 URL을 기반으로 정보를 검색하며, URL은 인터넷에 필요한 정보가 어디에 있는지 알려준다(예: 웹사이트). 이는 서버가 연결이 끊기거나 해킹되었을 때 문제가 될 수 있다. IPFS는 고유한 해시 코드를 사용해 파일 콘텐츠 자체를 찾음으로써 서버를 통한 이 경로를 우회한다. 해시 코드는 파일의 위치가 아니라, 찾고 있는 파일 자체를 직접 참조한다.
  • 정보 저장 및 보호: 파일은 블록체인상의 IPFS 데이터 객체에 저장된다. 각 데이터 객체는 최대 256KB의 데이터를 포함할 수 있지만, 더 많은 데이터를 저장하기 위해 이후의 IPFS 데이터 객체와 연결될 수 있다. 따라서 전체 프로젝트는 블록체인을 통해 서로 연결된 다양한 IPFS 데이터 객체에 저장되며, 이로 인해 프로젝트를 해킹하거나 삭제하기가 어렵다.
  • 데이터 변경 이력 추적: IPFS에 저장된 데이터는 변경 불가능하지만, 버전 관리는 가능하다. 즉, 사용자는 작업하면서 파일의 향상된 버전을 다운로드할 수 있다. 각 파일에는 해시 코드가 부여되고 커밋 객체로 로드된다. 그런 다음 데이터 객체와 같은 방식으로 서로 연결되어 로드 순서를 추적할 수 있으며, 이를 통해 정보의 진행 상황(예: 논문, 소설, 연구 등의 버전)을 확인할 수 있다.

정보가 IPFS에 로드되면, 시스템에서 객체, 파일 또는 사용자 데이터에 접근하기 위한 주소는 서버가 아니라 고유한 암호학적 해시 식별자(CID)에 바인딩되어 형성된다.

파일을 다시 업로드하면 CID는 변경되지 않으며, 업데이트된 파일 버전에는 새로운 해시 ID가 할당된다. 사용자가 파일의 초기 버전에 접근할 수 있었고 이후 버전도 사용할 수 있도록 하기 위해서는 InterPlanetary Naming System(IPNS) 서비스 전통적인 인터넷의 DNS에 해당하는 것이 적용된다.

IPFS는 어떻게 사용하나?

IPFS를 사용하면 중앙화된 측면 없이 어디서나 파일(동영상, 웹사이트, 기사, 연구 등)에 접근할 수 있다. 이는 더 빠르고, 더 안전하며, 더 개방적이다. 사용자는 데이터가 원본에서 직접 접근되기 때문에 그렇지 않으면 검열될 수 있는 정보에도 접근할 수 있다. 또한 인터넷 연결이 좋지 않은 지역에서도 이러한 정보에 접근할 수 있어, 더 가난하거나 더 부패한 국가에 추가적인 힘을 실어줄 수 있다.

특히 과학자나 기업에 유용한 또 다른 기능은 작업의 진행 상황을 추적할 수 있다는 점이다. IPFS는 파일의 각 버전을 이전 버전과 연결해 선형적 추적을 유지하기 때문이다. 마지막으로 InterPlanetary라는 이름은 미래에는 이 정보가 행성 간에도 전송될 수 있음을 의미한다. 현재 좋은 조건에서 화성에서 지구로 정보 요청을 보내는 데는 4분이 걸리고, 응답을 다시 보내는 데도 4분에 처리 시간 몇 밀리초가 추가된다. 그러나 콘텐츠가 이미 한 번 화성에 내려받아져 있다면 파일은 이미 그곳에 저장되어 있으므로 즉시 다운로드할 수 있다. 이런 점에서 IPFS는 진정한 미래의 네트워크다.

IPFS는 아직 개발 중이며 오류와 숨겨진 취약점을 포함할 수 있다. 그러나 중요한 정보를 저장하고 정적 사이트를 만드는 데 유용할 수 있다고 여겨진다.

실제로 IPFS를 사용하면 데이터 전송 속도와 네트워크 처리량이 향상되고, 분산 구조 덕분에 노드의 작업 부담이 줄어들며, 검열을 우회할 수 있고, DDoS 공격과 "죽은" 링크의 발생을 피할 수 있다. 시스템에는 단일 장애 지점이 없으며, 노드들은 서로를 신뢰할 필요가 없다. 또한 이론적으로 IPFS의 콘텐츠는 영구적으로 저장될 수 있다.

2015년 IPFS를 지원한 최초의 웹 리소스는 Neocities 호스팅 서비스였다. IPFS를 기반으로 탈중앙화 비디오 플랫폼 DTube, 온라인 거래 플랫폼 OpenBazaar 및 기타 솔루션이 만들어졌다.

암호화폐 거래에 추가된 IPFS 링크를 사용하면 블록체인에서 변경으로부터 보호되는 방대한 양의 데이터를 무겁게 하지 않고 저장할 수 있다. 예를 들어, 올해 봄 Julian Assange가 체포된 이후 Bitcoin Cash의 한 개발자는 Wikileaks.cash 웹사이트에 IPFS 형태로, 그리고 BCH 블록체인의 링크 형태로 Wikileaks 문서 전체 아카이브 약 30GB를 게시했다.

2014년부터 Protocol Labs 개발팀은 IPFS를 기반으로 한 탈중앙화 파일 호스팅 Filecoin을 만드는 작업도 진행해 왔다. 이 프로젝트는 테스트 네트워크와 메인 네트워크 출시를 준비 중이지만, 2018년 이미 Huang Benet는 자신의 회사의 성과가 TRON의 창작자들에게 영감을 주었다는 사실을 발견했다. Filecoin과 IPFS 문서의 몇 장이 약간 수정된 형태로 이 중국 프로젝트의 백서에 들어간 것이다. 그리고 2019년 봄, TRON은 BitTorrent를 기반으로 한 자체 IPFS 버전 BTFS를 출시할 계획이라고 발표했다.

IFPS 노드를 시작하는 방법

Protocol Labs의 공식 소프트웨어 패키지 IPFS Desktop. Windows, Mac, Ubuntu에서 사용할 수 있으며, 사이트를 설치하고 관리할 수 있어 네트워크에 파일을 추가할 수 있다.

한편, IPFS Companion은 Chrome, Edge, Brave, Firefox, Opera에서 사용할 수 있는 웹 브라우저 추가 기능이다. 이를 통해 브라우저에서 직접 IPFS desktop과 설치된 IPFS host와 상호작용할 수 있다. 또한 처음에는 지원하지 않는 브라우저를 위해 ipfs:// 주소 지원도 추가한다.

주요 관점

IPFS는 탈중앙화된 P2P 파일 시스템 아키텍처를 제공함으로써 업계의 확장을 돕는 암호화폐 플랫폼 중 하나이며, 이는 암호화폐 플랫폼의 성장을 지원하기 위한 기반으로 필요하다.

Juan Benet는 "IPFS의 콘텐츠는 데이터에 대한 통제력을 줄이지 않고, 위험에 빠뜨리지 않으면서도 어떤 신뢰할 수 없는 중개자도 통과할 수 있다"고 말했다.

그의 견해에 따르면 IPFS와 블록체인 기술의 통합은 이상적인 것에 가깝다. 블록체인 거래 내부에서 IPFS를 사용하면 변하지 않는 고정 링크를 배치할 수 있다.

타임스탬프는 데이터를 체인에 저장할 필요 없이 보호해 주며, 이는 블록체인을 확장하는 데 도움이 되는 체인 밖의 안전한 솔루션을 위한 편리한 방법이다.

bytwork.com에 따르면, 이미 많은 Web3 서비스가 다양한 애플리케이션 전반에서 IPFS를 사용하고 있다.

  • Filecoin은 IPFS를 기반으로 하는 Protocol Labs의 독점 분산 스토리지 영역 네트워크(SAN)다. 이는 노드 운영자가 암호화폐 보상을 통해 파일을 배치하도록 유도한다.
  • Audius는 오디오 파일 호스팅에 IPFS를 사용하는 탈중앙화 음악 서비스다.
  • Pinata는 NFT 호스팅 서비스로, Realistic 및 Sorare 같은 파트너를 위해 암호화 수집품을 백업하는 데 IPFS를 사용한다.
  • OpenBazaar는 IPFS가 관리하는 P2P 전자상거래 플랫폼이다.
  • Morpheus.Network는 IPFS를 사용하는 네트워크 공급망 서비스이기도 하다.

공유:

관련 글

더 궁금한가요?

뉴스레터에 참여하여 정보를 얻고 역량을 강화하세요.