Glosario cripto

Vyper

Definición

Vyper es un lenguaje de contratos inteligentes para Ethereum, con sintaxis parecida a Python, que limita funciones a propósito para facilitar las auditorías.

Vyper compila a bytecode de la EVM, igual que Solidity, pero con un enfoque más estricto. Su sintaxis recuerda a Python y prescinde de funciones que complican seguir el comportamiento del código, como la herencia de clases, la sobrecarga de funciones, el ensamblador en línea o los bucles sin límite. La idea es que un revisor pueda leer un contrato de principio a fin y entenderlo sin saltar entre muchos archivos.

Es el segundo lenguaje más usado en Ethereum, muy por detrás de Solidity. Curve Finance escribió con él sus pools principales, y otros protocolos DeFi y proyectos nuevos lo emplean para bóvedas y contratos de tokens, a menudo por su facilidad de auditoría. Su legibilidad también atrae a programadores que vienen de Python y de la ciencia de datos.

Un lenguaje sencillo no elimina el riesgo del compilador. En julio de 2023, un fallo en ciertas versiones antiguas del compilador de Vyper anuló la protección contra reentrada de algunos pools de Curve y los atacantes los vaciaron, lo que demostró que la auditoría debe abarcar también el compilador. Su ecosistema es menor, con menos herramientas y auditores expertos.

Ejemplo

Un equipo que desarrolla una bóveda sencilla de stablecoins la escribe en Vyper para que los auditores revisen toda la lógica en un único archivo breve, sin contratos heredados.

Términos relacionados

Últimos artículos sobre Vyper