Pular para o conteúdo
ecdsa.com

SIWE (Sign-In with Ethereum)

O formato de mensagem da ERC-4361 para fazer login com uma conta Ethereum: um texto legível por humanos com domínio, endereço, URI, versão, ID da cadeia, nonce e data de emissão, assinado com personal_sign.
Também escrito comoSign-In with EthereumERC-4361EIP-4361SIWE message

A mensagem começa com example.com wants you to sign in with your Ethereum account:, seguida do endereço, de uma declaração opcional e dos campos URI, Version (1), Chain ID, Nonce (pelo menos 8 caracteres alfanuméricos), Issued At e, opcionalmente, Expiration Time, Not Before, Request ID e Resources. As carteiras comparam o domínio com a origem que faz a requisição para alertar sobre phishing.

O servidor precisa verificar tudo, não só a assinatura: que o domínio e a URI são os seus, que o nonce foi emitido por ele e não foi visto antes, que os horários são válidos e que o ID da cadeia é o esperado. As assinaturas de EOAs são verificadas conforme a EIP-191; as de contas de contrato, via ERC-1271 na cadeia indicada. O verificador de SIWE executa essas verificações.

Padrões e referências

Todos os termos