Classic Ciphers and Encodings

Caesar, Vigenere, Playfair, rail fence, Morse, NATO, Braille, Base32/58/64 and frequency analysis for puzzles and learning.

payments ON MAINNET (real money) · 10 live endpoints

EndpointPriceWhat it answers
GET /braille$0.02Grade 1 Braille text to Unicode Braille cells and back, with number sign, capital sign and dot numbers per cell.
GET /encode-text$0.02Convert text or bytes to and from binary, octal, hex, decimal, Base32 (RFC 4648), Base58 (Bitcoin) and Base64.
GET /frequency-analysis$0.02Letter frequencies, index of coincidence and the most likely Caesar shift of a ciphertext using English statistics.
GET /morse$0.02Morse code encode or decode (ITU-R M.1677) with dot/dash timing in units and milliseconds at a chosen words per minute.
GET /nato$0.02Spell text in the NATO phonetic alphabet (Alfa, Bravo, Charlie) or decode NATO words back to letters and digits.
GET /number-ciphers$0.02A1Z26 (A=1) and Polybius square number ciphers, both ways, with optional keyword square and ADFGX labels.
GET /playfair$0.02Playfair cipher encode or decode with a keyword; shows the 5x5 square and the digraphs. I and J are merged.
GET /rail-fence$0.02Rail fence (zigzag) transposition cipher encode or decode with 2 to 20 rails; letters and digits only by default.
GET /shift-ciphers$0.02Caesar, ROT13, ROT47, ROT5 and Atbash encode or decode for puzzles and learning. Not secure; keeps case and punctuation.
GET /vigenere$0.02Vigenere cipher encode or decode with a key, or estimate the key length of a ciphertext by index of coincidence.

GET /catalog returns this list as JSON. Activity hub · uptime.


For education, puzzles and games only. Every cipher here (Caesar, ROT13, Atbash, Vigenere, Playfair, rail fence, Polybius) is trivially breakable and provides NO security or privacy; Base32, Base58, Base64, hex and Morse are encodings, not encryption. Never use these to protect real secrets, passwords or personal data. Do not send sensitive text to any service. Provided as is. Every paid response carries a disclaimer field.