Version: 1.4
Last Revision: 2026-01-23
Originally Authored: 2017-06-24
In 1996, John Perry Barlow penned his now famous "A Declaration of the Independence of Cyberspace". Since then, we've seen privacy violations which have been attributed to instigating human rights violations. Even the UN recognizes the "Right to Privacy in the Digital Age". In an era of surveillance capitalism, AI data scraping, and centralized censorship, this document describes one possible solution: a framework to decentralize the internet in a manner consistent with the common good, sovereign identity, and modern security governance.
- Objects: Discrete units of data (posts, profiles, files) which MUST be autonomous and encrypted.
- Conduits: The network pathways and protocols used to transport Objects.
- Objects MUST be autonomous so they can be acted upon individually (high cohesion and low coupling)
- Objects MUST utilize End-to-End Encryption (E2EE) by default. Private keys MUST be held solely by the data owner or intended recipients, ensuring that neither storage providers nor transport conduits can access the plaintext content.
- Note: This requires E2EE and encrypted transport. While data is only decrypted by the intended recipient, the transport layer must remain secure to prevent metadata leakage and traffic analysis.
- Objects MUST be private by default
- Services MUST be opt-in
- Identity systems MUST support 'Trust without Exposure.' Systems should utilize cryptographic proofs (such as Zero-Knowledge Proofs) or reputation-based models to verify authenticity and prevent network abuse (Sybil attacks) without requiring the exposure of Personally Identifiable Information (PII).
Examples of objects include, but are not limited to:
- peers and connection information
- posts -- the content and the poster
- people and personal details
- identity information including user information, IP address, and any personally identifiable information
- financial information
- statistics
User Stories to consider:
- As a user concerned about my privacy, I want to be able to post content without my identity (including IP) to be revealed unless I choose to do so, so I can maintain my privacy.
- Objects MUST be decentralized in nature, or support decentralization of an object store
- Objects MUST be designed for high latency environments
- Objects MUST be capable of operating in near real-time
- Data Objects MAY be blockable by end users but network conduits MUST NOT be blockable, ensuring the resilience and neutrality of the transport layer.
User Stories to consider:
- As a user concerned that content might be blocked by a country, I want all content to be freely distributed, such that I can view material that may be denied in my present location.
- Objects MUST be structurally immutable to guarantee integrity, yet allow for the permanent revocation of decipherability. This ensures that while the history of the ledger remains intact, the information contained within can be rendered permanently inaccessible in compliance with the right to be forgotten.
- Objects MUST contain, and check for, a strong hash to demonstrate integrity
- Components MUST be open source
- Components MUST have APIs where appropriate
- There MUST NOT be any backdoors for any reason
- Why is decentralization only listed in the availability section and not elsewhere?
- While decentralization contributes to confidentiality, privacy, and integrity, to reduce duplication decentralization was placed in availability as it is a hard and fast requirement for this category.
- I want to block objectionable and illegal material
- Since objects are autonomous, they can be blocked. However, blocking weakens the overall availability of the network. The default stance of this document is to permit all network traffic while allowing end users to block non-network objects. The author feels this is the best compromise between the two opposing viewpoints without violating the tenets.
If you develop a system, network, application, or component which respects the above tenets you are encouraged to declare your compliance with this document.
Contributions to this document are welcomed. Together, we can build something usable and worthwhile. See the CONTRIBUTING document in this repository.
- Joey Stanford -- Initial Author
This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/.
To clone this repository on Radicle, simply run:
rad clone rad:zBpjiB3ZTubzpQ1Z8e5A3h5bDQ53