Glossary
Desbordamiento de entero
Un bug en el que una operación aritmética produce un valor demasiado grande (o pequeño) para su tipo de tamaño fijo y se envuelve. Históricamente un exploit común en Solidity.
Solidity ≤ 0.7 usaba aritmética con wrapping por defecto: uint256
más 1 desde su valor máximo se envolvía silenciosamente a cero. Un
saldo de 0 menos 1 se envolvía a 2^256 - 1. Varios exploits
tempranos de DEX y tokens —el hack de BeautyChain / BEC de 2018 es el
más famoso— dependían de este comportamiento.
Solidity 0.8 hizo que la aritmética se compruebe por defecto:
cualquier overflow o underflow revierte. El riesgo no ha
desaparecido —assembly, librerías de bajo nivel y los bloques
unchecked explícitos aún pueden desbordar—, pero los exploits
clásicos de overflow son hoy raros en código moderno.