🔐Text XOR Encryption

Encrypt text with an XOR key

A repeating single key XOR is not secure encryption. Once the text is longer than the key, the key repeats and frequency analysis breaks it easily. Never use it for passwords, personal data or anything that genuinely has to stay private. For real protection use a vetted algorithm such as AES through a standard implementation like the browser's Web Crypto API (crypto.subtle). This tool is for learning and light obfuscation only.

How XOR encryption with a key works

XOR is the simplest form of symmetric encryption: the text is turned into bytes and each byte is combined with a byte of the key using an exclusive-or. Running the same operation again with the same key gives the original bytes back, which is why encryption and decryption are the same calculation. It shows up constantly in tutorials, CTF challenges and quick obfuscation of stored values.

Non-Latin text and emoji survive the round trip. The text is encoded as UTF-8 bytes before the XOR and the result is shown as Base64 or hexadecimal, so anything you type comes back exactly when you decrypt with the same key. Pick the same format you used to encrypt, and if the input contains characters that format does not allow, the tool says which characters are valid instead of producing garbage.

Do not treat it as security. A repeating key leaks its pattern as soon as the message is longer than the key, and frequency analysis peels it apart quickly. XOR also runs happily with the wrong key and simply produces meaningless bytes, so this tool checks whether the result decodes as valid UTF-8 and warns you when it does not. For anything that truly needs protecting, use AES through the Web Crypto API or another vetted implementation.

Frequently asked questions

Is XOR encryption secure?

No. With a single repeating key the pattern shows as soon as the message is longer than the key, and frequency analysis breaks it. Keep passwords and personal data away from it and use a vetted algorithm such as AES.

What happens if I use the wrong key?

XOR runs with any key and produces meaningless bytes. This tool checks whether those bytes decode as valid UTF-8 and tells you the key may be wrong or the input damaged instead of showing scrambled characters.