DSNP primary sources

Reviewed: 2026-05-15 UTC

Whitepaper / top-level framing

  • https://dsnp.org/dsnp_whitepaper.pdf
    • Official DSNP whitepaper from the Project Liberty materials.
    • Saved locally in this corpus as dsnp-whitepaper.pdf.
    • Used as the canonical top-level framing source for DSNP as an open social-networking protocol rather than a single hosted application.
  • https://github.com/LibertyDSNP/papers
    • Lightweight project paper index.
    • Used to confirm that the DSNP whitepaper is still presented as an official Project Liberty paper artifact.
  • https://dsnp.org/
    • Official landing page.
    • Used to confirm current positioning of DSNP as a shared social layer independent of any one application, plus the existence of a now-explicit governance workstream.
  • https://dsnp.org/about/overview.html
    • Best concise narrative overview page for this pass.
    • Used to confirm the protocol’s high-level decomposition into pseudonymous user IDs, delegation, announcements, social graph, batching, public state-change visibility, and interoperability claims.

Core specification layer

  • https://spec.dsnp.org/DSNP/Overview.html
    • Best concise normative source for what a compliant DSNP system is.
    • Used to confirm that DSNP defines required operations, public state-change records, asynchronous operation semantics, and a shared public social-graph requirement at the protocol layer.
  • https://spec.dsnp.org/DSNP/Identity.html
    • Best source for identity, key custody, retirement, and delegation semantics.
    • Used to confirm pseudonymous identifiers, distinct control keys per identifier, revocable delegation, non-retroactive delegation revocation, and the identity-linked state model.
  • https://spec.dsnp.org/DSNP/Graph.html
    • Best source for the social-graph model.
    • Used to confirm the split between public follows, encrypted private follows, encrypted private connections, and pseudonymous relationship identifiers (PRIds).
  • https://spec.dsnp.org/DSNP/UserData.html
    • Best source for durable per-user state and update semantics.
    • Used to confirm User Data types, Avro-based serialization, compression/encryption requirements, chunking, etags, and replace-versus-fetch mutation flows.
  • https://spec.dsnp.org/DSNP/Announcements.html
    • Best source for the public-content announcement layer.
    • Used to confirm the announcement taxonomy, content-hash binding for external content, tombstoning/update behavior, and the distinction between announcement publication and user-data replacement.
  • https://spec.dsnp.org/Systems.html
    • Best source for the currently recognized DSNP system implementations.
    • Used to confirm that the live spec currently points to Frequency as the official system.

Concrete system expression

  • https://spec.dsnp.org/Frequency/Overview.html
    • Best source for how DSNP is concretely expressed on-chain today.
    • Used to confirm that Frequency is the active official DSNP-over-blockchain implementation and to inspect the currently mapped schema set.
  • https://github.com/LibertyDSNP/spec
    • Canonical source repository for the living specification.
    • Used to cross-check the mdBook spec structure, release tags, and the split between DSNP core pages and Frequency-specific system pages.

Main takeaways from this pass

  • DSNP is best understood as a lower-layer social-data specification that separates identifiers, delegated authority, public announcements, durable user data, and publicly visible state-change records.
  • The most distinctive reusable mechanism is the split between announcement publication and user-data replacement, which keeps content flow and long-lived graph/profile/key state as separate protocol surfaces.
  • PRIds are analytically important because they provide a privacy-preserving bilateral relationship-verification layer instead of flattening all social privacy into one generic encrypted graph claim.
  • DSNP’s interoperability promise is real at the spec level, but the current implementation ecosystem still appears narrow because the live system documentation points mainly to Frequency.