Escrito por Pablo Gómez
Founder & CEO de Metlabs · Revisado el 11 de octubre de 2026
ERC-5805 separa el balance del poder de voto: tener tokens no cuenta como votos hasta que la cuenta delega ese poder, aunque sea en sí misma. La delegación se hace con `delegate` o, sin gas para el firmante, con `delegateBySig` mediante una firma EIP-712. Cada cambio escribe un checkpoint en un historial de unidades de voto, que se consulta con `getVotes` (actual) y `getPastVotes` para un punto temporal concreto. Ese punto temporal usa por defecto el número de bloque, y es compatible con ERC-6372 para medir en timestamps. El estándar sirve a varios tipos de token, no solo a los fungibles.
Resuelve el problema de seguridad central de la gobernanza on-chain: medir el poder de voto sobre un snapshot fijo impide comprar tokens, votar y venderlos en el mismo bloque. La delegación añade gobernanza representativa sin que el titular ceda la custodia de sus tokens.
La implementación canónica es el módulo abstracto `Votes` de OpenZeppelin Contracts, del que derivan `ERC20Votes` y `ERC721Votes`. Compound fue pionero del patrón de delegación con checkpoints en su token COMP; ERC-5805 codifica explícitamente la implementación de OpenZeppelin, más flexible al devolver `uint256`. Se combina con el contrato `Governor` para el ciclo completo de propuesta, voto y ejecución de una DAO.
También conocido como
- ERC5805
- Voting with delegation





