# Sistema de archivos interplanetario

El Sistema de archivos interplanetario (IPFS, del inglésː InterPlanetary File System) es un protocolo y una red diseñados para crear un método p2p (peer-to-peer) direccionable por contenido para almacenar y compartir hipermedia en un sistema de archivos distribuido. IPFS fue diseñado inicialmente por Juan Benet, y ahora es un proyecto de código abierto desarrollado con la ayuda de la comunidad.

## Descripción

IPFS es un sistema de archivos distribuidos punto a punto que busca conectar todos los dispositivos informáticos con el mismo sistema de archivos. En cierto modo, IPFS es similar a la World Wide Web, pero IPFS podría verse como un solo enjambre de BitTorrent, intercambiando objetos dentro de un repositorio manejado con Git. En otras palabras, IPFS proporciona un modelo de almacenamiento en bloques de alto rendimiento y contenido direccionado, con hipervínculos dirigidos al contenido. Esto forma un grafo acíclico dirigido (DAG) y de Merkle generalizado. IPFS combina una tabla de hash distribuida, un intercambio de bloques incentivado y un espacio de nombres de autocertificación. IPFS no tiene un punto único de fallo, y los nodos no necesitan confiar entre sí, excepto para cada nodo al que están conectados. La distribución de contenido descentralizada ahorra ancho de banda y previene ataques DDoS, contra lo que HTTP tiene dificultades.
Se puede acceder al sistema de archivos de varias formas, incluso a través de FUSE y de HTTP. Se puede agregar un archivo local al sistema de archivos IPFS, poniéndolo a disposición del mundo. Los archivos se identifican por sus valores hash, por lo que es fácil de almacenar en caché. Se distribuyen usando un protocolo basado en BitTorrent. Otros usuarios que ven el contenido ayudan a brindar el contenido a otros en la red. IPFS tiene un servicio de nombres llamado IPNS, un espacio de nombres global basado en PKI, que sirve para construir cadenas de confianza, es compatible con otros NS y puede asignar DNS, .onion, .bit, etc. a IPNS.

## Historia

En 2014, IPFS aprovechó el protocolo de cadena de bloques de Bitcoin y la infraestructura de red para almacenar datos inalterables, eliminar archivos duplicados en la red y obtener información de direcciones para acceder a los nodos de almacenamiento para buscar archivos en la red.
Existen implementaciones en Go y JavaScript, y la realización de una versión sobre Python está en progreso. La aplicación de IPFS en Go se considera la implementación de referencia mientras se desarrollan las especificaciones formales.

## Usos

* Las bibliotecas fantasma Archivo de Anna y Library Genesis también ofrecen la descarga de libros a través de IPFS, permitiendo que las bibliotecas sean más resilientes.
* Brave utiliza Origin Protocol e IPFS para alojar su tienda de productos descentralizada y, en 2021, agregó soporte a su navegador.
* El sistema de identidad autosoberana de Microsoft, Microsoft ION, se basa en la cadena de bloques de Bitcoin y en IPFS a través de una red DID basada en Sidetree.
* Filecoin es una nube de almacenamiento cooperativo basada en IPFS, creada por Protocol Labs.
* Cloudflare tiene una puerta de enlace web distribuida para simplificar, acelerar y asegurar el acceso a IPFS sin necesidad de un nodo local.
* Opera para Android es compatible por defecto con IPFS, lo que permite a los usuarios móviles navegar por los enlaces ipfs:// para acceder a los datos de la red IPFS.

### Anticensura

* El referéndum independentista catalán, que tuvo lugar en septiembre-octubre de 2017, fue considerado ilegal por el Tribunal Constitucional de España, y muchos sitios web relacionados fueron bloqueados. Posteriormente, el Partido Pirata Catalán replicó el sitio web en IPFS para eludir la orden de bloqueo del Tribunal Superior de Justicia de Cataluña.
* Durante el bloqueo de Wikipedia en Turquía, se utilizó IPFS para crear un espejo de Wikipedia, que permitía acceder a contenidos estáticos archivados de Wikipedia a pesar de la prohibición. El espejo se ha ampliado ahora a más idiomas, como inglés, ucraniano, ruso, árabe y chino. Se puede ver una colección de las réplicas utilizando su CID en una pasarela IPFS.