IPFS, sistema de fitxers distribuït per a la web

2021/03/01 Leturia Azkarate, Igor - Informatikaria eta ikertzaileaElhuyar Hizkuntza eta Teknologia Iturria: Elhuyar aldizkaria

Des de la seva creació, la Web està basada en ordinadors denominats “servidors”, en els quals s'emmagatzema el contingut i en els quals “serveixen” als usuaris quan se'ls sol·licita a través del navegador. Aquesta dependència dels servidors té desavantatges quant a velocitat, avaries, censura o conservació dels històrics. Per a superar-ho s'ha creat el sistema IPFS, que permet emmagatzemar còpies de fitxers repartides en molts ordinadors i servidors i servir entre tots. És un sistema tipus P2P, però renovat i amb moltes altres característiques d'interès. L'IPFS podria portar a la web el major canvi mai experimentat, la veritable revolució.
Ed. PIRO4D/Pixabay

Fa dos anys escrivim en aquest mateix apartat d'aquesta revista l'article titulat Descentralitzant la web. Allí dèiem com va sorgir una tela d'aranya perquè la informació i els continguts estiguessin descentralitzats i distribuïts, però amb el temps la major part es va anar concentrant en uns pocs nodes (i en poques empreses): webs de xarxes socials, programes de missatgeria, serveis d'ofimàtica online, cercadors i altres pocs llocs web estesos. Aquesta concentració planteja grans problemes: acumulació de riquesa, dependència, possibilitats de censura... Per a molts d'ells s'estaven creant alternatives descentralitzades (Mastodón, Pixelfed, Peertube, Nextcloud, Matrix...) que permetien distribuir la informació en diferents comunitats, cadascuna d'elles està en els seus servidors, però al seu torn poden comunicar-se entre si.

No obstant això, tots aquests serveis descentralitzats estan basats en ordinadors denominats servidors. De fet, el protocol HTTP, base de les comunicacions de la web, és una comunicació de tipus client-servidor, en la qual hi ha ordinadors servidors que emmagatzemen informació (potents ordinadors en la infraestructura de la web) i ordenadors clients que consumeixen informació. I per dependre d'aquests servidors es pot reduir la velocitat, interrompre, censura... Òbviament, el problema és menor en el model descentralitzat que en el centralitzat, ja que està repartit en més servidors, però existeix un problema.

IPFS o InterPlanetary File System

Per a solucionar aquest problema sorgeix el protocol IPFS i el programari lliure, les sigles del qual signifiquen InterPlanetary File System. Aquest protocol serveix per a allotjar i servir fitxers i continguts duplicats en molts ordinadors de tot el planeta, inclosos els dels usuaris.

A la vista d'aquesta definició, moltes són les xarxes P2P, com eDonkey o BitTorrent. I en realitat és com ells, però té diverses diferències. D'una banda, ha integrat diverses noves tecnologies que no existien en el moment de la seva creació (control de versions, sistema propi de noms de domini, conceptes de Blockchain, xifrat...). D'altra banda, sorgeix de la necessitat de millorar la web i no que el contingut audiovisual (pel·lícules, música...) protegit per copyright (pel·lícules, música...) pugui baixar-se i compartir-se d'una manera legalment incerta (encara que no pugui evitar-se el seu ús). Finalment, l'IPFS està pensat per a la web com a substitut o complement del protocol HTTP i integrar-lo en els navegadors de la web.

Amb IPFS, qualsevol persona que desitgi posar a disposició un contingut en la web (un document, un vídeo, una web...), no haurà d'aconseguir un servidor d'allotjament i pujar el contingut a ell: L'IPFS crearà un hash criptogràfic per a aquest contingut (una sèrie de caràcters identificatius del contingut) i es copiarà el contingut a altres ordinadors de la xarxa IPFS, de manera que els continguts creats per tercers es copiaran en un mateix. A més del contingut, es distribueix en la xarxa un document anomenat DHT (Distributed Hash Table o Hash Taula Distribuïda) que indica l'ordinador en el qual es troba cada contingut per a saber a qui demanar-ho quan algú necessita un contingut. Quan es requereixi un contingut determinat, es demanarà simultàniament a diversos nodes i s'obtindrà més ràpid. I com el contingut es troba en diversos nodes s'evita la censura.

En la web habitual s'identifica un contingut amb la seva URL, és a dir, http(s):// més el domini més la ruta del fitxer, i el domini està associat a una adreça IP del servidor. Doncs bé, en el sistema IPFS, ipfs:// més l'hash esmentat més la ruta del fitxer, s'identifica un recurs que sortirà de la taula DHT en quin node es troba. D'altra banda , en tractar-se d'una llarga sèrie de caràcters difícil de recordar l'hash, s'utilitza el DNSLink per a assignar noms més fàcils de recordar als hash. A més, IPFS està pensat per a guardar tot l'historial de la web. Si hem actualitzat un contingut concret que hi ha en aquest, no s'esborra el contingut antic, seguirà en la xarxa juntament amb el nou. Però per al nou contingut es crea un nou hash i, si es desitja, els anteriors també poden estar accessibles mitjançant el sistema denominat IPNS.

Disponible

IPFS va néixer en 2015 i per a utilitzar el sistema es van crear unes eines bàsiques per a continguts creatius i uns accessoris per a navegadors. No obstant això, no era fàcil que els usuaris ordinaris ho utilitzin. Per a donar resposta a això, diversos agents de la web van posar en marxa els passos a IPFS, que han permès utilitzar IPFS pràcticament des del principi. Per exemple, en el referèndum celebrat l'1 d'octubre de 2017 per a la independència catalana, després del tancament de la pàgina web del referèndum per part del Govern espanyol, es van col·locar en l'IPFS les llistes en les quals cada ciutadà havia de votar.

Al gener de 2021, el navegador Brave ha implementat la capacitat de baixada de direccions ipfs://, i s'espera que uns altres vagin sumant-se en breu. Fins al moment, l'ús de l'IPFS ha estat molt reduït i experimental, però es pot pensar que en posar-lo a disposició en els navegadors pujarà molt ús.

No obstant això, de moment no és possible passar la web actual completa a l'IPFS. De fet, la major part de la web està constituïda per llocs web dinàmics, és a dir, pàgines que es creen dinàmicament per programació a cada moment: segons les paraules de cerca i segons l'historial i perfil de l'usuari; les que proporcionen a cada usuari registrat la línia de temps de cada dia d'una xarxa social… El nombre de combinacions possibles és enorme i molt variable, i és impossible que totes elles entrin i es dupliquin constantment en l'IPFS. Els seus creadors afirmen que bàsicament l'IPFS també està pensat per a continguts dinàmics, però de moment no és gens clar que sigui possible en la pràctica. Per això, fins que hi hagi una solució per a les webs dinàmiques, almenys, l'IPFS no substituirà totalment a HTTP sinó que tots dos conviuran.

No obstant això, si les webs estàtiques, els continguts estàtics de les webs dinàmiques, la informació que algun govern vol prohibir, etc. passen a l'IPFS i poden beneficiar-se dels seus avantatges, podem dir que ja serà un gran canvi per a la web. La veritable revolució és que es pugui utilitzar l'IPFS juntament amb el protocol HTTP, l'única manera de posar a disposició i distribuir els continguts des de la creació de la teranyina.

Gai honi buruzko eduki gehiago

Elhuyarrek garatutako teknologia