Skip to content

Conversation

@chair28980
Copy link
Contributor

Creates comparison section with waku vs xmtp and libp2p articles.

@vercel
Copy link

vercel bot commented Oct 25, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
docs-waku-org Ready Ready Preview Comment Oct 25, 2025 6:02pm

Copy link
Contributor

@fryorcraken fryorcraken left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

First pass


## Production Maturity

### libp2p
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We already have a "libp2p" comparison here: https://docs.waku.org/learn/waku-vs-libp2p

Would be good to consolidate (eg delete old file)


**Waku** is a privacy-preserving messaging protocol built on top of libp2p, extending it with metadata privacy and zero-knowledge DoS protection.

These protocols are complementary, Waku inherits libp2p's networking foundation and adds privacy-first messaging capabilities.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
These protocols are complementary, Waku inherits libp2p's networking foundation and adds privacy-first messaging capabilities.
These protocols are complementary, Waku inherits libp2p's networking foundation and adds privacy-first messaging capabilities.
Waku defines a number of libp2p protocol to enable peer-to-peer messaging on consumer devices, such as mobile and browser. Those protocols solve problems of peer discovery and messages routing on devices with battery, bandwidth or availability restrictions.
It is a peer-to-peer communication stack with battery included, enabling developers to build decentralised application with minimum overhead.
Waku also aims to resolve the infrastructure needs for decentralized communication with the introduction of financial incentivization (research in progress).


| Aspect | libp2p | Waku |
|--------|--------|------|
| **Purpose** | General P2P infrastructure | Privacy-preserving messaging |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| **Purpose** | General P2P infrastructure | Privacy-preserving messaging |
| **Purpose** | General P2P libraries | Privacy-preserving, anonymouse, censorship-resistant messaging SDKs and infrastructure. |

| Aspect | libp2p | Waku |
|--------|--------|------|
| **Purpose** | General P2P infrastructure | Privacy-preserving messaging |
| **Metadata Privacy** | None (connection patterns visible) | Strong (no-signature relay, k-anonymity) |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| **Metadata Privacy** | None (connection patterns visible) | Strong (no-signature relay, k-anonymity) |
| **Metadata Privacy** | None (connection patterns visible) | Strong (no-signature relay, k-anonymity, message sending over mixnet) |

|--------|--------|------|
| **Purpose** | General P2P infrastructure | Privacy-preserving messaging |
| **Metadata Privacy** | None (connection patterns visible) | Strong (no-signature relay, k-anonymity) |
| **DoS Protection** | Peer scoring only | RLN (zero-knowledge proofs) |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| **DoS Protection** | Peer scoring only | RLN (zero-knowledge proofs) |
| **DoS Protection** | Peer scoring, no bandwidth capping, message inspection needed for validation | RLN (anonymous permissionless bandwidth capping) |

- Same transport encryption as libp2p
- **Strong metadata privacy**: no-signature policy prevents sender identification
- Content topic strategies provide k-anonymity
- **Formal privacy guarantees**: proven sender anonymity against single-node adversaries
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Formal privacy guarantees**: proven sender anonymity against single-node adversaries
- **Sender anonymity**: sending messages through native mixnet (development in progress)

- **Strong metadata privacy**: no-signature policy prevents sender identification
- Content topic strategies provide k-anonymity
- **Formal privacy guarantees**: proven sender anonymity against single-node adversaries
- **Zero-knowledge DoS protection**: Rate Limiting Nullifiers (RLN) prevent spam without revealing identity
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Zero-knowledge DoS protection**: Rate Limiting Nullifiers (RLN) prevent spam without revealing identity
- **Bandwidth capping**: Rate Limiting Nullifiers (RLN) prevent network flood in an anonymous and permissionless manner (smart contract gates memberships)

| Adversary | libp2p | Waku |
|-----------|--------|------|
| Casual eavesdropper | ✅ Protected (encryption) | ✅ Protected (encryption) |
| Network-level observer | ❌ Metadata exposed | ✅ Sender anonymity preserved |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| Network-level observer | ❌ Metadata exposed | ✅ Sender anonymity preserved |
| Network-level observer | ❌ Metadata exposed | ✅ Sender and receiver anonymity preserved |

| Casual eavesdropper | ✅ Protected (encryption) | ✅ Protected (encryption) |
| Network-level observer | ❌ Metadata exposed | ✅ Sender anonymity preserved |
| Compromised relay node | ❌ Can correlate traffic | ✅ Cannot identify sender |
| Global passive adversary | ❌ No protection | ⚠️ Timing correlation possible |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| Global passive adversary | ❌ No protection | ⚠️ Timing correlation possible |
| Global passive adversary | ❌ No protection | ⚠️ Timing correlation possible (application dependent |

## When to Use Each Protocol

### Choose libp2p When:
- Building blockchain protocols or Layer 2 networks
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Building blockchain protocols or Layer 2 networks
- Building blockchain protocols, Layer 2 networks or other p2p systems with very specific requirements

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants