Skip to main content

Free Text Encryption

Encrypt and decrypt text with a password using strong AES-256-GCM. The password never leaves your browser. Share secrets safely.

Works offline once loaded

Strong, standard encryption: AES-256-GCM with a key derived from your password via PBKDF2 (250,000 iterations, SHA-256). Each message uses a fresh random salt and IV.

The password is never stored or sent anywhere β€” everything runs in your browser. If you lose the password, the message cannot be recovered. Share the encrypted text and the password through separate channels.

Open format: The output is base64 of salt (16 bytes) + IV (12 bytes) + ciphertext + 16-byte GCM tag, with the key from PBKDF2-SHA256 at 250,000 iterations. It is not OpenSSL or CryptoJS compatible, but you can decrypt it without this site, for example in Node.js:

const c = require('crypto');
const b = Buffer.from(B64, 'base64');
const k = c.pbkdf2Sync(PASSWORD, b.subarray(0, 16), 250000, 32, 'sha256');
const d = c.createDecipheriv('aes-256-gcm', k, b.subarray(16, 28));
d.setAuthTag(b.subarray(b.length - 16));
console.log(d.update(b.subarray(28, b.length - 16)) + d.final());

Common uses

  • Share a Secret SafelyEncrypt a password or note to send over chat or email.
  • Encrypt a Private NoteProtect sensitive notes you store or paste somewhere.
  • Send Credentials SecurelyEncrypt API keys or logins before sharing with a teammate.
  • Keep an Encrypted Journal EntryEncrypt personal writing so only you can read it back.
  • Learn How Encryption WorksSee real AES-256-GCM encryption in action.

How It Works

Send a secret over an insecure channel (email, chat) by encrypting it with a password only you and the recipient know. This uses the same strong, standard cryptography as password managers β€” running entirely in your browser.

  1. 1
    You enter text and a password
    Nothing is uploaded; the password is never stored or transmitted.
  2. 2
    A key is derived from your password
    PBKDF2 stretches your password with 250,000 SHA-256 iterations and a fresh random salt, making brute-force attacks slow.
  3. 3
    The text is encrypted with AES-256-GCM
    A random IV is used each time, and GCM adds an authentication tag so tampering (or a wrong password) is detected on decryption.
  4. 4
    You share the encrypted text
    Send the base64 result over any channel, and the password separately. The recipient pastes both here to decrypt.

All cryptography runs locally with the browser's native Web Crypto. The plaintext and password never leave your device. If the password is lost, the message is unrecoverable β€” that's the point.

Related Tools

Frequently Asked Questions