Nostr Overview

What is Nostr?

Nostr stands for Notes and Other Stuff Transmitted by Relays. It is an open protocol for building censorship-resistant social networks and communication tools. Unlike traditional platforms, Nostr has no central server, no company controlling the rules, and no single point that can be shut down or deplatformed.

Anyone can publish software that speaks the Nostr protocol, and any two compatible clients can exchange data through any relay — making the network inherently open and resilient.

Key Concepts

Events

Everything in Nostr is an event — a small JSON object containing a payload, a timestamp, the author's public key, and a cryptographic signature. Because each event is signed by the author's private key, anyone can verify authenticity without trusting a server.

Keys

Your Nostr identity is a cryptographic key pair on the secp256k1 curve (the same curve used by Bitcoin):

  • npub — your public key, encoded in bech32. Share this freely; it is your address on the network.
  • nsec — your private (secret) key, encoded in bech32. Never share this with anyone. Whoever holds your nsec controls your identity.

Relays

Relays are WebSocket servers that accept, store, and forward events. Clients connect to one or more relays to publish their events and to subscribe to events from others. Because relays are independent and interchangeable, the network has no single point of failure — if one relay goes down, your content remains available on others.

Kinds

The kind field on an event is a number that indicates the event type. For example, kind 1 is a short text note, kind 4 is an encrypted direct message, and kind 9734 is a zap request. The kind system allows clients to selectively handle only the event types they understand.

Why Nostr Matters for Maskr

Maskr is built on Nostr because the protocol's properties align directly with our mission — enabling people to say what they cannot elsewhere:

  • No single point of failure: Maskr cannot unilaterally erase your posts. Your content lives across multiple relays.
  • Portable identity: Your key pair is yours. If Maskr ever disappeared, you could take your identity to any other Nostr client.
  • Censorship resistance: Because anyone can run a relay, blocking speech requires taking down every relay simultaneously — a practical impossibility.
  • Interoperability: Your Maskr posts are readable by Damus, Primal, Snort, and any other NIP-compliant client.

NIPs Used by Maskr

NIPs (Nostr Implementation Possibilities) are specification documents that define how features of the protocol work. Maskr implements the following NIPs:

  • NIP-01 — Basic protocol: event format, relay communication, and subscription filters.
  • NIP-04 — Encrypted direct messages between two parties.
  • NIP-05 — DNS-based human-readable identifiers (e.g., alice@maskr.space).
  • NIP-07 — Browser extension interface (window.nostr) for signing events without exposing the private key to web apps.
  • NIP-09 — Event deletion requests.
  • NIP-19 — Bech32-encoded entities (npub, nsec, note, nprofile, nevent, naddr).
  • NIP-23 — Long-form content (articles published as kind 30023 replaceable events).
  • NIP-25 — Reactions (likes and emoji responses to events).
  • NIP-44 — Encrypted payloads (planned — not yet implemented).
  • NIP-50 — Full-text search via search-capable relays.
  • NIP-51 — Lists (mute lists, pin lists, categorized bookmarks).
  • NIP-57 — Lightning zaps: value-for-value payments attached to events (coming soon).
  • NIP-72 — Communities (kind 34550 definitions, kind 1111 posts, kind 4550 approvals).
  • NIP-78 — App-specific data for storing client preferences on relays.
  • NIP-98 — HTTP authentication for relay-to-server API calls.