What is this?

This tool attempts to decrypt a given string using common encoding techniques by brute-forcing and sorting results based on the English language. This aims to save time for people already familiar with the various methods, however it is not recommended that beginners rely on this tool prior to learning how to identify and decode things on their own.


What can this do?

Whenever possible, the tool cycles through all possible or reasonable parameters. Each method listed provides a small variation of the cipher, which can be stacked with others (for example, a0z25 + spaceless). For descriptions on how the ciphers work, hover over their titles.

a1z26
method input output
a1z26 8 5 12 12 15 hello
a0z25 7 4 11 11 14 hello
ignoreInvalid 8x5x12x12x15 hello
spaceless 85121215 hello

affine
method input output
affine (a=23, b=24) DmRrI HeLlO

atbash
method input output
atbash (Latin) DmLrI HeLlO
atbash (Hebrew) בכפי שלום
atbash (Greek) γωπθυζπηνκη χαιρετισμος

bacon
method input output
bacon (original) AABBBAABAAABABAABABAABBAB hello
bacon (variant) AABBBAABAAABABBABABBABBBA hello
alphabet='' --___--_---_-_--_-_--__-_ hello
case sensitive aAABBBAABAAABABAABABAABBABb hello
reverse (AAAAB -> BAAAA) BBBAAAABAAABABAABABABABBA hello
roll BBBAABBBAABAAABABAABABAABBAB hello

braille
method input output
bitstring 101100100100101010101010100110 hello
bitstring (padding) 101011010000101010101010100110 hello
Credit: Created by tun
bytes
method input output
AND ????? hello
OR ????? hello
XOR \QXX[ hello
BYTE_SHIFT ëèïïò hello
ZERO_FILL_LEFT_SHIFT ????? hello
ZERO_FILL_RIGHT_SHIFT ????? hello
BIT_ROTATION_LEFT ????? hello

Credit: Inspired by http://cyber.meme.tips/xlate/shifts.html cumulative rot
method input output
start (start=1, step=1) igopt dwavo hello world
start (start=19, step=16) ankat hpisa hello world
ignoreInvalid (start=1, step=1) igopt cvzun hello world

encircled key
method input output
QWERTY (separator=' ') gbyjun r4swd3 ok;.p, k;p.,o 9kipl0 hello
QWERTY (separator='X') gbyjunXr4swd3Xok;.p,Xk;p.,oX9kipl0 hello
QWERTY (separator=' ') yju w34 k,. op; kli hello
DVORAK (separator=' ') gcdtbm .pouqj 0[r/ns 0[r/ns ,.ae;q hello

The supported (ANSI) keyboard layouts are:

  • asset
  • capewell-dvorak
  • capewell
  • colemak-mod-DH
  • colemak
  • colemak-4
  • colemak-8
  • colemak-13
  • Colemak-Angle-Curl_DbgHk-mod
  • Colemak-Angle-mod
  • Colemak-AngleWide-Curl_DbgHk-mod
  • Colemak-AngleWide-mod
  • Colemak-A-wing-mod
  • Colemak-Wide-mod
  • dvorak
  • home_top_swap
  • klausler
  • minimak4
  • minimak8
  • minimak12
  • norman
  • carpalx qfmlwy
  • carpalx qgmlwb
  • carpalx qgmlwy
  • qwerf-2007
  • qwerty
  • qwertz
  • qwpr
  • tarmak1
  • tarmak2
  • tarmak3
  • tarmak4
  • workman
  • azerty
  • hebrew
  • greek
  • russian
Credit: https://github.com/karroot/kb-layout-converter
indices
method input output
cumulative (add=1) HExLxxLxxxO HELLO
offset (=5) xxxxxHExLxxLxxxO HELLO
fibonacci HELxLxxOxxxxYxxxxxxxOxxxxxxxxxxxxU HELLOYOU
primes xHExLxLxxxO HELLO

keyboard
method input output
QWERTY to DVORAK jdpps hello
Greek to minimak8 ηκοολ hello

The supported (ANSI) keyboard layouts are:

  • asset
  • capewell-dvorak
  • capewell
  • colemak-mod-DH
  • colemak
  • colemak-4
  • colemak-8
  • colemak-13
  • Colemak-Angle-Curl_DbgHk-mod
  • Colemak-Angle-mod
  • Colemak-AngleWide-Curl_DbgHk-mod
  • Colemak-AngleWide-mod
  • Colemak-A-wing-mod
  • Colemak-Wide-mod
  • dvorak
  • home_top_swap
  • klausler
  • minimak4
  • minimak8
  • minimak12
  • norman
  • carpalx qfmlwy
  • carpalx qgmlwb
  • carpalx qgmlwy
  • qwerf-2007
  • qwerty
  • qwertz
  • qwpr
  • tarmak1
  • tarmak2
  • tarmak3
  • tarmak4
  • workman
  • azerty
  • hebrew
  • greek
  • russian
Credit: https://github.com/karroot/kb-layout-converter
morse
method input output
morse .... . .-.. .-.. --- hello
morse (with word space) .... . .-.. .-.. / --- hell o
morse (gussed chars) AAAACACABAACABAACBBB hello

multitap
method input output
multitap 44 33 555 555 666 hello

polybius
method input output
polybius (xy) 3251131343 hello
polybius (xy) 32-51-13-13-43 hello
polybius (yx) 23 15 31 31 34 hello
alphabet (=a-z9-0) 41 44 33 33 26 hello
ignoreInvalid 3x2x5x1x13xx1x3x4xxx3 hello
alphabet roll (q-z,a-p) 24 43 15 15 45 hello

The supported alphabets are:

  • abcdefghiklmnopqrstuvwxyz
  • abcdefghijklmnopqrstuwxyz
  • abcdefghijklmnopqrstuvxyz
  • abcdefghijklmnopqrstuvwxy
  • abcdefghijklmnopqrstuvwyz
  • abcdefghijklmnoprstuvwxyz
  • abcdefghijklmnopqrstuvwxyz0123456789
  • 0123456789abcdefghijklmnopqrstuvwxyz
  • zyxwvutsrqponmlkjihgfedcba9876543210
  • 9876543210zyxwvutsrqponmlkjihgfedcba
  • zyxwvutsrponmlkjihgfedcba
  • zywvutsrqponmlkjihgfedcba
  • yxwvutsrqponmlkjihgfedcba
  • zyxvutsrqponmlkjihgfedcba
  • zyxwutsrqponmlkjihgfedcba
  • zyxwvutsrqponmlkihgfedcba

railfence
method input output
railfence (rails=3) hlroe lwlod hello world
railfence (rails=3, offset=1) lrlhol ewdo hello world
Credit: https://gchq.github.io/CyberChef
rot
method input output
ROT (n=13) uryyb hello
ROT (n=24) fcjjm hello
ASCII ROT (n=61) +(//2 hello

scytale
method input output
scytale (rounds=4) hlwleoodl r hello world
scytale (rounds=2) xxxWxOHRELLDLxOxxxx xxxHELLOxxxWORLDxxx

seven-segment
method input output
alphabetic cefg adefg fed fed cdeg hELLo
alphabetic (mixed) fcge edfag def dfe ecdg hELLo
alphabetic (repeating) ceefgg addeffg feed fedd ccdeeg hELLo
alphabetic (separator) cefgXadefgXfedXfedXcdeg hELLo
binary 1110100 1111001 0111000 0111000 1011100 hELLo
binary (inverted) 0001011 0000110 1000111 1000111 0100011 hELLo

substitution
method input output
aristocrat fcjjm umpjb rfgq gq y rcqr hello world this is a test
patristocrat fcjjm umpjb rfgqg qyrcq r hello world thisi sates t
patristocrat fcjjmumpjbrfgqgqyrcqr helloworldthisisatest