explicitClick to confirm you are 18+

IPFS - Introductory Concepts

museJun 17, 2018, 8:20:36 PM
thumb_up43thumb_downmore_vert

For a technical introduction to installation of IPFS with linux see IPFS - Linux Install.


InterPlanentary File System

For the readers of my other blogs, you will know that I think that the protocols and the algorithms that we use in everyday life tend to affect us, our relationships and our independence in ways that we don't often notice when we first start using those algorithms or protocols. Often we don't even know what algorithms or protocols we are using, or what algorithms and protocols are being used by the services that we use, but these things can shape us and shape our societies. This is why I am an advocate of what I like to call Tech Sovereignty: that is, using tech in a way that allows us to be individuals, not dependent on corporate entities. Sovereign Individuals. IPFS is a new technology that I believe has the power to help us to this end.

IPFS stands for InterPlanetary File System, but it is much more than a file system, it is actually an equivalent to the World Wide Web.  IPFS likes to style itself as "The Permanent Web" and that it is nearly impossible to censor. Indeed, it is extremely difficult to censor IPFS, and the more popular it becomes, the more difficult it will be to censor. All you need is one "Gateway" into the IPFS network, and all the data on the IPFS network is available. It is exceedingly difficult to censor the IPFS network because the network is peer to peer, like Bit Torrent, whereas the traditional web is based on a client/server model.

A client/server model makes a very sharp distinction between two people on the internet. One person distributes information to the other, and it's more or less a one way relationship. Because small scale heirarchy repeated over and over again leads to large scale heirarchy, this client server model has a tendency to make the web heirarchical and even to entrench power around a few major tech corporations such as Google, Amazon, Facebook, Apple etc. In contrast, peer-to-peer networks like IPFS allow all people to share equally with each other, anyone who downloads information can instantly reshare that information with others, you might log on to a video site, for example, download a video, and then reshare that video from your own computer. This has the end result of taking a lot of power away from large tech companies, and it also grants you Tech Sovereignty, as you can share data more easily from your own computer, without needing to subscribe to services with a large corporation like Google.

IPFS Distinctions

1. Peer to Peer, Distributed, Decentralized. These terms are all more or less synonymous. These terms basically mean that each person on the network has an equal weight. Nobody is privileged above anyone else. This is accomplished by allowing connections to multiple people, and by making the barrier to entry extremely low. You don't need a fast server to join the network. Anybody can join the network. The network isn't fast because there are really fast supercomputers in a Google data center, the network is fast because you can download files from hundreds of people all over the world at the same time. Your neighbor might download a website, then when you connect to it the next day, your neighbor may have it still cached/saved on his computer, meaning that you can download it really fast, straight from your neighbor.

2. Content Addressed. This point might actually be a little confusing. Content Addressed means that every file with the same content has the exact same name, this name is a long, unique computer generated hash. This hash is not really human readable, but this does not matter, because you can hide the hash in a nice understandable name. The advantage of having a file addressed according to a single "hash", rather than a location on certain computer/server, is that it makes it a lot easier to share data with your peers, because there is only one name for that file. Note the two links below, they have a different name, but they go to the same place, therefore, having very long hash names is not a problem, because in ordinary situations, they don't need to be seen.

nice_picture
QmbB7Z8xVTLNrhiCWSHZ7me3MjzTXNhvcJi81Stio56akr

3. Almost Uncensorable. Once you are connected to the IPFS network, you can very quickly connect to hundreds of other people around the globe to share files. It would be extremely difficult for a government to block ALL those people from making connections with you. They would probably have to shut down the Internet altogether. At this early stage of adoption, because there are not a lot of public gateways, it could be possible to censor the IPFS network by blocking all the gateways. But note, you cannot censor one file on the IPFS network, you would have to block gateways, which prevents access to the entire network.

4. Cryptocurrency friendly. Filecoin is the cryptocurrency intended to be used with IPFS, but the two technologies are independent and do not require each other to succeed. Filecoin is a crypocurrency intended to motivate others for storing your files. Perhaps you want to start a website, and you do not yet have a name for yourself, if you don't want to host files on your own computer, you can use Filecoin to encourage someone else to host the files for you. Or you can pay two dozen people so that your website gets served extra quickly.

Conclusion

This is an introduction to the basic concepts of IPFS, why it matters, and how it could seriously change the way the internet works. It has the potential to destabilize storage solutions by large providers such as Google and AWS(these companies obviously have other sources of revenue too), by essentially lowering the barrier of entry to all people and making file sharing really easy. I will go in further detail in later posts, showing people how to get set up. But the easiest to use tools are still in development.