Substitution Cipher
A monoalphabetic substitution cipher replaces every letter of the plaintext with a different letter of the alphabet. Solve it manually, or let the autosolver find the key automatically with a Rust/WebAssembly simulated-annealing engine.
Type the plaintext letter that each ciphertext letter maps to. The mapping is applied instantly. Grey letters are unassigned.
How the autosolver works
The solver runs entirely in your browser via a WebAssembly module compiled from Rust. It models English with a smoothed 27-symbol (A–Z + wordbreak) quadgram language model plus a 550,000-word dictionary matched by word shape, then performs multi-restart simulated annealing over the key space (each swap is rescored incrementally), hill-climbs on the combined score, and snaps words onto dictionary words of the same shape. Punctuation is preserved and used as a constraint: apostrophes pin down contractions (’S, ’T, ’LL, ’RE …), quotes and sentence stops mark word boundaries and are copied to the output. Word boundaries and an optional known-plaintext crib are respected. Nothing is uploaded — your ciphertext never leaves the page.