PURPLE ENCRYPTION v1.1
● LOCAL · OFFLINE · PRIVATE
Home page ↗
Private encryption · built in purple

Encrypt anything. Share safely.

Protect text and files with source-compatible four-key authenticated encryption, or turn encrypted data into a distinctive PurpleCode image.

Purple unicorn encryption brand mark
Private and local.Everything is processed on your computer. Your text, files, images, encryption keys, and camera frames are never uploaded by this application.
Checking this browser’s local security features…

Four keys, one exact set

All four parts and their order are required. There is no recovery if the set and its backup are lost.

Encryption versus hiding

A checksum detects accidental damage. Only encrypted payloads are authenticated and confidential.

Direct-file transports

Hidden PNG and GIF files must remain unchanged. Social-media processing, resizing, or conversion can destroy hidden data.

EncSypher-compatible browser engine

Encrypt & decrypt

A JavaScript/Web Crypto port of the source C# formats: v3 Base64 text packets and v2 authenticated, 1 MiB-chunked file packets.

Original encryption engine credit: Purple Encryption’s compatible browser port is based on UnicornGod117/codecypherthing. Visit the repository to view the original source or download the desktop application.

Text encryption

Encrypt UTF-8 text to a source-compatible or Purple-native Base64 packet, or paste either format to decrypt it automatically.

Four-part key
Both formats use random 16-byte salts, random 12-byte nonces, AES-256-GCM, and a 16-byte authentication tag. Choose v3 when exact desktop compatibility is required.

Output

Authentication failure never returns guessed or partially decrypted plaintext.

Your result will appear here.
Packet version
Input
Output

File encryption

Encrypt any file to the source-compatible ECAFE2 format, or authenticate and decrypt an existing .enc file.

Drop a file hereAny file to encrypt, or an EncSypher .enc file
Four-part key

Authenticated file format

Every 1 MiB chunk has its own AES-GCM authentication tag. The header is protected by HMAC-SHA256.

MagicECAFE2
File version2
Chunk size1 MiB
Key derivationPBKDF2-SHA256 · 200k
Maximum browser input128 MB
The source file format does not store the original filename. Decryption removes a trailing .enc when present and otherwise downloads as decrypted-file.bin.
Session key management

Key Vault

Keep one active four-key set ready to fill Text, Files, PurpleCode, and Hidden Image without retyping it.

No keys are currently saved in this session vault.

Current vault keys

The in-browser vault lasts only for this page session. Export a .keyenc backup if you want to keep the keys.

Four-part key
Use at least 14 characters with an uncommon phrase.

Import key backup

Select a compatible .keyenc. Its mode is detected automatically; Vault files require the matching master password.

Drop a .keyenc fileor choose a key backup
Token mode warning: its password is intentionally built into compatible applications. It prevents casual reading but is not secret protection. Prefer Vault mode.
PurpleCode · protocols 1 + 2

Visual encryption

A non-QR four-state tile protocol with unique orientation anchors, checksum-based damage detection, and your choice of compatibility repetition or Reed–Solomon recovery.

1. Choose payload

Text or any local file up to the calculated grid limit.

2. Your PurpleCode

Static PNG is best for short payloads. Animated GIF divides dense payloads into simpler independently verified frames.

Your PurpleCode will appear here
Payload
Grid / frames
Recovery

Scan a PurpleCode

Upload a PNG or animated PurpleCode GIF, or use your camera. Animated frames are collected in any order and verified before reassembly.

Drop a PurpleCode herePNG, GIF, JPEG or another browser-readable image

PurpleCode camera scanner

Frames remain on this device. Camera access depends on browser permission.

Camera is off
Keep the entire code—including its white border—inside the guide. Increase the phone’s screen brightness, avoid glare, and move closer until individual purple cells are sharp.
Veil LSB · protocol 1

Hidden image

Deterministically scattered pixel embedding with a self-describing bootstrap, real capacity controls, repetition recovery and measured distortion.

1. Carrier + payload

Choose exact-pixel PNG or a palette-index GIF that can spread larger payloads over visually identical frames.

Drop a carrier imageor choose a PNG/JPEG
CarrierChoose an image
Actual parameters
Usable capacity
Turning this off only hides the payload. Anyone with this tool can extract and modify unencrypted content.
Direct-file guarantee: PNG stores bits in exact RGB values; Hidden GIF stores bits in duplicate palette entries and can add visually identical frames. Keep the downloaded file unchanged. Resizing, screenshots, optimisation, palette merging, format conversion, filters, or social-media recompression can destroy either hidden channel.

2. Measured result

Difference is amplified for visibility; metrics use the actual encoded pixels.

Encoded comparison will appear here
PSNR
Changed pixels
Maximum shift

Extract hidden data

The original carrier is not needed. PNG and Hidden GIF files are detected automatically.

Drop an encoded imageor select its unchanged PNG/GIF file

Transport inspection

These values come from the embedded bootstrap after majority recovery.

Profile
Embedded bytes
Integrity
Upload an encoded image
Recovery safeguard

Back up these keys before relying on them

Generated keys are now saved in the session vault, but they disappear when this page closes. Without the exact four-part set, encrypted data cannot be recovered.

Clear private data

Remove this session’s private data?

This clears keys, plaintext, results, selected files, generated images, object URLs, and camera state from the page. Downloaded files are not affected.