Introducción al Service Nervous System

Qué es y cómo funciona uno de los componentes fundamentales en la tokenización de dapps.

EL SNS es el sistema de gobierno abierto que, a través de un daos algorítmico, permitirá a los desarrolladores crear sistemas de gobiernos descentralizados basados en tokens para sus dapps.

Conceptualmente, la definición es correcta, y concisa. Si has entendido esto, es porque tienes buenos conocimientos en el ámbito y es probable que lo que aquí contemos, ya forme parte de tus saberes. 

Ahora, si al leer la primera definición te has preguntado ¿Qué significa todo esto? pues bien, el siguiente artículo te será de utilidad, ya que abordaremos algunas de las definiciones fundamentales de Internet Computer. 

SPOILER: Habrá viajes en el tiempo.

Comencemos entonces. A la hora de pensar nuevos paradigmas en el mundo crypto, es necesario tener en consideración la innovadora visión que lleva a cabo DFINITY, organización creada por el CEO Dominic Williams en 2016, cuyo protocolo Internet Computer presenta su particular visión de una nube basada en blockchain, con el objetivo último de lograr una internet descentralizada.

¿Blockchain? ¿Internet descentralizada? El asunto parece ponerse complejo, pero tiene un desarrollo y explicación que abordaremos a continuación.

(Disclaimer: Si les interesa un panorama más detallado sobre la historia de la organización, pueden leer este artículo https://mundoic.es/historiadfinity/

Un poco de contexto

“Para saber a donde vamos, hay que saber de dónde venimos” , suele ser una expresión popular que intenta explicar la relación causa-consecuencia de las acciones. En tal sentido, para explicar la dirección de Internet Computer, es preciso remontarnos al principio de lo que actualmente conocemos como internet, y comprender el por qué de estos procesos.

Nos subimos al Delorean, nos abrochamos los cinturones, y ponemos en el tablero 12 de marzo de 1989. Lugar: Ginebra, Suiza. Allí el Centro Europeo de Física Nuclear creaba el primer código HTML, o lo que es lo mismo, el primer cliente World Wide Web.

Como dato pintoresco, así lucía la primera página web de la historia.

No obstante, esta precaria imagen nos sirve para comprender la clave de lo que luego se denominó web 1.0: un sinfín de páginas estáticas de sólo lectura.

Esta etapa podríamos enmarcarla hasta el 2004, con el boom de las puntocom y el advenimiento de, claro, cómo no, las redes sociales. Aquí marcamos un antes y un después, en el que hablamos de web 2.0, donde la interoperabilidad, el diseño centrado en el usuario y la colaboración son el eje fundamental.

Se da entonces una gran paradoja. Si tomamos la definición primaria de la palabra internet, leemos: “un conjunto descentralizado de redes de comunicaciones interconectadas”. No obstante, en esta era, compañías como Facebook, Google, Apple, o Amazon son las que crean servicios centralizados, dependientes de estas corporaciones. Así, los usuarios crean, y las compañías monetizan. Internet entonces es una red descentralizada, pero centralizada. Un helado caliente.

Acá es cuando nos subimos nuevamente al Delorean y volvemos al 2022.

Tecnología blockchain

Como bien mencionamos al principio, el objetivo final es lograr una red descentralizada. Volver a los orígenes, pero tomando lo mejor de ambos mundos: en tal sentido, la Web3 aparece como una instancia superadora,  la promesa de una web donde el usuario vuelve a estar en el centro como creador, pero sobre todo como poseedor y dueño de esos, atención, viene la palabra mágica, tokens. Refresh rápido. Token= unidad de intercambio digital. 

Este nuevo modelo de web tiene muchos servicios basados en la economía de los token, de manera que la propiedad y el control de estos servicios estaría repartido entre sus dueños, que son también usuarios. 

Para que esto tenga asidero, es necesario un concepto revolucionario, como lo es el blockchain, o cadena de bloques. Para comprenderlo, pongamos un ejemplo práctico.

Matías tiene que darle $1000 a Noelia. Para ello, realiza una transferencia bancaria, logrando así su cometido. No obstante, para garantizar esa operación, fue necesaria la participación de una entidad financiera: el banco, quien fue la que realizó el cambio en sus cuentas, y permitió esta transacción, además de imponer sus condiciones (y comisiones, claro está). Ni Matías, ni Noelia, tuvieron el control del proceso. 

En ese sentido, la blockchain vendría a ser un enorme libro de cuentas, donde los registros (bloques) se enlazan y cifran para proteger la seguridad y privacidad de las transacciones.

Lo que realiza la blockchain es la eliminación de los intermediarios, descentralizando la gestión. Es decir, ahora, el control de la operación es de los usuarios, que se convierten en partícipes y gestores del proceso.

Requisito fundamental: debe haber varios usuarios (llamemoslo nodos) que verifiquen esas transacciones para validarlas y que así el bloque de esa transacción se registre en ese gigantesco libro de cuentas.

¿Qué pasa entonces con internet? ¿No es acaso lo que todos nos preguntamos?

A la manera similar de la explicación financiera, la concepción de redes funcionaría de esa forma: una cadena de bloques de datos, que se enlazan mediante criptografía y de forma cronológica. Así, cada bloque está enlazado a su bloque anterior, de forma que los datos que se han introducido en la cadena no puedan volver a ser modificados.

Es decir, que para agregar un nuevo bloque a la cadena, se requiere de un consenso entre los participantes de la red. 

Network Nervous System (NNS)

Finalmente nos estamos acercando al concepto del día: el Services Nervous System. Un poco más de paciencia.

Silenciemos las notificaciones del teléfono que vienen una serie de conceptos claves. A saber: Internet Computer es la única cadena de bloques que se ejecuta bajo el control completo de una comunidad DAO, llamada Network Nervous System, que puede actualizar y evolucionar continuamente sus protocolos.

Concepto clave: Comunidad DAO. Decentralized Autonomous Organization. Hacemos referencia a un tipo de organización que es controlada en su totalidad por algoritmos computacionales, que son conocidos como smart contracts (contratos inteligentes) y determinan las reglas de cómo deben cooperar las partes implicadas.

Concepto clave: Network Nervous System. Sistema nervioso de red. El afamado NNS. Es el software autónomo que gobierna Internet Computer. Dicho software está a cargo de gestionar todo, desde la economía hasta la estructura de la red. Este sistema está alojado dentro de la propia red y es completamente autónomo. Su papel es tan vital, que de este sistema depende la seguridad y la sincronización de todos los nodos dentro de Dfinity. Además, actúa como un blockchain “maestro” autónomo con una clave pública para validar todas las transacciones del ICP. 

WOW.

En ese camino hacia la descentralización, el NNS permite a cualquier persona del mundo presentar y votar propuestas a la red, y si se adoptan, dichas propuestas se ejecutan inmediatamente de forma automática, permitiendo a la red adaptarse y evolucionar en tiempo real.

Quienes pueden votar son aquellos titulares de tokens ICP (como se denonminan los tokens de Internet Computer) que hayan bloqueado sus tokens (staking), para obtener neurons y poder votar. Por el momento, no haremos hincapié en esto. Para interiorizarse en el tema de stakear tokens, recomendamos este artículo. https://mundoic.es/staking/ 

Ahora sí, por fin: ¿Qué demonios es el SNS?

Si el NNS entonces es el sistema abierto que gobierna todo el ordenador de internet con todas sus subredes y nodos, el SNS es un concepto muy similar; es decir, también es un sistema de gobernanza abierto, pero que sólo gobierna una aplicación descentralizada, o DAPP.

Así, un SNS sólo controlaría una única dapp, precisamente llamada “servicio”. Al igual que cualquier persona en el mundo puede participar en el gobierno del NNS, cualquiera podrá participar en el gobierno de una SNS, que controlará de forma autónoma las operaciones y la evolución de una dapp asociada. De esta manera, se impulsa el crecimiento de la aplicación, garantizando la participación de los usuarios en la dirección y el éxito de la misma.

Finalmente, su papel es relevante ya que los usuarios no sólo pueden participar en la propiedad colectiva, si no que se aseguran que los desarrolladores de la dapp no puedan detener un servicio, por ejemplo, o eliminar una función, o actualizar el código de forma no deseada. La dapp evolucionará y se actualizará siempre a través de propuestas que respondan directamente de la votación de la comunidad.

La relación del SNS con el NNS

Aunque sólo hay un NNS que controla Internet Computer, puede haber un número infinito de SNS’s. Esto significa que todos los SNS y sus tokens asociados son extensiones del NNS y que el código y las actualizaciones del SNS de una determinada dapp son examinados por la comunidad informática. Con la democracia se come, se cura y se desarrollan aplicaciones.

Al igual que el NNS, un SNS incluye un canister y un ledger canister. Conceptos claves, nuevamente. A saber:

Canister: su traducción aproximada sería recipiente o envase, y es una imagen que aplica perfectamente, ya que se trata de una agrupación o bloque de contrato inteligentes. Lo que se hace es “envasar” varios contratos inteligentes, incorporando además, un sistema de reglas, como la capacidad de utilizar estos contratos en otras subredes.

Existen tres tipos de canisters: registry caniste, que rastrea la organización de los nodos y de las subredes dentro de los centros de datos, otro canister llamado ledger canister, que guarda todas las transacciones de las identidades de internet. Vendría a ser una especie de libro de contabilidad. Y finalmente, un governance canister, que permite a los poseedores de tokens ICP votar en decisiones relacionadas al funcionamiento de Internet Computer.

Aunque el NNS actualiza el SNS de una dapp determinada, algunos parámetros de gobernanza pueden ser cambiados por el propio gobierno del SNS: puede suceder por ejemplo que la comunidad de una dapp haga más largo el periodo de votación de las propuestas a través de un SNS, o cambiar las tasas de gobernanza, etc.

Vamos paso a paso

Recapitulando, el proceso de descentralización quedaría determinado de la siguiente manera: En primer lugar, el NNS añadirá el SNS a su registro donde almacena las dapps y sus correspondientes tokens. En ese momento, el ledger canister del SNS se congelará; no será posible realizar transacciones. El desarrollador sigue teniendo el control de la aplicación en este punto del proceso y puede actualizarla, por ejemplo, si es necesario hacer algunas correcciones de seguridad. El siguiente paso consiste en asignar y distribuir los tokens de gobernanza y las neuronas de una dapp a diferentes directores, descentralizando efectivamente la gobernanza de la dapp. Cuando esto se cumple, el SNS finalmente toma el control de la aplicación.

La investigadora Lara Schmid, propone una distribución de tokens de la siguiente manera: “Inicialmente habrá 1.000 millones de tokens de gobierno para una dapp concreta a través del SNS. La distribución inicial de tokens puede, por ejemplo, asignarse de la siguiente manera: El 25% de los tokens se entregará a los desarrolladores de la dapp. Otro 35% se entregará a una cuenta controlada por el SNS, que se utilizaría según los deseos de la comunidad de la dapp a través de las propuestas del SNS – por ejemplo, para la distribución dentro de la aplicación a los usuarios para incentivar el compromiso. El 40% restante podría distribuirse al público a través de una subasta abierta y sin permisos, cuya concepción está aún en fase inicial, que al final establece un precio único de compensación por el token de gobernanza de la dapp para todas las ofertas.

Para reforzar la gobernanza, el 90% de los tokens de la dapp inicial que se distribuyen a través de un SNS a los desarrolladores y participantes de una subasta podrían distribuirse como neuronas bloqueadas. Esto establece que el SNS está descentralizado y que los votantes están invertidos en la gobernanza desde el principio. El 10% restante podría ser tokens líquidos.”

Una vez completada la asignación inicial de tokens, el ledger canister del SNS se desbloquearía y el SNS asumiría el control de la dapp. Ahora tenemos una dapp que está totalmente controlada por su sistema de gobierno nativo y por los titulares de las neuronas. Todas las actualizaciones de la dapp en adelante son ahora el producto de las decisiones de la comunidad. Los votantes del SNS pueden decidir si los tokens en posesión del SNS se entregarán a los primeros usuarios o a los usuarios más activos de la aplicación, o si se utilizarán para ofrecer recompensas por características y errores a los desarrolladores, o para cualquier otro propósito. Adoro los finales felices.

Todo concluye al fin

En conclusión, el camino hacia la tan mentada descentralización ya está en marcha. Las instancias de prueba continúan, logrando cada vez mayor escalabilidad. La gobernanza descentralizada y la tokenización ofrecerán a los desarrolladores un poderoso medio para desbloquear nuevos e innovadores modelos de dapps interoperables y servicios basados en blockchain. Esta característica del SNS es un componente importante de la roadmap de Internet Computer, y como siempre, toda la comunidad está invitada a participar en el debate en el Foro de Desarrolladores para hacer preguntas y añadir sugerencias.

Mundo IC