Verfasst von Pablo Gómez
Founder & CEO von Metlabs · Geprüft am 11. Oktober 2026
EIP-712 definiert, wie der Domain Separator aufgebaut wird, den ein Smart Contract zur Prüfung von Signaturen typisierter Daten verwendet, sah aber keinen On-Chain-Mechanismus vor, mit dem Dritte ihn auslesen können. ERC-5267 (Retrieval of EIP-712 domain), am 14. Juli 2022 von Francisco Giordano von OpenZeppelin erstellt und heute im Status Final, schließt diese Lücke mit einer einzigen View-Funktion: eip712Domain(), die die Bitmap fields, die Werte name, version, chainId, verifyingContract und salt sowie eine Liste extensions für künftige Felder zurückgibt.
Der Ablauf ist einfach. Die Anwendung ruft eip712Domain() auf, liest die Bitmap (Bit 0 name, Bit 1 version, Bit 2 chainId, Bit 3 verifyingContract, Bit 4 salt), rekonstruiert die Domain nur aus den markierten Feldern, berechnet den Separator und signiert Daten, die der Smart Contract akzeptiert. Ein Smart Contract kann das optionale Event EIP712DomainChanged() emittieren, damit Clients ihren Cache verwerfen. So entfällt das manuelle Kodieren von name oder version, die häufigste Ursache für Signaturen, deren Verifizierung stillschweigend fehlschlägt.
EIP-712-Signaturen werden automatisch auslesbar und interoperabel; Wallets und Bibliotheken erzeugen korrekte Signaturen ohne externe Dokumentation. Die Kosten sind praktisch null, da es sich um eine View-Funktion handelt. OpenZeppelin Contracts implementiert eip712Domain() seit v4.9 (Mai 2023) nativ, sodass jeder Smart Contract, der von EIP712 erbt, etwa Permits oder Votes, konform ist. viem stellt die Funktion über die Aktion getEip712Domain bereit, und das Tool eip712domains nutzt sie zum Abrufen von Domains.
Auch bekannt als
- ERC5267
- Retrieval of EIP-712 domain





