¿Qué es IPFS (InterPlanetary File System)? Una guía básica

Traducido por Fran H

IPFS es el acrónimo de InterPlanetary File System (Sistema de archivos interplanetario, en español), un protocolo P2P ideado por Juan Benet con el objetivo de revolucionar la forma en la que gestionamos los contenidos en Internet. A grandes rasgos, IPFS es un sistema distribuido que conecta los dispositivos de una red permitiendo el almacenamiento de todo tipo de datos: sitios web, archivos, aplicaciones, etc.

En algunos aspectos, podría compararse con la WWW, aunque con ciertas peculiaridades. El modelo que ofrece IPFS se basa en la generación de hipervínculos que dirigen a contenido direccionado. Desde su origen, el proyecto ha perseguido una meta clara: crear una red global que garantice la conectividad, la privacidad y la seguridad.

En esta guía:

what is IPFS

Los problemas de la centralización de Internet

Internet es una red que se ha ido centralizando con el paso de los años. Su estructura estaba mucho más descentralizada hace un par de décadas, cuando los datos no estaban controlados por unas cuantas corporaciones. También es cierto que había menos tráfico hace 20 años y el boom de la economía 2.0 estaba por llegar.

La cuestión es que, gracias a la democratización paulatina del acceso a Internet, empresas como Google han aprovechado la ingente cantidad de información generada por miles de millones de usuarios. Por supuesto, redes sociales como Facebook o Twitter también se han posicionado como gigantes de la centralización.

No olvidemos que estas plataformas recurren a servidores para gestionar el contenido de sus usuarios. Todo lo que compartes en redes (fotos, vídeos, texto, audio, etc) está controlado por un puñado de compañías, tales como Microsoft o IBM. No cuesta imaginar qué ocurriría si una de estas empresas colapsara o sufriera una brecha de seguridad.

Por otra parte, tenemos a las autoridades gubernamentales. La centralización facilita la censura por parte de los gobiernos, e incluso pueden limitar el acceso a la red. De hecho, se trata de una práctica habitual en algunos países. IPFS es un sistema que podría aportar una solución eficaz a este tipo de problemas derivados de la centralización.


¿Qué es IPFS?

IPFS es un protocolo hipermedia P2P desarrollado por Protocol Labs. Se trata de un sistema descentralizado que permite el alojamiento de contenido mediante la distribución de una red de dispositivos. Se puede gestionar todo tipo de contenido: bases de datos, sitios web, documentos, aplicaciones, etc.

La recuperación del contenido alojado es posible a través de hipervínculos. En parte, se trata de un proceso similar al acceso de un sitio web mediante su URL.

Su funcionamiento también guarda cierta relación con el mecanismo de las redes blockchain. IPFS usa cientos de miles de nodos para aportar el ancho de banda necesario para almacenar los datos.

blockchain

Ventajas de usar IPFS

Los nodos son básicamente ordenadores que se conectan para dar forma a la red. En este sentido, IPFS permite la ejecución de prácticamente todas las tareas realizables en una red Web2, pero sin la necesidad de un espacio centralizado de almacenamiento de datos.

Se trata de una de las ventajas que aporta este sistema, aunque, según Protocol Labs, no es la única.

Velocidad

Actualmente, el funcionamiento de Internet se basa en el protocolo HTTP, el cual se limita a dirigir al usuario en una sola dirección.

El modelo P2P de IPFS permite la recuperación de paquetes de datos desde diversos nodos. De esta forma, se ahorra en ancho de banda, permitiendo una conectividad más eficiente.

Descentralización

Amazon y Google controlan cantidades astronómicas de datos vinculados a sus usuarios. Estos gigantes pueden gestionar a placer la información que le ofrecen voluntariamente. Además, pueden restringir el acceso a sus servicios o banear directamente a sus usuarios, impidiéndoles acceder a su propio contenido.

Pueden tomar estas medidas por iniciativa propia o a petición de terceros (por ejemplo, autoridades gubernamentales). No importa por qué, la cuestión es que los usuarios quedan expuestos.

El modelo P2P de IPFS asegura un grado prácticamente total de descentralización, lo que garantiza el acceso a la información y evita los mecanismos de censura de las redes y entidades centralizadas.

Seguridad

La descentralización es en sí misma una medida de seguridad ante los hacks, ya que impide que exista un punto concreto donde la red pueda ser atacada. Además, IPFS cuenta con dos mecanismos de seguridad que evita la acción de agentes maliciosos sobre los datos o la propia red:

  • Inmutabilidad. El contenido subido a la red no se puede alterar.
  • Asignación de un hash. Cada archivo cuenta con una huella digital única.

Eficiencia

Las ventajas derivadas de la descentralización garantizada por el protocolo IPFS se pueden observar en plataformas P2P como BitTorrent. Cada nodo de la red conserva una copia de los archivos, que pueden compartirse gracias al hash que los identifica y ubica. El proceso es similar al de la descarga de un archivo torrent.

Cabe destacar que la red realiza una sola copia de los archivos (cada una con su hash correspondiente) cuando se suben por primera vez a IPFS. Así se reduce significativamente la cantidad de datos a procesar, circunstancia que implica una menor necesidad de almacenamiento. Es decir, IPFS aumenta la eficiencia y accesibilidad de la red.

how does IPFS work

¿Cómo funciona IPFS?

Cuando se sube un archivo a IPFS, la red lo divide en pequeñas partes y las distribuye a través de los nodos. Estas porciones se pueden rescatar gracias al hash asociado al archivo. Esta etiqueta permite a la red identificar los nodos donde se alojan los paquetes de datos. En otras palabras, para recuperar un archivo, basta con introducir su hash en un navegador compatible (como Opera o Brave).

Es similar a buscar una página web introduciendo su URL. Una vez que se identifica el hash, IPFS solicita a los nodos la transmisión de los paquetes a través de la conexión P2P. Un punto a destacar es que, al igual que ocurre con una red blockchain, el contenido de estos archivos no se puede alterar en el proceso. Si algún usuario intentara alterar un archivo, cambiaría su hash.

En realidad, se pueden generar versiones, conectándolas con el archivo original (generando un historial del mismo totalmente accesible). Es una forma de evitar los efectos secundarios derivados de la inmutabilidad del contenido.


Almacenamiento: ¿Qué es un IPFS Object?

IPFS divide los archivos subidos en paquetes de 256 KB, llamados IPFS Objects. Cada una de estas fracciones contiene links que dirigen al resto de IPFS Objects correspondientes al mismo archivo.

El hash que identifica a los archivos (y sus respectivas porciones) se compone de 24 caracteres. Esta etiqueta recibe el nombre de content ID (CID). Esta etiqueta es verificada por la red cuando un usuario rescata un archivo. Si se produce algún error durante este proceso, lo más probable es que el archivo haya sido modificado.

Veamos un ejemplo. Digamos que has subido un archivo a la red IPFS desde tu computadora. Poco después, una usuaria llamada Alice lo descarga en su ordenador.

Pasado un tiempo, otro usuario llamado Joe busca el mismo archivo, que puede recuperar desde tu nodo, desde el de Alice o desde ambos. Cuantas más descargas tengan lugar, mayor será el número de nodos que puedan contribuir a cubrir la solicitud de descarga del archivo.

En cuanto a los IPFS Objects, la red los elimina de los nodos de forma periódica, aunque se puede evitar fijando un archivo permanentemente en un nodo. En este sentido, es posible suscribirse a una nube compatible con IPFS para mantener la accesibilidad permanente de ciertos datos en la red IPFS.

IPFS how to use

¿Cómo usar IPFS?

Brave Browser y Opera son compatibles con IPFS. Se puede copiar y pegar directamente el CID en la barra de búsqueda de estos navegadores. Puedes usar otros navegadores, aunque es probable que necesites instalar una extensión.

Los usuarios de Google Chrome o Mozilla Firefox pueden recuperar contenido compartido en IPFS vía Cloudflare-IPFS, IPFS.io y muchas otras gateways públicas. En el caso de Brave, permite el acceso local o público al contenido alojado en la red IPFS. Es preferible optar por el acceso a través de tu propio nodo si quieres verificar el contenido de forma local.


¿Cómo activar un nodo IPFS?

La forma más fácil de activar un nodo IPFS es usando el software oficial de IPFS (IPFS Desktop), desarrollado por Protocol Labs para los principales sistemas operativos, incluyendo Windows, Mac y Ubuntu.

IPFS Desktop es bastante sencillo de usar y cuenta con una amplia lista de tutoriales dirigidos a nuevos usuarios. IPFS Companion es una extensión que forma parte del software ofrecido por Protocol Labs, la cual permite la interacción directa con IPFS Desktop desde diversos navegadores: Chrome, Edge, Firefox, Brave y Opera.


Casos de uso y limitaciones de IPFS

Entre los casos de uso de IPFS, destaca el acceso a todo tipo de archivos desde cualquier lugar sin la intervención de entidades centralizadas que puedan ejercer censura. Se trata de una característica que aporta mayor eficiencia, seguridad, conectividad y accesibilidad gracias a su naturaleza descentralizada y su componente P2P.

El lado negativo de IPFS es la limitación a la hora de realizar búsquedas. Actualmente, IPFS podría compararse a Internet antes de la llegada de Google o cualquier otro buscador. A este problema habría que sumar la descentralización. Sí, aunque una red descentralizada aporta múltiples ventajas, también puede generar situaciones desagradables para los usuarios debido a la falta de regulación.

En este sentido, puede destacarse la ausencia de filtros que combatan la difusión de contenido sensible, noticias falsas o mensajes de odio. Es un riesgo que se corre en favor de la defensa de la libertad de expresión.

Como siempre, el camino hacia la libertad implica compromiso, autorregulación y responsabilidad. En cualquier caso, puede que Protocol Labs encuentre algún punto intermedio entre el control centralizado y el “salvaje Oeste” de la Web3.


Preguntas frecuentes

¿Qué es IPFS?

InterPlanetary Filing System (IPFS) es un protocolo hipermedia P2P desarrollado por Protocol Labs. Es un servicio descentralizado que permite el alojamiento de todo tipo de contenido (documentos, aplicaciones, sitios web, bases de datos, etc) en una red distribuida.

¿Se puede hackear IPFS?

Es poco probable. La red IPFS se compone de una ingente cantidad de nodos y no cuenta con ningún servidor centralizado que pueda ser objetivo de ataques.

¿Es IPFS una base de datos?

No. IPFS es un protocolo P2P y un sistema distribuido que permite el alojamiento de datos, archivos, aplicaciones, sitios web, etc.

¿Cómo se almacenan los datos en IPFS?

IPFS no cuenta con ningún sistema centralizado de almacenamiento. Usa cientos de miles de nodos que generan el ancho de banda necesario para alojar el contenido.

¿Para qué sirve IPFS?

El objetivo principal de IPFS es crear una red global que garantice la privacidad, la seguridad y la accesibilidad.

¿Es IPFS una blockchain?

No, IPFS no es una blockchain, pero comparte características similares con este tipo de redes, tales como la descentralización o la inmutabilidad.

Descargo de responsabilidad

Toda la información contenida en nuestro sitio web se publica de buena fe y sólo con fines de información general. Cualquier acción que el lector realice a partir de la información encontrada en nuestro sitio web es estrictamente bajo su propio riesgo. En Learn, nuestra prioridad es proporcionar información de alta calidad. Nos tomamos nuestro tiempo para identificar, investigar y crear contenidos educativos que sean útiles para nuestros lectores. Para mantener este estándar y seguir creando contenido impresionante, nuestros socios podrían recompensarnos con una comisión por las publicaciones en nuestros artículos. Sin embargo, estas comisiones no afectan a nuestros procesos de creación de contenidos imparciales, honestos y útiles.