How can one make the Internet great again with the help of GeeSome and IPFS protocols for decentralized social networks?

Nick Popeka
Geesome
Published in
9 min readAug 20, 2019

The Galt Project team is deeply concerned with a dramatic surge in censorship and blocking in social networks and on media platforms. We believe that freedom of communication and the right to exchange information — are fundamental rights of every individual. In this and subsequent articles, we’ll discuss GeeSome — an open-source protocol for decentralized IPFS-based social networks. We’ve designed GeeSome for free communication between members of any community in encrypted chats, exchanging pictures, videos, texts, or other data without the risk of facing censorship or blocks.

Our data is not ours anymore

In the beginning of the Internet, it was the territory where the absolute freedom governed. An individual with some basic knowledge of HTML, administration, and computers could create their personal web page and share any information — like articles, books, and photos — with their friends and the rest of the world.

Back then, the author of this article ran his own server, and no one could delete or modify the data stored on it without his consent. The number of users grew, which lead us to the introduction of centralized social networks, forums, blogs, and messengers. Specific technical knowledge and skills ceased to be necessary, and the Internet’s entry barrier fell to zero. The price we paid for that was immeasurably high. We exchanged the most important thing we had — the right to own and manage our information — for the sake of simplicity and convenience.

Modern centralized services have a close-to-absolute right to manage the information published by their users. They can:

  • delete your new or old post and deprive you of important information;
  • block you and cut your access to your user account. After that, you won’t be able to communicate with your friends via your personal web page;
  • delete your web page and, as a result, void everything you’ve made to generate content, gain followers, and create a community.

Moreover, it’s not only a user who faces these problems but a business as well. These days, almost every business owner has a social network page to promote a product or service. Your business can be built around your social network page, blog, or a messenger bot, which allows you to earn money. However, it may end at any moment.

Each day, the cases of the kind grow in number:

This will go on as long as they have software capabilities to manage their users’ accounts and information, which is stored only on those platforms and nowhere else.

The problem of keeping third-party information

As a user of centralized services (Instagram, Youtube, Facebook), not only you produce contents but also consume it. The articles, posts, video, and music you liked are saved in your playlist so that you can access or share them any time. But as soon as their author or a centralized service deletes them, your access to them is immediately cut off.

The problem of data accessibility

The centralized infrastructure that processes requests from dozens and hundreds of millions of users is extremely complex from a technical point of view. This complexity is what makes the infrastructure itself vulnerable. Quite frequently, users can’t access some content because some failure has occurred or response time has significantly increased due to the surge in load. Rings the bell, doesn’t it? We guess it does. For example, these are the problems Telegram faces now when file uploading fails or files just disappear from your conversation.

The problem of unilateral changes in the user agreement.

The centralized services can make unilateral changes to the user agreement in any given moment. As a result, you can lose your content and subscribers if you’re a blogger or a business owner.

From corporations’ centralized control to users’ decentralized control through IPFS

How to solve these problems?

Publish your information (posts, photos, videos, etc.) and access it through a decentralized data storage rather than centralized corporate servers. You can start using a decentralized data storage having only a smartphone, computer, or personal server. Every device in such a network can store data and share it with other devices.

It’s time for us to get back our control over groups and their content back from Facebook, Instagram, Youtube, Twitch, and Tumblr! All we have to do to achieve this is the community of like-minded people. Together with your friends, you can use your devices to store your content and the content of people you’re subscribed to. Thus, we will ensure the accessibility of our information and its p2p exchangeability between devices. But how can we do this?

This is where IPFS may come in handy. IPFS is an open-source protocol, which makes it possible to put any information in a decentralized network of devices with installed IPFS nodes. The published information will be accessible as long as at least one node keeps it. The speed of access to the information is facilitated by close range (for example, if the storing nod and the recipient are in the same local network) and the number of devices, which keep it. Information is addressed with content addresses. Every posted IPFS file or data is assigned with a unique identifier — IPFS hash. Using a device with an IPFS node, a user can request this file and receive it from another device.

You can find more details on IPFS here. Unfortunately, IPFS doesn’t provide means for convenient operating with the data structures and interface common for social networks — user accounts, channels, groups, personal and public pages, posts, etc.

That’s why we’ve created GeeSome.

GeeSome personal node is a global decentralized network.

The GaltProject team is working on the project that will enable users to launch personal IPFS nodes with a user-friendly interface and to operate with a familiar environment: groups, posts, file storage. We named the project “GeeSome”.

With a personal GeeSome node launched, you can write posts in your personal blog, and your friends can subscribe to your blog updates via IPFS. You also can use GeeSome node as a file storage just like Google Drive. With the difference that no one can delete your files.

You can share access to your GeeSome node with your friends and family by creating accounts for them in your node and setting download limits. This functionality is similar to the Outline concept, where you host a server providing yourself and your friends with access to the proxy. However, when it comes to GeeSome, you can give access to a file storage divided into accounts and a social network node to run a blog and participate in chats.

For starters, we’re going to create a lite client similar to Telegram where no one will be able to block you or delete your content. You’ll be able to run your channel and other users — to subscribe to it. The difference is that you’ll be sure that no one will ever get in your way. The stability of your connection and data transfer rate will be dependent on you and you only — in contrast to centralized solutions, where you’ll have to wait a whole minute before a picture is sent to a chat.

Your data is yours only again — cryptographic protection of user accounts, channels, and groups

In GeeSome, every user account, channel, or group has a unique permanent identifier — IPNS. Each IPNS has a matching private key stored only on a user’s device. This means that modifying user account, posting information on behalf of the account owner on the personal page, public page, and, what is more, deleting it are the things only a private key holder can do.

Attention! A lot of projects claim they use decentralized solutions (blockchain and cryptocurrency). However, it’s just a nice cover for those who store private keys to user accounts on their servers and provide their users with an interface for operations only. So, using decentralized solutions doesn’t require a project to cease being centralized. An illustrative example here is Viuly, which claim that their project is a video hosting service based on the Ethereum blockchain technologies. In reality, the user has no control over their funds and content. Viuly is also keen on blocking everyone they don’t like deleting both their content and accounts.

Corporations will be able only to aggregate content

If we have enough power and get our content back, IT corporations like Facebook or Youtube will only search the content and aggregate it. No one will be able to steal your blog anymore! Sure thing, search engines and aggregators will still be capable of filtering content. They will choose which part of your content to show. But this problem is also solvable if decentralized search systems based on blockchain are used — for example, Cyber.

This way, the entry barrier for creating “aggregating social network” will be minimized. There’ll be no need to keep terabytes of content and maintain a costly infrastructure — everything will be in IPFS. All social networks will have to do is to show already existing content in a user-friendly manner. The battle for users will become even more fierce. If a social network blocks the content you want to see, you’ll quit and start using another network just like hundreds, thousands, and millions of other users. There you’ll be able to subscribe to your favorite author and read his or her content without changes made by the network. Or you’ll have an opportunity to see the original — get content directly from its creator via RSS avoiding interaction with the social network.

You can try GeeSome right now!

At the moment, the file storage and personal blog functionality is ready to use. You can install GeeSome node to your server, create a blog page there, create posts, and share the link to your personal blog with other people.

The GeeSome application and installation guide can be found at Github: https://github.com/galtspace/geesome-node

We’d be happy if you could put the star on the repository, fork it, or contribute the functionality you’d like to see. Subscribe to the updates from us on Telegram: @geesome

About Galt Project

Galt Project team spares no time and effort to provide users with decentralized communication with the help of GeeSome in its main project.

Galt Project is a project creating international decentralized land and real estate property registry, and a platform for self-governance for communities of homeowners on the Ethereum blockchain.

We develop technological projects to improve and better the way people live, manage their property, and interact with each other. Being among the first to use decentralized technologies, we truly believe that it will revolutionize society in technological, social, and economic aspects as well as erase the boundaries and inequality.

For more details, see https://galtproject.io/ and our Telegram group @galtproject and channel: @galtproject_news

--

--