#waku #p2p #pub-sub #networking

waku-bindings

Waku 网络库

17 个版本 (5 个破坏性更新)

0.6.0 2024 年 2 月 19 日
0.5.0 2023 年 12 月 11 日
0.4.0 2023 年 10 月 30 日
0.2.0 2023 年 7 月 13 日
0.1.0-beta12022 年 11 月 29 日

#1622 in 网络编程

Download history 8/week @ 2024-03-18 22/week @ 2024-03-25 60/week @ 2024-04-01 1/week @ 2024-04-08 5/week @ 2024-04-15 231/week @ 2024-04-22 7/week @ 2024-04-29 3/week @ 2024-05-06 18/week @ 2024-05-13 19/week @ 2024-05-20 60/week @ 2024-05-27 29/week @ 2024-06-03 21/week @ 2024-06-10 22/week @ 2024-06-17 15/week @ 2024-06-24

59 每月下载
6 个 Crates 中使用(通过 graphcast-sdk

MIT/Apache

1.5MB
31K SLoC

Go 29K SLoC // 0.1% comments Rust 2K SLoC // 0.0% comments SQL 93 SLoC C 20 SLoC // 0.2% comments Shell 14 SLoC // 0.2% comments

Waku Rust 绑定

github crates.io docs.rs build status

Rust api 在 waku-sys 上,bindgen 绑定到 c ffi 绑定

用法

将以下内容添加到您的 Cargo.toml

[dependencies]
waku-bindings = "0.1.0"

关于 Waku

Waku 是 Web3 的通信层。可扩展的分布式通信。

私密。安全。可在任何地方运行。

什么是 Waku?

Waku 是一套保护隐私的、点对点消息协议。

Waku 从消息中移除了中心化的第三方,实现了无单点故障的私密、安全、无审查的通信。

Waku 提供了保护隐私的功能,例如发送者匿名性、元数据保护和与个人身份信息的解耦。

Waku 旨在实现通用消息传递,使人与人之间、人与机器之间或混合通信成为可能。

Waku 可在任何地方运行:桌面、服务器,包括资源受限的设备,如移动设备和浏览器。它是如何工作的?

Waku 的第一个版本起源于 Whisper 协议,针对可扩展性和可用性进行了优化。Waku v2 是一个完全重写。其中继协议实现了基于 libp2p 的 pub/sub,并引入了额外的功能

  1. 为大部分离线的设备检索历史消息。
  2. 自适应节点,允许异构节点做出贡献。
  3. 为轻节点保留带宽。

这使得它在移动或类似资源受限的环境中运行 p2p 协议变得理想。

阅读 Waku 文档

依赖项

~17–27MB
~365K SLoC