Open infrastructure for trust-based filtering on Nostr.
Your identity, your trust network, your wallet — one ecosystem.
Nostr has no central authority to filter spam or verify identity. Web of Trust solves this by measuring social distance — how many hops separate you from someone in the follow graph.
You → follows → 1 hop (trusted)
→ their follows → 2 hops (known)
→ their follows → 3+ hops (probably noise)
No blocklists. No moderators. Just your social graph doing the filtering.
A complete Nostr identity provider, Lightning wallet, and Web of Trust engine — all in one extension.
| Feature | Description |
|---|---|
| NIP-07 Signer | Sign events, encrypt messages (NIP-04 & NIP-44) on any Nostr client |
| Encrypted Vault | AES-256-GCM key storage with auto-lock and secure backup |
| Multi-Account | HD derivation, watch-only, remote signer (NIP-46) |
| Lightning Wallet | Built-in wallet for zaps via NWC, LNbits, or one-click setup |
| Trust Badges | Color-coded trust indicators injected into Nostr sites |
| WebLN Provider | Sites can request payments through window.webln |
| Post-Quantum Keys | ML-KEM-1024 + ML-DSA-87 derived from your existing seed, with hybrid post-quantum DMs |
| 6 Languages | EN, ES, PT, DE, FR, IT |
Works on Chrome, Brave, Edge, Opera, and Firefox.
Integrate Web of Trust into any JavaScript or TypeScript application.
npm install nostr-wot-sdkimport { NostrWoT } from 'nostr-wot-sdk'
const wot = new NostrWoT({ userPubkey: '...' })
const score = await wot.getTrustScore(pubkey)Extension-first design — uses the browser extension when available, falls back to the Oracle. Includes React hooks (WoTProvider, useWoT).
High-performance Rust backend that indexes the entire Nostr follow graph and serves trust queries via REST API.
- 10,000+ queries/second with sub-millisecond cached responses
- Bidirectional BFS across millions of nodes
- 100% self-hostable — run your own instance for full control
- Public instance: wot-oracle.mappingbitcoin.com
curl "https://wot-oracle.mappingbitcoin.com/distance?from=PUBKEY_A&to=PUBKEY_B"Hybrid post-quantum encryption for Nostr direct messages, developed jointly with QuantaKrypto.
Every encrypted message on Nostr today can be recorded now and decrypted later, once a quantum computer breaks secp256k1 — harvest now, decrypt later. It is the only half of the quantum problem that can be fixed in advance: a message protected today stays confidential permanently, whenever the break arrives.
npm install @nostr-wot/pq| Algorithms | ML-KEM-1024 (FIPS 203) and ML-DSA-87 (FIPS 204) — the CNSA 2.0 parameter sets |
| Key derivation | Siblings of your secp256k1 key from the same BIP-39 seed, never children of it — so breaking your Nostr key does not reach them |
| Hybrid | Combined with the classic NIP-44 conversation key, so the result is never weaker than today |
| Discovery | A kind:10203 attestation, counter-signed by the ML-DSA key as proof of possession |
| Transport | Rides inside unchanged NIP-44 and NIP-59 gift wrap — no relay changes |
Shipped in the extension since v0.4.0. Check any npub or try the live demo.
A proposal rather than a ratified NIP — but an implemented and running one. See nips#1971 for the ecosystem discussion.
// Extension — client-side
await window.nostr.wot.getDistance(pubkey)
await window.nostr.wot.getTrustScore(pubkey)
// Post-quantum encryption — opt-in, additive to NIP-44
await window.nostr.nip44.encrypt(pubkey, plaintext, { scheme: 'pq', recipientKemKey })
// SDK — client or server
const wot = new NostrWoT({ userPubkey: '...' })
await wot.getTrustScore(pubkey)# Oracle — REST
GET /distance?from={pubkey}&to={pubkey}
POST /distance/batch
GET /stats- Spam filtering without centralized blocklists
- Trust scores for marketplaces and reviews
- Smart notifications prioritized by social proximity
- Content discovery surfacing notes from your extended network
| Project | Description |
|---|---|
| mappingbitcoin.com | Bitcoin merchant directory with WoT-based trust filtering |
| Organization | Contribution | Website |
|---|---|---|
| QuantaKrypto | Post-quantum design, specification and cryptographic review | quantakrypto.com |
| Organization | Website |
|---|---|
| Dandelion Labs | dandelionlabs.io |
| MappingBitcoin | mappingbitcoin.com |
- Install the extension from the Chrome Web Store
- Set up your account — create keys, import nsec, or connect via NIP-46
- Browse Nostr — your identity and trust network follow you everywhere
Everything is open source under the MIT License. Run your own oracle, fork the extension, build trust infrastructure for your community.