Escrito por Pablo Gómez
Founder & CEO da Metlabs · Revisado em 11 de outubro de 2026
Para assinar, o ECDSA faz o hash da mensagem (e = HASH(m)), escolhe um nonce secreto aleatório k, calcula o ponto k·G do qual extrai r e obtém s = k⁻¹ (e + r·priv) mod n. A assinatura é o par (r, s), e a verificação o recombina com a chave pública. Dois detalhes são críticos como boa prática: reutilizar ou enviesar o nonce k vaza a chave privada, por isso se recomenda um k determinístico conforme a RFC 6979; e a maleabilidade de (r, s) e (r, n menos s) é neutralizada exigindo o valor baixo de s, como fazem Bitcoin (política low-S) e Ethereum.
É o algoritmo com o qual Bitcoin e Ethereum provam a propriedade dos fundos sem revelar a chave privada, com chaves muito mais curtas que RSA para segurança equivalente: 256 bits de ECC se aproximam de 3072 bits de RSA. Ethereum adiciona um valor de recuperação v para habilitar o ecrecover.
Está padronizado em ANSI X9.62, FIPS 186-5 (3 de fevereiro de 2023), IEEE P1363 e ISO/IEC 14888-3, e a curva secp256k1 é definida no SEC 2. Bitcoin e Ethereum assinam com ECDSA sobre secp256k1 desde suas origens; o TLS costuma usar a curva secp256r1 (P-256). Como evolução, Taproot no Bitcoin (BIP-340, ativado em novembro de 2021) adota assinaturas Schnorr por suas vantagens em agregação.
Também conhecido como
- Elliptic Curve Digital Signature Algorithm





