What kind of decentralized social protocols are useful?

刘果 | Guo Liu
·
·
IPFS
·
Over the past ten years, people have tried various types of protocols and network structures, but what kind of protocols are useful for social media?

Decentralized social media preceded Bitcoin by more than a decade. For more than ten years, social media has become the main way for people to obtain information.

Decentralized social media and protocols have been evolving, but have not been as popular and influential as centralized social media. An important reason is that most of them are developed and maintained by volunteers and have no sustainable business model. Decentralized business models will not become possible until blockchain technology matures.

But before introducing a business model, an open protocol is needed to define the social media itself and determine the relationship between data storage, communication methods and users. Over the past decade, people have tried various different types of protocols and network structures. So, what kind of protocols are useful for social media?


Let's first look at what is needed for decentralized social media.

Decentralized social media needs to balance robustness and usability. The former is the biggest advantage of decentralization, which keeps the system open in the face of natural disasters or man-made attacks, and is only useful to a small number of people and scenarios; the latter is often lacking in decentralized social media, but it is also what most people care about.

Regardless of whether it is centralized or decentralized social media, another thing that needs to be considered is freedom of speech and content governance. Everyone has the right to say anything to another person as long as the other person accepts it; at the same time, we need public space to spread opinions and reach consensus. At this time, there must be standards for good content and bad speech boundaries. We can distinguish two mechanisms of speech and reach : anyone has the freedom to speak to their followers, but whether speech can reach others in public spaces, different communities have their own norms.

It is a more decentralized network structure that can guarantee robustness and freedom of speech; while improving usability and content governance often requires a certain degree of centralized servers. We can obtain the most decentralized peer-to-peer network by directly connecting clients, or form multi-center services and governance through agreements between servers. Both layers are useful for social media.

Borrowing from the famous "centralized vs decentralized vs distributed diagram", decentralized social media requires both decentralized and distributed two-tier structures.


peer-to-peer protocol

Peer-to-peer network is the most decentralized and robust network structure. Each user directly connects with other users through its own client, fully controls its own content and software, and can communicate normally even without the Internet.

A well-designed peer-to-peer protocol has many other useful properties. One is self-certifying of data, allowing users to obtain data from others without relying on a third party to determine the authenticity of the data. A common design is that each publisher has a pair of public and private keys, the published content is signed by the private key, and the content receiver can verify the identity of the publisher.

Another useful feature is bandwidth sharing. Because the data in the peer-to-peer network does not need to be transmitted through a specific server, but can come from any client. This is especially useful when the data is large and the bandwidth is low, and it is also an advantage of BitTorrent downloads, fast broadcasts, and Thunder and other products that rely on peer-to-peer technology in the early days of the Internet.

Therefore, a peer-to-peer transfer protocol that supports self-verification is suitable as the basis for a decentralized social network. It is part of a user's identity and the underlying mechanism for ensuring free speech.

server protocol

Functions commonly used in many social software are difficult to implement in pure peer-to-peer networks. Content recommendation, search, comment, etc. need to be aggregated and indexed, providing data, receiving notifications, etc. need to be online at any time, domain name management, community governance, account balance, etc. require a global state, all of which require a server to complete.

Functions that require global state can be implemented by distributed ledgers such as blockchain, while other functions can be undertaken by servers selected by users. In order to make the server unable to bind users and make it easier for different software to cooperate, we can standardize the communication method of the server. One way of thinking is to standardize the communication between the server and the client, such as Nostr; the other way is to standardize the communication between the server and the server, such as ActivityPub and AT Protocol.

Among these two ideas, when only the communication between the server and the client is standardized, the server tends to be centralized, because the client needs to be connected to the same server to communicate; when only the communication between the server and the server is standardized, the client Clients can communicate through different servers, and as long as there is a global id system, users can easily migrate between different servers.


accomplish

Among the peer-to-peer transmission protocols, IPFS is currently the most widely used. It has a high degree of modularization, and the interface of each module is also designed to be simple and easy to understand, and has reached a wide consensus among developers. The other is Secure Scuttlebutt, which determines data storage through social relationships. It is exquisitely designed and has a stable social network, but it has not been widely adopted by IPFS.

ActivityPub is currently the most popular decentralized social protocol with more than 10 million users, including the famous software suite "Mastodon". ActivityPub contains both server-to-server standards and server-to-client standards, but the two can also be used separately. The problem with ActivityPub is that the user identity is bound to the server domain name, and all data is stored in a specific server; these two problems can be solved by introducing IPNS (a dynamic module in IPFS).

For blockchain technology, tools related to the Ethereum Virtual Machine (EVM) are currently the most popular, and Ethereum itself also provides the best liquidity. Blockchain nodes can run in servers, but most servers only require light nodes and do not need to save full data; at the same time, blockchains can share data addressing and propagation algorithms with peer-to-peer protocols to improve network efficiency. The current mainstream blockchain designs can meet the needs, but blockchain technology is evolving rapidly, and it is still unknown what kind of chain architecture is most suitable for light nodes and compatible with peer-to-peer protocols.

CC0 License

Like my work? Don't forget to support and clap, let me know that you are with me on the road of creation. Keep this enthusiasm together!

logbook icon
刘果 | Guo Liu“To change something, build a new model that makes the existing model obsolete.”
  • Author
  • More
游记
2 articles
分布式信息网络
9 articles
纽约诸法门
3 articles