Reseña de Dfinity (ICP): Computación en la nube basada en cadena de bloques
Últimas actualizaciones:
28 feb 2021
Dfinity se autodenomina como el "Ordenador de Internet" y promete ofrecer una computación en la nube basada en tecnología de cadena de bloques que constituirá la base de la próxima generación de Internet descentralizada.
La visión del equipo de Dfinity es la creación de aplicaciones, similares a las que ya tenemos, pero con la diferencia de que se ejecutarán directamente en la red. Esto permitirá que la próxima generación de Internet evite el control de las principales empresas tecnológicas como Alphabet, Amazon, Microsoft y Apple, que ahora controlan casi todo el tráfico en línea, ya que poseen los servidores que alimentan Internet.
¿Podrá tener éxito donde otros han fracasado? Eso es lo que investigaremos a lo largo de este análisis.
Acerca de Dfinity
Dfinity ha estado trabajando en la creación de la primera solución basada en cadena de bloques que se ejecuta a la velocidad estándar de la web y que puede aumentar su capacidad de forma infinita. Llamado "Ordenador de Internet", será capaz de albergar infinitas aplicaciones y contratos inteligentes, al tiempo que almacenará cualquier cantidad de datos.
Dfinity está haciendo realidad el ordenador descentralizado de Internet. Imagen vía Dfinity.org
Dfinity no es nuevo. Fue concebido inicialmente en 2015 por Dominic Williams, y ha ido creciendo desde entonces. Dominic sigue siendo el presidente y científico jefe de la Dfinity Foundation, además de ser el portavoz más destacado de la adopción de la tecnología "Ordenador de Internet" de Dfinity.
Aunque Dfinity se fundó en Palo Alto (California) y sigue manteniendo un centro de investigación allí, la Dfinity Foundation que ahora dirige el proyecto tiene su sede en Zug (Suiza). Allí hay un segundo centro de investigación y un tercero en San Francisco (California). El proyecto cuenta actualmente con más de 120 empleados, todos ellos trabajando en la creación de la próxima generación de soluciones de Internet.
Dfinity: Reconstruyendo Internet
Ya en 1996, la Ley de Decencia en las Comunicaciones de Estados Unidos intentaba regular de forma exagerada los contenidos en línea. Grupos como la Electronic Frontier Foundation surgieron para mantener los derechos de los usuarios en Internet. Con una visión de una Internet libre y abierta, controlada por sus usuarios, intentaron detener la intrusión del gobierno y las grandes empresas en Internet.
Ahora, menos de tres décadas después, podemos ver que la visión de aquellos primeros pioneros era, en el mejor de los casos, ingenua. El gobierno no fue capaz de regular Internet por completo, pero en su lugar hemos visto cómo un nuevo grupo de organizaciones ha tomado el control de lo que debería haber sido una plataforma libre y abierta. Hoy en día, Internet está gobernada por empresas como Alphabet y Amazon, Facebook y Twitter, Alibaba y Tencent. Sólo un puñado de empresas que controlan billones de dólares en riqueza, y miles de millones de personas en la red.
Dfinity quiere recuperar el control que tienen los gigantes tecnológicos que dominan Internet. Imagen vía Dfinity.org
Sin embargo, no tiene por qué seguir por este camino. Todavía hay visionarios que quieren una Internet libre y sin trabas. Visionarios como los desarrolladores de Dfinity.
Los desarrolladores de Dfinity están trabajando en la creación de un Ordenador de Internet. Será una red de cadena de bloques que se extenderá por todo el mundo, con centros de datos independientes que permitirán que las aplicaciones se ejecuten directamente en la red. Esto devolverá el control, poniéndolo en las manos de los usuarios y no en las de unas pocas megacorporaciones. Dfinity ya ha creado un nuevo lenguaje de programación, ha lanzado un conjunto de SDKs para desarrolladores y, más recientemente, a principios de 2021, la versión alfa del Ordenador de Internet se puso en marcha.
Dfinity no quiere reconstruir Internet por razones nostálgicas. Entiende que nuestras comunicaciones han sido deformadas por el dominio de los gigantes tecnológicos y las empresas de publicidad que los apoyan. El mensaje ya no se refiere a la verdad y la libertad en Internet, sino a la desinformación, el control y la codicia. Y lo más importante para el individuo es la pérdida de la privacidad.
Hay algunos lugares en Internet que permanecen fuera del alcance de estos titanes de la tecnología, y Dfinity quiere ampliarlos para crear todo un ecosistema que sea capaz de prosperar fuera del alcance de estas megacorporaciones.
Tampoco hay que olvidar el problema de la innovación que provocan estas empresas. El hecho de que tengan un monopolio efectivo en la mayoría de las áreas de Internet significa que la innovación ha sido sofocada. No debería sorprender que todas estas empresas evolucionasen cuando Internet era libre y abierta, y que desde su crecimiento y dominio se hayan desarrollado pocas aplicaciones realmente innovadoras en Internet.
Más allá de la Internet moderna
La idea de Dfinity se inspiró en la visión de un ordenador de cadena de bloques promovido por primera vez por Ethereum. Al observar Ethereum y otras grandes cadenas de bloques, el equipo fundador de Dfinity creó una propuesta para una red descentralizada de cadenas de bloques capaz de ejecutar la próxima generación de servicios y software de Internet abierto.
Ignoraron por el momento cualquier discusión sobre la minería o el staking, o sobre la distribución de un nuevo instrumento financiero. En lugar de intentar crear un mejor Bitcoin o un mejor Ethereum, se centraron en construir la mejor versión de su propia visión.
Dfinity se posiciona como la próxima generación de tecnología de cadena de bloques. Imagen vía Dfinity.org
La Internet actual funciona sobre IP o protocolo de Internet, sin embargo Dfinity está introduciendo un nuevo estándar que llaman ICP, o Internet Computer Protocol. El nuevo sistema ICP permitirá a los desarrolladores mover no sólo datos a través de Internet, sino también plataformas de software reales. El software y las aplicaciones necesitan un ordenador para funcionar, pero ¿por qué no hacer que ese ordenador sea todo Internet?
Esa es la visión de Dfinity. En lugar de ejecutar las aplicaciones en un servidor dedicado propiedad de Alphabet o Microsoft, la visión de Dfinity crearía un software que puede trasladarse libremente a cualquier servidor de la red. Con Dfinity estos servidores existen en centros de datos de propiedad independiente repartidos por todo el mundo. En esencia, significará que las aplicaciones se ejecutan ahora en cualquier lugar.
En la práctica, significa que se pueden crear y lanzar aplicaciones que no son propiedad ni están controladas por nadie. Los centros de datos independientes que gestionan la red Dfinity recibirán una compensación en tokens por ejecutar el código en sus servidores, pero no tendrán acceso a ninguno de los datos, lo que les impedirá recopilar y vender datos a terceros, como los anunciantes. Esto devolverá la propiedad de los datos privados a los particulares.
El protocolo ICP es la forma en que se entregarán las aplicaciones y servicios en el Ordenador de Internet. Imagen vía Dfinity.org
Por supuesto, también hay potenciales desventajas. Un Internet completamente libre y abierto hará casi imposible responsabilizar a los desarrolladores de sus aplicaciones. Si se aloja contenido ilegal o abusivo, ¿cómo se puede eliminar si nadie tiene acceso a él, aparte del desarrollador, que podría permanecer fácilmente en el anonimato?
Por supuesto, tenemos un problema similar con las aplicaciones modernas. Facebook o Alphabet pueden retirar lo que quieran a su antojo. La aplicación de medios sociales Parler, que hace hincapié en la libertad de expresión, fue desactivada recientemente en esencia porque las grandes empresas tecnológicas se negaron a seguir alojando la aplicación.
La esperanza es que una Internet descentralizada conduzca también a una gobernanza descentralizada en la que los desarrolladores puedan decidir cómo se regula todo. De hecho, este es el método que se utiliza en el mundo de las criptomonedas, y aunque funciona hasta cierto punto, también puede dar lugar a luchas internas entre las diferentes facciones de un proyecto. Queda por ver si la gobernanza descentralizada, o el "gobierno de la mafia" como algunos lo han llamado, será mejor que la gobernanza centralizada por un director general arbitrario.
Tokenomics de Dfinity
Los tokens Dfinity se conocen a veces como "dfinities" y en el pasado utilizaron el ticker DFN, aunque más recientemente se ha cambiado a ICP y actualmente se negocia como un pagaré, ya que los tokens reales no se han emitido en enero de 2021.
El token tiene varios casos de uso, y una de sus principales utilidades es como medio de pago para centros de datos y servidores. Para utilizar el protocolo ICP para la instalación de una app es necesario pagar una cuota de gas en tokens.
Esta cuota se transmite a los servidores del centro de datos que ejecutan la aplicación. La cantidad de gas para cualquier transacción está determinada por las instrucciones que se están ejecutando y la cantidad de datos procesados y almacenados. Este método es exactamente el mismo que se emplea para fijar los precios actuales de la computación en la nube.
El token ICP incentivará los centros de datos. Imagen vía Dfinity.org
Los tokens también se utilizarán para proporcionar gobernanza al protocolo, que pretende adoptar una forma autónoma. Es lo mismo que el concepto de minería, pero en lugar de pagar simplemente por asegurar la red, se paga por la capacidad de procesamiento.
El ecosistema de Dfinity
El documento técnico de Dfinity explica en detalle el mecanismo de consenso de ICP. A continuación se ofrecen una explicación general de cada uno de los componentes del ecosistema Dfinity.
Network Nervous System (NNS)
El Network Nervous System, o NNS, es el software autónomo que gobierna el Ordenador de Internet. Gestiona todo el sistema, desde la estructura de la red hasta la economía de la misma. Está alojado en la red y es parte integrante de los protocolos utilizados para crear la cadena de bloques del Ordenador de Internet.
Al entrelazar las máquinas de los nodos, permite que la red Dfinity sea autónoma y adaptable. El NNS tiene una clave pública capaz de validar todas las transacciones del ICP, y actuará como la cadena de bloques "maestra".
La visión de los fundadores de Dfinity para dar consenso a la red. Imagen vía documento técnico de Dfinity.
En términos de gobernanza, el NNS está ahí para someter a votación cualquier propuesta. Las votaciones se realizan para actividades como la adición de nuevos nodos o la ampliación de la red, entre otras tareas. Los votos son emitidos por los poseedores de tokens ICP que han decidido bloquear sus tokens para permitir el derecho a voto.
Además, el NNS se encargará de crear subredes combinando los nodos de centros de datos independientes. Estas subredes se utilizarán después para alojar los contenedores. El NNS supervisará continuamente la capacidad de la red y añadirá nodos y subredes según sea necesario. Este comportamiento permite al Ordenador de Internet escalar infinitamente.
Una de las principales funciones de los tokens ICP es la gobernanza. Imagen vía Dfinity.org
¿Qué es una subred en Dfinity?
Una subred es una configuración de cadena de bloques única dentro del Ordenador de Internet que es capaz de integrarse con otras cadenas de bloques para aumentar la capacidad de toda la red. Las subredes se crean cuando el NNS combina nodos, y las subredes se utilizan para albergar contenedores, que son un tipo evolucionado de contrato inteligente.
Cada subred es una cadena de bloques individual, y los contenedores de cada subred pueden llamar de forma transparente a cualquier otro contenedor, incluso a los de otras subredes. En la práctica, la red ni siquiera distingue entre subredes cuando se realiza una llamada a un contenedor, es simplemente una llamada a una función dentro del universo sin fisuras del código seguro.
Las subredes de Dfinity permiten escalar infinitamente el Ordenador de Internet. Imagen vía Dfinity.org
Las subredes son transparentes para los usuarios del contenedor y el código del mismo. Los usuarios y los desarrolladores de contenedores interactúan con el Ordenador de Internet y, en segundo plano, el protocolo ICP distribuye la computación y los datos entre los nodos de la subred. Se cree que este sistema es más seguro que las cadenas de bloques tradicionales porque tener la descentralización de los datos y el cálculo controlada por el protocolo es más preciso que dejarlo al azar.
No es posible el pooling, tal y como ocurre en las cadenas de bloques prueba de trabajo y prueba de participación tradicionales. Esto evita tener nodos validadores con enormes cantidades de participación que crean la mayoría de los bloques. Las subredes son capaces de interactuar entre sí mediante el uso de las "Claves de Cadena" únicas que forman parte de la criptografía única desarrollada por Dfinity.
¿Qué es una neurona?
Las neuronas se utilizan para bloquear el tiempo de los tokens ICP con el fin de generar poder de voto para las propuestas de la red. También se puede hacer que las neuronas se sigan unas a otras para automatizar tareas. Por ejemplo, se puede crear una neurona para que siga la votación de otra neurona y, de este modo, representan una forma de democracia líquida.
Las neuronas se siguen unas a otras de forma similar a las votaciones automáticas. Imagen vía Dfinity.org
También es posible disolver una neurona para liberar los tokens ICP bloqueados en ella y convertirlos en ciclos para alimentar la capacidad de cálculo.
¿Qué son los ciclos?
Los ciclos son los recursos computacionales del Ordenador de Internet. En general, todos los contenedores consumirán ciclos para apoyar los datos de la memoria persistente, para las necesidades de ancho de banda y para los ciclos de la CPU. Los propios contenedores llevan una contabilidad de los recursos utilizados por sus aplicaciones y esto se expresa en unidades de ciclos.
Los ciclos reflejan los costes reales del funcionamiento de las aplicaciones y de los recursos físicos utilizados, como los propios servidores, las necesidades de energía, el hardware de almacenamiento, el ancho de banda y otros. En términos más básicos, un ciclo es el coste de ejecutar una instrucción de WebAssembly. Aunque los programas tienen que pagar el coste total de ejecución, al indicar un coste por ciclo los programas pueden crearse para ser lo más rentables posible.
Los contenedores consumen ciclos para entregar sus recursos a los usuarios. Imagen vía Dfinity.org
Cuando un desarrollador es capaz de establecer límites en el número de ciclos consumidos por un contenedor ayuda en la prevención de la ejecución de código malicioso y el drenaje de los recursos de la red. Y dado que los costes operativos son bastante estables cuando se expresan en unidades de ciclos, hace posible que los desarrolladores sepan exactamente cuánto cuesta procesar cualquier aplicación, y cómo hacer que sea menos costoso procesar dicha aplicación.
Si necesitas una comparación, los ciclos son similares a los créditos de AWS o al gas de Ethereum. La diferencia es que los ciclos cubren una gama mucho mayor de recursos. Y el diseño de los contenedores y de los ciclos puede ayudar a evitar el posible obstáculo del rápido aumento de los costes de uso.
¿Qué es Motoko?
Dfinity vio que para mantener los costes bajo control necesitarían una forma de aumentar el rendimiento y la eficiencia del código que se ejecuta en el ordenador de Internet. Para ello, contrataron a Andreas Rossberg, creador del lenguaje WebAssembly, que creó el lenguaje Motoko para su uso en el Ordenador de Internet.
Menos código = Menos costes. Imagen vía Dfinity.org
Cuando se combina con la arquitectura del Ordenador de Internet, el lenguaje Motoko tiene el potencial de ahorrar grandes cantidades de recursos en el desarrollo de software para su uso en la plataforma Dfinity. El componente más caro del desarrollo de software es el talento y las habilidades requeridas para desarrollarlo.
Actualmente, el desarrollo de aplicaciones es extremadamente complejo y, por tanto, caro. Como ejemplo, TikTok tiene aproximadamente 15 millones de líneas de código y, sin embargo, sigue sufriendo problemas de rendimiento. A modo de comparación, Dfinity creó una aplicación similar a TikTok, llamada CanCan, que tenía aproximadamente 1.000 líneas de código.
Esta app, similar a TikTok, es mucho más eficiente y tiene incentivos para los usuarios. Imagen vía Dfinity.org
La aplicación CanCan aportará beneficios tanto a los desarrolladores como a los usuarios, y lo mismo puede decirse de cualquier otra aplicación desarrollada en el Ordenador de Internet.
El SDK de contenedores
Uno de los principales hitos en el desarrollo del Ordenador de Internet fue la publicación del Dfinity SDK, que permite a cualquier desarrollador crear rápida y fácilmente nuevas aplicaciones y servicios para el Ordenador de Internet. Cada uno de los servicios desarrollados consiste en un único contenedor con contenido estático, metadatos y el Wasm del software Motoko compilado.
La arquitectura utilizada para construir contenedores está optimizada para crear aplicaciones descentralizadas, y es extremadamente versátil. Una de las características interesantes es que cualquier contenedor puede hacer una llamada a las funciones de cualquier otro contenedor, siempre y cuando los dos tengan permisos compartidos.
Los contenedores son las estructuras básicas para mantener el código, los servicios y las aplicaciones. Imagen vía Dfinity.org
Para crear un servicio abierto en un contenedor, el desarrollador simplemente marca cualquiera de las funciones compartidas como permanentes y luego cede el control del contenedor al gobierno público. El gobierno público se convierte entonces en responsable de ese contenedor y se encarga de cuestiones como la configuración y las actualizaciones.
La creación de estas API permanentes tiene el efecto de eliminar el riesgo de la plataforma. Cuando se diseña así, no hay que preocuparse de que un tercero pueda llegar y cerrar una plataforma, una aplicación o un servicio de forma arbitraria.
El equipo de Dfinity
Dfinity está supervisado por la Dfinity Foundation, una organización sin ánimo de lucro con sede en Zug (Suiza). Su presidente y científico jefe es también el creador y fundador de Dfinity, Dominic Williams.
Comenzó su carrera tecnológica en 1995, cuando se graduó en el King's College de Londres con un título en Informática siendo el primero de su promoción. A lo largo de los años ha desarrollado varios productos de software innovadores y ha sido un emprendedor en serie, creando varias empresas de éxito.
El equipo directivo de Dfinity, encabezado por Dominic Williams. Imagen vía Dfinity.org
En el departamento de investigación y desarrollo de Dfinity están Ben Lynn, Timo Hanke y Andreas Rossberg.
Ben es la "L" de la técnica criptográfica "BLS" aplicada por "Threshold Relay" para generar aleatoriedad y lograr una seguridad, velocidad y escalabilidad increíbles en las redes públicas. Ben, que en su día se doctoró en Stanford bajo la dirección de Dan Boneh, se unió al equipo de Dfinity tras 10 años desempeñando funciones de ingeniería de alto nivel en Google.
Timo fue en su día profesor de Matemáticas y Criptografía en la Universidad de Aquisgrán (Alemania), pero se metió en el mundo del Bitcoin. En 2013 creó AsicBoost para reducir el número de puertas en los chips de minería de Bitcoin y aumentar la eficiencia de la minería de Bitcoin en un 20-30% que desde entonces se ha convertido en un estándar en las operaciones de minería a gran escala.
Anteriormente, Andreas fue ingeniero de plantilla en Google, donde co-diseñó la máquina virtual WebAssembly, continuando ahora como editor principal de la especificación del lenguaje, y trabajó en el motor V8 de JavaScript para Chrome. Anteriormente, Andreas fue investigador postdoctoral en el Instituto Max Planck.
Todo el equipo de Dfinity. Imagen vía Dfinity.org
Además, en los tres centros de investigación (Palo Alto y San Francisco, en California y Zug, en Suiza) hay más de 100 dedicados y brillantes científicos, líderes empresariales y programadores, todos ellos dedicados a hacer realidad el Ordenador de Internet.
El token ICP
El token de utilidad ICP (antes conocido como "DFN") es la principal forma de transferir el gobierno a la comunidad Dfinity. También puede disolverse y convertirse en ciclos, y los ciclos se utilizan para alimentar servicios y aplicaciones en el Ordenador de Internet. Y también se utiliza para incentivar a los usuarios a crear nodos que luego pasan a formar parte de subredes.
La fundación Dfinity ha tenido varias rondas de recaudación de fondos, la primera de las cuales tuvo lugar a principios de 2017 y recaudaron casi 4 millones de dólares en BTC y ETH. La fundación tuvo la suerte de que esos fondos se revalorizaran significativamente desde entonces.
Dfinity cuenta con el respaldo de algunos de los mayores inversores de capital riesgo. Imagen vía Dfinity.org
Un año más tarde recaudaron 61 millones de dólares de Polychain Capital y Andreessen Horowitz en una recaudación de fondos privados, y varios meses más tarde, a mediados de 2018, hubo otra venta privada en la que se recaudaron 102 millones de dólares de varios inversores de VC. Esa venta privada se realizó a 0.0362 dólares por token.
La breve historia del token ICP. Imagen vía Coinmarketcap.com
Estos primeros inversores probablemente estén muy contentos con su inversión temprana, ya que los pagarés de los tokens ICP ahora valen 19.27 dólares a fecha de 12 de enero de 2021, lo que les da un retorno de la inversión de alrededor del 54.000%.
Además de toda la recaudación de fondos privados, también hubo un airdrop a los usuarios que se registraron en el boletín de Dfinity. Eso resultó ser un muy buen negocio ya que estos usuarios recibieron 147 tokens ICP en septiembre de 2020 y ahora, en enero de 2021, esos tokens valen más de 2800 dólares.
Conclusión
En el poco tiempo que lleva existiendo, Internet ha cambiado drásticamente, y no siempre para mejor. Ha pasado de los primeros días en los que nos prometía una innovación sin límites y un uso abierto, a un periodo en el que se rechazaba la regulación de mano dura, hasta el día de hoy en el que el panorama está dominado por los gigantes tecnológicos que ahogan la innovación con su comportamiento monopolístico.
Para combatir ese comportamiento y hacer retroceder a Internet a un periodo más innovador ha llegado Dfinity con la promesa del Ordenador de Internet.
Desde su fundación, el proyecto Dfinity ha dado pasos importantes. Recientemente ha lanzado su red principal en alfa y pronto el Network Nervous System alcanzará el punto de activación que permita la liberación de los tokens ICP.
El proyecto también ha sido capaz de mostrar aplicaciones de prueba que se ejecutan con tan solo 1.000 líneas de código, frente a sus versiones originales que están sobrecargadas con millones de líneas de código. Esto ha sido posible gracias a la creación de un nuevo lenguaje de programación llamado Motoko y a la publicación de un SDK basado en terminal para desarrolladores.
La fase Mercury es la quinta y última fase antes de la génesis. Imagen vía Dfinity.org
Actualmente, la red se encuentra en su fase Mercury, y está a punto de alcanzar la Génesis, que es el verdadero comienzo del Ordenador de Internet tal y como lo imagina el equipo de Dfinity. Si están en lo cierto, este Génesis reiniciará Internet y restablecerá la innovación necesaria para que Internet evolucione.
Imagen destacada vía Shutterstock
Aviso: Estas son las opiniones del autor y no deben considerarse consejos de inversión. Los lectores deben hacer su propia investigación.
El artículo Reseña de Dfinity (ICP): Computación en la nube basada en cadena de bloques fue publicado en primer lugar en Coin Bureau.