CoderTools

Criptografia/Descriptografia Família RC

Cifras simétricas RC2/RC4/RC5/RC6 projetadas por Ron Rivest

⚠️ Aviso de Segurança

RC4 tem vulnerabilidades conhecidas e foi descontinuado do TLS/SSL. Para máxima segurança, considere usar AES-256. Todos os dados são processados localmente no seu navegador.

Comprimento de chave RC2: 1-128 bytes. Tamanho do bloco: 64 bits. Bits de chave efetivos recomendados: 128
Opções de formato

Sobre a família RC

A família de cifras RC foi projetada por Ron Rivest no MIT e RSA Security. 'RC' originalmente significava 'Rivest Cipher' ou 'Ron's Code'. A família inclui RC2, RC4, RC5 e RC6, cada um com características distintas.

RC2 é uma cifra de bloco de 64 bits de 1987. RC4 é uma cifra de fluxo que foi amplamente usada em SSL/TLS e WEP. RC5 introduziu uma estrutura parametrizável inovadora. RC6 foi projetado como candidato AES, estendendo RC5 com multiplicação de inteiros para melhor difusão.

Comparação de algoritmos

Algoritmo Tipo Comprimento de chave Tamanho do bloco Segurança Status
RC2 Cifra de bloco 1-128 bytes 64 bits Fraco Descontinuado
RC4 Cifra de fluxo 1-256 bytes N/A (fluxo) Fraco Descontinuado
RC5 Cifra de bloco 0-255 bytes 32/64/128 bits Bom Seguro
RC6 Cifra de bloco 16/24/32 bytes 128 bits Excelente Finalista AES

RC2 (Rivest Cipher 2)

RC2 é uma cifra de bloco de 64 bits projetada em 1987. Usa uma chave de comprimento variável (1-128 bytes) e tem um parâmetro único de 'bits de chave efetivos' que pode limitar o espaço de busca de chaves.

Originalmente projetado como secreto, RC2 visava compatibilidade de exportação com comprimento de chave efetivo de 40 bits. Devido a vulnerabilidades conhecidas, deve ser usado apenas para compatibilidade com sistemas legados.

RC4 (Rivest Cipher 4)

RC4 é uma cifra de fluxo projetada em 1987. Ela gera um fluxo pseudoaleatório de bytes (fluxo de chaves) que é XORado com o texto simples. Conhecida por sua simplicidade e velocidade, foi amplamente usada em protocolos SSL/TLS, WEP e WPA.

Devido a vulnerabilidades descobertas (especialmente nos primeiros bytes do fluxo de chaves), RC4 foi descontinuada dos protocolos de segurança modernos. A variante 'RC4-Drop' descarta os bytes iniciais do fluxo de chaves para mitigar esses problemas.

RC5 (Rivest Cipher 5)

RC5, publicada em 1994, introduziu um design parametrizável com três variáveis: tamanho da palavra (w), número de rodadas (r) e comprimento da chave (b). Essa flexibilidade permite adaptar RC5 a diferentes requisitos de segurança.

RC5 usa rotações dependentes de dados como sua principal operação não-linear, tornando-a simples mas eficaz. Configurações comuns incluem RC5-32/12/16 (palavras de 32 bits, 12 rodadas, chave de 16 bytes).

RC6 (Rivest Cipher 6)

RC6 foi submetida como candidata AES em 1998 e foi uma das cinco finalistas. Ela estende RC5 com multiplicação de inteiros para melhor difusão e usa quatro registradores de trabalho em vez de dois.

Com um tamanho de bloco fixo de 128 bits e suporte para chaves de 128/192/256 bits, RC6 fornece excelente segurança. Embora Rijndael tenha sido selecionado como AES, RC6 permanece um algoritmo respeitado e seguro.

Principais características

  • RC2: Cifra de bloco legada com comprimento de chave variável, apenas para compatibilidade
  • RC4: Criptografia de fluxo extremamente rápida, ideal para aplicações em tempo real
  • RC5: Design parametrizável permitindo compensações flexíveis de segurança/desempenho
  • RC6: Cifra de bloco moderna com fortes garantias de segurança
  • Todos os algoritmos são livres de patentes e disponíveis gratuitamente para qualquer uso

Modos de criptografia (RC5/RC6)

  • CBC: Encadeamento de blocos - Cada bloco é XORado com o bloco cifrado anterior. Recomendado para a maioria dos casos.
  • ECB: Livro de códigos - Cada bloco é cifrado independentemente. Não recomendado para dados sensíveis.
  • CFB: Retroalimentação de cifra - Converte cifra de bloco em cifra de fluxo. Auto-sincronizante.
  • OFB: Retroalimentação de saída - Gera fluxo de chaves independentemente. Sem propagação de erros.

Considerações de segurança

  • RC4 NÃO deve ser usado para novas aplicações devido a vulnerabilidades conhecidas
  • RC4-Drop (descartar os primeiros 768-3072 bytes) mitiga alguns ataques mas não é recomendado
  • RC5 com rodadas suficientes (12+) e comprimento de chave (128+ bits) é considerado seguro
  • RC6 fornece excelente segurança comparável ao AES

Casos de uso

  • Compatibilidade e migração de sistemas legados
  • Fins educacionais e de pesquisa
  • Sistemas embarcados com RC5 (implementação simples)
  • Aplicações de alta segurança com RC6

Referências