HeadlinesBriefing favicon HeadlinesBriefing.com

s@ Protocol: Decentralized Social Networking via Static Sites

Hacker News •
×

The s@ Protocol introduces a novel approach to decentralized social networking by leveraging static websites as data repositories. Users host their profiles and posts on personal domains, eliminating centralized servers. Each site contains encrypted JSON stores for content, with feeds aggregated client-side through browser-based encryption. This self-hosted model prioritizes user control, requiring no third-party infrastructure beyond static site hosting.

At its core, s@ uses cryptographic primitives for secure data exchange. Users generate X25519 key pairs, with public keys embedded in discovery documents at /satellite/satproto.json. Content encryption relies on XChaCha20-Poly1305, with keys wrapped via libsodium sealed boxes for follower-specific access. The protocol's identity system ties accounts to domain names authenticated through HTTPS/TLS, ensuring origin verification without centralized authorities.

Data organization follows a strict static site structure. The /satellite/ directory houses satproto.json (discovery metadata), follows/index.json (unencrypted follow lists), and encrypted post files. Posts are individually encrypted with content keys stored in keys/_self.json, while follower-specific decryption keys reside in keys/{follower-domain}.json. This design enables seamless feed aggregation while maintaining end-to-end encryption.

The protocol's technical significance lies in its serverless architecture and privacy-preserving design. By distributing data across user-owned domains, s@ circumvents traditional social media's single points of failure and surveillance risks. Its encryption model prevents mass data harvesting while allowing selective sharing through follow relationships. The implementation's reliance on standard web technologies (GitHub Pages, browser storage) lowers entry barriers for developers and users alike.