3 个版本 (重大更改)

0.3.0 2023 年 11 月 5 日
0.2.0 2023 年 6 月 20 日
0.1.0 2023 年 3 月 29 日

#networking-stack 中排名 19

MIT 许可证

1MB
22K SLoC

libp2p 工作的核心仓库

dependency status Crates.io docs.rs docs.rs master

该仓库是 libp2p 规范 Rust 开发的核心位置。

入门

仓库结构

该仓库的主要组件结构如下:

  • core/:实现 libp2p-core 及其 TransportStreamMuxer API,几乎所有其他存储库都依赖于它。

  • transports/:基于 libp2p-coreTransport API 实现传输协议(例如 TCP)和协议升级(例如用于认证加密、压缩等)。

  • muxers/:实现 StreamMuxer 接口,例如在(通常是 TCP)连接上实现(子)流多路复用协议。多路复用协议是(必需的)Transport 升级。

  • swarm/:基于 libp2p-core 并使用核心接口 NetworkBehaviourConnectionHandler 实现 libp2p-swarm 的实现,这些接口用于实现应用协议(参见 protocols/)。

  • protocols/:基于 libp2p-swarm API 的应用协议实现。

  • misc/:实用库。

  • libp2p/examples/:内置应用协议(参见 protocols/)的工作示例,具有常见的 Transport 配置。

社区指南

libp2p 项目遵循 IPFS 行为准则

tl;dr

  • 请尊重他人。
  • 我们在这里帮助您:[email protected]
  • 不容忍任何辱骂行为。
  • 违反本准则可能导致迅速且永久地被排除在 IPFS [和 libp2p] 社区之外。
  • "Too long, didn't read" 不是不了解本文件的合理借口。

维护者

(按字母顺序排列。)

知名用户

(如果您想将项目添加到此处,请提交一个 pull request)

  • COMIT - Bitcoin–Monero 跨链原子交换。
  • Forest - Filecoin 的 Rust 实现。
  • fuel-core - Fuel 协议的 Rust 实现。
  • HotShot - 由 Espresso Systems 开发的 Rust 开发的去中心化 sequencer。
  • ipfs-embed - 由 Actyx 使用和维护的小型可嵌入的 ipfs 实现。
  • Homestar - Fission 使用和维护的 InterPlanetary Virtual Machine (IPVM) 实现。
  • beetle - 用于云和移动平台的下一代 IPFS 实现。
  • Lighthouse - Rust 中的 Ethereum 共识客户端。
  • Locutus - 全球、可观察、去中心化的键值存储。
  • OpenMina - 在浏览器中运行的 Mina Rust 实现。
  • rust-ipfs - Rust 中的 IPFS 实现。
  • Safe Network - Rust 中的 Safe Network 实现。
  • Starcoin - 通过分层扩展的智能合约区块链网络。
  • Subspace - Subspace 网络参考实现。
  • Substrate - 区块链创新框架,由 Polkadot 使用。
  • Taple - OpenCanarias 通过资产和流程可追溯性实现的可持续 DLT。

lib.rs:

libp2p 性能协议 的实现。

不要在不受信任的环境中使用。

依赖项

~31-65MB
~1M SLoC