¿Qué es NEAR Protocol?
NEARCore, la implementación de referencia de NEAR Protocol
NEAR Protocol debe su existencia a NEARCore, que es el software que hace posible su funcionamiento. NEARCore está construido en su totalidad usando lenguaje de programación Rust, haciendo que el mismo sea portable a distintas arquitecturas y muy seguro contra distintos ataques y exploits. De esta manera, los desarrolladores han creado una primera capa de seguridad alrededor de NEAR haciendo que sus nodos estén implementados con la seguridad en mente.
NEARCore tiene todo lo necesario para la puesta en marcha de nodos completos para las redes mainnet, testnet y betanet, las cuales pueden ponerse en marcha fácilmente con el script oficial, nearup. NEARCore asegura también acceso a todas las tecnologías de NEAR, ya que la implementación es completamente libre y fácilmente integrable con sus distintos backends en JavaScript, Python, Go, Java, C# e incluso Ruby.
Todo ello significa que NEARCore está construido para que la comunidad pueda aprovechar sus capacidades usando las herramientas que mejor se adapten a sus necesidades.
Nightshade Sharding, el esquema de sharding de NEAR Protocol
El núcleo central del funcionamiento de NEAR Protocol es el protocolo de sharding Nightshade. Nigthshade está integrado a NEARCore con el fin de hacer una red subdividida de funcionamiento eficiente y segura. De esta manera, los nodos de NEAR pueden procesar y validar transacciones de manera paralela, haciendo que la misma funcione de forma mucho más rápida y logrando así aumentar la escalabilidad total de la red.
Con Nightshade cada shard de la red NEAR producirá una parte del siguiente bloque. Cada una de estas partes se denomina chunk (fragmento). La totalidad de los chunks producidos son luego enviados al resto de la red, donde se compilan, procesan y almacenan, generando un nuevo bloque dentro de la red. En este nuevo bloque están los registros de todas las transacciones de NEAR y su último estado de sincronización. Realizado el proceso, este se vuelve a repetir en un ciclo sin fin que mantiene en funcionamiento el poder computacional de la red NEAR.
Este esquema de funcionamiento le permitiría a NEAR ofrecer una escalabilidad de cientos de miles de transacciones por segundos. Sin embargo, la limitación del sistema está en la conexión y la latencia entre los nodos que forman parte de la red. Si los nodos están muy alejados unos de otros en el planeta o tienen problemas de conexión la capacidad de escalar de Nigthshade se ve fuertemente afectada. De hecho, bajo ciertas condiciones esto puede llevar a hard forks de la red.
Las protecciones de Nightsghade
Con el fin de evitar esto, Nightshade apuesta por un protocolo de consenso híbrido impulsado por la Thresholded Proof of Stake (TPoS) para seleccionar a los validadores. El protocolo de consenso, y en concreto su parte BFT, está construido alrededor de tres tecnologías bien probadas:
- El sistema de consenso de la cadena más larga de Bitcoin. En Nightshade, la cadena más larga es la cadena correcta, cortando así la posibilidad de ataques hard forks maliciosos que rompan su funcionamiento.
- Se usa el sistema Casper de Ethereum 2.0 fusionado con el concepto GRANDPA de Polkadot. De esta manera las cadenas de sharding tienen protección contra ataques de dominio malicioso, en el que un pequeño grupo de nodos pueden atacar una sharding y terminar contaminando al resto de las cadenas.
Por su parte, TPoS es parecido a un sistema de subasta en el que un gran pool de validadores potenciales indican cuántos tokens NEAR están dispuestos a depositar en stake mediante una transacción firmada. En ese caso, TPoS ayuda a determinar el umbral mínimo para convertirse en un validador en cada epoch (habitualmente, un intervalo de 12 horas) y se decide en base a esos parámetros dinámicos. De esta forma la red agrega una protección adicional frente ataques al esquema de staking.
Rainbow Bridge y Aurora, capacidades cross-chain y smart contracts
La segunda parte importante en el funcionamiento de NEAR la vemos en Rainbow Bridge y su Layer2, Aurora. Rainbow Bridge es una aplicación en NEAR que permite a los usuarios transferir tokens ERC-20, stablecoins, wrapped tokens e incluso NFT, entre las blockchains de Ethereum y NEAR. Esto permite a los desarrolladores y usuarios aprovechar la mayor capacidad de procesamiento y bajas comisiones de NEAR Protocol.
Rainbow Bridge es una pasarela sin permiso y totalmente descentralizada que puede ser usada con cualquier monedero Web3. El sistema funciona gracias a una serie de smart contracts en Ethereum y la Layer2 de Near, Aurora. El funcionamiento es idéntico al de la mayoría de bridge que conocemos para actividades cross-chain (por ejemplo, Multichain). Esto significa que los tokens en Ethereum se bloquean en el smart contract dentro de esa red mientras que en Aurora se libera una copia exacta de ese activo, que luego puede ser movilizado en NEAR sin limitaciones. El proceso contrario también es posible, por medio de la quema del activo en NEAR y su liberación en Ethereum.
Ahora bien, Rainbow Bridge es posible gracias a que la Layer2 de NEAR, Aurora, tiene una implementación de soporte completo de la Ethereum Virtual Machine. Esto significa que cualquier smart contract de Ethereum puede trasladarse a NEAR sin mayores modificaciones. Gracias a ello es posible recrear tokens ERC-20, ERC-721 y ERC-1155 (estos últimos con capacidad NFT).
¿Razones para hacer esto?
Pues bien, operar en NEAR es mucho más económico. Por ejemplo, crear un NFT en NEAR puede costar tanto como 1 $ USD. En cambio en Ethereum ese valor puede ser de hasta 100 $ o más, dependiendo de las condiciones de costo del Gas en Ethereum.
La otra poderosa razón es la velocidad. Aurora es capaz de alcanzar la confirmación de una transacción en tan solo 2 segundos. Esto deja bastante lejos los 45 segundos en promedio que lleva una operación en Ethereum (siempre y cuando pagues el Gas correcto). Esto significa que aplicaciones DeFi sobre NEAR Protocol no solo son posibles, sino que resultan cientos de veces más económicas que usar redes como Ethereum. De hecho, el ecosistema DeFi sobre NEAR Protocol ha crecido rápidamente gracias a las facilidades que ofrece para desarrollar estas aplicaciones sobre su blockchain.
Por otro lado, Aurora usa el mismo principio de funcionamiento de Ethereum. Es decir, las comisiones de computación de los smart contracts deben pagar un “Gas” usando el token NEAR. También hay limitaciones en el tamaño y capacidad de Gas que pueden usar los smart contracts. Esto sirve para evitar los ciclos de computación infinitos y mantener protegida la red de ataques de spam.
Token NEAR
El token NEAR es el token nativo de NEAR Protocol. Es un token derivado de ERC-20 que funciona sobre la blockchain de NEAR y se aprovecha de las capacidades de Aurora para su funcionamiento. El token tiene un suministro máximo de mil millones de tokens, lo que le convierte en un token deflacionario. Entre los principales usos de NEAR está el pago de comisiones de red, pago de recompensas, pago por acceso a dApps y servicios dentro de la red y gobernanza del protocolo.
Un punto curioso de NEAR es que para mantener su escasez el resto de las comisiones de transacción son quemadas. De esta manera se mantiene la inflación de la red controlada y se incentiva el incremento de valor del token.
La gobernanza dentro del protocolo
La gobernanza dentro de NEAR Protocol permite a la comunidad participar en la decisión del futuro del protocolo. Desde realizar y votar por propuestas de mejora hasta participar en la corrección de errores y bug bounties pasando por la participación en la actualización de los parámetros del sistema y la introducción de cambios a gran escala en la tecnología fundamental del protocolo. La posibilidad de administrar los recursos suele incluir la asignación de fondos de subvención procedentes de fuentes comunitarias, como por ejemplo la asignación proporcionada a la Fundación.
Los principios de diseño de NEAR se aplican a su gobernanza:
- Usabilidad: Los procesos de gobernanza deben ser claros y comprensibles. Los mecanismos de participación activa y de votación (cuando estén disponibles) deben ser simples y directos. La gobernanza debe ser eficaz y eficiente, de modo que se tomen decisiones con rapidez y se apliquen con eficiencia. La comunidad de partes interesadas debe tener suficiente voz para apoyar la legitimidad de las decisiones y no abandonar o bifurcar la plataforma.
- Escalabilidad: La gobernanza debe ampliarse a medida que crecen el alcance y la complejidad de la propia plataforma, la diversidad de sus partes interesadas y la amplitud de la participación.
- Simplicidad: Los procesos más sólidos tienden a ser los más sencillos, por lo que una buena gobernanza debe evitar la sobre ingeniería de los procesos y reconocer que, a menudo, la comunicación de persona a persona es el enfoque más sencillo.
- Descentralización sostenible: La gobernanza debe permitir la participación de todas las partes interesadas en la plataforma, pero debe ser resistente a la captura por parte de cualquiera de ellas a lo largo del tiempo.
Para participar en la gobernanza todo lo que debes hacer es realizar staking dentro de la plataforma, lo que te dará poder de voto dentro de la misma. Asimismo, puedes participar en las discusiones de gobernanza usando el foro comunitario dispuesto para ello.