17个版本 (9个重大更改)

0.25.0 2024年8月9日
0.24.0 2023年11月5日
0.23.1 2023年10月18日
0.23.0 2023年6月20日
0.16.0 2020年2月14日

#2204异步

Download history 4283/week @ 2024-04-22 4133/week @ 2024-04-29 4208/week @ 2024-05-06 4482/week @ 2024-05-13 5620/week @ 2024-05-20 5222/week @ 2024-05-27 4312/week @ 2024-06-03 7759/week @ 2024-06-10 4947/week @ 2024-06-17 4155/week @ 2024-06-24 1896/week @ 2024-07-01 3004/week @ 2024-07-08 4608/week @ 2024-07-15 4482/week @ 2024-07-22 3126/week @ 2024-07-29 3249/week @ 2024-08-05

16,032 每月下载
用于 33 个Crates(4个直接使用)

MIT 许可证

21KB
392 行代码

libp2p工作的中心仓库

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

此仓库是libp2p规范Rust开发的中心地点。

入门

仓库结构

此仓库的主要组件结构如下

  • core/:实现libp2p-core及其TransportStreamMuxer API,几乎所有的其他crate都依赖于这些API。

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

  • muxers/:实现libp2p-coreStreamMuxer接口,例如(子)流多路复用协议,通常在(TCP等)连接之上。多路复用协议是(强制性的)Transport升级。

  • swarm/:在libp2p-core的基础上实现libp2p-swarm,使用核心接口NetworkBehaviourConnectionHandler来实现应用协议(见protocols/)。

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

  • misc/:实用库。

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

社区指南

libp2p项目遵循IPFS行为准则

tl;dr

  • 请保持尊重。
  • 我们在这里帮助:[email protected]
  • 容忍任何形式的辱骂行为。
  • 违反此准则可能导致迅速且永久地从IPFS[和libp2p]社区中除名。
  • "太长了,没看"不是不了解本文件的合理借口。

维护者

(按字母顺序排列。)

知名用户

(如果您想在这里添加您的项目,请提交一个pull请求)

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

lib.rs:

pnet 协议的实现。

使用预共享密钥配置的 Libp2p 节点只能与具有相同密钥的其他节点进行通信。

依赖项

~2.7–3.5MB
~55K SLoC