NEAR es una plataforma de desarrollo descentralizada que utiliza un mecanismo de consenso Proof-of-Stake (PoS) y que, con el tiempo, contará con una arquitectura fragmentada para escalar el rendimiento de las transacciones. Su esquema de generación de bloques se llama Doomslug y el diseño de fragmentación propuesto se denomina Nightshade. Estas tecnologías funcionarán conjuntamente para ampliar la red y minimizar la congestión. NEAR también se ha diseñado para que sea fácil de desarrollar y utilizar, ya que presenta algunas innovaciones clave para acelerar el desarrollo de aplicaciones y los procesos de incorporación de los usuarios. La blockchain de NEAR fue creada y desarrollada por la Fundación NEAR. Su red principal entró en funcionamiento en abril de 2020, y los validadores de la red votaron para desbloquear las transferencias de tokens en octubre de 2020. El puente de NEAR a Ethereum (llamado Rainbow Bridge) se lanzó en marzo de 2021.
Historia
NEAR fue un proyecto de aprendizaje automático antes de convertirse en una plataforma de desarrollo de blockchain. Illia Polosukhin y Alexander Skidanov comenzaron NEAR.ai a principios de 2017 para explorar la síntesis de programas: el campo de la automatización de programas a partir de una especificación humana. Con el nombre de la novela de ciencia ficción The Singularity Is Near, el proyecto NEAR se basó en el trabajo de Illia como colaborador principal de TensorFlow en Google y en el de Alexander como ingeniero principal en MemSQL.
La investigación de la síntesis de programas llevó al equipo a explorar las plataformas de contratos inteligentes programables y los pagos de criptomonedas a finales de 2017 y principios de 2018. A medida que exploraron el espacio de soluciones y probaron una variedad de protocolos de blockchain, se dieron cuenta de que el estado actual de la tecnología no satisfacía sus necesidades y comenzaron a diseñar una blockchain que pudiera. Illia y Alex reunieron un equipo de ingenieros y comenzaron formalmente a construir el Protocolo NEAR en agosto de 2018. La visión fundacional de la plataforma NEAR fue ofrecer a los desarrolladores un camino fácil para construir aplicaciones descentralizadas que puedan escalar a un uso masivo. Para lograr estos objetivos, NEAR adoptó un mecanismo Proof-of-Stake (PoS) para apoyar la verificación de transacciones y la producción de bloques.
NEAR combina un enfoque de escalado horizontal con un nuevo mecanismo de consenso que divide la red en fragmentos paralelos y distribuye dinámicamente la computación para aumentar la capacidad de procesamiento de la red. La red se puso en marcha en abril de 2020, pasó a ser operada por la comunidad en septiembre de 2020 y aprobó una votación para permitir la transferencia de tokens en octubre de 2020.
Uso de los tokens
NEAR es la moneda nativa del protocolo NEAR. Representa el medio de intercambio principal y la unidad de cuenta para las transacciones nativas. Sirve principalmente para los siguientes propósitos:
- Seguridad: Los apostadores reciben premios en NEAR apostando sus tokens y contribuyendo a la seguridad de la red. El uso de NEAR de Proof-of-Stake (PoS) proporciona resistencia Sybil de los ataques DDoS (denegación de servicio distribuido).
- Cuotas de la red: La utilidad de la red se proporciona almacenando los datos de la aplicación y proporcionando una forma de cambiarlos mediante la emisión de transacciones. La red cobra tasas de transacción por procesar los cambios de estos datos almacenados. La red NEAR recoge y quema automáticamente estas tarifas, de manera que un mayor uso llevará a la quema de más tokens NEAR. Un porcentaje mínimo de las tarifas de uso de los contratos inteligentes se destina a recompensas para los desarrolladores. Esta recompensa incentiva efectivamente el desarrollo temprano de aplicaciones que aumentan el uso de la red. Cuando se llama a un contrato, una parte de las tasas de transacción generadas por la red se asigna automáticamente al contrato. Se ha establecido un valor mínimo como parámetro a nivel de sistema y los desarrolladores pueden elegir cualquier valor hasta o por encima de este valor mínimo.
Lanzamiento y distribución inicial de tokens
El protocolo NEAR creó 1.000 millones de tokens NEAR en su génesis, que se asignaron a individuos y organizaciones de forma continua durante el lanzamiento de su red principal el 22 de abril de 2020. La inflación, las transferencias y los calendarios de adquisición de derechos no comenzaron hasta la fase final del despliegue de la red principal de NEAR, que comenzó el 13 de octubre de 2020.
Mecanismo de consenso
El mecanismo de consenso implementado en NEAR se llama Nightshade. Nightshade modela el sistema como una única cadena de bloques. La lista de todas las transacciones de cada bloque se divide en trozos físicos, un trozo por fragmento. Todos los trozos se acumulan en un bloque. Obsérvese que los trozos sólo pueden ser validados por los nodos que mantienen el estado de ese fragmento.
En teoría, cada bloque lógico contiene todas las transacciones de todos los fragmentos. Sin embargo, como transmitir un bloque lógico a través de la red sería prohibitivamente caro, nunca se inicia. En su lugar, cada participante de la red mantiene el estado que corresponde a los fragmentos para los que valida las transacciones y cualquier fragmento adicional que quiera seguir.
El consenso se basa en el consenso más pesado de la cadena. Es decir, una vez que un productor de bloques publica un bloque, recoge las firmas de los nodos validadores. El peso de un bloque es entonces la participación acumulada de todos los firmantes cuyas firmas están incluidas en el bloque. El peso de una cadena es la suma de los pesos de los bloques. Además, el consenso utiliza un artilugio de finalidad que introduce condiciones de corte adicionales para una mayor seguridad de la cadena.
Tecnología
La cadena de bloques de NEAR utiliza un nuevo algoritmo de consenso y una arquitectura de fragmentación para lograr un nivel de rendimiento relativamente alto. Los elementos clave de la tecnología de NEAR son
- Re-Sharding dinámico
- Nightshade
- Doomslug
- Cuotas como recompensas para los desarrolladores
- Almacenamiento basado en el balance de tokens
Reestructuración dinámica
Hay dos formas de abordar la escalabilidad: horizontal y vertical. NEAR ha optado por utilizar la fragmentación, que es un tipo de técnica de escalado horizontal. La fragmentación es una forma de escalar las bases de datos y consiste en repartir la capacidad de cálculo y almacenamiento entre varios servidores. En el mundo de las cadenas de bloques, la fragmentación implica la partición de una cadena de bloques en subgrupos de nodos y distribuye la computación en múltiples subcadenas paralelas («shards»). Por el momento, la fragmentación no está disponible en NEAR.
Una vez que se ponga en marcha la fragmentación en NEAR, la red tiene la intención de ajustar regularmente el número de fragmentos soportados por la red en función de la demanda de los usuarios. El proyecto denomina a este enfoque de escalado basado en la demanda «Dynamic re-sharding». Este sistema permite a la red pagar únicamente por la infraestructura y la escala que necesita en cada momento. La reorganización dinámica podría ser un enfoque más rentable para escalar y asegurar una red fragmentada, ya que los requisitos de almacenamiento de los nodos pueden ajustarse a la demanda.
Nightshade
NEAR utiliza un nuevo enfoque de fragmentación llamado Nightshade para alcanzar el consenso y liquidar las transacciones entre los fragmentos. La mayoría de las redes fragmentadas utilizan un comité validador más pequeño que rota su proponente de bloques principal cuando valida las transacciones entre los fragmentos. Este enfoque introduce algunas dificultades en el proceso de validación. Por ejemplo, estos grupos de validadores deben descargar todo el estado de cada fragmento o recibir sólo la parte que ha cambiado. El proceso de validación para cualquiera de las dos técnicas puede ser ineficiente, ya que la primera requiere un marco de tiempo mayor y la segunda requiere un tamaño de estado mayor.
Nightshade ofrece un modelo diferente modificando la abstracción típica de sharding. Asume que cada shard trabaja conjuntamente para producir «trozos» de datos que colectivamente crean un único bloque. Los bloques se producen con una cadencia regular independientemente de que cada fragmento individual haya producido su «trozo» para esa altura de bloque específica. Nightshade es un sistema basado en el líder, lo que significa que asigna un único validador para producir cada bloque. Este validador debe ensamblar en un bloque los trozos de datos generados por cada fragmento durante su periodo de liderazgo. Las asignaciones de liderazgo rotarán por el conjunto de validadores existentes. Los validadores no aceptan transacciones, sólo trozos.
Doomslug
Doomslug es la nueva técnica de producción de bloques del Protocolo NEAR. Según el equipo, permite a la red alcanzar un cierto sentido de finalidad práctica después de una ronda de comunicación, con un gadget de finalidad que proporciona la finalidad BFT después de una segunda ronda. La finalidad práctica en Doomslug (o finalidad Doomslug) es cuando un bloque es irreversible a menos que al menos uno de los participantes sea eliminado. Doomslug también permite que la red continúe produciendo y finalizando bloques mientras más de la mitad del conjunto de validadores esté en línea y sea honesto, aunque el gadget de finalidad se detendrá si menos de dos tercios de los participantes están en línea.
Tasas como recompensa para los desarrolladores
NEAR distribuye el 30% de cualquier tarifa de transacción al contrato (o contratos) al que llama la transacción. El propietario del contrato (a menudo un grupo de desarrolladores o una DAO) puede decidir cómo asignar estos fondos. Estas «recompensas» de honorarios incentivan efectivamente el desarrollo temprano de aplicaciones en NEAR. El porcentaje de honorarios asignado a esta recompensa es un parámetro a nivel de sistema (puede ser ajustado por la gobernanza), pero los desarrolladores pueden elegir recibir cualquier cantidad igual o superior a este valor mínimo.
Almacenamiento basado en tokens
Los titulares de tokens NEAR tienen derecho a almacenar datos en la cadena. Por ejemplo, si alguien tiene un saldo de 1 NEAR, significa que la persona puede almacenar casi 10 KB de datos en la cuenta. Este modelo es similar a la forma en que las cuentas corrientes de los bancos requieren un saldo mínimo para tener una cuenta. Permite que los contratos que mantienen un estado importante paguen a los validadores de forma proporcional a la cantidad de datos que están asegurando.
Gobernanza
El gobierno de la red está abierto a las contribuciones de la comunidad. Cualquiera puede presentar o comentar una propuesta de mejora. Estos debates sobre la gobernanza tienen lugar en el foro de NEAR. Las propuestas suelen pasar por una fase de borrador en la que están abiertas a los comentarios y al escrutinio de la comunidad. Si las propuestas reciben suficiente apoyo, los equipos de desarrollo de NEAR elaborarán una especificación y tratarán de incorporar el cambio. El calendario de aplicación de la propuesta dependerá de la urgencia del cambio (por ejemplo, una corrección de un error crítico se administraría casi inmediatamente). Los validadores deciden en última instancia si adoptan una nueva versión del protocolo ejecutando la última versión del cliente.