CriptomonedasTutoriales

Solana: Una blockchain que soporta más de 50.000 transacciones por segundo

Las aplicaciones descentralizadas (DApps) son uno de los casos de uso de la tecnología blockchain más importante. Hemos visto como las DApps han evolucionado mucho en los últimos años, creando juegos como Cryptokitties o se han convertido en la base de las DeFi. Pero las blockchain como Ethereum no están preparadas para soportar una gran cantidad de transacciones, generando congestión en la red. Solana (SOL) es una blockchain pensada exclusivamente para DApps que pretende ser alternativa a Ethereum

Qué es Solana (SOL)

criptomoneda sol

Es un proyecto blockchain de nueva generación basado en el código abierto que busca impulsar el desarrollo de DApps de próxima generación. Solana (SOL) busca ofrecer una plataforma altamente escalable, segura y lo más descentralizada posible. Quiere además contar con potencialmente miles de nodos sin necesidad de hardware costoso que consuma mucha energía.

Solana se basa en el consenso de prueba de participación (Proof-of-Stake; PoS) de tercera generación. Integra un mecanismo único de crear un sistema de confianza y seguridad para determinar el tiempo de una transacción denominado Proof-of-History (PoH).

La tecnología blockchain de Solana se ha desarrollado desde cero para ser especialmente escalable. Los desarrolladores quieren demostrar que cuando se combinan diferentes algoritmos para generar una blockchain, se crea un sistema que reduce el cuello de botella que termina saturando la red. Se consigue una red de alto rendimiento aun cuando se generan un gran volumen de transacciones.

El proyecto Solana Labs, que da vida a Solana, fue fundado en 2017 por parte de Anatoly Yakovenko. Su propuesta para esta blockchain es crear un nuevo sistema de verificación de transacciones denominada Proof-of-History (PoH) que otorga la capacidad de soportar miles de transacciones por segundo. Para su financiación se lanzó una ICO en 2017 que logro recaudar más de 25 millones de dólares. La red principal de Solana fue lanzada en marzo de 2020 y actualmente funciona en fase beta.

Qué es SOL

Como cualquier otra blockchain, Solana tiene una criptomoneda nativa de nombre SOL que funciona como un token de utilidad. El token SOL es necesario para el pago de las comisiones de las transacciones y para desplegar e interactuar con smart contracts.

Los tokens SOL se van quemando en un proceso deflacionario integrado. Además, los holders de SOL pueden convertirse en validadores de la red. Al mismo tiempo SOL hace uso del protocolo SPL, un estándar de token de la blockchain Solana similar al ERC-20 en Ethereum.

Hay dos casos de uso del token SOL:

  • Permite pagar las comisiones de las transacciones realizadas en la red o de los smart contracts
  • Realizar staking de los tokens gracias al mecanismo de consenso de prueba de participación

Actualmente se están desarrollando diferentes DApps dentro de Solana que desarrollan nuevos usos del token SOL. Chainvote está desarrollando un mecanismo de votación DeFi que permite la gobernanza corporativa usando los tokens SOL para realizar votaciones.

Características de Solana

Qué es Proof-of-History (PoH)

Cualquier transacción o evento en la blockchain de Solana genera un hash basado en el algoritmo de cifrado SHA256. Este algoritmo coge una entrada y genera una salida única muy difícil de predecir. Solana lo que hace es usar es el hash de salida de una transacción y lo usa como entrada para el siguiente hash. Esto lo que hace es introducir el orden de transacciones en la siguiente salida.

Este mecanismo de hash lo que hace es generar una cadena larga y sin interrupciones de transacciones. Lo que permite generar un orden claro y verificable de las transacciones que luego un validador añade a un bloque. Mediante este mecanismo ya no es necesario generar un timestamp como sucede en Bitcoin, Ethereum, Litecoin, etc.

Cada hash a su vez requiere de un cierto tiempo para poder completarse. Este elemento también permite a los validadores verificar, de manera muy rápida y sencilla, cuanto tiepo ha pasado.

Proof-of-History (PoH) por lo tanto presenta grandes diferencias con respecto al consenso PoW de Bitcoin o Ethereum. Estas dos criptomonedas agregan las transacciones en bloques sin el más mínimo orden. Los mineros en PoW lo que hacen es añadir una marca de tiempo, que es la hora y fecha en la que se ha generado en bloque, según el reloj de cada blockchain. La marca de tiempo puede variar según el nodo e incluso ser falsa, lo cual obliga a los nodos a verificar que la marca de tiempo es válida.

Mediante el proceso de ordenación de las transacciones en hashes, los validadores tienen menos información que procesar en cada bloque. Usar una versión con hash del último estado de una transacción reduce los tiempos de confirmación de los nuevos bloques.

Indicar que PoH no es propiamente un mecanismo de consenso, sino una solución que ahorra tiempo y recursos para confirmar las transacciones. Realmente es un complemento que se agrega al consenso de prueba de participación que simplifica la selección aleatoria del próximo validador. Permite a los nodos validar el orden de las transacciones en menores lapsos de tiempo, haciendo que la red sea más rápida.

solana proof of history

Qué es Turbine

Protocolo de propagación de bloques que facilita la distribución de información a los nodos, ayudando a mantener el consenso. Debe ser un proceso rápido, ya que los bloques en Solana se generan cada medio segundo, aproximadamente. Se requiere que el proceso de propagación de los bloques sea más rápido que la generación de bloques.

Turbine lo que hace es dividir el problema. Concretamente lo que hace es dividir la información del bloque en pequeñas secciones que se distribuyen en la red. Estos «trozos» se vuelven a construir por parte de los nodos según sus propios estados.

Realmente no se manda todo el bloque, solo una porción de información del bloque y cada nodo lo debe reconstruir. Si el nodo no tiene la información para «reconstruir» el bloque, la puede solicitar al resto de la red. Este proceso se hace en paralelo, reduciendo así el consumo del ancho de banda, maximizando la velocidad y logrando así mantener el consenso.

Qué es Gulf Stream

Es un protocolo de almacenamiento en cache de las transacciones de la red. Es el encargado de recibir la transacción y mandarla a todos los nodos, priorizando a los nodos generadores. Permite a todos los nodos de la red acceder a la información necesaria para la recreación de los bloques. Solana crea los bloques mediante una elección basada en un quorum que tiene la potestad de generar un bloque y emitirlo a la red.

Pero el papel de los nodos generadores no únicamente se encargarse de crear los bloques, también de ser selectores del próximo grupo de nodos validadores. Esto permite saber en todo momento cuáles serán los nodos que generarán el siguiente bloque. Permite a los nodos recibir las transacciones y enrutarlas a los siguientes generadores. Un mecanismo que permite reducir el tiempo de generación del próximo bloque.

Las manipulaciones del sistema se evitan mediante un tiempo de vida de las transacciones de solo 24 segundos. Cuando una transacción no es confirmada en este lapso de tiempo se pueden generar una salida: un fallo de transacción y la necesidad de reenviar la transacción. Esta situación de fallo en el tiempo de validación de transacción solo se puede dar si se llegase a superar la capacidad de transacciones de la red de Solana.

Qué es Sealevel

Solana ofrece la capacidad de paralelizar la validación de transacciones y la capacidad de ejecutar smart contracs. La idea de esta nueva blockchain es competir con Ethereum, sobre todo en cuanto a soporte de DApps y DeFi.

Los smart contracts de solana hacen uso del lenguaje C y de Rust, para crear un ecosistema de programación de smart contracts unico. Esto ofrece una gran capacidad de palelización de la ejecución de smart contracts. Sealevel es el nombre que han dado los desarrolladores de Solana a estas capacidades.

Mediante esta función se permite la capacidad de leer, ejecutar y escribir instrucciones de manera paralela dentro de la capa de ejecución de smart contracts de Solana. Un smart contract puede eecutar múltiples acciones simultanemente, mientras que en Ethereum y EOS solo se puede una acción a la vez.

Sealevel lo que permite a Solana es una mayor escalabilidad que otras redes blockchain. Podría llegar, con la integración de suficientes nodos de alto rendimiento soportar hasta 500.000 transacciones por segundo. Adicionalmente se elimina la necesidad de una segunda capa para mejorar la escalabilidad.

Qué es Tower BFT

Protocolo de Solona contra la tolerancia a fallas bizantinas que se combina con PoH para ayudar a mantener seguro el consenso y la descentralización de la red. Es una evolución de «Practical Bizantine Fault Tolerance» (PBFT), que es un protocolo de tolerancia a fallas bizantinas, muy reconocido dentro de la computación distribuida.

Tower BFT hace la función de «juez» dentro del sistema de marcas de tiempo que se ejecuta en la red de Solana. Se utiliza un reloj sincronizado entre todos los nodos que sirve como punto de control, verificación y aceptación del trabajo realizado por los nodos. Permite así crear un consenso descentralizado sobre el trabajo y la aceptación del mismo por la red. Siempre y cuando el trabajo respete las reglas de consenso de la red Solana.

Este mecanismo derivado de PBFT es realmente rápido y además ha sido optimizado por los desarrolladores de Solana. Tower BFT y PoH son elementos que permiten a Solana tener tiempos de generación muy bajos y mantener el consenso.

Cómo funciona Solana

Este proyecto hace uso del consenso de prueba de participación (Proof-of-Stake; PoS) con un complemento que se denomina «Tower CBFT». Mediante este mecanismo se permite a las redes distribuidas conseguir llegar a un consenso que impide el ataque de los Generales Bizantinos (BFT).

La implementación de una resistencia a BFT por parte de Solana, agrega una fuente global de tiempo en la blockchain mediante un segundo protocolo novedoso denominado prueba de historia (Proof-of-History; PoH).

Tower BFT hace uso de este reloj que cuenta con sincronización para la reducción de los requisitos de potencia de procesamiento para verificar las transacciones. Esto es posible gracias a que no se necesita calcular el tiemstamp de las transacciones anteriores. Un mecanismo que permite a Solana tener un rendimiento superior al de otras blockchain.

No es la única diferencia entre Solana y el resto de blockchain. Se agrega también la capacidad de paralelización de las transacciones que recibe el nombre de Sealevel. Este mecanismo permite la ejecución de smart contracts en paralelo, optimizando así la necesidad de recursos y reduciendo los tiempos. Solana permite escalar horizontalmente en GPU y SSD, permitiendo a la plataforma escalar para satisfacer la demanda de la red.

Además, en Solana se elimina el mempool que se utiliza en Bitcoin, Ethereum y otras criptomonedas. Lo que se hace es distribuir las transacciones entre los validadores, antes incluso que estos hayan terminado de validar el anterior lote de transacciones. Gracias a esto se consigue maximizar la velocidad de confirmaciones y se aumenta la cantidad de transacciones que se pueden manejar de manera simultánea y en paralelo. Este elemento recibe el nombre de «Gulf Stream».

funcionamiento blockchain solana

Qué diferencia a Solana de otras blockchain

El principal problema de las blockchain actuales mediante el consenso de prueba de trabajo es que soportan muy pocas transacciones por segundo. Bitcoin soporta entre 5-8 transacciones por segundo y Ethereum soporta entre 12-20 transacciones por segundo. Cuando se rebasan estas cifras, entramos en congestión de la red, que no es más que más transacciones que las procesables. Esto conlleva aumentos en las comisiones de transacción para que sean validadas antes que el resto de transacciones emitidas.

Solana se diferencia del resto de blockchain en ofrecer, en teoría, una capacidad mayor de procesamiento. Los desarrolladores indican que se puede llegar a superar la cifra de las 50.000 transacciones por segundo. Cumplir con esta cifra supondría que sería la blockchain más rápida y potente en la actualidad.

No es la única diferencia entre Solana y el resto de criptomonedas. Solana genera un bloque en intervalos de 400-800 milisegundos. Bitcoin genera un bloque cada 10 minutos (más o menos) y Ethereum cada 20 segundos (más o menos). Las comisiones de transacciones en Solana también se reducen, pasando a una comisión media de 0.000005 SOL. Estos aspectos permitirían potencialmente desarrollar cualquier solución DApp, DeFi o cualquier juego sobre esta blockchain.

Todo esto lo hace sin necesidad de recurrir a una segunda capa, como es el caso de Lightning Network para Bitcoin, una solución de Capa 2. Además, tampoco es necesaria la fragmentación de la blokchain en partes, como proponen Ethereum 2.0 o Polkadot, entre otros.

Solana además permite que cualquiera pueda entrar como validador de la red y ayudar en la protección de la blockchain. Es un sistema permisionless, pero que requiere de un hardware mínimo que se describe en la propia web del proyecto. Actualmente ya son más de 1.000 los nodos validadores de la red.

Proyectos basados en Solana

Hay varios proyectos que ya están desarrollando soluciones dentro de Solana. Son muchos los desarrolladores de DApp y DeFi debido a la gran capacidad de procesamiento teórico que ofrece. Algunas de las soluciones más interesantes que se están construyendo sobre Solana son:

  • O3Swap: Protocolo de agregación de cadenas cruzadas que ofrece compatibilidad con Ethereum, Binance Smart Chain, NEO y Huobi Eco.
  • SolStarter: Plataforma de lanzamiento de IDO para proyectos que se basan en Solana.
  • Arweave: Es un protocolo de almacenamiento de datos descentralizado que quiere ofrecer almacenamiento de archivos permanente y con redundancia.
  • Oxigen: Protocolo de intermediación principal de DeFi que permite a los usuarios extraer valor de sus activos inactivos.

oxygen solana

Roadmap de Solana

El proyecto inicio su desarrollo en 2007 y hasta marzo de 2021 no se lanzó la beta de la mainnet. Solana actualmente carece de un roadmap claro, así que no sabemos cuándo la mainnet dejara de estar en fase beta. Aunque se identifica como en fase beta, la red está lista para soportar transacciones y smart contracts. La identificación beta hace referencia a posibles errores menores o contratiempos que se puedan generar.

Palabras finales sobre Solana

La propuesta que ofrece Solana para garantizar una buena escalabilidad y poder procesar una gran cantidad de transacciones por segundo parece prometedora. Si su mecanismo de Proo-of-Stake combinado con el mecanismo de Proof-of-History se demuestra que es seguro, es posible que muchos otros opten por utilizarlo. Eliminar la necesidad de «romper» la blockchain en partes más pequeñas y manejables y añadir una capa que lo vigile todo, somo si fuera un policía, parece añadir elementos que pueden terminar provocando fallos.

Te explicamos qué es y cómo funciona una criptomoneda

Solana es solo una de las muchas soluciones que se están desarrollando actualmente con la intención de ofrecer escalabilidad. Tras verificarse que las criptomonedas tienen futuro y son adoptadas por los usuarios, ahora llega el proceso de mejora de las mismas. Cabe recordar que Bitcoin fue lanzada en 2009 y Ethereum fue desplegada en 2015. Hablamos de tecnologías muy nuevas de las que estamos descubriendo todas las posibilidades que nos pueden llegar a ofrecer.

Roberto Solé

Técnico Superior en Electrónica y en Energías Renovables, Técnico en Prevención de Riesgos Laborales y Técnico Electricista de Baja Tensión apasionado del hardware y las nuevas tecnologías, además de hodl de Bitcoin. Hace tiempo cruce el Stargate y desde entonces me dedico a la exploración.
Los datos de carácter personal que nos facilite mediante este formulario quedarán registrados en un fichero de Miguel Ángel Navas Carrera, con la finalidad de gestionar los comentarios que realizas en este blog. La legitimación se realiza a través del consentimiento del interesado. Si no se acepta no podrás comentar en este blog. Puedes consultar Política de privacidad. Puede ejercitar los derechos de acceso, rectificación, cancelación y oposición en info@profesionalreview.com
Botón volver arriba