Substitute

Substitute: A substitution cipher allowing you to specify bytes to replace with other byte values.

Free · No sign-up required

Text input

Your result is ready to copy or download after running.

Tool options

About Substitute

A substitution cipher allowing you to specify bytes to replace with other byte values. This can be used to create Caesar ciphers but is more powerful as any byte value can be substituted, not just letters, and the substitution values need not be in order. Enter the bytes you want to replace in the Plaintext field and the bytes to replace them with in the Ciphertext field. Non-printable bytes can be specified using string escape notation. For example, a line feed character can be written as either \n or \x0a. Byte ranges can be specified using a hyphen. For example, the sequence 0123456789 can be written as 0-9. Note that blackslash characters are used to escape special characters, so will need to be escaped themselves if you want to use them on their own (e.g.\\).

Input: text. Output: text.

Format reference: Substitute background and specification

Example

Use “Try example” to load this public sample and its settings, then run it.

Settings used in this example
ParameterExample valueInput and choices
Plaintext"abcdefghijklmnopqrstuvwxyz"Escape sequences such as \n, \r and \t are supported
Ciphertext"zebrascdfghijklmnopqtuvwxy"Escape sequences such as \n, \r and \t are supported
Ignore casefalseOn or off

Input

flee at once. we are discovered!

Result

siaa zq lkba. va zoa rfpbluaoar!

Parameters

ParameterDefault valueInput and choices
Plaintext"ABCDEFGHIJKLMNOPQRSTUVWXYZ"Escape sequences such as \n, \r and \t are supported
Ciphertext"XYZABCDEFGHIJKLMNOPQRSTUVW"Escape sequences such as \n, \r and \t are supported
Ignore casefalseOn or off

Before interpreting the result

Use the exact key encoding, mode, padding and IV expected by the source system. Historical ciphers are useful for learning and analysis. Encoding alone provides no confidentiality.

How to use this page

  1. Paste your input or open a local file.
  2. Adjust tool options if needed, then choose Run tool.
  3. Copy the result or download the original output bytes.

Inputs and results are not added to the public catalogue or saved in the URL. Processing happens in your browser; HTTP Request and DNS over HTTPS send the requests you explicitly run. Files up to 128 MiB can be opened; decompression and image tools may have smaller processing limits. Large results have a shortened preview. Text and HTML downloads use UTF-8; binary downloads preserve output bytes. Pasted text follows browser newline handling; open a file when exact input bytes matter.

Related tools

Browse encryption / encoding tools