Encrypt / Decrypt Text
How to use this encryption tool
- Choose "Encrypt" or "Decrypt" mode at the top.
- Type a password and the text you want to process.
- Click "Run" — to decrypt later, use the exact same password on the encrypted output.
How does this work?
Your password is stretched into an encryption key using PBKDF2 (100,000 iterations), then used with AES-GCM to encrypt your text. The random salt and initialization vector are bundled with the output so you can decrypt it later with the same password — everything happens locally in your browser.
What happens if I forget the password?
The text is permanently unrecoverable. There is no backdoor or master key — that's what makes this a real encryption tool rather than simple encoding.
Is AES-GCM considered secure?
Yes, AES-GCM is a modern, authenticated encryption standard widely used in TLS, VPNs, and government systems. It's one of the most trusted algorithms available today.
What PBKDF2 actually protects against
A password typed by a person is a poor encryption key on its own — it's short, often guessable, and doesn't have the uniform randomness a strong cryptographic key needs. PBKDF2 (Password-Based Key Derivation Function 2) addresses this by repeatedly hashing the password together with a random salt, 100,000 times in this tool's case, deliberately slowing down the process of turning a password into a usable key. This doesn't make a weak password strong, but it does make each individual guess an attacker tries dramatically more expensive computationally, which meaningfully raises the cost of a brute-force attack against the encrypted output compared to using the password directly as a key with no stretching at all.
Why AES-GCM is "authenticated" encryption, and why that matters
AES-GCM does two things at once that older encryption modes handled separately, or not at all: it encrypts the data for confidentiality, and it generates an authentication tag that lets decryption detect whether the ciphertext was tampered with after encryption. Older modes like plain AES-CBC only provide confidentiality — someone could flip bits in a CBC-encrypted message and the decryption would still "succeed," just producing garbled or subtly altered plaintext with no warning. GCM's authentication tag causes decryption to fail outright if even a single bit of the encrypted data was changed, which is why GCM is generally preferred over older modes for new applications: it catches tampering that a non-authenticated mode would silently let through.
Salt and IV are meant to be public — that's not a security hole
It can look concerning that the salt and initialization vector (IV) are bundled together with the encrypted output rather than kept secret, but this is standard, intentional design, not an oversight. The salt's job is to make sure the same password produces a different derived key every time you encrypt, preventing an attacker from precomputing a single table of common passwords to crack many encrypted messages at once — it doesn't need to be secret to do that job. The IV similarly ensures that encrypting the same text twice with the same key produces different ciphertext each time. Security in this scheme rests entirely on the password (and the key derived from it) remaining secret, not on hiding the salt or IV, which is exactly why sharing the encrypted output (which includes both) is safe as long as the password itself isn't shared alongside it.
The real weak link is password strength, not the algorithm
AES-GCM itself, with a properly derived key, is not something that can be broken by brute-forcing the encryption directly — the actual key space is far too large for that to be practical with any current or foreseeable technology. The realistic point of attack is almost always the password: a short, common, or guessable password remains vulnerable to a dictionary or targeted guessing attack even with PBKDF2's stretching slowing each individual attempt down, since a weak password has few enough likely candidates that even a slowed-down search can still complete in reasonable time. The strength of this entire scheme is only as good as the password chosen — a long, random, unique passphrase matters more than any setting this tool controls.
Limitations of this tool
This tool encrypts and decrypts plain text pasted into the browser — it doesn't handle file encryption, doesn't integrate with any password manager or secure sharing mechanism, and provides no way to securely transmit the password itself to someone else; sending the encrypted text and the password through the same channel (like the same email or chat message) defeats the purpose of encrypting it at all. It's meant for straightforward, one-off text encryption where you control both ends of the process yourself, not as a full secure-communication system, which would additionally need a secure way to exchange the password or a public-key mechanism this symmetric, password-based tool doesn't provide.