0% encontró este documento útil (0 votos)
16 vistas27 páginas

IPFS

Este documento describe los sistemas de archivos descentralizados y cómo IPFS (Interplanetary File System) es un protocolo diseñado para crear una red de contenido distribuido y descentralizado. Explica los principios fundamentales de IPFS como el almacenamiento distribuido de archivos identificados por hashes y la red peer-to-peer subyacente. También analiza casos de uso de IPFS junto con blockchains.

Cargado por

Rafael Delgado
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
16 vistas27 páginas

IPFS

Este documento describe los sistemas de archivos descentralizados y cómo IPFS (Interplanetary File System) es un protocolo diseñado para crear una red de contenido distribuido y descentralizado. Explica los principios fundamentales de IPFS como el almacenamiento distribuido de archivos identificados por hashes y la red peer-to-peer subyacente. También analiza casos de uso de IPFS junto con blockchains.

Cargado por

Rafael Delgado
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

CONTRATOS INGELIGENES Y

APLICACIONES DESCENTRALIZAS
Almacenamiento
descentralizado
Limitaciones de los sistemas de
archivos tradicionales
Los sistemas de archivos tradicionales dependen
Escalabilidad de servidores centralizados para almacenar y
distribuir datos.

Los sistemas de archivos tradicionales están


Censura y robustez sujetos a censura y puntos únicos de fallo, lo que
puede resultar en la pérdida de acceso a datos.

Los sistemas de archivos tradicionales son


Seguridad y Privacidad vulnerables a violaciones de seguridad y exposición
de datos debido a su estructura centralizada.

Los sistemas de archivos tradicionales sufren


Eficiencia en la Distribución congestión y tiempos de carga lentos cuando se
distribuyen grandes cantidades de datos.
Sistemas de archivos
descentralizados
■ Sistemas de archivos distribuidos que permiten a
los usuarios compartir archivos directamente entre
sí sin depender de un servidor centralizado.
■ Se construyen sobre una red entre pares (peer-to-
peer, P2P).
– Los nodos contribuyen espacio de
almacenamiento y ancho de banda.
– Cada archivo se almacena, dividido en
bloques, en diversos nodos.
■ Mayor complejidad en la configuración.
Soporte computacional

Algoritmos de dispersión: Algoritmos criptográficos:


disponibilidad e protección frente a
integridad. modificaciones.

Autentificación
Algoritmos de consenso:
descentralizada: control
coherencia entre nodos.
de acceso.
Principios ■ Direccionamiento por contenido
– Los ficheros se localizan por su contenido, no por su
fundamentales –
localización.
Content-addressable storage (CAS).
del – Al igual que las redes P2P, utilizan una tabla hash

almacenamiento distribuida (DHT) para indexar y localizar los archivos


en la red.

descentralizado ■ Descentralización
– Los datos se trocean en fragmentos pequeños que se
almacenan de manera distribuida entre múltiples
nodos de la red P2P .
– Independencia del proveedor de almacenamiento.
■ Tolerancia a fallos
– Algoritmos de dispersión y consenso.
– Consistencia, coherencia e integridad.
Ventajas del almacenamiento
descentralizado
■ Descentralización:
– Datos almacenados entre múltiples nodos en la red.
– Datos menos susceptibles a la censura y a los puntos únicos de fallo.
– Datos accesibles incluso si se desconectan o censuran nodos.
– Mayor escalabilidad.
■ Eficiencia de ancho de banda:
– Duplicación y el almacenamiento en caché de archivos.
■ Integridad de los datos:
– Algoritmos de hashing para asignar identificadores únicos a cada archivo.
■ En consecuencia, menores costes en comparación con sistemas descentralizados.
Interplanetary File System - IPFS

■ Protocolo de red peer-to-peer diseñado para crear


una red de contenido distribuido y descentralizado.
■ Desarrollado por Juan Benet, figura líder en el
campo de la descentralización y las tecnologías de
cadena de bloques.
■ Características Principales:
– Descentralización.
– Almacenamiento distribuido.
– Contenido identificado por su hash (CID:
Content Identifier).
Objetivos de IPFS

■ Crear un sistema de archivos global, mejorando la eficiencia, resistencia a fallos y


privacidad de los sistemas de archivos tradicionales.
■ Almacenar y compartir contenido de cualquier tipo en un entorno descentralizado.
– Romper con la dependencia de servidores centralizados.
– Sustituir a la arquitectura tradicional cliente-servidor de la Web.
– Permitir la creación de aplicaciones web más resistentes y accesibles.
■ Ofrecer una alternativa descentralizada y eficiente a los sistemas centralizados
tradicionales como FTP, HTTP o SMB.
Principios ■ Cada archivo se identifica por un hash único (CID).
■ Almacenamiento distribuido (en fragmentos) en la
básicos de red P2P.

IPFS ■ Número de copias dependiente de la demanda.


■ IPFS no utiliza directamente tecnologías de cifrado
a nivel del sistema de archivos
■ Posibilidad de anclar (pin) contenidos a un nodo.
■ Hashing:
– Proporciona integridad y permite la
distribución eficiente.
– Al direccionarse contenido compartido, se
favorecen los nodos cercanos en la red al
punto de acceso.
Red Peer-to-Peer
Los nodos en la red colaboran para almacenar y recuperar contenido.

También proporcionan puntos de acceso al sistema.

Cuando se agrega un archivo, se divide en bloques y se distribuye a través de la red P2P, lo que incrementa la
redundancia y la disponibilidad de los datos.

Algoritmo de enrutamiento eficiente para buscar y acceder a contenido. Cuando un nodo accede a un archivo,
consulta la red P2P para encontrar los sus bloques y recuperarlos para reconstruir el archivo.

Los nodos colaboran y comparten recursos para almacenar, proporcionar y solicitar bloques, lo que contribuye a la
resiliencia y escalabilidad de la red.

Basada en Libp2p.
Nodos completos (Full nodes)

Almacenan una copia


completa de todo el conjunto Sirven como punto de acceso
de datos de IPFS y los para otros nodos.
metadatos asociados.

Los nodos completos


Tienen la capacidad de
contribuyen significativamente
almacenar, enrutar y distribuir
a la redundancia y la
datos dentro de la red.
resiliencia de la red IPFS.
Nodos ligeros (Light nodes)

Pueden acceder a los datos de


otros nodos, pero no tienen la
Mantienen una versión reducida
capacidad de almacenar y
o una parte de los datos.
distribuir grandes cantidades de
datos por sí mismos.

Útiles en entornos donde se


Dependen de los nodos
necesita un menor consumo de
completos para acceder a los
recursos, como dispositivos
todos los datos.
móviles o navegadores web.
Libp2p

Conjunto de protocolos, especificaciones y herramientas modularizadas y flexibles


para el desarrollo de redes peer-to-peer.
Creado como parte de IPFS, ahora es un proyecto independiente utilizado en el
ecosistema de la Web descentralizada.
Compatible con una amplia variedad de plataformas y entornos, incluidos
dispositivos móviles, navegadores web y sistemas empotrados (IoT).
Cifrado extremo a extremo, autenticación robusta y prevención de ataques de
denegación de servicio (DoS).
Diseñado para admitir desde pequeñas redes punto a punto hasta redes globales a
gran escala.
Árbol (DAG) de Merkle

Estructura de datos basada en un árbol Merkle para representar contenido de manera eficiente.

Cuando se agrega un archivo o directorio a IPFS, se calcula su hash y se agrega como un nuevo nodo al
DAG.

Si el archivo o directorio contiene otros archivos o subdirectorios, se agregan como nodos hijos y se
establecen las referencias correspondientes.

La estructura de árbol del DAG de Merkle permite una verificación eficiente de la integridad de los
datos.

Al calcular el hash de la raíz del DAG, se puede verificar rápidamente si los datos han sido modificados
o corrompidos, ya que cualquier cambio en los datos se reflejará en el hash de la raíz.
IPFS + Blockchain: casos de uso

Contratos inteligentes en IPFS Oráculos e IPFS


Garantizar la integridad y disponibilidad de los Proporcionar datos externos a los contratos
datos almacenados fuera de la cadena. inteligentes de IPFS.
Al almacenar el hash de los datos en IPFS en Los oráculos pueden almacenar los datos
el contrato inteligente, se puede verificar la externos en IPFS, junto con una firma o hash
integridad de los datos utilizando el hash de los mismos para verificar su integridad.
almacenado y comparándolo con el hash Los oráculos pueden proporcionar
actual en IPFS. notificaciones y eventos a los contratos
Registro inmutable y descentralizado para los inteligentes mediante la publicación de
datos de una transacción. mensajes en IPFS.
Redes sociales descentralizadas Almacenamiento y compartición de Interoperabilidad entre cadenas de
activos multimedia y otros documentos: bloques

Construcción de plataformas resistentes a Creación de sistemas de almacenamiento Almacenamiento de datos fuera de la


la censura. eficientes y escalables. cadena para su acceso por múltiples
Verificación descentralizada de la Garantía de trazabilidad de las blockchains.
identidad de usuarios. transacciones.
Verificación de la integridad de la Posibilidad de distribución programada y
información compartida. selectiva de contenido.
Almacenamiento y distribución Mercados de tokens no fungibles (NFT).
descentralizados de contenido. Almacenamiento seguro para dApps.

IPFS + Blockchain: casos de uso


Despliegue de un nodo IPFS

Descargar software de ipfs.io

Instalar el software de acuerdo con las instrucciones.

Verificar la instalación: ipfs –versión

Inicializar el nodo: ipfs init

Ejecutar el nodo: ipfs daemon

Interfaz web: http://localhost:5001/webui


Acceso a IPFS sin nodo

Plataforma de infraestructura blockchain (parecido a Alchemy)


Infura También proporciona acceso a IPFS

Servicio de almacenamiento y gestión de archivos en IPFS


Pinata Anclaje de archivos, gestión de versiones de archivos, estadísticas, etc.
API para integrar IPFS en aplicaciones y servicios existentes

Otros: Temporal, Fleek.


Brave Browser

■ brave.com
■ Navegador web de código abierto
que se centra en la privacidad del
usuario y en la seguridad online.
■ Brave Rewards: ver anuncios y
recibir recompensas en forma de
tokens criptográficos (BAT, Basic
Attention Token).
■ Soporte nativo de IPFS (URIs del
tipo ipfs://<cid> en la
IPFS Companion

■ Extensión para varios navegadores


(Chrome, Firefox, Opera, Edge)
■ Detecta URIs de IPFS para la carga
y descarga de contenido en IPFS.
■ Soporte para iniciar, detener y
configurar nodos IPFS sin salir del
navegador.
■ Capacidad de publicar y compartir
contenido en IPFS, agregar sitios
web a IPFS, y buscar contenido en
la red IPFS.
OTRAS
TECNOLOGÍAS
Filecoin
■ filecoin.io
■ Software de código abierto, amplia comunidad de
desarrolladores.
■ Protocolo basado en IPFS, utiliza la red IPFS para el
almacenamiento y recuperación de archivos.
■ Blockchain y token nativo: FIL
■ Minería de almacenamiento: proveedores de
almacenamiento (mineros) ofrecen su espacio y ganan FIL
al almacenar y recuperar archivos para otros usuarios.
■ Contratos inteligentes: garantía de integridad y
disponibilidad de los datos (verifican que los mineros
están cumpliendo con sus compromisos de
almacenamiento)
Sia

■ sia.tech
■ Plataforma de almacenamiento en la nube descentralizada basada en tecnología
blockchain.
■ Comunidad activa de usuarios, desarrolladores y proveedores de almacenamiento.
■ Almacenamiento seguro, privado y descentralizado para usuarios y desarrolladores.
■ Token nativo "Siacoin" (SC), utilizado para pagar por el almacenamiento y los
servicios en la red.
■ Contratos inteligentes para gestionar el almacenamiento de datos entre los
usuarios y los proveedores de almacenamiento.
Storj

■ storj.io
■ Plataforma de almacenamiento en
la nube descentralizada.
■ No requiere de proveedores de
almacenamiento dedicados,
cualquier usuario puede convertirse
en proveedor de almacenamiento y
recibir recompensas por ello.
■ Los datos se dividen en “shards”
que se distribuyen entre nodos de
la red,
Swarm

■ ethswarm.org
■ Plataforma descentralizada de almacenamiento y distribución de contenido construida
sobre la tecnología Ethereum.
■ Integrado directamente con la blockchain de Ethereum, lo que permite a los usuarios
almacenar y recuperar datos utilizando direcciones de contrato inteligente.
■ Estructura de datos distribuida llamada "swarm chunks" para almacenar y recuperar
datos de manera eficiente y segura.
■ Mecanismo de incentivos para alentar a compartir ancho de banda y espacio de
almacenamiento a cambio de recompensas en criptomoneda.
■ Los datos almacenados en Swarm están encriptados y fragmentados, lo que garantiza la
seguridad y la privacidad de los usuarios.
Comparativa

Almacena Modelo de Parecido


Solución Consenso Protocolos ID Uso
miento datos IPFS
Prueba de Almac.
Filecoin Blockchain Merkle Libp2p CID Alta
replicación Descentrl.
Almac. de
Almac. Bloques + Prueba de
Storj UDP Farmer ID nube Medio
Descentrl. paridad recogida
cifrado
Almac. Prueba de Almac.
Swarm DHT Libp2p Chunk ID Alto
Descentrl. custodia Descentrl.
Almac. de
Prueba de
Sia Blockchain Blockweave UDP Sector ID nube Medio
trabajo
cifrado

También podría gustarte