Escrito por Pablo Gómez
Founder & CEO de Metlabs · Revisado el 11 de octubre de 2026
EIP-1967 calcula sus slots como keccak256 de una etiqueta menos uno, para que sean impredecibles para el compilador y no se asignen nunca a una variable normal. Define tres slots concretos y duraderos: el de implementación, derivado de "eip1967.proxy.implementation"; el de administrador, de "eip1967.proxy.admin"; y el de beacon, de "eip1967.proxy.beacon". Al situar estos metadatos fuera del rango de almacenamiento ordinario, evita el problema clásico de colisión de slots, una vulnerabilidad grave en la que la dirección de implementación pisaba una variable del contrato lógico.
Importa porque, además de la seguridad, los slots son públicos y estandarizados. Eso permite que exploradores como Etherscan, herramientas de auditoría y wallets detecten automáticamente que un contrato es un proxy y lean su implementación y su administrador. Por eso es una referencia constante en auditorías de contratos actualizables.
La implementación de referencia es `ERC1967Proxy` y `ERC1967Utils` de OpenZeppelin, base de los patrones Transparent Proxy y UUPS (ERC-1822). Lo usan prácticamente todos los protocolos con contratos actualizables; por ejemplo, el USDC de Circle es un proxy que sigue este patrón de slots. Conviene contrastarlo con ERC-1167: aquel es un proxy mínimo no actualizable que no usa estos slots, mientras que EIP-1967 es el núcleo del patrón upgradeable.
También conocido como
- ERC1967
- Proxy Storage Slots





