Más oportunidades con Plutus V3
Autora: Olga Hryniuk - Redactora técnica superior - Marketing y Comunicación
Plutus V3 elevará la experiencia de los desarrolladores al mejorar la adopción de contratos inteligentes, incorporar funciones de gobernanza y votación y fomentar la interoperabilidad entre blockchains.
Plutus V3, ya disponible para probar en SanchoNet, introduce primitivas avanzadas de Plutus y, por lo tanto, proporciona más herramientas a los desarrolladores y desbloquea más posibilidades para escribir contratos inteligentes.
La mejora de la experiencia de los desarrolladores y la adopción de contratos inteligentes son fundamentales para el floreciente panorama de contratos inteligentes en Cardano. En el último año, la aparición y el crecimiento de una serie de herramientas para desarrolladores creadas por la comunidad y de lenguajes alternativos han aumentado significativamente las opciones de los desarrolladores y la vitalidad del ecosistema de creadores de Cardano. Para seguir desarrollando capacidades, los equipos de Plutus y criptografÃa de Input Output Global (IOG), en colaboración con MLabs, han trabajado en Plutus V3, centrándose en el rendimiento, la producción, el tamaño de los contratos inteligentes y las capacidades de la plataforma. Con un conjunto de herramientas para desarrolladores enriquecido y una mayor eficiencia operativa, esta actualización no solo reduce los costes, sino que también ayuda a atraer a nuevos desarrolladores.
¿Qué es Plutus V3?
Plutus V3 mejora las capacidades criptográficas de Plutus Core, permitiendo a Cardano ajustarse a los últimos estándares de la industria. La actualización de Valentine de hace un año añadió compatibilidad con las curvas elÃpticas SECP (ECDSA y Schnorr).
La introducción de nuevas primitivas criptográficas con la V3 ayuda a los desarrolladores a cumplir las mejores prácticas del sector, utilizar algoritmos criptográficos óptimos y conocidos, portar contratos inteligentes desde Ethereum y crear puentes sidechain. Además de las primitivas criptográficas, Plutus V3 mejora el rendimiento añadiendo una función de suma de productos (SOP) para admitir la codificación directa de diferentes tipos de datos. Por último, V3 proporciona un contexto de script actualizado que permitirá a los usuarios ver las entidades relacionadas con la gobernanza CIP-1694.
Veamos con más detalle las nuevas funciones.
Sumas de productos
Una forma común de codificar tipos de datos en Plutus Core es utilizando el enfoque Scott. Plutus V3 introduce sumas de productos - una forma de codificar tipos de datos que conduce a scripts más pequeños y más baratos en comparación con la codificación Scott.
El enfoque de sumas de productos pretende aumentar la eficiencia de los scripts y mejorar la generación de código para los compiladores de Plutus Core. Los cambios implican nuevos constructores de términos para empaquetar campos en valores constructores y una inspección de etiquetas eficiente para las ramas de casos. El beneficio es la posibilidad de que los programas se ejecuten un 30% más rápido, lo que supone una importante optimización del rendimiento, agilizando las operaciones y garantizando una rápida ejecución de los contratos inteligentes. Para más detalles, véase CIP-85.
Nuevas primitivas criptográficas
Un elemento central de toda cadena de bloques es el uso de primitivas criptográficas, que abarcan funciones hash, firmas digitales y sistemas de prueba de conocimiento cero (ZKP). Estos elementos fundamentales están diseñados para ofrecer eficiencia computacional, garantizando una seguridad robusta adaptada a sus respectivas aplicaciones. El resultado es un conjunto de garantÃas de seguridad que establecen un ecosistema sin confianza, facilitando una interacción fluida con la red peer-to-peer (P2P) de Cardano y sus aplicaciones descentralizadas (DApps).
En el lenguaje Plutus, las funciones incorporadas son aquellas que no se definen explÃcitamente dentro del script, sino que forman parte del entorno de ejecución del lenguaje. El uso de estas funciones permite al intérprete proporcionar una implementación optimizada especÃfica para su sistema al ejecutar el script. Las funciones incorporadas ejecutan operaciones de uso frecuente y bien definidas, que abarcan la aritmética, el control y otras tareas cruciales. A medida que nos adentramos en Plutus V3, exploremos las nuevas primitivas incorporadas que enriquecerán las capacidades del lenguaje:
- BLS12-381 - este emparejamiento de curvas incluye 17 primitivas compatibles con curvas criptográficas, lo que abre las puertas a una implementación de especificaciones de cadena lateral sin fisuras y a la integración de Mithril.
- Blake2b-224 - una función hash criptográfica para el cálculo en cadena de hashes de clave pública para la validación de firmas de transacciones. La implementación de Blake2b-224 da soporte a proyectos de la comunidad, contribuyendo a la versatilidad y adopción de Cardano al dar cabida a diversas aplicaciones.
- Keccak-256 - una función hash criptográfica que produce un valor hash de 256 bits (32 bytes), comúnmente utilizado para la verificación segura de datos. Keccak-256 soporta la verificación de firmas de Ethereum dentro de scripts. Esto es crucial para las soluciones de cadena cruzada y facilita los proyectos de la comunidad mediante la ampliación de los casos de uso en Cardano.
Primitivas bit a bit para desarrolladores
La introducción de las primitivas bit a bit CIP-58 proporcionará a los desarrolladores sólidas capacidades para manipulaciones de bits de bajo nivel. Esta incorporación ofrece a los desarrolladores profundas ventajas tanto en la optimización del rendimiento como en la funcionalidad criptográfica. Con su plan de despliegue incremental, las primitivas bit a bit garantizan un proceso de integración sin fisuras y fomentan un entorno robusto para que los desarrolladores construyan soluciones potentes y eficientes en Cardano.
Las primitivas bit a bit proporcionan las siguientes caracterÃsticas:
- Aumento del rendimiento. Las primitivas bit a bit introducen en Plutus la capacidad de manipular bits a muy bajo nivel. Esta capacidad sienta las bases para ejecutar operaciones de manipulación de datos de alto rendimiento, un aspecto crucial para los desarrolladores que buscan soluciones eficientes.
- Soporte criptográfico. La inclusión de primitivas bit a bit es esencial para soportar funciones criptográficas como ED25519, que es un requisito estándar para el desarrollo de contratos inteligentes. Estas primitivas implementan algoritmos criptográficos seguros y robustos dentro de Plutus.
- Conversiones de números enteros a cadenas para una integración fluida. Las primitivas bit a bit facilitan implementaciones estándar de alto rendimiento para conversiones entre números enteros y cadenas. Esta capacidad es esencial porque las primitivas requieren argumentos en formato entero, mientras que los datos se presentan a menudo en formato de cadena.
- Algoritmos y estructuras de datos eficientes. CIP-58 añade una clase de funciones de bajo nivel para algoritmos y estructuras de datos altamente eficientes. La capacidad de construir tablas hash eficientes, una estructura de datos común de mapeo clave-valor, muestra el impacto práctico de estas funciones de bajo nivel en la construcción de soluciones de alto rendimiento.
La actualización de Plutus añadirá dos primitivas bit a bit: integerToByteString
y byteStringToInteger
. El resto de primitivas se añadirán a Plutus V3 gradualmente. En adelante, estas actualizaciones no requerirán una nueva versión del lenguaje. Este enfoque de despliegue incremental garantiza una integración sistemática de estas potentes caracterÃsticas en el lenguaje Plutus.
A partir del lanzamiento del nodo Cardano v.8.8.0-pre, Plutus V3 ya está disponible en SanchoNet, introduciendo a la comunidad Cardano en las funciones de gobierno de CIP-1694 en un entorno de red de pruebas controlado.
Conclusión
Entre sus ventajas, Plutus V3 ofrece una mayor eficiencia, opcionalidad y facilidad de uso a la comunidad de desarrolladores de Cardano, todas ellas claves para fomentar la adopción por parte de los desarrolladores. Al priorizar aspectos como el rendimiento, el rendimiento, el tamaño de los contratos inteligentes y las capacidades de la plataforma, se garantiza que los desarrolladores de Cardano puedan utilizar los últimos estándares. Estas mejoras facilitan la migración fluida de contratos inteligentes desde Ethereum, permiten la creación de puentes de cadenas laterales y, en última instancia, contribuyen a la expansión del ecosistema Cardano.
Siga a IOG X (Twitter) para más anuncios.
Traducción al Español por MartÃn Ungar @LatinStakePools
Texto original: https://iohk.io/en/blog/posts/2024/02/12/unlocking-more-opportunities-with-plutus-v3/