Idea: Solid implementation on the Internet Computer

Objective

Enable people to own their personal data and share (some of) it with the services they want.

Background

The Solid Project is far from being the new new thing but the more I think about it the more I realize how much it is needed to bring the control of the Web away from big tech companies and give it back to the people.

Solid has been working on this for years but it has never managed to get significant traction. Some of the reasons might be:

  1. even though the technology to own your data was available, there was no significant amount of personal user data to own as this has always been greedily kept under control by the big tech companies
  2. users had to either host their own infrastructure (Pod Server) or trust third party providers that might not be so trustworthy
  3. user did not care about owning their data as there was no direct way of getting valuable services based on it nor significant monetization opportunities (at least at the individual’s level)

Now, for the first time, all the previous concerns can be addressed:

  1. from March 2024, the EU’s Digital Markets Act (DMA) has made it possible for users to get real-time and continuous access to their personal data that was previously controlled by big tech platforms. Imagine being able pull all your data from the services that know you better than your family and use it to create a personal knowledge graph that you own and that accurately represents yourself

  2. canisters on the Internet Computer enable people to own their data without trusting anyone and without having to maintain any infrastructure

  3. personal AI agents (Delphi, Kin, Pathaka, Personal, MultiOn …) are the perfect use case for providing users with valuable services based on their personal data. There is no personal AI without your personal data (and thanks to the DMA you will be able to access all your personal data)

This might give Solid another chance and in turn enable people to leverage their personal data for what is best for them.

Proposal

The Internet Computer is the ideal infrastructure to create a trustless network for personal data, where on one side there is people and their data, in the middle there is a data pipeline that turns the personal user’ data into knowledge, and on the other side there are companies that deliver better services to the people based on the insights that they share about themselves.

Implementing the Solid Protocol on the Internet Computer enables everyone to host their own Solid Pod in a canister.

A Rust implementation of the Solid Pod server is already available and it might be a good starting point, even though porting it to the Internet Computer would require significant changes.

Decision over which data to share would be taken by the individual user and enforced by their Pod canister. While enabling users to monetize their data might be a use case (as already tried by many in the past), I believe the services based on personal data that this network would enable would be much more valuable than the data itself.

All the Pod canisters, even if individually owned by each user, might be controlled by an SNS DAO, and services wanting to access a user’s Pod (to provide a better and more personalized service to the user) would have to pay fees to the DAO. These fees can then be used to pay for the hosting costs of the Internet Computer.

The privacy implications of storing people’s data on the Internet Computer are a great example of why VetKeys and AMD SEV are much needed.

Conclusion

The goal is to enable people to truly own their personal data and easily share it with others that might provide valuable services to them. Solid and the Internet Computer might be a great combination to bring the power over the Web back into people’s hands by enabling them to freely move their data in the digital world.

P.S. This is only a high level idea to start a discussion and understand the community’s feelings on this topic, both from a technical point of view but also from a user’s point of view (do you care about controlling your own data and leverage it to get better services?).

10 Likes

Thank you for writing up this proposal of implementing Solid on ICP, thus bringing the two initiatives together, using ICP as a decentralized protocol to implement Solid. This would be rather related to the ida of wallet apps that has been discussed in the community, where basically users own and control the canisters that hold their data.

5 Likes