CoderTools

Ferramenta de Assinatura ECDSA

Algoritmo de Assinatura Digital de Curva Elíptica

🔒 100% Processamento localOs dados inseridos são processados inteiramente em seu navegador. Nenhum dado é enviado para qualquer servidor.

Gerar Par de Chaves ECDSA

Gere um novo par de chaves ECDSA aleatório para a curva selecionada. A chave privada deve ser mantida em segredo; a chave pública pode ser compartilhada.

Derivar Chave Pública da Chave Privada

Insira uma chave privada existente para calcular a chave pública correspondente.

Documentação

ECDSA (Algoritmo de Assinatura Digital de Curva Elíptica) é um esquema de assinatura digital amplamente utilizado baseado em criptografia de curva elíptica. Fornece o mesmo nível de segurança que RSA, mas com tamanhos de chave muito menores, tornando-o ideal para ambientes com recursos limitados como dispositivos móveis e redes blockchain.

Características Principais

  • Tamanho de Chave Pequeno: ECDSA de 256 bits fornece segurança comparável ao RSA de 3072 bits
  • Operações Rápidas: Assinatura e verificação são significativamente mais rápidas que RSA
  • Assinaturas Compactas: Assinaturas ECDSA são muito menores que assinaturas RSA
  • Múltiplas Curvas: Suporte para curvas secp256k1, P-256, P-384 e P-521
  • Padrão da Indústria: Usado em Bitcoin, Ethereum, TLS e muitos outros protocolos

Curvas Suportadas

  • secp256k1: A curva usada pelo Bitcoin e Ethereum. Segurança de 256 bits, otimizada para implementação eficiente.
  • P-256 (secp256r1): Curva padrão NIST, amplamente usada em TLS, aplicações governamentais e WebCrypto API.
  • P-384 (secp384r1): Curva padrão NIST fornecendo nível de segurança de 192 bits, usada em aplicações de alta segurança.
  • P-521 (secp521r1): Curva padrão NIST fornecendo nível de segurança de 256 bits, curva ECDSA de maior segurança.

Algoritmos Hash

  • SHA-256: Escolha padrão para a maioria das aplicações. Usado com curvas P-256 e secp256k1.
  • SHA-384: Recomendado para curva P-384 para corresponder ao nível de segurança.
  • SHA-512: Recomendado para curva P-521. Fornece segurança de 256 bits.
  • Keccak-256: Usado pelo Ethereum para assinatura de transações. Não é SHA-3, mas o Keccak original com saída de 256 bits.

Casos de Uso Comuns

  • Bitcoin e Blockchain: secp256k1 com hash duplo SHA-256 para assinatura de transações.
  • Ethereum: secp256k1 com Keccak-256 para assinatura de transações e mensagens.
  • Certificados TLS/SSL: Curva P-256 para assinaturas de certificados HTTPS.
  • Assinatura de Código: Assine releases de software para garantir autenticidade e integridade.
  • Autenticação API: Assine requisições API para prevenir adulteração e verificar identidade.

Melhores Práticas de Segurança

  • Proteja as Chaves Privadas: Nunca exponha ou compartilhe sua chave privada. Use HSM para aplicações críticas.
  • Use Números Aleatórios Seguros: ECDSA requer números aleatórios criptograficamente seguros. Esta ferramenta usa Web Crypto API.
  • Verifique as Chaves Públicas: Sempre verifique chaves públicas através de um canal confiável antes de aceitar assinaturas.
  • Processamento do Lado do Cliente: Esta ferramenta roda inteiramente no seu navegador. Suas chaves nunca saem do seu dispositivo.
  • Maleabilidade de Assinatura: Assinaturas ECDSA podem ser maleáveis. Use assinaturas canônicas (low-S) quando necessário.

ECDSA vs Outros Esquemas de Assinatura

Característica ECDSA (P-256) RSA-2048 Ed25519
Tamanho Chave Privada 32 bytes 256 bytes 32 bytes
Tamanho Chave Pública 64 bytes 256 bytes 32 bytes
Tamanho Assinatura 64 bytes 256 bytes 64 bytes
Velocidade de Assinatura Rápido Lento Muito Rápido
Velocidade de Verificação Moderado Rápido Muito Rápido
Determinístico RFC 6979 Sim Sim

Ferramentas Relacionadas

Menu Rápido

Nenhuma ferramenta recente