Descriptografia da cifra de fluxo Rabbit

Descriptografe dados da cifra de fluxo Rabbit do CryptoJS (Base64 Salted__ com senha) ou texto cifrado bruto com chave hex de 128 bits e IV opcional de 64 bits.

Rabbit é uma cifra de fluxo pouco usada, sem proteção de integridade e com pouco suporte em bibliotecas. Prefira AES-GCM em aplicações novas.

A saída usa o formato "Salted__" do OpenSSL em Base64, com chave e IV derivados da senha – o mesmo formato de CryptoJS.Rabbit.encrypt(text, passphrase). O OpenSSL não possui a cifra Rabbit.

Executa totalmente no seu navegador. Seus dados nunca são enviados.

O que é Descriptografia Rabbit?

Descriptografa dados criptografados com a cifra de fluxo Rabbit, normalmente gerados por CryptoJS.Rabbit.encrypt. Cole a string Base64 U2FsdGVkX1… com a senha, ou o texto cifrado bruto com a chave e o IV em hex.

Como usar Descriptografia Rabbit

  1. Selecione a mesma Origem da chave usada na criptografia: Senha (compatível com OpenSSL) para dados U2FsdGVkX1… (“Salted__”) ou Chave + IV brutos (hex) para texto cifrado bruto.
  2. Informe a senha ou a chave hex de 16 bytes (e o IV de 8 bytes, se algum foi usado).
  3. Cole o Texto cifrado e clique em Descriptografar.

Exemplo

Entrada
U2FsdGVkX19PD1rihUsU44L3vJkKAmy580QhQw== (passphrase "secret")
Saída
Hello Rabbit

Texto cifrado de CryptoJS.Rabbit.encrypt("Hello Rabbit", "secret").

Quando usar Descriptografia Rabbit

Use-a para ler ou depurar dados de aplicações que usam o Rabbit do CryptoJS. Ela não descriptografa sem a senha ou a chave corretas.

Como funciona Descriptografia Rabbit

O salt é lido do cabeçalho Salted__, a chave de 16 bytes e o IV de 8 bytes são derivados de novo (EVP_BytesToKey MD5 ou PBKDF2-SHA256) e o fluxo de chave do Rabbit é combinado com o texto cifrado por XOR. No modo bruto, sua chave e seu IV são usados diretamente. Cifras de fluxo não têm preenchimento, então uma chave errada aparece como saída UTF-8 inválida.

Casos de Uso Comuns

  • Descriptografar valores guardados por um app web que usa CryptoJS.Rabbit
  • Conferir se sua implementação do Rabbit bate com o CryptoJS
  • Recuperar dados de teste durante a depuração
  • Migrar dados criptografados com Rabbit para AES

Nota de Segurança

O Rabbit não tem nenhuma quebra prática conhecida, mas é pouco usado, não tem proteção de integridade embutida e poucas bibliotecas o suportam. Use AES-GCM em sistemas novos.

Perguntas Frequentes

Por que recebo um erro de “UTF-8 inválido”?

O mais provável é que a senha ou a chave esteja errada; o Rabbit não consegue detectar isso sozinho. Se os dados originais eram binários, mude a saída para Hex.

Meu texto cifrado não tem o prefixo U2FsdGVkX1.

Então o CryptoJS foi chamado com chave e IV explícitos. Escolha Chave + IV brutos (hex) e informe-os em hex.

Ela suporta o RabbitLegacy?

Não, apenas a variante padrão CryptoJS.Rabbit.

Explore mais categorias