AT Protocol vs Farcaster

Technical comparison of two decentralized social protocols

As social media continues to play an increasingly central role in our lives, new protocols have emerged to address some of the key concerns and limitations of current platforms. Among them are the AT Protocol (ATP) developed by Bluesky and Farcaster (FC), both of which aim to create a new generation of social networks. Despite sharing this common goal, their unique designs and tradeoffs set them apart from one another. In this essay, we will explore and compare the strengths and weaknesses of ATP and FC, as well as the implications of their approaches for the future of social media.

Account portability

Identity is a crucial element of social networks. Both protocols aim to provide account portability, enabling users to migrate their identities to a new service provider without existing server’s cooperation, unlike Fediverse (e.g. Mastodon). This is accomplished by creating user handles that resolve into public keys for message signing, enabling authentication of user data, regardless of server location.

Both protocols employ a 2-tier identifier design, consisting of a permanent stable identifier that is not easily readable (FID in Farcaster and DID in Bluesky), as well as a readable and changeable user handle (FNAME and DNS name, respectively).

ATP’s design incorporates generic standards such as Decentralized Identifiers (DID) and DNS, promoting extensibility and interoperability. However, the current implementation uses a unique DID method, DID Placeholder (PLC), as they aren’t satisfied with existing DID methods. The PLC method relies on a centralized "PLC server" to store the signed DID document (comparable to the FID smart contract of FC), and is named "Placeholder" because it is intended to be replaced by a decentralized alternative in the future.

In ATP, user handles are DNS names that resolves into DIDs. Contrary to popular belief, DNS is a viable option for decentralized identities if one accepts the ICANN’s multistakeholder governance model as sufficiently neutral. However, the primary issue with DNS lies in its user experience.

DNS registries are legacy systems that lacks a unified API, making it difficult to fully automate registration and management without introducing additional middlemen such as Cloudflare. As a result, most users opt for free subdomain names provided by service providers (e.g. *.bsky.social) instead of registering a new domain name, as setting up DNS is often too complex. However, this approach may undermine the goal of account portability.

FC has developed a specialized identity system using Ethereum smart contracts, offering several benefits. Interactions with smart contracts can be abstracted away from users, and FID, a simple number, is marginally usable on its own. Furthermore, FNAME registration fee can directly fund protocol development, unlike DNS registration fees which do not benefit ATP. Finally, FNAME are usually shorter than DNS names because it is free from the problem of domain squatting. However, FC needs to establish its own governance structure for true decentralization, as it lacks a neutral entity like ICANN that govern DNS.

Censorship resistance

Censorship and moderation may seem like opposite sides of the same coin. Censorship is often frowned upon, but moderation is necessary for healthy conversations. Without moderation, spam and unwanted messages can overwhelm the platform, making it unusable. Therefore, a balance must be struck between allowing free speech and maintaining a productive and engaging platform. Both protocols aim to offer some level of censorship resistance, but their network architectures differ significantly.

ATP distinguishes between "small-world" and "big-world”. The small-world network encompasses inter-personal activity and is owned by users, while the big-world network aggregates activities in the larger network and provides useful functions such as content discovery (algorithms) and user search.

Small world, Big world

In ATP, Personal Data Servers (PDS) are responsible for the small-world, and apps use indexing services to access the big-world network. PDS is user-owned, giving users the freedom to change service providers or even host the PDS server themselves. PDSs synchronize data with other PDSs using a HTTP-based protocol according to follow graphs, similar to the federation model in Fediverse and Mastodon. However, ATP's guarantee of account portability sets it apart as a better model. In contrast, big-world is expected to be provided by larger service providers and may be subject to censorship or moderation.

In FC, the Hub is conceptually a combination of the small-world and big-world, with Hubs being responsible for storing and disseminating every user's data. The Hub disseminates messages using a gossip-based peer-to-peer protocol. The P2P design ensures messages to be propagated through the network even if some Hubs may try to censor them. 

Scalability and data permanence

Both ATP and FC use Merkle trees for synchronization, but they differ in how the trees are implemented, resulting in unique tradeoffs for each protocol.

ATP uses a Merkle Search Tree where each user has an individual tree and signs the tree's root. This design allows for easier moderation and spam filtering as PDS and indexers can choose to ignore certain users when syncing. Additionally, the self-balancing nature of the MST provides some efficiency benefits over FC's approach. 

In ATP, users specify a single PDS as their primary data store. Since the PDS only needs to store the data of specific users, it is reasonable to assume that it can permanently store the entire history of the user. However, since PDS and client apps are considered as two separate tiers, users need to choose a reliable PDS hosting service, which can be a hurdle for some users.

FC uses a Merkle Patricia Trie that represents the world's state, and users sign their own messages. This approach makes it efficient to sync the world's state, but it may also lead to spam issues as there is no apparent way for Hubs to selectively ignore some users. Users are not required to have a specific "Home Hub," and the Hubs are expected to be integrated into the apps that users use. However, to manage each Hub's storage and bandwidth usage, there are restrictions on the size and number of messages each user can store in the network.

Conclusion

At this moment, there is no clear winner between ATP and FC as both have their own strengths and weaknesses. Farcaster's best feature is its decentralized identity system with a clear path for sustainability, while ATP's identity system is less developed, due in part to its tendency to avoid blockchain technology, especially Ethereum. However, FC's current architecture is constrained by scalability issues and lacks an in-protocol method to store user data permanently. Nevertheless, the emergence of new social networks is a positive development, as competition can promote the exchange of innovative ideas between protocols, benefiting both.

On Top of Ruins logo
Subscribe to On Top of Ruins and never miss a post.
#bluesky#farcaster#protocol#social#social internet