CoderTools

Ferramenta de Criptografia/Descriptografia Blowfish

Cifra de bloco simétrica rápida projetada por Bruce Schneier

⚠️ Aviso de segurança

O tamanho de bloco de 64 bits do Blowfish pode ser vulnerável a ataques de aniversário para grandes volumes de dados. Para segurança máxima, considere usar AES-256 para novos projetos.

Comprimento da chave Blowfish: 4-56 bytes (32-448 bits). Recomendado: 16 bytes (128 bits) ou mais
Opções de formato

Sobre a criptografia Blowfish

Blowfish é uma cifra de bloco de chave simétrica projetada por Bruce Schneier em 1993. Foi uma das primeiras cifras de bloco seguras não sujeitas a patentes e disponível gratuitamente.

Blowfish usa um tamanho de bloco de 64 bits e suporta comprimentos de chave variáveis de 32 a 448 bits. Usa uma estrutura de rede Feistel de 16 rodadas, tornando-o rápido e seguro.

Principais características

  • Comprimento de chave variável: 32 a 448 bits (4 a 56 bytes), oferecendo flexibilidade de segurança
  • Tamanho de bloco de 64 bits: processa dados em blocos de 8 bytes
  • Rede Feistel de 16 rodadas: fornece forte difusão e confusão
  • Criptografia rápida: otimizado para processadores de 32 bits, significativamente mais rápido que DES

Modos de criptografia

  • CBC: Cada bloco de texto simples é XORado com o bloco cifrado anterior antes da criptografia. Requer IV, mais seguro.
  • ECB: Cada bloco é criptografado independentemente. Não precisa de IV, mas o mesmo texto simples produz o mesmo texto cifrado.
  • CFB: Converte cifra de bloco em cifra de fluxo. Requer IV.
  • OFB: Modo de feedback de saída, converte cifra de bloco em cifra de fluxo. Requer IV.

Comparação de algoritmos

Algoritmo Comprimento da chave Tamanho do bloco Segurança Velocidade
Blowfish 32-448 bits 64 bits Boa Rápida
AES 128/192/256 bits 128 bits Excelente Rápida
DES 56 bits 64 bits Fraca Rápida
3DES 112/168 bits 64 bits Média Lenta

Considerações de segurança

  • O tamanho de bloco de 64 bits do Blowfish o torna vulnerável a ataques de aniversário ao criptografar grandes quantidades de dados (>32GB) com a mesma chave.
  • Para novos projetos que exigem segurança máxima, considere usar AES ou Twofish, o sucessor do Blowfish.
  • Sempre use o modo CBC ou outros modos de encadeamento em vez de ECB para melhor segurança.
  • Use um IV único para cada operação de criptografia com a mesma chave.

Casos de uso

  • Hash de senhas: bcrypt é baseado em Blowfish e é amplamente usado para armazenamento de senhas
  • Criptografia de arquivos: adequado para criptografar arquivos individuais e arquivos compactados
  • VPN e comunicações seguras: usado em OpenVPN e outros protocolos de segurança
  • Compatibilidade com sistemas legados: manter compatibilidade com sistemas que usam Blowfish

Referências