Cifrar / Decifrar texto (AES-GCM)
Cifra e decifra texto com uma palavra-passe usando AES-GCM, tudo localmente no teu navegador.
A carregar Cifrar / Decifrar texto (AES-GCM)… Se nada acontecer, ativa o JavaScript.
Esta ferramenta cifra e decifra texto com uma palavra-passe usando AES-GCM, o mesmo padrão de cifragem autenticada que protege as ligações HTTPS, os volumes de disco e incontáveis sistemas em produção. Ao contrário do Base64 ou de outras codificações, que apenas transformam os dados e não oferecem qualquer proteção, a cifragem real torna a tua mensagem ilegível para quem não conhece a palavra-passe. Quer queiras guardar uma nota que possas decifrar mais tarde, partilhar um segredo com um colega por um canal inseguro ou simplesmente perceber como funciona a cifragem simétrica moderna, esta ferramenta faz o trabalho sem nunca enviar os teus dados para lado nenhum.
Perguntas frequentes
O meu texto ou a minha palavra-passe são alguma vez enviados?
Que cifragem é que a ferramenta usa de facto?
Porque é que cifrar o mesmo texto dá um resultado diferente de cada vez?
O que acontece se introduzir a palavra-passe errada?
Quão forte é a cifragem?
Posso decifrar a saída noutro dispositivo ou ferramenta?
Há um limite de comprimento no texto?
A cifragem funciona sem ligação à internet?
Sobre Cifrar / Decifrar texto (AES-GCM)
A segurança vem de dois componentes bem escolhidos. A tua palavra-passe passa por PBKDF2 com SHA-256 e 100.000 iterações contra um salt aleatório novo de 16 bytes, o que transforma uma palavra-passe humana numa chave robusta de 256 bits ao mesmo tempo que torna os ataques de força bruta muito mais lentos. Essa chave move depois o AES-GCM com um IV (vetor de inicialização) aleatório novo de 12 bytes, um cifrador autenticado que esconde o conteúdo e deteta qualquer adulteração. A saída agrupa o salt, o IV e o texto cifrado, e codifica o conjunto inteiro em Base64, por isso uma única cadeia é tudo o que precisas para decifrar mais tarde, desde que tenhas a palavra-passe.
Cada byte deste processo acontece dentro do teu navegador usando a API Web Crypto nativa, sem biblioteca externa e sem tráfego de rede. O teu texto em claro e a tua palavra-passe nunca saem do teu dispositivo, nunca são registados e nunca são enviados. Se a palavra-passe estiver errada ou o texto cifrado tiver sido alterado, a decifragem falha de forma limpa com um erro em vez de produzir lixo, porque o AES-GCM verifica a integridade como parte da decifragem. A ferramenta também funciona inteiramente offline depois de a página carregar.
Porquê GCM, e porquê um salt e um IV?
O AES é o cifrador simétrico aprovado pelo governo dos EUA desde 2001, quando substituiu o envelhecido padrão DES após uma competição internacional aberta. O AES por si só apenas cifra blocos de tamanho fixo, por isso tem de ser combinado com um modo de operação. O GCM, abreviatura de Galois/Counter Mode, é popular porque faz dois trabalhos ao mesmo tempo: cifra os dados e produz uma etiqueta de autenticação que deteta adulterações, tudo numa única passagem eficiente.
O salt e o vetor de inicialização resolvem dois problemas diferentes, e confundi-los é um erro clássico. O salt é misturado com a palavra-passe antes da derivação da chave para que duas pessoas que usam a mesma palavra-passe obtenham chaves diferentes, o que derrota os ataques com tabelas arco-íris pré-calculadas. O IV, por seu lado, aleatoriza a própria cifragem para que cifrar texto em claro idêntico com a mesma chave continue a produzir texto cifrado diferente. Ambos têm de ser únicos por mensagem, mas nenhum é secreto, razão pela qual esta ferramenta simplesmente os armazena junto ao texto cifrado.
O erro mais perigoso com o GCM é reutilizar um IV com a mesma chave. Fazê-lo pode revelar relações entre mensagens e, no pior caso, expor por completo a chave de autenticação. É exatamente por isso que esta ferramenta gera um IV aleatório totalmente novo em cada cifragem em vez de reutilizar um valor fixo, um pequeno detalhe que faz a diferença entre uma cifragem correta de manual e uma falha subtil e explorável.