Ethereum es una de las primeras cadenas que admite aplicaciones descentralizadas (dApps), con backends de aplicaciones basados en "contratos inteligentes" y con mecanismos de manejo de eventos en la cadena. Para resolver el trilema de blockchain (escalabilidad, descentralización y seguridad), han surgido varias soluciones de segunda capa (Capa 2, L2) y tecnologías de agregación. Estas soluciones L2 procesan transacciones fuera de la cadena y utilizan Ethereum como capa de disponibilidad de datos. Sin embargo, si bien L2 tiene como objetivo escalar Ethereum, no resuelven completamente el problema de escalamiento computacional. La tecnología de agregación, incluso cuando se ejecuta fuera de la cadena, todavía depende de la máquina virtual Ethereum (EVM) para procesar transacciones, lo que resulta en tarifas de gas más altas. Algunos desafíos que enfrentan la mayoría de los marcos de agregación incluyen:
Recursos computacionales: las técnicas de agregación, especialmente la agregación optimista, requieren pasos computacionales adicionales para generar y verificar pruebas de corrección. Esto implica ejecutar la misma transacción fuera de la cadena y luego enviar una prueba a la cadena principal, lo que agrega carga computacional.
Gestión del estado: mantener la coherencia entre el estado L2 y la cadena principal de Ethereum requiere una gran cantidad de recursos informáticos. Por ejemplo, zk-rollups debe generar pruebas de conocimiento cero, lo que exige mucho recursos informáticos.
Compromiso de datos: la tecnología de agregación envía con frecuencia datos (mencionados anteriormente como datos de llamadas) a Ethereum para garantizar la disponibilidad y exactitud de los datos. Cuando la cadena principal está congestionada, estas confirmaciones pueden volverse costosas y lentas, lo que reduce algunas de las ventajas de usar L2.
Cartesi es una solución acumulativa específica de aplicaciones con su propio tiempo de ejecución de Linux que proporciona aplicaciones descentralizadas con toda la potencia informática de una máquina virtual dedicada y expande el espacio de diseño más allá de Ethereum. A medida que más y más soluciones y dApps avanzan hacia enfoques modulares, Cartesi Rollups se puede implementar en entornos de configuración modular: como una solución de capa 2 sobre Ethereum, como una solución de capa 2 como Arbitrum, Optimism, Base o ZK-EVM A tres. Solución de varios niveles en la parte superior de la cadena o como un paquete soberano independiente. Al aprovechar Cartesi, los desarrolladores también pueden utilizar pilas de software y lenguajes de programación existentes que no son compatibles con EVM, lo que reduce la fricción de los desarrolladores y proporciona una experiencia de usuario que puede ser compatible con procesos nativos Web2.
Fuente: Blog de Cartesi (https://cartesi.io/blog/application-specific-rollups/)
La descentralización de los desarrolladores es real
Aunque el ecosistema Ethereum se considera bastante grande, según un informe de Statista, sólo el 1,1% de los desarrolladores utilizan el lenguaje Solidity para escribir código, mientras que el 51% de los desarrolladores todavía utilizan Python para crear aplicaciones. Con base en esta diferencia, se puede inferir que no solo es difícil hacer que nuevos desarrolladores comiencen, sino que también es difícil para los desarrolladores avanzados aprender un nuevo lenguaje de programación solo para contratos inteligentes. En otras palabras, el espacio de diseño de EVM es muy limitado cuando se trata de desarrollar contratos inteligentes, especialmente cuando se utilizan lenguajes como Solidity y Vyper, lo que puede no ser un buen incentivo para que los desarrolladores aprendan blockchain. No olvide que los desarrolladores deben dominar al menos un lenguaje de programación antes de adquirir las habilidades para aprender otro, y el desarrollo de dApp todavía utiliza bibliotecas y marcos como React que tienen una lógica similar a la de las aplicaciones Web2.
La mejor solución para los desarrolladores no es un lenguaje nuevo, sino desarrollar aplicaciones utilizando una pila de programación con la que ya están familiarizados y en la que ya están familiarizados. Estamos hablando de traer millones de desarrolladores a Web3, y no debería ser trabajo de los desarrolladores dedicar tiempo a comprender las diversas herramientas específicas para aplicaciones EVM. Cartesi proporciona una excelente solución al abstraer la barrera del idioma. Como desarrollador, aún puede utilizar lenguajes como Python, Rust, JavaScript, etc. e integrar diferentes bibliotecas de código abierto para crear aplicaciones de usuario.
Comprender las acumulaciones cartesianas
Cartesi Rollups resuelve una necesidad clave en el espacio blockchain al proporcionar una capa de ejecución modular que mejora enormemente la escalabilidad y el rendimiento de las aplicaciones descentralizadas (dApps). Con Cartesi Rollups, cada dApp se ejecuta en su propia cadena de aplicaciones acumulativas de alto rendimiento, equipada con una CPU dedicada, lo que garantiza que no haya competencia por los recursos dentro del ecosistema de Cartesi. El diseño logra una escalabilidad computacional significativa al tiempo que mantiene la sólida seguridad de la cadena de bloques subyacente.
Cartesi Rollups emplea un modelo acumulativo optimista que utiliza prueba de falla para gestionar y resolver disputas, garantizando un procesamiento confiable y eficiente. Su marco consta de dos componentes principales: la capa base en la cadena (como Ethereum, donde se encuentran los contratos dApp) y la capa de ejecución (donde Cartesi maneja el cálculo fuera de la cadena). Si desea obtener más información sobre la arquitectura de Cartesi y estos dos componentes, puede consultar la documentación relevante (https://docs.cartesi.io/cartesi-rollups/1.3/core-concepts/architecture/).
Llevando el poder del código abierto a las dApps con Cartesi
El código abierto juega un papel muy importante en la industria tecnológica. Linux fue uno de los primeros sistemas operativos verdaderamente de código abierto que supuso un cambio de paradigma en el software comercial. Linux comenzó como un proyecto personal en 1991 y gradualmente se transformó en una versión de código abierto de UNIX de distribución gratuita. Tiene requisitos mínimos de recursos y brinda a los desarrolladores la libertad de crear diferentes aplicaciones según sus necesidades. Linux es lo suficientemente "modular" como para distribuirse por todo el ecosistema. Por ejemplo, usar el kernel de Linux y combinarlo con paquetes, marcos y configuraciones permite a los desarrolladores generar nuevo software. Ubuntu es uno de los sistemas operativos famosos lanzados en 2004.
Actualmente, la mayoría de las bibliotecas existentes dependen de un sistema operativo específico, como MacOS o Linux. Los bancos y las instituciones financieras han dependido durante mucho tiempo de sistemas operativos y lenguajes personalizados como Java, C, COBOL, FORTRAN y ensamblador para crear software crítico. Es probable que llevar Linux al desarrollo de blockchain impulse la innovación en DeFi, juegos y herramientas de desarrollo debido a su flexibilidad y seguridad. Hay más de 1000 bibliotecas disponibles en pypi.org creadas específicamente para desarrolladores de blockchain que utilizan el lenguaje Python.
A continuación se muestran algunos algoritmos y compiladores interesantes que puede utilizar al utilizar la infraestructura de Cartesi y crear dApps:
Rustc (compilador de Rust): Rust se está volviendo cada vez más popular en el desarrollo de blockchain debido a sus características de seguridad de memoria y concurrencia. Rustc es esencial para compilar contratos inteligentes y otros componentes de blockchain centrados en la seguridad y el rendimiento.
Compilador Glasgow Haskell (GHC): Haskell es conocido por su potente sistema de tipos y su paradigma de programación funcional. GHC se puede utilizar para el desarrollo de blockchain para construir modelos financieros y contratos inteligentes matemáticamente probados, como los de Cardano.
Utilice algoritmos de compresión: los sistemas Blockchain suelen manejar grandes cantidades de datos, desde registros de transacciones hasta códigos de contratos inteligentes. La compresión de datos eficiente es fundamental para reducir los requisitos de almacenamiento y mejorar el rendimiento de la red. Se pueden utilizar algoritmos de compresión como gzip, bzip2, xz y lz4 para comprimir datos de blockchain antes de almacenarlos en el disco o transmitirlos a través de la red. La elección de un algoritmo depende de las necesidades específicas de su sistema blockchain: si la velocidad, el uso reducido de RAM o la carga reducida de CPU son una prioridad.
Uso de motores: Linux también admite una variedad de motores, utilizados principalmente en la industria del juego, como FlaxEngine y Panda3D. Sin embargo, el motor Docker también se puede utilizar en aplicaciones para ejecutar contenedores para lograr la expansión a nivel de aplicación.
Contribuciones de código abierto de Linux: Linux también ha hecho contribuciones importantes al lanzar más bibliotecas de código abierto, como Hyperledger Fabric (un software de contabilidad distribuida) y Hyperledger IROHA (una plataforma escrita en C++ para que las instituciones financieras administren activos digitales). (https://www.hyperledger.org/projects/fabric)
Abstracciones de desarrolladores y extensiones modulares para Cartesi
Proporcionar máquinas virtuales (VM) dedicadas para cada aplicación ayuda a los desarrolladores a preocuparse menos por las herramientas y el escalado general. La máquina Cartesi es una máquina virtual diseñada para manejar computación fuera de cadena para aplicaciones blockchain. Las máquinas Cartesi utilizan la arquitectura de conjunto de instrucciones (ISA) RISC-V, un conjunto de instrucciones de procesador de código abierto. Se ejecuta de forma independiente y se puede reproducir de forma coherente. Los desarrolladores pueden crear procesadores personalizados para una variedad de aplicaciones, desde diseños integrados hasta supercomputadoras.
Ejecución de código: las máquinas Cartesi ejecutan código basado en entradas específicas para realizar cálculos, procesar datos o ejecutar lógica personalizada según los requisitos de la tarea.
Cree aplicaciones del mundo real: con la capa de abstracción de la infraestructura EVM, los desarrolladores pueden centrarse en crear dApps que aprovechen los recursos informáticos bajo demanda.
Ampliar el espacio de diseño de los desarrolladores: en el mundo de Cartesi, los desarrolladores pueden utilizar lenguajes como C++, Rust, Go, TypeScript o Python para crear aplicaciones en cadena sin tener que lidiar con la complejidad de contratos específicos.
La mejor manera de comenzar con Cartesi es consultar la CLI de Cartesi (https://docs.cartesi.io/cartesi-rollups/1.3/quickstart/) o probar el curso Udemy de Cartesi (https://www.udemy.com /curso/cartesi-masterclass/).
¿Cómo construyen los desarrolladores con Cartesi?
El ecosistema Cartesi está en constante crecimiento, y los desarrolladores crean agresivamente potentes dApps sobre la infraestructura Web2 existente. La integración de Cartesi Rollups puede mejorar sus aplicaciones, haciéndolas más centradas en el usuario y al mismo tiempo permitiendo el desarrollo utilizando diferentes pilas de tecnología.
Nebula Duel (Rust): Rust es conocido por su rendimiento y seguridad, lo que lo hace ideal para aplicaciones complejas de blockchain. Con Cartesi y Linux, Nebula Duel puede aprovechar las funciones avanzadas de Rust dentro de un entorno Linux familiar para proporcionar el control de bajo nivel necesario para las dApps de alto rendimiento. Sin Cartesi, integrar el poder de Rust en blockchains sería más complejo y limitado.
Turtlish (Python con Matplotlib): Matplotlib es una poderosa biblioteca de visualización de datos en Python. Cartesi y Linux permiten que Turtlish ejecute Matplotlib de forma nativa, lo que permite que las aplicaciones descentralizadas realicen análisis gráficos complejos. Sin Cartesi, lograr una visualización tan avanzada directamente en la cadena sería casi imposible.
Comet (JavaScript/TypeScript): JavaScript es esencial para el rápido desarrollo e implementación de la lógica empresarial, y bibliotecas como viem permiten una integración perfecta con Web3. Cartesi y Linux permiten a Comet utilizar estas herramientas en un entorno potente y escalable, lo que permite a los desarrolladores llevar dApps al mercado más rápido. Sin Cartesi, los desarrolladores tendrían dificultades para lograr la misma eficiencia e integración en el espacio blockchain.
OnChess (TypeScript): TypeScript combina la escritura estática con la flexibilidad de JavaScript. Cartesi y Linux permiten a OnChess aprovechar al máximo TypeScript en un entorno descentralizado, garantizando la confiabilidad y mantenibilidad de los contratos inteligentes. Sin Cartesi, aprovechar TypeScript de manera efectiva en blockchain sería mucho más difícil.
DeVolt (Go): Go es conocido por sus capacidades de concurrencia y eficiencia, lo que lo hace ideal para dApps que requieren un alto rendimiento. Cartesi y Linux permiten a DeVolt ejecutar aplicaciones Go de forma nativa, aprovechando al máximo las capacidades de Go en un entorno seguro y escalable. Sin Cartesi, las limitaciones de los entornos blockchain existentes obstaculizarán la utilización completa de Go en aplicaciones descentralizadas.
Si está construyendo con Cartesi, puede solicitar que se muestre su proyecto. (https://forms.gle/bAySRe16nQTXnnnW6)
en conclusión
Web3 pretende ser una versión descentralizada de la tecnología actual de Internet o Web2, brindando a los usuarios control y propiedad de sus datos desde el principio. Los desarrolladores confían desde hace mucho tiempo en la naturaleza de código abierto de Linux y valoran la libertad y flexibilidad que aporta. Linux proporciona una gran cantidad de herramientas, bibliotecas y un entorno de desarrollo maduro, mejorando las capacidades de las aplicaciones descentralizadas.
Cartesi brinda a los desarrolladores la oportunidad de aprovechar estas capacidades de Linux directamente en un entorno blockchain, rompiendo las limitaciones del espacio de diseño EVM. Al permitir a los desarrolladores elegir los componentes modulares de su lenguaje de programación y pila de tecnología preferidos, Cartesi está atrayendo a más desarrolladores y acelerando el crecimiento de la innovación en el espacio Web3.
Acerca de Cartesi
Cartesi es un protocolo acumulativo específico de la aplicación con máquinas virtuales que ejecutan distribuciones de Linux, lo que crea un espacio de diseño más rico y amplio para los desarrolladores de DApp.
Cartesi Rollups proporciona una solución de escalamiento modular que se puede implementar como L2, L3 o rollups soberanos manteniendo sólidas garantías de seguridad de capa base.
Descargo de responsabilidad
Este artículo es únicamente para fines de referencia general e intercambio de información y no constituye asesoramiento legal, financiero o de inversión. La exactitud e integridad de esta información no están garantizadas y no deben considerarse consejos para ninguna situación en particular. Los lectores deben realizar sus propias investigaciones y consultas independientes antes de tomar cualquier decisión. El autor y las autoridades pertinentes no aceptan ninguna responsabilidad por cualquier pérdida o daño que surja de la confianza en esta información. Antes de tomar cualquier decisión financiera o de inversión, se recomienda encarecidamente consultar a un profesional para obtener asesoramiento personalizado.
La criptomoneda es un producto de inversión de alto riesgo. Antes de tomar una decisión de inversión, consulte con las agencias reguladoras pertinentes para ver si existe algún riesgo de pérdida de la inversión.