No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

EIP712

9/14
Recursos

Aportes 4

Preguntas 0

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

EIP712

  • La EIP712 permite agregar estructura al conjunto de mensajes firmables en Ethereum, que incluye transacciones y cadenas de butes haxadecimales.
  • La especificaci贸n del EIP presenta la siguiente definici贸n:

hashStruct

  • hashStruct es definido como:
  • typeHash es definido como:

encodeType

El tipo de una estructura es codificado como:

En donde cada miembro se escribe de la siguiente manera:

Un ejemplo:

struct Signature {
	address signer;
	string message;
}

encodeData

  • encodeData es definido como:
  • Los miembros son codificados en el orden en que son definidos en la estructura.
  • Cada miembro codificado es exactamente de 32 bytes.

Para entender mejor la especificaci贸n de la funci贸n encodeData es necesario tener en cuenta lo siguiente:

  • Existen 3 tipos de datos. Cada tipo es codificado de manera diferente:
    • At贸micos.
    • Din谩micos.
    • Referencias.

Tipos de datos at贸micos

Tipos de datos din谩micos y referencias

domainSeparator

  • domainSeparator es definido de la siguiente manera:
  • eip712Domain contiene los siguientes miembros:

EIP712 - Partes o miembros del domainSeparator
.
miembro | Descripci贸n

string name | Nombre de la DApp o protocolo.
string version | La versi贸n actual m谩s alta del dominio.
uint256 chainId | El identificador de la cadena (EIP-155) en el que el contrato est谩 desplegado ().
address verifyingContract | Direcci贸n del contrato que va a verificar la firma.

NOTA: (
) Para conocer los identiicadores de cadenas o chainId, ver la especificaci贸n del EIP-155:
.
Ethereum Improvement Proposals > EIP-155: Simple replay attack protection
https://eips.ethereum.org/EIPS/eip-155
.
List of Chain ID鈥檚:
.
CHAIN_ID Chain(s)
1 = Ethereum mainnet
2 = Morden (disused), Expanse mainnet
3 = Ropsten
4 = Rinkeby
5 = Goerli
42 = Kovan
1337 = Geth private chains (default)

Cabe resaltar que el st谩ndar EIP-712 y los conceptos off-chain son diferentes pero pueden estar relacionados en ciertos contextos.