Ir al contenido principal

IPFS para interfaces de usuario descentralizadas

ipfs
Principiante
Ori Pomerantz
29 de junio de 2024
4 minuto leído

Ha escrito una nueva e increíble dapp. Incluso ha escrito una interfaz de usuario para ella. Pero ahora teme que alguien intente censurarla tumbando su interfaz de usuario, que no es más que un servidor en la nube. En este tutorial aprenderá cómo evitar la censura poniendo su interfaz de usuario en el sistema de archivos interplanetario (IPFS)opens in a new tab para que cualquiera que esté interesado pueda fijarla en un servidor para su futuro acceso.

Podría utilizar un servicio de terceros como Fleekopens in a new tab para hacer todo el trabajo. Este tutorial es para personas que quieren hacer lo suficiente para entender lo que están haciendo, aunque suponga más trabajo.

Primeros pasos en local

Existen múltiples proveedores de IPFS de tercerosopens in a new tab, pero es mejor empezar ejecutando IPFS localmente para realizar pruebas.

  1. Instale la interfaz de usuario de IPFSopens in a new tab.

  2. Cree un directorio con su sitio web. Si utiliza Viteopens in a new tab, use este comando:

    1pnpm vite build
  3. En IPFS Desktop, haga clic en Import > Folder y seleccione el directorio que creó en el paso anterior.

  4. Seleccione la carpeta que acaba de subir y haga clic en Rename. Póngale un nombre más significativo.

  5. Vuelva a seleccionarla y haga clic en Share link. Copie la URL en el portapapeles. El enlace sería similar a https://ipfs.io/ipfs/QmaCuQ7yN6iyBjLmLGe8YiFuCwnePoKfVu6ue8vLBsLJQJ.

  6. Haga clic en Status. Despliegue la pestaña Advanced para ver la dirección de la puerta de enlace. Por ejemplo, en mi sistema la dirección es http://127.0.0.1:8080.

  7. Combine la ruta del paso del enlace con la dirección de la puerta de enlace para encontrar su dirección. Por ejemplo, para el ejemplo anterior, la URL es http://127.0.0.1:8080/ipfs/QmaCuQ7yN6iyBjLmLGe8YiFuCwnePoKfVu6ue8vLBsLJQJ. Abra esa URL en un navegador para ver su sitio.

Subiendo

Así que ahora puede usar IPFS para servir archivos localmente, lo que no es muy emocionante. El siguiente paso es ponerlos a disposición del mundo cuando usted no esté conectado.

Hay una serie de servicios de fijadoopens in a new tab bien conocidos. Elija uno de ellos. Sea cual sea el servicio que utilice, necesita crear una cuenta y proporcionarle el identificador de contenido (CID) de su escritorio IPFS.

Personalmente, 4EVERLANDopens in a new tab me pareció el más fácil de usar. Aquí están las instrucciones para ello:

  1. Vaya a el panel de controlopens in a new tab e inicie sesión con su monedero.

  2. En la barra lateral izquierda, haga clic en Storage > 4EVER Pin.

  3. Haga clic en Upload > Selected CID. Ponga un nombre a su contenido y proporcione el CID del escritorio de IPFS. Actualmente, un CID es una cadena que empieza por Qm seguida de 44 letras y dígitos que representan un hash codificado en base-58opens in a new tab, como QmaCuQ7yN6iyBjLmLGe8YiFuCwnePoKfVu6ue8vLBsLJQJ, pero es probable que eso cambieopens in a new tab.

  4. El estado inicial es Queued. Recargue hasta que cambie a Pinned.

  5. Haga clic en su CID para obtener el enlace. Puede ver mi aplicación aquíopens in a new tab.

  6. Es posible que necesite activar su cuenta para mantenerla fijada durante más de un mes. La activación de la cuenta cuesta alrededor de 1 $. Si lo ha cerrado, cierre la sesión y vuelva a iniciarla para que se le pida que la active de nuevo.

opens in a new tabUso desde IPFS

En este punto, tiene un enlace a una puerta de enlace centralizada que sirve su contenido de IPFS. En resumen, su interfaz de usuario puede ser un poco más segura, pero todavía no es resistente a la censura. Para una verdadera resistencia a la censura, los usuarios necesitan usar IPFS directamente desde un navegadoropens in a new tab.

Una vez que lo tenga instalado (y el escritorio de IPFS funcionando), puede ir a /ipfs/<CID>opens in a new tab en cualquier sitio y obtendrá ese contenido, servido de forma descentralizada.

Inconvenientes

No se pueden eliminar los archivos IPFS de forma fiable, por lo que mientras esté modificando su interfaz de usuario, probablemente sea mejor dejarla centralizada, o utilizar el sistema de nombres interplanetario (IPNS)opens in a new tab, un sistema que proporciona mutabilidad sobre IPFS. Por supuesto, todo lo que es mutable puede ser censurado, en el caso de IPNS presionando a la persona que tiene la clave privada a la que corresponde.

Además, algunos paquetes tienen problemas con IPFS, por lo que si su sitio web es muy complicado puede que no sea una buena solución. Y, por supuesto, todo lo que depende de la integración con el servidor no puede descentralizarse simplemente por tener el lado del cliente en IPFS.

Conclusión

Así como Ethereum le permite descentralizar la base de datos y los aspectos de lógica de negocio de su dapp, IPFS le permite descentralizar la interfaz de usuario. Esto le permite cerrar un vector de ataque más contra su dapp.

Vea aquí más de mi trabajoopens in a new tab.

Última actualización de la página: 28 de septiembre de 2025

¿Le ha resultado útil este tutorial?