Glosario cripto

Firma de datos tipados EIP-712

Definición

EIP-712 es el estándar de Ethereum para firmar datos estructurados y tipados, de modo que la wallet muestra campos legibles en vez de un hexadecimal opaco.

Antes de la EIP-712, las apps que necesitaban una firma fuera de la cadena solían pedir al usuario que firmara un hash en bruto o un bloque ilegible. La EIP-712 define cómo describir un mensaje como campos con nombre y tipo, por ejemplo titular, gastador, cantidad y plazo, y cómo resumirlo junto a un separador de dominio. Ese dominio incluye el nombre de la app, la versión, el identificador de la cadena y la dirección del contrato, para que una firma hecha para una app o red no pueda reutilizarse en otra.

Hoy es el formato de casi todas las aprobaciones y órdenes fuera de la cadena en Ethereum: permit de tokens, listados en marketplaces de NFT, libros de órdenes sin gas, transacciones multifirma y muchas votaciones de gobernanza. Las wallets muestran cada campo, y las hardware wallets han ido añadiendo firma clara para los mensajes EIP-712 más habituales.

Legible no significa comprensible. El usuario puede ver una lista de direcciones y cifras sin darse cuenta de que pone a la venta un NFT por nada o concede acceso ilimitado a sus tokens, y los kits de phishing explotan esa brecha. Firmar no cuesta gas ni deja rastro hasta que alguien presenta la firma.

Ejemplo

Al poner un NFT a la venta, el marketplace pide firmar una orden EIP-712 con el artículo, el precio y la caducidad; la wallet muestra esos campos en lugar de hexadecimal.

Términos relacionados