IPFS là gì? Hệ thống tệp liên hành tinh: Hướng dẫn hoàn chỉnh cho người mới bắt đầu
Tóm tắt
Giới thiệu
IPFS là viết tắt của Hệ thống tệp liên hành tinh và là một giao thức siêu phương tiện phân tán ngang hàng, mã nguồn mở, được thiết kế để hoạt động như một hệ thống tệp phổ biến cho tất cả các thiết bị máy tính. Đây là một dự án phức tạp và rất tham vọng với một số ý nghĩa nghiêm trọng và sâu sắc đối với sự phát triển và cấu trúc trong tương lai của Internet như chúng ta đã biết.
Nói ngắn gọn:
- IPFS là mạng phi tập trung ngang hàng cho phép người dùng sao lưu các tệp và trang web bằng cách lưu trữ chúng trên nhiều trang.
- Điều này đảm bảo rằng nội dung có khả năng chống lại sự kiểm duyệt và các điểm lỗi tập trung như sự cố máy chủ hoặc các cuộc tấn công phối hợp.
Khi một trang web gặp sự cố, thường là do lỗi dịch vụ tập trung, chẳng hạn như sự cố với máy chủ lưu trữ hoặc Hệ thống tên miền (DNS) hoặc cuộc tấn công DDOS phân tán. Đôi khi nó là vấn đề kiểm duyệt trên Internet, đặc biệt là ở các quốc gia ngăn chặn một số nội dung để che giấu nội dung đó với công dân của họ. IPFS là một mạng chia sẻ tệp ngang hàng phi tập trung, mã nguồn mở và dịch vụ Web3 được thiết kế để khắc phục các điểm lỗi tập trung và các nỗ lực kiểm duyệt để đảm bảo truy cập web miễn phí cho mọi người. Đây cũng là một cách để sao lưu các tệp kỹ thuật số như các bộ sưu tập tiền điện tử không thể thay thế ( NFT ) để chúng không đột ngột biến mất khỏi Internet.
Trong bài viết này, bạn sẽ tìm hiểu cách thức hoạt động của IPFS và cách bạn có thể sử dụng nó.
IPFS được tạo ra như thế nào?
Sự lặp lại hiện tại của Internet không phi tập trung như quan niệm về mặt lý tưởng và ban đầu. Nó cũng được xây dựng dựa trên một số giao thức cũ đã dẫn đến rất nhiều vấn đề. Các vấn đề được IPFS giải quyết có liên quan đến các vấn đề với giao thức HTTP Internet hiện tại.
Nếu bạn không quen với chức năng của HTTP trong mối quan hệ với Internet, về cơ bản, nó làm nền tảng cho việc truyền dữ liệu trên toàn bộ Internet. HTTP được phát minh vào năm 1991, được các trình duyệt web thông qua vào năm 1996 và về cơ bản nó xác định cách thức truyền tải thông điệp qua internet, cũng như cách trình duyệt phản hồi các lệnh và máy chủ xử lý các yêu cầu.
Về cơ bản, nó là giao thức cơ bản về cách chúng ta duyệt mạng và giao thức cơ bản của mô hình máy khách-máy chủ.
Mặc dù HTTP đã cung cấp cho chúng ta Internet như chúng ta biết ngày nay, nhưng nó đã lỗi thời và hơn 20 năm sau, các vấn đề phổ biến ngày càng trở nên rõ ràng hơn.
Những thách thức chính mà việc áp dụng HTTP phải đối mặt ngày nay là kết quả của sự gia tăng lớn về lưu lượng truy cập internet và ngày càng có nhiều điểm căng thẳng. Các sự cố sau gặp phải với việc triển khai HTTP hiện tại:
- Phân phối nội dung không hiệu quả do tải xuống đồng thời các tệp từ cùng một máy chủ.
- Băng thông đắt đỏ và chi phí sao chép tệp dẫn đến bộ nhớ bị cồng kềnh.
- Tăng cường tập trung hóa các máy chủ và nhà cung cấp dẫn đến tăng cường kiểm duyệt Internet.
- Lịch sử mong manh của thông tin được lưu trữ trên Internet và tuổi thọ ngắn của các trang web.
- Kết nối không liên tục dẫn đến một thế giới đang phát triển tự trị và tốc độ kết nối chậm.
Danh sách những thách thức vẫn tiếp tục, và không có gì ngạc nhiên khi công nghệ hơn 20 năm tuổi đang ngày càng trở nên lỗi thời trong kỷ nguyên đổi mới công nghệ.
IPFS cung cấp hệ thống tệp và lưu trữ phân tán mà Internet cần để đạt được tiềm năng thực sự của nó.
Thay vì tải các tệp từ các máy chủ riêng biệt xuống IPFS, bạn đang yêu cầu các đồng nghiệp trên mạng trỏ đến đường dẫn tệp chứ không phải máy chủ trung tâm.
Điều này cho phép phân phối lượng lớn dữ liệu với hiệu quả cao, lập phiên bản lịch sử, mạng linh hoạt và tính khả dụng liên tục của nội dung được bảo vệ và xác minh thông qua băm mật mã và phân phối ngang hàng trên mạng.
Tất cả điều này nghe có vẻ đầy hứa hẹn, nhưng nó hoạt động như thế nào?
IPFS hoạt động như thế nào?
Về cơ bản, IPFS là một khái niệm tương tự như World Wide Web như chúng ta biết ngày nay, nhưng giống như một nhóm BitTorrent duy nhất trao đổi các đối tượng trong một kho lưu trữ Git duy nhất. Các tệp được phân phối bằng giao thức dựa trên BitTorrent. Điều quan trọng cần lưu ý là IPFS hoạt động như một loại kết hợp của Kodemila, BitTorrent và Git để tạo ra một hệ thống con Internet phân tán. Thiết kế của giao thức cho phép tạo phiên bản lịch sử của Internet, giống như trong Git. Mỗi tệp và tất cả các khối trong đó được gán một mã định danh duy nhất, đó là một hàm băm mật mã. Các bản sao được xóa qua mạng và lịch sử phiên bản được theo dõi cho từng tệp.
Điều này dẫn đến việc truy cập nội dung liên tục trong đó các trang web không biến mất do sự cố máy chủ hoặc máy chủ lưu trữ web bị phá sản.
Hơn nữa, tính xác thực của nội dung được đảm bảo thông qua cơ chế này và khi bạn tìm kiếm tệp, về cơ bản bạn đang yêu cầu mạng tìm các nút lưu trữ nội dung đằng sau một băm xác định duy nhất được liên kết với nội dung đó.
Liên kết giữa các nút trong IPFS có dạng băm mật mã và điều này có thể thực hiện được nhờ vào kiến trúc dữ liệu Merkle DAG. Lợi ích của Merkle DAGs cho IPFS bao gồm những lợi ích sau:
- Định địa chỉ nội dung – Nội dung có một số nhận dạng duy nhất là hàm băm mật mã của tệp.
- Không trùng lặp – Các tệp có cùng nội dung không được sao chép và chỉ được lưu một lần.
- Xác nhận truy cập trái phép – dữ liệu được kiểm tra dựa trên tổng kiểm tra, vì vậy nếu mã băm thay đổi, IPFS sẽ biết rằng dữ liệu đã bị giả mạo.
IPFS liên kết các cấu trúc tệp với nhau bằng cách sử dụng liên kết Merkle và mỗi tệp có thể được tìm thấy bằng các tên mà con người có thể đọc được bằng cách sử dụng hệ thống đặt tên phi tập trung được gọi là IPNS.
Việc triển khai Merkle Directed Acyclic Graph (DAGS) là quan trọng đối với chức năng cơ bản của giao thức, nhưng mang tính kỹ thuật nhiều hơn phạm vi của bài viết này.
Nếu bạn muốn biết thêm về khía cạnh này của IPFS, bạn có thể tìm thêm thông tin trên trang IPFS Github và đọc thêm về cách cây Merkle hoạt động .
Mỗi trang web chỉ lưu trữ nội dung mà nó quan tâm và lập chỉ mục thông tin cho phép nó tìm ra ai lưu trữ những gì. Cơ sở hạ tầng IPFS về cơ bản loại bỏ nhu cầu về các máy chủ tập trung để cung cấp nội dung trang web cho người dùng.
Cuối cùng, khái niệm này hoàn toàn có thể thúc đẩy giao thức HTTP và cho phép người dùng truy cập nội dung cục bộ, ngoại tuyến.
Thay vì tìm kiếm các máy chủ như trong cơ sở hạ tầng hiện tại của Internet, người dùng sẽ tìm kiếm các mã nhận dạng duy nhất (mã băm mật mã), cho phép hàng triệu máy tính gửi một tệp cho bạn thay vì một máy chủ duy nhất.
Triển khai IPFS chính hiện tại chạy trong Go với triển khai Python và Javascript.
Nó tương thích với Linux, MacOSX, Windows và FreeBSD. Là một dự án nguồn mở và do cộng đồng thúc đẩy, bạn có thể đóng góp bằng cách làm theo hướng dẫn và tài liệu trên trang Github của họ hoặc quản lý nút IPFS của riêng bạn .
Cách sử dụng
Đã có một số trường hợp sử dụng quan trọng cho IPFS và những trường hợp khác chắc chắn sẽ phát sinh khi giao thức tiếp tục phát triển. Cung cấp một kiến trúc P2P phân tán mới cho Internet đi kèm với sự phức tạp của riêng nó, nhưng lợi ích có thể được nhìn thấy trong mọi thứ từ tiết kiệm tài chính đáng kể trong lưu trữ và băng thông cho đến tích hợp chuỗi khối. Những lợi ích rõ ràng đi kèm với mô hình lưu trữ phân tán IPFS áp dụng cho việc lưu trữ dữ liệu hiệu quả hơn đáng kể và tính bất biến với nó. Các trang web sẽ không còn hiển thị với thông báo lỗi 404 do máy chủ thời gian chết hoặc chuỗi liên kết HTTP bị gián đoạn.
Ngoài ra, có những lợi ích hiệu quả đáng kể cho người dùng, đặc biệt là những người cần phân tích tập dữ liệu rất lớn.
Với sự gia tăng của dữ liệu lớn trong khoa học hiện đại, tốc độ cao và lưu trữ phân tán dữ liệu do IPFS cung cấp sẽ trở thành yếu tố quan trọng trong việc đẩy nhanh tiến độ.
Các nhà cung cấp dịch vụ và người tạo nội dung cũng có thể giảm đáng kể chi phí của họ liên quan đến việc cung cấp một lượng lớn dữ liệu cho khách hàng. Các lần lặp lại hiện tại của mô hình này bị cản trở bởi chi phí băng thông tăng lên và các nhà cung cấp dữ liệu được trả tiền cho các thỏa thuận ngang hàng. Các chi phí liên quan đến việc cung cấp nội dung thông qua cơ sở hạ tầng tập trung của các mạng được kết nối với nhau chỉ làm tăng và tạo ra bầu không khí thiếu hiệu quả nghiêm trọng và tập trung hơn nữa trong nỗ lực khắc phục gánh nặng này.
IPFS là một trong những nền tảng tiền điện tử và có thể giúp mở rộng quy mô ngành bằng cách cung cấp kiến trúc hệ thống tệp phân tán và ngang hàng, cần thiết làm nền tảng để hỗ trợ sự phát triển của các nền tảng tiền điện tử.
Ai đang sử dụng IPFS?
Có nhiều dịch vụ Web3 đã sử dụng IPFS trong nhiều ứng dụng khác nhau. Dưới đây là một số cái chính:
- Filecoin là mạng WAN độc quyền của Protocol Labs, dựa trên IPFS. Điều này khuyến khích các nhà khai thác nút lưu trữ tệp bằng cách sử dụng phần thưởng tiền điện tử.
- Audius là một dịch vụ âm nhạc phi tập trung sử dụng IPFS để lưu trữ các tệp âm thanh của nó.
- Pinata là một dịch vụ lưu trữ NFT sử dụng IPFS để sao lưu các bộ sưu tập tiền điện tử cho các đối tác như Rarible và Sorare.
- OpenBazaar là một nền tảng thương mại điện tử ngang hàng được cung cấp bởi IPFS.
- Morpheus.Network là một dịch vụ mạng chuỗi cung ứng cũng sử dụng IPFS.
Một số trình duyệt tự nhiên hỗ trợ duyệt IPFS, trong khi những trình duyệt khác yêu cầu một tiện ích bổ sung.
Cả Brave và Opera đều hỗ trợ liên kết IPFS trực tiếp: bạn có thể chỉ cần dán liên kết vào trình duyệt của mình và điều hướng đến một trang web hoặc tệp.
Brave cung cấp cho bạn khả năng truy cập nội dung IPFS thông qua cổng công cộng hoặc thông qua máy chủ cục bộ của riêng bạn – tùy chọn thứ hai dành cho những người muốn kiểm tra nội dung cục bộ.
Ngoài ra, bạn có thể truy cập nội dung IPFS từ bất kỳ trình duyệt nào bằng cổng công khai như https://ipfs.io hoặc https://cloudflare-ipfs.com . Cổng sẽ tự động chuyển hướng bạn đến nội dung IPFS bằng liên kết và có một danh sách dài các cổng thay thế.
Làm cách nào để bắt đầu một nút IPFS?
Bạn muốn chạy nút IPFS của riêng mình và thêm nội dung vào mạng?
Cách dễ nhất để bắt đầu là sử dụng IPFS Desktop, gói phần mềm chính thức từ Protocol Labs. Nó có sẵn cho Windows, Mac và Ubuntu và cho phép bạn cài đặt và quản lý nút của riêng mình để bạn có thể thêm các tệp của riêng mình vào mạng.
Trong khi đó, IPFS Companion là một tiện ích bổ sung của trình duyệt web có sẵn cho Chrome, Edge, Brave, Firefox và Opera.
Nó cho phép bạn tương tác với máy tính để bàn IPFS và máy chủ IPFS đã cài đặt trực tiếp từ trình duyệt. Nó cũng hỗ trợ thêm địa chỉ ipfs: // cho các trình duyệt không hỗ trợ chúng.
Năm 2017, chính phủ Thổ Nhĩ Kỳ đã chặn quyền truy cập vào Wikipedia. Nhóm IPFS đã phản hồi bằng một bản sao của phiên bản Thổ Nhĩ Kỳ của trang web trên mạng phi tập trung của họ.
Kết luận
Như bạn có thể thấy, IPFS là một giao thức phức tạp về mặt kỹ thuật và khái niệm có tham vọng lớn để cách mạng hóa việc trao đổi dữ liệu qua Internet. HTTP đã thành công tự nó và giúp Internet đạt đến giai đoạn vĩ đại như ngày nay, nhưng các công nghệ mới đang xuất hiện và nhu cầu cải cách cơ sở hạ tầng và phân phối đang trở nên rõ ràng.