For a decentralized social protocol to succeed, it must provide the seamless experience that current social platforms do, but it must also have the additional benefits of decentralization.
Written by: Ross Ulbricht, founder of the Dark Web Silk Road, currently serving his sentence in Tucson Prison, Arizona. Compiled by: Perry Wang
The centralization of social media networks has caused a lot of problems for social media platforms and their users. These include infringement of privacy rights and creating impossible tasks such as reviewing the content of billions of users.
I describe below a ” Decentralized Social Protocol ” (DSP) that can help solve or alleviate these problems by letting users control their content and making them responsible for value creation and transfer within the network. By allowing users to choose from among many interface providers, content servers, and advertisers, instead of having a single platform monopolize these necessary roles, this vision can be realized.
I will describe decentralized solutions for profile management, privacy protection, hosting, user interfaces, advertising networks, content filters, metadata, etc. In short, this covers all the basic components of social media.
Principle: Everything goes to the center
Needless to say, one of the main design principles of decentralized protocols is decentralization. However, the trend of centralization is very strong, and centers will be formed whenever possible. To predict where they will take root and grow, it is necessary to be farsighted.
Take the TCP/IP and HTTP protocols widely used on the Internet as examples. When they are adopted, they seem to be completely decentralized. Anyone can build a website, and anyone can access it, as long as it can connect to the Internet and an IP address. What could be more egalitarian than this? In the early days of the Internet, we saw the flourishing development that can be expected in such an environment.
But no one foresaw the network effect will play a leading role.
Now anyone can build a website that competes with Facebook, YouTube, Reddit or Twitter. But no one will use it. It may have better privacy protection, better features, and no ads, but it does not have another factor that brings insurmountable advantages to these technology giants: other users. Even if Google, which has a large user base, tried to compete with Facebook by building Google+, it ultimately failed after 7 years and billions of dollars.
In the TCP/IP and HTTP protocol environment, decentralization stops abruptly at the URL . Whoever controls the URL can control all the contents of the URL. As a result, URLs such as facebook.com, google.com, amazon.com have become some of the most powerful and most valuable companies on the planet.
Under the decentralized social agreement, we must go further.
In a social environment, the smallest, unconstrained unit is the individual, the user. Therefore, when we talk about decentralization, we are talking about all the decision-making authority and authorized up to the user to grasp. It is no longer enough to just give them the power to build a website and choose which websites to visit.
As the center of the spread in the growth wherever possible, and therefore to the center of the social protocol designers and developers must do everything we can to prevent centralization. Unfortunately, this requires imagination and effort. It is much easier to achieve incomplete decentralization, leaving the really difficult parts to others or filling in the gaps with your own centralized platform. Tech giants have achieved partial decentralization. They don’t generate content, so let the user do it. Decentralized social protocols must have their centralized functions, and design a system that also decentralizes these functions.
Who controls the content?
Information is fundamentally different from physical assets. Information can be copied almost for free, so when people talk about “owning” data , it can cause ambiguity. Copyright law exists to resist the inherent richness of information to prevent duplication (in order to protect the interests of content creators). Laws on classification and confidentiality also penalize people for sharing information without consent. However, P2P file sharing undermines these laws; and the emergence of whistle blowers also undermines secrecy laws. It becomes very difficult to control information and prevent the spread of information.
In a decentralized system, you cannot rely on a central agency to enforce such laws, so we must process information in accordance with pre-defined terms. The problem is not the user who owns the content we’re talking about, but about who is authorized to access the user’s content.
The default position of modern social media platforms is that the platform owns content and centrally controls access rights. Under decentralized social agreement, the content creator (user) should use encryption scheme involving key sharing to control access. Whenever possible (ideally), service providers cannot access unencrypted user content, only those who have been granted access by the creator can access it.
The encryption control completely in the hands of key holder, therefore, we can find the time to curb the center of the place, to the center of the social protocol in holding the encryption key location will be specified in our direction. As far as possible (ideally), the key must be in the hands of the user. Unless it is specially created for the public, all information, whether stored or transmitted, should be encrypted by default.
This is completely different from the current paradigm and is a fundamental change . With users in control of their own data, network effects lose their only foothold. If the composition of a variety of content and related social networks are managed in the protocol layer, the site will lose monopoly over the user’s head.
Once again (as in the early days of the Internet), anyone can build a competitive website or application, but this time users will control all their content and other content they have access to, instead of empty-handed. The user’s switching costs will be minimized because the new website will be just a new interface with the same content. Such an environment will promote the vigorous development of innovation, expand the range of users’ choices, and significantly improve all aspects of user experience.
Funding is crucial!
Social media platforms generate tens of billions of dollars in revenue each year, almost all of which are generated by advertising. Neglect funding question is very simple, so decentralized social service provider agreement invent their own business models, and users want at a lower switching costs, the provider can perform well and meet the needs of users. However, the assumptions built into the agreement have caused our world to become like this today.
We must face the fact that currency is the key element of centralization. Users bring advertisers, advertisers bring money, money provides funds for service expansion and development, and better services bring more users. This feedback loop is essential for funding, this feedback loop will attract everyone to the same service provider, its real business is to match ads to the user’s eyeballs.
This may be the most challenging part of the design of a decentralized social protocol, but it can also be said to be the most important. In any case, the user must be in the process of value creation and transfer of the heart. Given that user attention is the source of system value, this problem should be overcome.
Restructure social media
Considering the above design principles, let us look at the relationships between stakeholders in modern social media platforms and how to rebuild these relationships under the decentralized social protocol.
figure 1
Figure 1 depicts a component constituting four current platform-centric paradigm. There are three stakeholders: Platform (red), advertisers (green) and user (blue). Everything goes through the platform. The platform owns and centrally controls the content server, stores the content generated by the user through its interface, and extracts part of the content from the content for display. Crucially, the platform is the link between users and advertisers. Advertisers pay the platform to display advertisements to users, thereby generating clicks for advertisers. Under this architecture, the platform controls all the keys. It controls all the value generated by the system.
figure 2
Under decentralized social protocol support, the new system must be user-centric.
As shown in Figure 2, the user is the link between the other three stakeholders: the interface provider, content servers and advertisers. Instead of using the platform as a link between users and advertisers, advertisers directly pay users and place advertisements on the user interface through bidding. Then, interface providers and content servers will compete for this advertising revenue. It is no longer a single platform that provides an interactive interface, but many interface providers can provide their services to users. It is no longer the platform that owns and controls all content, but content servers compete to host users’ encrypted content.
Under the decentralized social protocol, users can control all keys and control all value generated by the system .
This user-centric paradigm requires rethinking how online services are designed and constructed. The current platform can be divided into three parts: content, user interface, and sometimes referred to as ” business logic “. Business logic is all the instructions used by the platform to collect relevant content and send it to the user interface for display. It is an algorithm for searching, sorting and processing content in real time. Recommendation engines, aggregators, and various forms of artificial intelligence AI are all business logic.
image 3
Figure 3 simplifies how to deliver content to users through the current centralized platform. The user sends a request through the user interface, and the user interface passes the request to the business logic server (steps 1 and 2). The server determines what content is needed, and then obtains it from the content server (steps 3 and 4). Then prepare the content to be displayed and send it to the user interface, and the user interface displays it to the user (steps 5 and 6). The business logic and content server are controlled by the platform and run on the platform’s computer, while the user interface (such as a browser or application) runs on the user’s computer.
Under the decentralized social protocol, because the interactive interface providers have no right to access the content, they cannot execute business logic on their own. This must be done on the client side through the so-called ” user client “.
The user client is just an application or browser plug-in that can execute business logic and manage the user’s personal data and wallet. Then, the function of the interface provider is only to send the business logic to the user client, instructing it to collect content and edit it for display through the user interface.
Figure 4
Figure 4 demonstrates how to operate the process. The user sends a request through the user interface again, and the request is passed to the interface provider’s business logic server (steps 1 and 2). Then, the interface provider sends the appropriate business logic back to the user client at the user (step 3). The user client executes the business logic-collects content from the content server as needed-and sends the output to the user interface for display to the user (steps 4 to 7). Step 6 performed between the user client and the user interface is executed locally on the user device. A single application or a browser with a decentralized social protocol plug-in can process the user client and interface at the same time, so from the user’s point of view, the user client may be “behind the scenes.”
For simplicity, advertisers are not shown in Figures 3 and 4. If the above operations are indeed running well, the business logic server has been connected in Figure 3, and the user client has been connected in Figure 4.
More complex relationships may also be established. For example, the user client can modify the initial request before sending it to the interface provider based on user settings, wallet balance, or any other locally stored information. All of these are not shown in the figure, so the figure only sees the basic reorganization of social networks.
What is a social network?
So far, we have been discussing design principles at a relatively high level. The rest of this article will discuss the decentralization idea how to run a social protocol in practice. Please treat them as the starting point for the discussion of this question, rather than the final answer.
In essence, what exactly is a decentralized social protocol? If we look at the major social media platforms, we will see that Twitter focuses on short public comments, Facebook emphasizes sharing with friends, Reddit focuses on niche communities, Instagram focuses on pictures, YouTube focuses on videos, and so on. We do not need eleven replicate a decentralized version for them, because they are essentially the same, the only difference lies in the different ways to communicate with others and share content. That’s it.
Starting from this level of abstraction to design a decentralized social protocol can not only simplify it, but also maximize its coverage.
All the social media platforms listed above, many of which already exist and some are yet to be imagined, should be able to operate on decentralized social protocols. The dimensions of these platforms (and any communication platforms) are as follows:
- Content type
- Content access
- Context
Content type
There is essentially no difference between video, picture, audio, text, or any other content type. They can all be degraded into the numbers 1 and 0 and need to be processed in the same basic way. Storage, access, context, and various metadata, regardless of content type, decentralized social protocols should be handled in the same way. Instagram, YouTube and SoundCloud are basically the same website, but their main content types are different. To the center of the social agreement should abstraction, so that everything can be supported, including new types of content (eg VR, tactile).
Content access
Public tweets, status updates to friends, group chats, private chats; they differ depending on who has access to the content. To the center of the social protocol you will need to use encryption to ensure that people have to get permission to view the content, but have to be flexible enough to make the interface provider can design a wide variety of content-sharing mechanism.
Public content is easy to handle because everyone can access it, so no encryption is required. In order to restrict access, we need encryption. One method is to use a symmetric password to encrypt the content so that only those who hold a specific key for the content can access the content, and then distribute the key to one (or more) parties that share the content using an asymmetric password.
Needless to say, this complexity will not show up in front of users. Users only need to know that new content has been shared with them.
By default, service providers (interface providers and content servers) cannot access unencrypted content.
Context
When it comes to the spread of the problem, the context is very critical. Depending on the context, jokes may become threats, and Kong Jing may become philosophers. All content has its own context. Therefore, the decentralized social protocol must have rich ways to capture the context as metadata so that the content can be presented according to the creator’s intention.
The context of the content is usually other content: video comments or “likes”, negative retweets, etc. A simple finger pointing at the quoted content is sufficient. However, this content and all content need to be classified.
A system needs to be integrated into a decentralized social protocol that can capture everything from subreddit to Moments, from LinkedIn-style websites to blogs. One way is to use tags. I recommend collecting context categories from the current platform and compiling a list of tags. These should not be hard-coded into the decentralized social protocol, but should be opened to service providers as documents for their reference and addition.
As usual, this complexity does not affect the appearance in the user’s field of vision. When users create content, they usually don’t consciously consider the context. They just know that they’re tweeting, posting on the cat’s meme subreddit, or clicking the heart icon next to their favorite video. The generated content should be automatically tagged according to the business logic of the interface provider used (see below for more information). In this way, no matter what interface is used, when users generate content, other interface providers will know how to interpret and display the content to their users.
Therefore, if someone “likes” your content on a Twitter-style website, and others “like” your content on a Facebook-style website, no matter which website others use, check your content Everyone at will see two likes.
By adjusting these three parameters can be used to the center of the social protocol to copy all the various platforms. More importantly, without the need to counter the network effect, other social media and communication services that cannot win audiences should now find that they can meet the needs of niche communities.
Someone might say that ” content constraints ” are missing from the three lists listed above. Isn’t Twitter unique to limit the length of user tweets to 280 characters? This is indeed the case, but the decentralized social protocol does not need to deal with content constraints, because it can be achieved through context.
For example, when using a Twitter-style service, the content generated with its interface (tweets) can be marked like this. This interface does not allow users to generate content with more than 280 characters, so all content marked as tweets in this interface must not exceed 280 characters. If a user wants to independently generate a tweet with more than 280 characters, this tweet-like service will not simply display it to other users.
Personal data management
The user is the key factor that brings life to the decentralized social protocol protocol. When processing user data, the main challenge to the center of the protocol is the name space. The centralized platform handles its namespace by putting a list of all registered user names in one place and checking for duplicates when users try to register new names. (Of course, users must re-register on each platform they use, and may find that their username registered on one platform is already occupied by someone on another platform).
For decentralized protocols, things are not that simple. There is no central list to query, and no central authority refuses to repeat.
However, we can give solutions to the aid of cryptography. Public key cryptography will enable anyone to easily create public and private key pairs through any interface provider. The public key represents your identity in the decentralized social protocol network, and the private key will be retained by your user client and used to prove that you are behind the identity. The public key is generated pseudo-randomly, so the chance of two people generating the same key is very small and can be safely ignored. Wow! Now you have a unique name and identity on the network. But perhaps almost no one wants to show their identity as a string of random appearances.
One way to deal with this problem is the same as in the real world: let people call themselves whatever they want, ignoring repetition. When you are not sure who you are dealing with, just check the other person’s unique ID.
Another approach is to create name server mechanism, similar to how to convert unique IP address is a unique domain name. In this case, the public key is similar to an IP address, and the user name is similar to a domain name. To achieve decentralization, user clients and interface providers can keep a list of all key/name pairs they encounter. When registering a new name, the user client will “ask around” whether the name already exists in any list. If not, then announce the generation of a new key/name pair. If the user encounters a name that has been reused in the list, the interface may use random numbers (1, 2, 3, etc.) or some other distinction to disambiguate.
Another solution is to use the recording key block chain does not duplicate / name pairs. However, registration is required on the blockchain. The trouble with this rule is that it erodes privacy. Blockchain must be public, but not all users care about the duplication of namespaces so much that they want the world to know their decentralized social protocol identity. They may only use decentralized social protocols to establish contact with relatives and friends, and disambiguation is not a big issue.
Registration fee block chain also need to block chain native tokens denominated. This brings trouble to promotion, because after new users have used modern web platforms for free for decades, they can’t expect them to pay for the use of decentralized social protocols (see below for more information). The right to choose should be in the hands of users, not what they have to consider and deal with, but what their user client or interface provider should do. Whether it is a blockchain, a name server, or just asking friends added to the network, there is a trade-off between cost, privacy, and centralization. At the bottom, we can solve this problem with the public, but the interface provider must find a way to deal with problems matching the user name and public key.
Reputation management
Now that we have user profiles, let’s take a look at how these user profiles are related to each other. In an ideal world, social networks will become a place for civilized and rational discussions on the basis of mutual respect and dignity. Obviously, we are not living in a perfect world. Social media users are more like thugs, and platforms are feeling more and more pressure and can only post moderate content. The platform found itself unable to decide what content to allow and disallow billions of users. No matter what they do, it will make some users feel frustrated.
To the center of the social protocol by scoring realize that responsibility to the center, to avoid this problem to the user reputation. Each platform no longer issues orders to the entire user group, but keeps a score sheet that is liked or disliked by other users, and shares the list with other people on the network. The idea is called trust network (Web of Trust, WoT), which is a bad behavior will affect the system’s minimized nice, simple way. It is an online version of what we do in the real world.
Suppose someone on the edge of your social circle invites you to have coffee. How do you judge whether you should accept it? You ask the people in your circle who have the right vision in your mind. If everyone says he is aggressive or boring, then you may not go to the appointment, if they comment very positively, and vice versa. WoT works on the same principle. Instead of putting all your trust on a platform, it is better to get a lot of input parameters from people you already trust in the network, and they get input from you. Of course, WoT is handled at the protocol layer, so users don’t need to worry about specific issues.
When designing a WoT landing mechanism for a decentralized social protocol, you need to be extra cautious. It should be as abstract as possible to accommodate unforeseen applications and place decision-making power on the user’s side. The working mechanism may be like this: suppose a user named spambot2020 keeps posting links to the get rich quick project in your carefully crafted public message. You should be able to mark these unpleasant content as “spam.” The contents of this account will no longer be shown to you. More importantly, it will not appear in front of people who trust you. The tag may be another piece of content that is tagged and shared according to the content access and context system of the decentralized social protocol.
Not all decisions can be as easy as marking an account as spam, and blocking all posts in an account may not be the best option. Fortunately, WoT has a high degree of flexibility, allowing each user to determine how to interpret and process the logo in their network. Indicia may have different labels (e.g., spam, pull hate, fine bars, the robot, like, smart, funny), and may be weighted differently according to the user’s preference. If someone you trust strongly trusts other people who like a song, then you might also like the song. Your own logo and other people’s logos are automatically added together to help interface providers determine what to show you and how prominent they are.
Existing platforms have already done this, and each platform has its own proprietary algorithm. Under decentralized social protocol, underlying architecture and content WoT layer controlled by the user, so they can choose any desired interface, interface providers will have a greater variety and more choices.
This reveals the true charm of WoT: there is no centralized point of view. If I mark someone as a lever, these people are just levers in my eyes. This is not the “truth”. Some users can accept my judgment and weigh the alleged leverage, while others can ignore it, while others can treat this label as a positive review and treat it as a “badge of honor.”
The key is that each interface provider will choose how to filter and display content. In turn, users will be able to choose from a very rich selection of options, and even change the filtering criteria and interface according to their mood every day or from time to time. No one will complain about being unfairly gag or review, because each user has a voice, and every other user has the right not to listen to him / her.
However, WoT is not only used to filter out inappropriate content. It is also a decentralized system, can help users choose trusted business partners. As will be seen below, WoT will have unlimited value in solving the problem of how to create and transfer value between users, advertisers and service providers.
Value creation and transfer
Social media platforms make money by selling advertising spaces. Their platform is free and open to the public, but in addition to user-selected content, it also contains advertisements. It is controversial that the platform uses users’ personal data and content to classify advertisements so as to help advertisers target potential customers more accurately. Under the decentralized social protocol, service providers cannot access user content, but users can. So, if we are to fully realize decentralized social media, we need to redesign this has been very successful advertising-driven business model.
Currently, the platform acts as a trusted intermediary between advertisers and users. Advertisers pay for the platform and believe that their advertisements will be shown to the types of users of the agreement at the frequency of the agreement. Advertisers are beginning to value the platform that brings the most traffic to their links, but what they really value is users. Users watch brand advertisements, click on them and finally make a purchase, or do what advertisers want, it is users who create value. Users create value and should therefore be paid to the user.
However, platforms can indeed provide valuable services for advertisers, so we must ensure that decentralized social protocols can do this. For example, a decentralized social protocol must ensure that advertisements will not be placed on a bunch of fake accounts. Those fake accounts may be established just to collect advertising revenue, and what it needs to do is to show the right advertisements to the right users. This is where WoT comes back to play with elegant solutions.
This may be the case: an advertisement bids for an ad slot for each user that matches its positioning, and the user earns revenue from each advertisement displayed on his screen. The user’s client uses a password to sign the advertisement, and then sends it to the advertiser, so that the advertiser can know that their advertisement has been seen. If a user clicks on an ad, the advertiser also knows this, because the user has logged on to the advertiser’s website. If the user performs what the advertiser wants them to do (such as making a purchase or clicking a link), the advertiser will send the user a signed receipt containing the value of the user’s action, when it occurred, and other metadata.
This means that, at each step used by the user, has proven its value creation, they can openly share these values, in order to attract more advertisers to bid for its advertising. Signed receipts are like trust tokens in WoT. If users try to deceive the system and sell advertisements to themselves through virtual accounts, there will be no impact, because these virtual accounts will not establish any trust relationship with real advertisers, and they will be ignored. Therefore, the more times a user clicks on an advertisement and follows the needs of advertisers, the more he can prove to other advertisers that he is a good investment target and can make more money. In a sense, this kind of advertisement is more targeted than the advertisement provided by the current platform, and it will never share the user’s content or violate their privacy.
There is a problem with this architecture, but cryptography can provide a solution again. Users may want advertisers to know that they clicked on the ad and logged on to the website and spent $300, but if the website sells certain drugs or accepts donations for a political party, users may not want to be known. Technically, users can choose not to disclose tokens from such sites, but in any case, all these complexities should be hidden from users. We don’t want them to have to make such a difficult decision every time they click a link.
Instead, it should create a user profile is not public, the main link to the user’s profile, designed for user interaction with an advertiser. Therefore, the user’s reputation and value to advertisers will be associated with the randomly generated public key. Advertisers will know the user’s shopping and clicking habits-very useful information for customer positioning-but will not know who they are, or what they do and share on the decentralized social protocol.
Advertisers may not analyze and bid on users individually. Experts can certainly package users into different categories in different ways (based on users’ anonymous public personal data) to cater to advertisers. However, this should not cause centralization problems. There are few barriers to entry for such experts, because the underlying WoT data is decentralized and public.
An unresolved question is what kind of payment system to be used to do all the work. I don’t think that decentralized social protocols should answer this question, but should let third-party developers create plugins. The initial plug-ins of popular payment systems that support micropayments can be developed together with the decentralized social protocol to promote the launch of the decentralized social protocol. The better approach is to be deployed to the center of the payment agreement (DPP).
service
Now that users have money in their hands, we can discuss how to pay for the necessary decentralized social protocol services in a decentralized manner.
Content storage and access
One service center platform provides on-demand storage and delivery of content. Data centers scattered around the world are dedicated to this task. Because the decentralized social protocol must be truly decentralized, the service must also be decentralized. There cannot be a single entity responsible for this work. Anyone must be able to provide this service with a very low threshold, and users must be responsible for how to process their data. With users in control of advertising revenue, a fierce competition can be launched, and content servers will try to deliver content as cheaply and as fast as possible in this market.
In practice this may work: the user searches for a piece of content, such as the “Charlie bit my finger” video. The content server responds with a quote. The user client weighs response speed and price, and then sends the payment to the best server, where the content is delivered. Of course, all of these algorithms will be treated in an instant, without human intervention.
Setting up a content server should require very little technical skills. To this end, people who are already running network services can install software and use their excess storage space and bandwidth. Even home computers and devices can implement this function.
WoT can be used to help the system run more smoothly. Content servers and users that trust each other can more easily exchange content and make payments without having to bid for each content and conclude a transaction. Essentially, the content server can grant a series of credits to users who follow the agreement to establish a reputation, or to new users they want to establish a WoT connection with.
Both parties can experiment with different algorithms. It is possible to deploy explore/exploit (E/E) algorithms for users who are looking for the cheapest, fastest and most reliable server on the network. On the server side, they want to store the most valuable content that can be stored: the most visited content .
The specific operation in practice will be very complicated, because access (demand) is subject to availability (supply). Becoming the only server with 1,000 daily views of hosted content, better than one of the million servers with 1 million daily views of hosted content. The server will try to use different algorithms when grabbing business.
However, some content may be accessed infrequently, so no server is willing to host them. Perhaps it is a private message between two people, which is rarely reread. There will be a charge for storing such content.同样,服务器可以争夺存储您存档内容的特权。用户在这些情况下需要多留一些后手,以免托管其内容的唯一服务器宕机。
在这种安排下,我们可以预期,数据存储和访问的费用将非常便宜,等于或接近于成本。假设可以以零边际成本使用多余的服务器容量,并且可以在获客和WoT 打分上获得一定的价值,那么某些情况下甚至可以免费提供数据服务。
用户界面
当然,去中心化社交协议难题的另一个至关重要的部分是用户与网络交互时的 体验。就是我们大多数人在想到社交媒体时所想到的:内容流、朋友列表、收件箱、主页、头像、论坛、聊天窗口等。不出所料,平台利用其掌控的数据集,垄断了数据的用户体验。例如,只有一个地方可以查看您的Facebook 个人资料,即facebook.com。
必须在去中心化社交协议下将其实现去中心化,那样任何网站或应用都可以显示您的内容,但无需访问该内容。由于用户可以控制自己的内容,因此他们从界面提供商那里所需要的全部内容就是与该内容进行交互的、直观且令人愉悦的方式。任何人都应该能够设置服务,并尝试以不同方式让用户生成其内容,并与其内容进行交互,而不仅仅是只能在twitter.com 上访问的Twitter 页面布局。
想象一下一个Facebook 风格的主页。左侧是您的朋友列表,中间是您朋友们更新的信息提要,右侧是一些广告。假设您正在通过平板电脑上的应用查看该内容。当您打开应用时,将从界面提供商那里提取业务逻辑,该界面提供商告诉应用如何生成页面。基本信息,如个人资料、密钥和钱包,作为应用的一部分,与用户客户端一起存储在本地。如果是全新安装的应用,并且您之前已经有预置的个人资料,则该应用将从内容服务器中提取加密的用户资料,而您必须输入密码。
该应用将接受广告商的最高出价、对您的钱包授信、并在右侧显示广告。它将从内容服务器中提取您的朋友列表,以及相关的内容,例如您被授予访问权限的图片和帖子。该应用将使用从界面提供商获得的业务逻辑中的算法,对所有内容进行 排序和显示。
为此,界面提供商可以 收费,用户可以由产生的广告收入支付。与内容服务器一样,由于用户的转换成本非常低,可以预期界面提供商之间会出现激烈的竞争。因此,用户和广告商不会去控制内容和界面的平台,而是广告商、内容服务器和界面提供商都会去争取用户,激烈争抢用户的注意力和价值。
这种设计带来的一个问题是,依赖于访问用户内容的服务将成为不可能。例如,如果用户私人消息已加密且分散在多个内容服务器上,那么用户如何通过关键字搜索其这些私人消息?理想情况下,我们不会打开潘多拉魔盒,允许服务提供商访问内容,即使是在为用户提供服务的幌子下。我们就这样陷入困境。值得庆幸的是,通常会有一个创新解决方案,使用户既保障隐私又具备实际功能。
在上面的搜索示例中,界面提供商可以向用户客户端发送一种算法,使用关键字为用户内容编制索引,并将该索引存储在仅用户可访问的 单独文件 中。当用户想要执行搜索时,她/ 他的用户客户端会pull 体量较小的索引文件进行搜索,然后仅pull 出与索引中关键字匹配的内容。
这是一种 以用户为中心而不是以服务为中心 的工程范式。它可以保护隐私,并且随着用户端处理能力的不断扩展,对于多数应用来说,将用户置于事物的中心不会是问题。
但是在用户眼中,主要区别在于记住并保护其密钥安全词的责任。如果用户忘记密码,则没有平台可以重置。解决此问题的任何其他解决方案都会让第三方可以访问您的内容。
也许可以部署多 签名加密方案,在这种机制中,几个受信任的合作方可以恢复一个人的密码。这种方式下,任何人都无法独自访问或访问您的内容,只有当您需要恢复密码时才会。
最终,以用户为中心的系统 将权力赋予用户,而权力伴随着责任。考虑到近年来各大社交平台的黑客攻击和数据泄露事件,用户会期待以上解决方案及其带来的自主权。没有人比您自己更关心您的隐私和安全。
边缘用例
我们知道社交媒体平台是可以盈利的,因此按总金额计算,广告收入是超过平台提供所有服务的成本。因此,我们预计绝大多数个体去中心化社交协议用户获得的广告收入,足以支付 其内容服务器和接口提供商的成本。不过看一下三个边缘案例还是很有启发性的。
在一种极端情况下,某些用户可能无法产生足够的广告收入来支付其费用。一种可能的情况是,如果用户从未点击过广告,则广告商最终将停止付费以显示这些广告。不过,品牌广告商可能仍然愿意支付很少的费用,从而允许一些内容交付。在最坏的情况下,这样的用户可能会简单地保管自己的内容,而忽略了服务提供商所带来的便利性。或者更好的情况是,他们可以自己成为服务提供商,并有足够的收入来满足自己的去中心化社交协议使用需求。
在另一种极端情况下,可能有一些用户对广告商来说非常有价值,以至于他们带来的广告收入超过了支付使用各种去中心化社交协议服务所需的成本。鉴于社交媒体平台从网络效应中受益,创造了数十亿美元的利润,因此可以合理预期,许多用户将通过使用去中心化社交协议并与广告客户进行互动而获利。
我们考虑的最后一种情况是一些 离群索居的用户,他们宁愿看不见广告不收取任何广告收入,而自己掏腰包为去中心化社交协议服务付费。这样的用户将不得不自己为他们的去中心化社交协议钱包充值,充值金额将慢慢耗尽。
内容问题
每个问题的解决方案都为一系列新问题播下了种子。以内燃机为例。内燃机是对马力能源的巨大改进。它消除了城市街道上的马匹粪便,释放了资金并极大地扩展了人类的能力。没有人愿意回到马车和犁的时代,但是我们确实得处理空气污染、汽车碰撞和其他问题。如果电动、无人驾驶汽车能够解决这些问题,我们可以确保它们最终将成为我们子孙后代必须解决的新问题的源头。
去中心化社交协议有助于解决网络效应和社交媒体平台中心化带来的问题。一旦被采用,没有人会想回归到没有隐私、只有一个界面选项的时代。但是毫无疑问,我们会遇到一系列新问题。一个显而易见的问题——我们终将要处理的问题,我称之为「内容问题」。
如上所述,我们可以期望去中心化社交协议成为不存在审查的领域。如果一个界面审查了用户的内容,那么用户可以转移到另一个不审查用户内容的界面。如果这个用户是在指出侵犯人权行为,或只是在行使言论自由,那自然是好事。但是,并非所有内容都是可以自由出街的言论。有些内容是有害的,因为它会直接或间接导致无辜的人受到伤害。一个明显的例子是恋童癖。
如果去中心化社交协议因成为传播这种内容的工具而闻名,没有人会希望与它扯上任何关系。界面提供商、内容服务器、广告商和去中心化社交协议背后的开发者不会为此贡献自己的才能和资源。普通用户将无法获得上述去中心化的所有好处。 去中心化社交协议将一败涂地。
可以说,内容问题是由作为去中心化社交协议核心的 加密技术 引起的。如果去中心化社交协议不加密用户内容,则内容服务器可以扫描有害内容并将其拒绝。但这会破坏每个去中心化社交协议用户的隐私,其中大多数是普通的守法公民。为了解决内容问题,我们需要一种方法来识别正常内容汪洋大海中的有害内容,而无需访问或看到其中的任何内容。从表面上看,这似乎是不可能完成的任务。
不过,我在这里提出了一种称为 零知识人工神经网络(ZKANN) 的解决方案,该方案使用密码学和网络机器学习来做到这一点。归根结底必须开发类似的东西,来解决内容问题。
总结
当今的社交平台在吸引用户注意力及其创造的价值方面拥有巨大的影响力。平台通过网络效应将人们锁定,可以迎合广告商,甚至以牺牲用户利益为代价。平台已经开发出复杂算法来利用人类心理中常见的弱点。虚荣、偷窥和愤怒,使用户一直盯着屏幕,点击,刷屏和轻扫,想看到更多,而这些都会显示更多的广告。
在去中心化社交协议下,每个人受到的 激励 与服务用户保持一致,用户会使用最重视他们的界面。就我个人而言,我想使用让我感到平静、快乐,并与我关心的人和内容保持联系的界面。
去中心化社交协议要取得成功,必须提供目前社交平台所做到的 无缝体验,但又要具有去中心化带来的 额外好处。加密、内容服务器、小额支付、ZKANN 和广告网络的复杂性,必须从普通用户的视野中消失。用于所需要知道的就是该系统可以 正常工作,有时他们的钱包里甚至还有一些多余的钱。
在许多方面,去中心化社交协议都是早期互联网愿景的兑现,但我们不是去中心化到域级别,而是 全面去中心化给用户,将控制权和隐私权交到他们自己手中。
顺便说一下,我没有对去中心化技术的现状和最新发展进行具体调研。在监狱牢房内进行一部分调研是很困难的,而全部做到是不可能的。我确信上面的许多想法都不是新鲜事物,但我希望我的想法对将来构建和使用去中心化社交协议的人有所帮助。