Tại sao Whisper thất bại và Waku đang định hình lại giao tiếp Web3
Blockchain là công nghệ tuyệt vời, nhưng nó không đảm bảo quyền riêng tư, mà chỉ cung cấp giao dịch ẩn danh trên các blockchain công khai, nơi dữ liệu được công khai nhưng danh tính người dùng không được gắn trực tiếp.
Tầm nhìn ban đầu của Ethereum
Khi Ethereum ra đời, các nhà sáng lập không chỉ hình dung một hệ thống tài chính phi tập trung mà còn một hệ sinh thái hoàn chỉnh, nơi tính toán, lưu trữ và giao tiếp có thể diễn ra mà không cần kiểm soát trung ương - được gọi là "tam giác thánh" (tính toán, lưu trữ, giao tiếp). Để đạt được điều này, ba công nghệ cốt lõi đã được giới thiệu: Ethereum cho tính toán, Swarm cho lưu trữ phi tập trung và Whisper cho giao tiếp ngang hàng.
Whisper: Giao tiếp riêng tư, kháng kiểm duyệt
Whisper, cụ thể, được thiết kế để cho phép nhắn tin riêng tư, kháng kiểm duyệt giữa người dùng và các ứng dụng phi tập trung (dApps). Tại cốt lõi, Whisper cố gắng giải quyết thách thức về nhắn tin an toàn trong môi trường phi tập trung. Nó cho phép người dùng gửi tin nhắn mã hóa qua một mạng lưới phân tán, đảm bảo tính ẩn danh và kháng giám sát.
Những thách thức của Whisper
Trong lý thuyết, Whisper là một phần mạnh mẽ của tầm nhìn Web3. Nhưng thực tế, Whisper gặp khó khăn. Mỗi nút trong mạng lưới phải xử lý mọi tin nhắn, bất kể liên quan hay không. Thiết kế này, trong khi đơn giản, khiến hệ thống trở nên nặng nề, tiêu tốn băng thông và cuối cùng là không thực tế cho việc áp dụng quy mô lớn.
Khi hệ sinh thái Ethereum phát triển, những hạn chế của Whisper trở nên không thể bỏ qua. Các nhà phát triển cần một lớp nhắn tin có thể mở rộng với hàng triệu người dùng, hỗ trợ nhắn tin ngoại tuyến và kháng spam mà không yêu cầu quá nhiều sức mạnh tính toán từ mỗi nút.
Sự ra đời của Waku
Từ những nhu cầu này, Waku ra đời. Được phát triển bởi Vac vào năm 2018 (cơ quan nghiên cứu của Status), Waku được giới thiệu như là người kế nhiệm hiện đại của Whisper, một giao thức truyền thông nhẹ hơn, có khả năng mở rộng hơn và đáng tin cậy hơn, được xây dựng với thực tế của các ứng dụng phi tập trung trong tâm trí.
Hạn chế của Whisper
Whisper đại diện cho một ý tưởng đầy tham vọng: bất kỳ ai, ở đâu, đều có thể gửi tin nhắn mà không cần trung gian, không bị giám sát và không cần máy chủ trung tâm. Tuy nhiên, dưới lời hứa đó là một lỗi nghiêm trọng: khả năng mở rộng. Mỗi tin nhắn được phát sóng đến mọi nút, buộc tất cả các bên tham gia phải lọc qua lưu lượng không liên quan để tìm dữ liệu cần thiết.
Đối với một mạng nhỏ, điều này có thể quản lý được. Nhưng khi người dùng ngày càng tăng, yêu cầu về tài nguyên trở nên không thể chịu nổi, các nút tiêu tốn băng thông quá mức, làm cạn kiệt pin trên thiết bị di động và đặt ra yêu cầu nặng nề về lưu trữ và xử lý.
Thực tế người dùng
Đối với trải nghiệm người dùng, những thách thức này không phải là lý thuyết. Một ứng dụng phi tập trung phụ thuộc vào Whisper cho nhắn tin sẽ nhanh chóng gặp phải rào cản trong sản xuất. Người dùng cuối báo cáo việc tiêu tốn băng thông lớn, hiệu suất kém trên các thiết bị ít công suất và không thể truy xuất tin nhắn nếu họ ngoại tuyến. Hơn nữa, Whisper thiếu khả năng kháng spam hiệu quả, mở ra cơ hội cho các tác nhân xấu làm ngập mạng lưới với lưu lượng không có ý nghĩa. Giao thức đáng lẽ phải cho phép giao tiếp Web3, thực tế là không thể sử dụng cho các ứng dụng trong thế giới thực.
Sự chuyển mình từ Whisper sang Waku
Tuy nhiên, Waku không bắt đầu hoàn toàn từ đầu, nó bắt đầu như một nhánh của Whisper. Nhóm Vac nhận ra rằng mặc dù ý tưởng cốt lõi của Whisper là hợp lý, nhưng cách triển khai của nó tạo ra rào cản cho việc áp dụng trong thế giới thực. Vì vậy, vào năm 2020, họ phát hành Waku v1, giữ lại nhiều thiết kế của Whisper nhưng loại bỏ những phức tạp không cần thiết. Bước chuyển tiếp này cho phép các nhà phát triển đang thử nghiệm với Whisper có thể di chuyển mà không mất đi lời hứa của nhắn tin mã hóa ngang hàng.
Waku v1: Giao thức cầu nối
Waku v1 được giới thiệu vào năm 2020 như một "giao thức cầu nối". Nó bảo tồn nhiều thiết kế của Whisper, điều này giúp các nhà phát triển đang thử nghiệm với nhắn tin phi tập trung có thể di chuyển mà không phải viết lại ứng dụng của họ. Nhưng ngay cả với những cải tiến này, rõ ràng rằng một nhánh đơn giản không đủ. Những lỗi kiến trúc cơ bản của Whisper quá sâu, và hệ sinh thái Web3 cần một thứ có khả năng mở rộng vượt xa thiết kế ban đầu.
Waku v2: Tái thiết hoàn toàn
Đột phá thực sự đến với Waku v2, một thiết kế lại hoàn toàn của giao thức. Thay vì phát sóng mọi tin nhắn đến mọi nút, Waku v2 áp dụng libp2p GossipSub, một giao thức pub/sub dựa trên gossip giúp định tuyến tin nhắn một cách thông minh hơn. Với GossipSub, chỉ một tập hợp con của các nút đảm nhận nhiệm vụ truyền tải, giảm đáng kể chi phí băng thông trên toàn mạng.
Kiến trúc mô-đun của Waku
Waku v2 cũng giới thiệu tính mô-đun. Thay vì là một giao thức đơn lẻ, Waku là một gia đình các giao thức xử lý các khía cạnh khác nhau của giao tiếp:
- Relay – phát sóng tin nhắn hiệu quả qua GossipSub.
- Store – cho phép nhắn tin ngoại tuyến với cơ chế lưu trữ và chuyển tiếp.
- Filter – cho phép các khách hàng nhẹ chỉ nhận các tin nhắn mà họ quan tâm.
- RLN (Rate Limiting Nullifiers) – cơ chế kháng spam bảo vệ quyền riêng tư trong khi làm cho việc spam trở nên tốn kém.
Cách tiếp cận mô-đun này có nghĩa là các nhà phát triển có thể chọn và lựa chọn các tính năng mà họ cần cho trường hợp sử dụng cụ thể của mình. Cho dù xây dựng một ứng dụng nhắn tin thời gian thực, một hệ thống thông báo hay một công cụ phối hợp phi tập trung, Waku v2 cung cấp sự linh hoạt để hỗ trợ nó.
Mạng Waku
Waku v2 không chỉ là một giao thức, nó cung cấp sức mạnh cho Mạng Waku, một mạng lưới dịch vụ giao tiếp tích hợp nhiều giao thức Waku vào cơ sở hạ tầng sẵn sàng cho sản xuất. Mạng Waku tận dụng bảo vệ RLN để đảm bảo kháng spam ở quy mô lớn trong khi duy trì các cam kết về quyền riêng tư. Điều này làm cho nó trở nên đặc biệt giá trị cho các ứng dụng Web3 cần nhắn tin đáng tin cậy mà không cần máy chủ trung tâm, từ các cuộc trò chuyện riêng tư đến các công cụ phối hợp DAO.
Bằng cách chạy các nút Waku, các nhà phát triển và người dùng góp phần vào một lớp giao tiếp kháng kiểm duyệt, bảo vệ quyền riêng tư cho web phi tập trung.
Kết luận
Whisper là nỗ lực đầu tiên để tạo ra một lớp giao tiếp thực sự riêng tư và phi tập trung, nhưng những hạn chế của nó đã kìm hãm nó. Waku xây dựng trên tầm nhìn đó, tiến hóa thành một gia đình giao thức thực tiễn, có khả năng mở rộng và mô-đun. Với Mạng Waku hiện đã hoạt động, các nhà phát triển có một nền tảng mạnh mẽ để xây dựng nhắn tin an toàn, kháng kiểm duyệt vào các dApps của họ.
Nếu bạn đang xây dựng trong Web3, bây giờ là thời điểm để khám phá Waku:
👉 Tìm hiểu thêm về các RFC của Vac để tìm hiểu sâu hơn về các thông số kỹ thuật của giao thức.
👉 Khám phá Mạng Waku và tìm hiểu cách bạn có thể chạy một nút.
👉 Cài đặt các SDK Waku – js-waku cho JavaScript/TypeScript, hoặc nim-waku cho các triển khai dựa trên Nim.
👉 Thử nghiệm với tích hợp Waku vào các dApps của bạn cho nhắn tin, thông báo hoặc phối hợp.
👉 Khám phá các ứng dụng mẫu – xem waku-examples để có các bản demo thực tế như ứng dụng nhắn tin và nhắn tin pub/sub.
👉 Tham gia cộng đồng nhà phát triển – theo dõi các thảo luận, đặt câu hỏi và cập nhật về các RFC mới qua trung tâm RFC của Vac.
Sự phi tập trung không chỉ là về tiền – mà còn về giao tiếp. Waku đang hiện thực hóa tầm nhìn đó. Bạn có thể tìm hiểu qua tài liệu chính thức tại đây để có thêm chiều sâu nghiên cứu và kỹ thuật.