AES Encrypt / Decrypt

One input per line. Output is numbered to match the input order.
Pinned tools are listed in your favourites on the home page.Copies a link to this tool that carries your current input, so it opens ready to run.Gives you an iframe snippet for putting this tool on your own site.

Authenticated encryption — tampering with the ciphertext makes decryption fail rather than return garbage.

PBKDF2 key derivation (100,000 iterations, SHA-256), then the cipher you selected. The output is algorithm:salt:iv:ciphertext, so decryption needs only the password. All computation is client-side.

Ctrl+Enter Run  · Ctrl+Shift+C Copy  · Esc Clear

Understand AES Encrypt / Decrypt

Cifra e decifra texto no seu navegador com AES sob uma senha, oferecendo AES-256-GCM (padrão), AES-128-GCM, AES-256-CBC, AES-128-CBC ou AES-256-CTR.

How it works

Sua senha não é a chave. O PBKDF2 a estica em uma chave com 100.000 iterações de HMAC-SHA-256 sobre um salt aleatório novo de 16 bytes, então um atacante paga esse custo a cada tentativa e uma tabela pré-computada para um salt não vale nada contra outro. Um IV aleatório é sorteado a cada cifragem — 12 bytes para GCM, 16 para CBC e CTR —, e é por isso que cifrar o mesmo texto duas vezes nunca dá o mesmo texto cifrado. A saída é algoritmo:salt:iv:textocifrado em base64, carregando todos os parâmetros de que a decifragem precisa, exceto a própria senha.

When to use it

  • Cifrar um segredo curto antes que ele passe por um chamado, uma conversa de chat ou um documento compartilhado.
  • Produzir um vetor de teste para conferir se uma implementação de AES no servidor concorda com o WebCrypto.
  • Demonstrar a diferença prática entre um modo autenticado e um não autenticado.
  • Recuperar algo que você cifrou aqui antes e guardou como texto.
  • Checar a interoperabilidade com um sistema legado que só aceita AES-CBC.

Watch out for

  • O GCM detecta adulteração; CBC e CTR não. Com o GCM, um único byte alterado no texto cifrado faz a decifragem falhar de imediato. Com o CTR, um atacante que inverte um bit do texto cifrado inverte o mesmo bit do texto claro, e o CBC é o modo por trás da classe de ataques de oráculo de padding. Escolha CBC ou CTR apenas por interoperabilidade e, quando o fizer, acrescente um MAC separado sobre o texto cifrado.
  • A senha é o teto. As 100.000 iterações do PBKDF2 tornam as tentativas mais lentas nessa proporção, mas não salvam uma senha fraca — uma palavra de dicionário continua sendo descoberta, seja qual for o tamanho da chave. A força desta saída é a força do que você digitou.
  • Nunca reutilize um IV ou bloco de contador com a mesma chave. Esta ferramenta gera um salt e um IV novos a cada cifragem, então o uso aqui é seguro, mas a regra importa no momento em que você reimplementa o formato: um nonce GCM repetido vaza o XOR dos dois textos claros e pode expor a própria chave de autenticação.
  • AES-256 contra AES-128 não é a decisão que importa. Nenhum dos dois tamanhos de chave tem quebra prática; o modo e a senha dominam a segurança no mundo real. Não escolha AES-256-CBC em vez de AES-128-GCM só pelo número maior.

Not the right tool for: Enviar um segredo para alguém que ainda não compartilha a sua senha. Isto é criptografia simétrica, sem troca de chaves, sem identidade e sem sigilo futuro — para isso, use age, PGP ou o gerenciamento de chaves de destinatário que a sua plataforma já oferece.

Frequently Asked Questions

Qual algoritmo AES devo escolher?

O AES-256-GCM é o padrão e a resposta certa para quase todo uso novo. O GCM é autenticado, então adulterar o texto cifrado faz a decifragem falhar em vez de devolver lixo. Escolha CBC ou CTR apenas quando um sistema com o qual você precisa interoperar exigir — nenhum dos dois detecta adulteração por conta própria.

O AES-128 é menos seguro que o AES-256?

Os dois são considerados seguros; nenhum ataque prático quebra qualquer um dos tamanhos de chave. O AES-256 tem margem maior diante de avanços futuros e é a escolha convencional para dados de vida longa, enquanto o AES-128 é marginalmente mais rápido. O modo escolhido (GCM em vez de CBC) afeta a segurança no mundo real muito mais que o tamanho da chave.

O que é PBKDF2 e por que ele é usado?

O PBKDF2 (Password-Based Key Derivation Function 2) transforma uma senha digitada por uma pessoa em uma chave criptográfica usando 100.000 iterações de HMAC-SHA256 com um salt aleatório. As iterações tornam os ataques de força bruta 100.000× mais lentos do que fazer o hash da senha uma única vez.

Posso decifrar esta saída em outra linguagem?

Sim. A saída é algoritmo:salt:iv:textocifrado, com todos os parâmetros de que a decifragem precisa. Reproduza as mesmas configurações de PBKDF2 (100.000 iterações, SHA-256, o salt embutido) e a cifra indicada em qualquer linguagem, e o texto cifrado decifra de forma idêntica.

How to Use AES Encrypt / Decrypt

  1. Paste or type your input in the input area above.
  2. The tool processes your input automatically or click Run.
  3. Copy or download the result using the action buttons.
  4. Use Ctrl+Enter to run quickly from the keyboard.