What is It?

IPFS là một tập các giao thức giúp tổ chức và trao đổi dữ liệu, hoạt động dựa trên nguyên lý content-addressing và mạng ngang hàng. IPFS thường được dùng để publish dữ liệu (files, directories, websites) một cách phân tán.

Về bản chất, IPFS là một giao thức lưu trữ chứ không phải là storage provider.

Khái niệm IPFS có thể có nhiều nghĩa:

  • Implementation của nó, chẳng hạn như Kubo (viết bằng Go).
  • Một mạng phân tán bao gồm nhiều IPFS node.
  • Tập các giao thức giúp tổ chức và trao đổi dữ liệu.

Các node ở trong mạng lưới chia sẻ tài nguyên tương tự như BitTorrent. Tức là, nếu có ai đó chạy IPFS và upload tài nguyên lên mạng lưới, thì tài nguyên đó có thể được xem và tải về bởi bất kỳ ai có tham gia mạng lưới.

Bên cạnh đó, do dữ liệu được phân tán nên sẽ không gặp phải vấn đề single point of failure. Hơn thế nữa, dữ liệu được định danh bằng một mã hash dựa trên nội dung của nó nên IPFS sẽ giúp tránh được làm giả dữ liệu cũng như là trùng lắp dữ liệu.

Các node có thể lựa chọn “pin” một số tài nguyên để duy trì khả năng truy cập vào chúng. Do các node không bắt buộc pin một tài nguyên nào đó nên tính khả dụng của tài nguyên là không được đảm bảo khi chỉ có một mình host của chúng ta pin và host đó bị down. Để đảm bảo dữ liệu luôn có sẵn, ta có thể dùng các dịch vụ pinning chẳng hạn như Pinata | Crypto’s file storage.

Important

Network của IPFS khác blockchain:

  • Nó không thể thực hiện tính toán
  • Mỗi node không lưu một bản sao của blockchain mà có quyền quyết định sẽ lưu dữ liệu gì

IPFS Gateway

Chúng ta vẫn có thể truy vấn dữ liệu thông qua các IPFS HTTP Gateway (cách làm này bỏ đi tính phi tập trung của IPFS): Public Gateway Checker | IPFS

How IPFS Works

IPFS có ba trách nhiệm chính là:

Implementation

Một implementation của IPFS protocol mà có sử dụng incentive layer là Filecoin.

Resources