Naming Systems
Petnames
Names must be human-readable in order to be widely used. Unfortunately, while DIDs and Tor .onion addresses are decentralized and globally unique, they are not human readable. Lemmer-Webber et al, Petnames: A humane approach to secure, decentralized naming (2025), p.1
Petnames offer a way forward by mapping local names to global identifiers and vice versa. By adding a petname system as an additional layer to a globally unique and decentralized system, we are able to achieve all three properties (of Zookoo’s Triangle). A "petname system" is a database and a set of interfaces which use that database to bidirectionally map human readable names to cryptographically secure names. Lemmer-Webber et al, Petnames: A humane approach to secure, decentralized naming (2025), p.2
The three types of names in a petname system are: - petnames: These are set locally by a user to map local meaning to an external identifier. For example, "Mom", "Uncle Bob", and "Pawnee Library". - edge names: Every entity in a petname system may act as its own namespace, providing "paths" to names to other entities in the system as a graph, and these provided names are called "edge names". For example, "example.org" is an edge name in "dns ⇒ example.org", and "Sarah Smith" is an edge name in "Uncle Bob ⇒ Sarah Smith".1 We don't have to get rid of popular naming systems like DNS, but can absorb them in such a way that they are on equal footing with any other entity. - proposed names: These are names which are introduced within a local context. For example, email permits users to specify a name on its addressing along with the email address. If you get an email that is cc'ed to `Ben Bitdiddle <[email protected]>`, "Ben Bitdiddle" would be the proposed name. - self-proposed names In some applications, such as in social network software, it is possible to retrieve an entity's profile to see how that entity would like itself to be referred to. We call this a self-proposed name. Lemmer-Webber et al, Petnames: A humane approach to secure, decentralized naming (2025), p.2-3
One system that is already very similar to a petnames system is a smartphone's contact list application. Contact list applications use phone numbers as a global namespace without making phone numbers the primary user experience. Human meaningful names are mapped to phone numbers with no pretense that the names have global experience; the names are chosen by each human operator according to what is useful to them.2 The UI uses this mapping both to search and select entities from a contact list to display a name in an incoming call, or to review call history. The rendering it done in terms of a live mapping; should an entity's petname be updated, that petname will be retroactively updated on the call history. Lemmer-Webber et al, Petnames: A humane approach to secure, decentralized naming (2025), p.3
Petnames: A humane approach to secure, decentralized namingPDF
Aris Goudouras
The paper contains a great example of using a Petnames system with petnames, edge names and proposed names to leverage social connections in having meaningful names / identifiers.
Decentralized Identifiers (DIDs)
Security
Consent
Consent flows from the user interface actions explicitly expressing intent. One example of this is when you are uploading a file to a browser page. The web page can’t get all the files from your filesystem. There is a consent-based flow there - the file browser can obtain a capability to a specific file, which the user selects and it’s a flow that feels natural - users don’t even think about actually granting consent in that scenario but that’s the very thing they’re doing. Lemmer-Webber, Consent-based Secure Collaboration with Spritely Goblins Object-Capabilities, https://fosdem.org/2025/schedule/event/fosdem-2025-5312-consent-based-secure-collaboration-with-spritely-goblins-object-capabilities/ 12:37
Security Models and Decentralized Auth
UCAN (User Controlled Authorization Network)
OCapN (Object Capability Network)
End-to-End Encryption (E2EE)
Aris Goudouras
ATProto opting against E2EE, claiming that social apps benefit from the server being able to read and index the data.
Aris Goudouras
Interesting post with some objections around federation, E2EE and in general unnecessary complexity in designing community experiences.