Amor por los contratos de OpenZeppelin 🫶
Inicia tu camino construyendo la Web3
Bienvenida al desarrollo en blockchain
Por qué iniciar en el desarrollo de blockchain
¿Quién puede ser blockchain developer?
Áreas de aplicación
Conociendo el entorno de desarrollo
Consideraciones básicas para desarrollo
Lenguajes y herramientas para el desarrollo blockchain
Arquitectura básica en Web 3
Glosario criptográfico
Desarrollo en Ethereum
Solidity: el lenguaje para programar contratos inteligentes
OpenZeppelin Contracts
Ethereum Virtual Machine
Mi camino programando - Ernesto García
Primeros pasos en Ethereum
Uso de wallets: Metamask
Redes de prueba
RemixIDE
Entorno de desarrollo con Hardhat
Compilando y desplegando contratos inteligentes
Conectando la blockchain con el navegador: Web3.js y Ether.js
Ejecutando tu aplicación descentralizada
De Web2 a Web3 - Alfredo Bonilla
Seguridad y protocolos de segunda capa
Desarrollando en capa 2
Aprovecha la descentralización - Oscar Barajas
Más allá del desarrollo
Base de datos en blockchain: IPFS, Filecoin y ARWEAVE
Blockchain startups y DAO
Cómo llegué a trabajar en programación - Natacha De La Rosa
Continúa tu aprendizaje en la Escuela de Blockchain y Criptomonedas
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
En blockchain, la seguridad es crucial y debe ser atendida desde el primer momento en el desarrollo de cualquier proyecto. Los hackers, a lo igual que en web2, se encuentran explotando vulnerabilidades de seguridad en proyectos web3, dado que blockchain ofrece grandes incentivos económicos por tratarse de todo un sistema financiero.
Millones y millones de dólares han sido robados en los últimos años producto de la falta de seguridad en el desarrollo de smart contracts, por errores en el propio lenguaje Solidity o aprovechamiento de vulnerabilidades en la EVM.
El principal estándar de seguridad de contratos inteligentes del mundo es OpenZeppelin. Ofrece una serie de implementaciones base de contratos, totalmente auditados y listo para ser utilizados.
OpenZeppelin es más que una librería open source de contratos. Se compone de otros productos y servicios, además del desarrollo de contratos, las auditorias de seguridad y monitoreo de operaciones, una vez el contrato se encuentre en producción son otras herramientas que provee a la comunidad de desarrolladores.
El conjunto de contratos que ofrece OpenZeppelin se enfoca en implementaciones muy utilizadas. Los contratos se encuentran auditados por profesionales y por toda la comunidad, otorgando garantía y confianza para su uso en cualquier tipo de proyecto.
No tendría sentido "reinventar la rueda" y desarrollar nuestro propio contrato para implementar cierta lógica, teniendo los contratos de OpenZeppelin que son muy seguros. Al menos hasta que se descubra alguna nueva vulnerabilidad y los contratos se actualicen. Algunos de los contratos que más utilizarás son:
Revisar una sola implementación es el principal objetivo. Reutilizar código ya auditado nos permitirá tanto ser más veloces a los desarrolladores, como a los auditores en una fase posterior a la programación del contrato.
Todas estas características convierten a OpenZeppelin en el conjunto de herramientas más popular y largamente adoptado por la comunidad para el desarrollo de proyectos en blockchain compatibles con la EVM.
Nos da la seguridad de estar trabajando con código que está fuertemente revisado por la comunidad y constantemente auditado. No solo por OpenZeppelin, también por organismos externos. Las miles de descargas diarias que tienen sus contratos en NPM y la actualización constante del código son grandes señales positivas que nos da confianza en su utilización.
Si bien los contratos de OpenZeppelin están escritos en Solidity, este lenguaje utiliza NPM de Javascript para resolver las dependencias de los proyectos. Una forma de no tener que desarrollar su propio manejador de paquetes utilizando el más grande y popular del mundo.
En web2 solemos no prestar atención a temas relacionados con la seguridad, solemos dejarlo para después. En web3, la seguridad no es una opción. Debemos ser lo más profesionales posible y desarrollar soluciones seguras desde el inicio. Pongamos primero la seguridad gracias a tecnologías como OpenZeppelin.
Contribución creada por: Kevin Fiorentino (Platzi Contributor).
Aportes 3
Preguntas 1
Amor por los contratos de OpenZeppelin 🫶
OpenZeppelin nació en Buenos Aires, hoy domina el mundo como la principal herramienta de auditorias y seguridad de smart contracts.
Es una librería que contiene muchos estándares de seguridad y implementación base para Smart Contracts.
OpenZeppelin Contracts es una librería estándar para desarrollo de contratos inteligentes.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?