Criptografia e descriptografia Serpent
Criptografe e descriptografe textos com Serpent, finalista do concurso AES.
Você vai precisar dela de novo para descriptografar. Nada do que você digita sai desta página.
O padrão do OpenSSL é 10.000. Qualquer número funciona: mais iterações deixam a senha mais lenta de adivinhar; para descriptografar, é preciso o mesmo número.
A escolha usual com o OpenSSL. Precisa de um IV; faz padding até completar os blocos.
O OpenSSL não tem a cifra Serpent.
O Serpent, de Ross Anderson, Eli Biham e Lars Knudsen, ficou em segundo lugar no concurso AES. Ele criptografa blocos de 16 bytes com chave de 128, 192 ou 256 bits em 32 rodadas — uma margem de segurança propositalmente grande, que lhe custou velocidade diante do Rijndael, o vencedor que virou o AES —, e não se conhece nenhum ataque prático contra ele. Criptografe e descriptografe textos aqui com Serpent-256 por padrão (ou 128 ou 192) nos modos CBC, ECB, CTR, CFB ou OFB. Com senha, a chave e o IV vêm do PBKDF2-HMAC-SHA256 e de um sal aleatório, e a saída é gravada no formato Salted__ do openssl enc -pbkdf2; ou informe sua própria chave e IV em hex. Seu texto e suas chaves nunca saem do seu dispositivo: roda no seu navegador, grátis e sem cadastro.
Como criptografar textos com Serpent
- Escolha Criptografar ou Descriptografar. Digite o texto a criptografar ou cole o texto em Base64 ou hex a descriptografar — o formato é detectado automaticamente.
- Digite uma senha (Gerar cria uma senha forte) ou mude para Chave e IV (hex) e digite ou gere uma chave e um IV de 32 dígitos (o ECB não tem IV).
- Escolha o tamanho da chave (256 bits por padrão) e o modo, CBC por padrão. Para descriptografar, use as mesmas configurações da criptografia.
- Copie ou baixe o resultado, ou clique em Trocar para levá-lo à entrada e inverter a direção.
Recursos
- Serpent com chave de 128, 192 ou 256 bits, com todas as 32 rodadas
- Modos CBC, ECB, CTR, CFB e OFB; padding PKCS#7 ou nenhum
- Ordem de bytes padrão, a dos vetores de teste do NESSIE
- Modo senha com PBKDF2-HMAC-SHA256 e o cabeçalho Salted__ do openssl enc -pbkdf2
- Modo Chave e IV com sua própria chave e IV em hex, ou gerados
- Base64 ou hex na entrada e na saída; copie, baixe ou use Trocar no resultado
É privado?
Sim. O Serpent roda em WebAssembly dentro do seu navegador; seu texto, sua senha e sua chave nunca são enviados a um servidor nem salvos no navegador.
Perguntas frequentes
O Serpent é seguro?
Sim. Não se conhece ataque prático contra o Serpent completo de 32 rodadas; ele foi projetado para continuar seguro mesmo que os ataques evoluíssem, ao custo de velocidade. Para textos de tamanho comum, a diferença de velocidade não importa. O AES tem suporte em quase todo lugar, então escolha o Serpent quando um sistema com que você troca dados o utilizar.
O OpenSSL descriptografa Serpent?
Não — o OpenSSL não inclui o Serpent, então nenhum comando openssl lê esta saída. Para usar os dados em outro programa, escolha o modo Chave e IV e passe a esse programa a mesma chave, o mesmo IV, o mesmo modo e o mesmo padding (PKCS#7 em CBC e ECB).
Por que dados Serpent de outro programa não são descriptografados?
Se a chave, o IV e o modo estão certos, a causa provável é a ordem dos bytes: algumas implementações gravam os bytes de entrada e de saída do Serpent em ordem inversa — o Bouncy Castle chama essa variante de Tnepres. Esta página usa a ordem padrão dos vetores de teste do NESSIE, então dados de uma implementação Tnepres não são descriptografados aqui.
Ele abre volumes do VeraCrypt criptografados com Serpent?
Não. O VeraCrypt criptografa discos inteiros e arquivos contêiner com Serpent no modo XTS, atrás de um cabeçalho próprio; esta página criptografa e descriptografa textos. Abra volumes do VeraCrypt com o VeraCrypt; para proteger um único arquivo no seu navegador, use a Criptografia de arquivos.