The ASCII code is used by computer to store alphabets and information. Some important numbers are A=65, B=66 up to Z = 90, a-z is 97 to 122, 0-9 is 48 to 57. Space is 32. Numbers are either represented in Base 10 (Decimal), Base 16 (Hexadecimal), Base 8 (Octal) or Base 2 (Binary)Input formats for text and keysASCII values to Text the following characters are allowed in the text - 0123456789 Text to ASCII values the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
Input formats for text and keys
Links to other implementations or information
Morse Code is named after Samuel Finley Breese Morse although it is possible that it was actually his colleague Alfred Vail that invented the code we use today. Morse and Vail (with others) invented systems for electrical telegraph systems and Morse invented a code set comprising of just numbers to send coded words to be looked up in a code book. Vail expended the code to include letters. The codes are not random. The most common letters, E,T,A,I,N,O,S have the shortest or easiest code = . / - / .- / .. / -. / --- / ... and the less common the longest.Morse code should be entered as . & - .- A -... B -.-. C -.-- Y --.. Z. Select the letter and word spacings from the drop down lists as these can vary.Input formats for text and keysDecrypt the following characters are allowed in the text - .-01/ Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,?-=:;()/$'_Æ!+~#&/ÆØÅ For this cipher words and letters are separated by special characters. For words these can be 'Nothing', 'Space', ' / ', and for letters can be 'Nothing', 'Space', '-', ',', . If the letters and words arn't separated by one of these then you need to change the text for it to work.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The ITA2 (International Telegraph Alphabet #2) or Baudot code is an old telegraph code sent by machine. The code was invented by Émile Baudot, a french telegraph engineer, in about 1870. Baudot is a binary code and therefore is similar to ASCII. It can code 31 different characters but by including a code for switching letters to numbers and punctuation it codes more than this. Baudot should be entered as continuous binary digits. If not then use word space selection - Space.Input formats for text and keysDecrypt the following characters are allowed in the text - 01 Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-'!&(),. For this cipher words and letters are separated by special characters. For words these can be 'Nothing', 'Space', ' / ', and for letters can be 'Nothing', 'Space', '-', ',', . If the letters and words arn't separated by one of these then you need to change the text for it to work.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The GoldBug cipher included in a short story by Edgar Allan Poe published in 1843 called The Gold-Bug. It tells the tail of William Legrand and how he was bitten by a gold-colored bug. The story includes the cipher and a description of how to solve simple substitution ciphers.The GoldBug alphabet is as folows:52-†81346,709*‡.$();?¶]¢:[ABCDEFGHIJKLMNOPQRSTUVWXYZInput formats for text and keysDecrypt the following characters are allowed in the text - 52-†81346,709*‡.$();?¶]¢:[ Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ For this cipher words and letters are separated by special characters. For words these can be 'Nothing', 'Space', ' / ', and for letters can be 'Nothing', 'Space', '-', ',', . If the letters and words arn't separated by one of these then you need to change the text for it to work.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
52-†81346,709*‡.$();?¶]¢:[ABCDEFGHIJKLMNOPQRSTUVWXYZ
The Talletic code is simply the conversion from Letter to Numbers and vica versa. A=1 B=2 .... Y=25 Z = 26. The code name Talletic is not an official name but just that which my daughter used when playing with codes.Input formats for text and keysDecrypt the following characters are allowed in the text - 0123456789-/ Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ For this cipher words and letters are separated by special characters. For words these can be 'Nothing', 'Space', ' / ', and for letters can be 'Nothing', 'Space', '-', ',', . If the letters and words arn't separated by one of these then you need to change the text for it to work.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Invented by Sir Francis Bacon for hiding messages in plain sight. It uses just two characters A and B and therefore can for example be used by changing a font type according to the code. ABC is AAAAA AAAAB AAABA. The undescored text above is, for example, coded by using bold and non-boldInput formats for text and keysDecrypt the following characters are allowed in the text - AB,/- Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ For this cipher words and letters are separated by special characters. For words these can be 'Nothing', 'Space', ' / ', and for letters can be 'Nothing', 'Space', '-', ',', . If the letters and words arn't separated by one of these then you need to change the text for it to work.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Kenny Speak is a psudo-language representing the muffled voice of Kenny McCormick from the adult series South Park. In the context of Geocaching it is a code as each letter of the alphabet is replaced by a group og 3 letters in a combination of M, F & P.Input formats for text and keysDecrypt the following characters are allowed in the text - MPFmpf Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 0123456789 For this cipher words and letters are separated by special characters. For words these can be 'Nothing', 'Space', ' / ', and for letters can be 'Nothing', 'Space', '-', ',', . If the letters and words arn't separated by one of these then you need to change the text for it to work.
Each key on a modern telephone has several letters associated with it for creating so called vanity numbers. These can be used to create codes for Geocaching.Input formats for text and keysDecrypt the following characters are allowed in the text - 52-†81346,709*‡.$();?¶]¢:[ Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ For this cipher words and letters are separated by special characters. For words these can be 'Nothing', 'Space', ' / ', and for letters can be 'Nothing', 'Space', '-', ',', . If the letters and words arn't separated by one of these then you need to change the text for it to work.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Barcodes are made up of alternating black and white lines. The lines and the spaces (=white lines) have 4 possible different thicknesses. These are simply numbered 1, 2 , 3 and 4 and each bar code number is made up of 4 digits. The sum of the 4 digits is always 7. So if you see a number sequence made up of a lenge of digits 1,2,3,4 which is a multiple of 4 digits long then it maybe barcode numbers.
0 = 32111 = 22212 = 21223 = 14114 = 11325 = 12316 = 11147 = 13128 = 12139 = 3112
A Simple Substitution cipher is where one letter of the alphabet is replaced with another but not in any special sequence. These are also known as cryptoquips or patristocrats.To encrypt a text find the letter in the lower alphabet and read the cipher letter from the key alphabet. To decrypt do the reverse, find the letter in the key alphabet and read of the letter from the lower alphabet.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Cipher text alphabet should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
Simple Substitution is where one letter of the alphabet is replaced with another but not in any special sequence. The most common types of cryptograms are monoalphabetic substitution ciphers, called Aristocrats if they contains spaces or Patristocrats if they don't. Another common name is cryptoquip.To encrypt a text find the letter in the lower alphabet and read the cipher letter from the key alphabet. To decrypt do the reverse, find the letter in the key alphabet and read of the letter from the lower alphabet.Input formats for text and keysCipher text should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-Plain text should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
ROT is one of the oldest types of cipher. The ROT cipher simply replaces the plain text letter with a letter somewhere else in the same alphabet.ROT3, also known as the Caesar Cipher after Julius Caeser, replaces the letter with the one three to the left.ROT13 replaces it with one 13 places along.As the alphabet is 26 characters long ROT13 is a so called reversible cipher. The re-encrypting the encrypted text gives the plain text again. ROT13 is the cipher used for Geocache hints.ROT 1 to 26 will create a list of all the solutions from ROT1 to ROT26.ROTxx allows you to choose the value to rotate with.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
ROT is one of the oldest types of cipher. The ROT cipher simply replaces the plain text letter with a letter somewhere else in the same alphabet. Most ROT ciphers wrap around after the 26 letter alphabet but there are some cipher texts where the same principle is used but it wraps below character 32 and above character 127, i.e. all the printable ASCII characters. This type of ROT allows all printable ASCII characters as input whereas ROT 3, 13 etc. accept only the letters A to Z.Input formats for text and keysDecrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
ROT47 is an extended version of the Caesar Cipher. ROT is one of the oldest types of cipher. The ROT cipher simply replaces the plain text letter with a letter somewhere else in the same alphabet. ROT 1 to 25 uses a plain A to Z alphabet, however, ROT47 replaces one character with another as before but uses an alphabet with 94 characters in it. It uses character within the ASCII range [33, 126] with the character 47 character after it (rotation) in the ASCII table. It is an reversible or invertible algorithm i.e. applying the same algorithm to the input twice will get the origin text. The alphabet of 94 characters is :-!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Input formats for text and keysDecrypt the following characters are allowed in the text - !"#$%&()*+,-./0123456789:;<=>? ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_'abcdefghijklmnopqrstuvwxyz{|}~ Encrypt the following characters are allowed in the text - !"#$%&()*+,-./0123456789:;<=>? ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_'abcdefghijklmnopqrstuvwxyz{|}~
The Atbash cipher is a very common, simple mono-substitution cipher. It was used with the Hebrew alphabet, but modified to work with the English alphabet. The name derives from the first, last, second, and second to last Hebrew letters (Aleph–Taw–Bet–Shin). Basically, when encoded, an 'A' encodes to 'Z', 'B' encodes to 'Y', etc.. The conversion alphabet is therefore:ABCDEFGHIJKLMNOPQRSTUVWXYZZYXWVUTSRQPONMLKJIHGFEDCBAInput formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZZYXWVUTSRQPONMLKJIHGFEDCBA
The Affine cipher is a monoalphabetic substitution cipher wherein each letter in an alphabet is mapped to its numeric equivalent, encrypted using a simple mathematical function, and converted back to a letter. The formula used means that each letter encrypts to one other letter, and back again, meaning the cipher is essentially a standard substitution cipher with a rule governing which letter goes to which. It is the same as a standard Caesarian shift when 'a' is 1. Mathematically, it is represented as e(x) = (ax + b) mod m. Decryption is a slightly different formula, d(x) = a-1(x - b) mod m.To encode something, you need to pick the 'a' and it must be coprime with the length of the alphabet.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz a,b should contain only 0123456789, The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Vatsyayana Cipher is named after an Indian philosopher Vātsyāyana whose interest in human sexual behavior as a medium of attaining spirituality was documented in the well known Kama Sutra. This cipher is sometimes referred to as the Kama Sutra cipher since that is where its first description appears. Dating to the 4th century BC it was used to teach women how to hide secret messages from prying eyes! It is a substitution cipher where the cipher alphabet is constructed by pairing letters together and subtituting each one with its pair when enciphering.Since this cipher is monoalphabetic, we can treat it as a subset of arbitrary letter substitution ciphers with 2 rules about the construction of the cipher alphabet,
The Dvorak 'code' is really an alternativ layout for the standard computer keybaord. As the keys are in different places the letters can be mapped like a code. As there are different keyboard country specific layouts both for normal and Dvorak keyboards the substituions are a bit hit and miss.Dvorak was created in 1930 and patented in 1936 by Dr. August Dvorak. It proponents claim this layout uses less finger motion, reduces errors and increases typing rate compared to Qwerty. 31 characters are different from Qwerty.Technically this is neither a code or a cipher, however, it works as a monoalphabetic substitution cipher.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890 !£$[]{}"#¤%&§/()=?\´`~^¨'*_-:.;,<>¬ Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890 !£$[]{}"#¤%&§/()=?\´`~^¨'*_-:.;,<>¬
Vigenere is a polyalphabetic substitution where each letter can be substituted with a different letter. It gets its name from Blaise de Vigenère (1523-1596) although it was actually first described by Giovan Battista Bellaso in 1553. de Vigenère created the Autokey version and the cipher was then called after him.The substitution sequence is determined by a key. Each letter of the text is ROTatated by the value of the key letter A=0, B=1 ... Z=25.There are several variations on the basic Vigenere cipher. These include, but are not limited to Autokey Vigenere where the key is only used once and the the letters of the plain text are added to the key. The Porta cipher uses half of the alphabet for the key lines therefore having AB, CD, EF sharing and the cipher letter id either from the first half or second half of the alphabet line. The Gronsfeldt cipher is the same as the Vigenere cipher but the key is numbers and therefore only 0 to 9 are allowed. The Beaufort cipher has the same 'tableau' as the normal Vigenere but each line is reversed. Finally here, there are a set of ciphers named Quagmire I, II, III & IV. For this two keys are used. One to key the columns and/or rows and the other as the key to ROTatate the letters. Many of these ciphers have alternative ways to show the 'tableau' but all of them can create a 26x26 tableau and use the same enctyption and decryption mechanism. Below is an image of how it works.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Blaise de Vigenere didn't actually invent the Vigenere Cipher, that was invented by Giovan Battista Bellaso. However, Vigenere improved it and developed the Autokey Vigenere. It is almost the same as the normal Vigenere but the key is used only once. When the key has been used the letters from the plain text are used as the key to encrypt the rest of the text. This makes it much more difficult to decrypt.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The cipher was developed by the Briton Sir Francis Beaufort (1774 - 1857). He is also known for his development of the Beaufort scale, which is used to measure the wind force.Beaufort is similar to Vigenere but uses a different coding table. Beaufort is reversible, that means encryption and decryption are the same.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Porta Cipher is a polyalphabetic substitution cipher invented by Giovanni Battista della Porta. Where the Vigenere cipher is a polyalphabetic cipher with 26 alphabets, the Porta is basically the same except it only uses 13 alphabets. The 13 cipher alphabets it uses are reciprocal, so enciphering is the same as deciphering.The tableau used here is the same as that used by the American Cryptogram Association and Practical Cryptography with the rows in order of O to Z. There are alternative tableau the most common being Cryptool and dCode with rows in order Z to O.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Gronsfeld is a polyalphabetic substitution where each letter can be substituted with a different letter from the same alphabet. It is believed that the name was given to the cipher by Gaspar Schott (aka, Kaspar Schott or Caspar Schott in German and Gaspar Schottus in Latin) in the early 1600s. He learned about the cipher from the german Count of Gronsfeld (Graf von Gronsfeld).The substitution sequence is determined by a key. The cipher is the same as Vigenere but the key is given as numbers and not letters and is limited to 0 to 9.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only 0123456789The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Alberti Cipher is named after Leon Battista Alberti (1404 – 1472). The Alberti cipher uses a disk made of two parts, The Alberti Cipher Disk also called formula. The disk was described in his treatise De Cifris of 1467. The device embodies the first example of polyalphabetic substitution with mixed alphabets and variable period. The encryption and decryption is quite complex but also very simple. First agree upon a key letter from the small (cipher) alphabet. As on Wikipedia we choose k as the key letter. The person encrypting then chooses a random letter from the outer disk. The inner disk is rotated to have the key letter under this rendomly chosen outer letter. This capital letter is written as the first letter of the cipher. On Wikipedia there is a discrepency between the decription of the cipher and the description of the wheel. On the cipher page k is under B but on the wheel page it is decribed as g under A. Same result but slightly misleading! So to encrypt NORTH, find the N on the outer wheel and read off x from the inner wheel, then O = y, R = m, T = i and H = not there. H cannot be encrypted so it must be dropped. So to the bit that makes it difficult. At any time in the encryption the user can move the inner wheel to a new position thus changing the encryption alphabet. When he does this he writes the new capital letter corresponding to the key letter (=k) into the cipher text.Input formats for text and keysDecrypt the following characters are allowed in the text - abcdefghiklmnopqrstuxyz&ABCDEFGILMNOPQRSTVXZ1234 Encrypt the following characters are allowed in the text - ABCDEFGILMNOPQRSTVXZ Outer disk (Stabilis) should contain only ABCDEFGILMNOPQRSTVXZ1234 Inner disk (Mobilis) should contain only abcdefghiklmnopqrstuxyz&
Trithemius is a Vigenere polyalphabetic substitution cipher where each letter can be substituted with a different letter. More correctly, Vigenere is a Trithemius cipher with a key! The key of a Trithemius cipher is always ABCDEFGHIJKLMNOPQRSTUVWXYZ. Each letter of the text is ROTatated by the value of the key letter A=0, B=1 ... Z=25.The Trithemius cipher was published by German author and monk Johannes Trithemius in his book Polygraphia , which is credited with being the first published work on cryptology, published in 1508 (45 years before Giovan Battista Bellaso in his 1553 book La cifra del).Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Larrabee cipher is essentially a Vigenere cipher developed in about 1871 by Charles S. Larrabee. Larrabee was worried about the security of existing US military ciphers and therefore set about inventing a more secure one. Whilst writing his 1871 book describing the cipher he discovered that a Mr G. Hogg, of London had also invented a near identical cipher but with the ability to encrypt numbers as well as letters. To cut a long story short, Larrabee added the number encryption to his cipher system (with permission from Hogg) and boldly anounced I claim to be the original discoverer of this system, which I call the 'Key - word System'.The book is entitled Larrabee's Cipher and Secret Letter and Telegraph Code, with Hogg's Improvements: The Most Perfect Secret Code Ever Invened Or Discovered. Impossible to be Read Without the Key. Invaluable for Secret Military, Navel, and Diplomatic Services, as Well as for Brokers, Bankers, and Merchants.As the cipher is identical to the Vigenere cipher it was neither new or unbreakable. He must have been a good salesman as the cipher was adopted by the US Navy.Input formats for text and keysDecrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
First described by Frank Miller in 1882, the one-time pad was re-invented in 1917. On July 22, 1919, U.S. Patent 1,310,719 was issued to Gilbert Vernam for the XOR operation used for the encryption of a one-time pad. One Time Pad is the only truely unbreakable ciper! In principle it works by using a truely random never repeating key which is as long as the text to be encrypted. Without the key there is absolutly no way to decipher the text correctly as thousands of guessed keys would result give readable results and any could be correct. In the 1917 Vernam Cipher version a machine was used which consisted of a typewriter construction with paper tape for the key. The tape was 5 holes wide and each line of holes represented an ITA-2 or Baudot Murray letter. The binary equivalents of the ITA-2 letters were XOR-ed by the machine and the 0s and 1s sent by telegraph. These were decoded by an identical machine with the same key tape.This implementation will encrypt text into the binary and decimal equivalents using XOR ITA-2 values.Breaking a One Time Pad is possible only if the key is reused to encrypt 2 messages or more, it is then called two-time pad!. Then the fact that Message1 XOR Message2 = CipherText1 XOR CipherText2 can be used. If you have both cipher texts then by guessing part of the message text, a so called crib, will reveal the other message and therefore the key. Here is how NORTH FIVE NINE01100 11000 01010 10000 10100 00100 01101EAST ZERO ONE Z00001 00011 00101 10000 00100 10001 00001RANDOM KEY10111 00011 10001 11101 00101 10011 00001Key + T1 (C1)11011 11011 11011 01101 10001 10111 01100 Key + T2 (C2)10110 00000 10100 01101 00001 00010 00000 C1 + C2 = T1 + T201101 11011 01111 00000 10000 10101 01100 NORTH F + (C1+C2)01100 11000 01010 10000 10100 00100 01101 = EAST ZE00001 00011 00101 10000 00100 10001 00001The 2 plain tets are encrypted by XOR-ing the bits of the ITA-2 values of the letters with the same non repeating random key giving 2 cipher texts (C1 & C2).Cipher texts C1 and C2 are XOR-ed together. This gives the same result as if the two plain texts were XOR-ed because Message1 XOR Message2 = CipherText1 XOR CipherText2The code breaker guesses that the start of the first text is NORTH and XORs this with the previous step. If the guess is correct, the result will be Plain Text #2 i.e. EAST [space]If the guess isn't correct then NORTH or another text can be moved along the C1 XOR C2 result and tried in each position. Somewhere the result will reveal readable text.Finally guessing the possible continuation will either give jibberish or more readable text. Guessing can continue with either text #1 or text #2 until the whole text is decipheredRemember, the key is non repeating and random so there is no point trying to guess it.Input formats for text and keysDecrypt the following characters are allowed in the text - 01 Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-'!&(),. Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-'!&(),. The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.Links to other implementations or informationDirk Rijmenants One-time Pad information Crypto Museum One-time Pad information Crypto Museum Verman Cipher information Wikipedia One TimePad
NORTH FIVE NINE01100 11000 01010 10000 10100 00100 01101EAST ZERO ONE Z00001 00011 00101 10000 00100 10001 00001RANDOM KEY10111 00011 10001 11101 00101 10011 00001Key + T1 (C1)11011 11011 11011 01101 10001 10111 01100 Key + T2 (C2)10110 00000 10100 01101 00001 00010 00000 C1 + C2 = T1 + T201101 11011 01111 00000 10000 10101 01100 NORTH F + (C1+C2)01100 11000 01010 10000 10100 00100 01101 = EAST ZE00001 00011 00101 10000 00100 10001 00001
The One Time Pad is cited as the only unbreakable cipher, but that is only if used as intended! The idea is that the key should be a random sequence of letters as long as the cipher text to be encoded. Applying a different key with random letter to decode it could produce any deciphered text. The key however, could be just a long text from a poem or book but this would make it open to attack by word searching. In the War time version the Vernam OTP cipher used a machine to XOR the plain text and the key to produce and decode the cipher, however, any coding could be used. In this version the text and key are combined using Vigenere.
Running key is not really a cipher but a way of organising the key for other kinds of cipher such as Vigenere, Beaufort, Porta and other polyalphabetic substitution ciphers. The key is created by dividing the text in two and using the second half as the key whereby then Vigenere etc. can be done as normal. Encrypting doesn't need a key as it is created from the text, however, decrypting need the key which will be half of the original text. A bit of a give-away as to whether it is this cipher that is used!Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key (only for decrypt): should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzThe cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Quagmire Ciphers are variations on the Vigenere Cipher. The American Crytogram Association describe 4 keyword plans, K1 - Plaintext alphabet keyed, Cipertext alphabet straightK2 - Plaintext alphabet straight, Cipertext alphabet keyedK3 - Plaintext alphabet keyed, Cipertext alphabet keyed (both with the same keyword)K4 - Plaintext alphabet keyed, Cipertext alphabet keyed (with two different keywords)
The Vigenere cipher can crudely be called a Quagmire 0 with K0 keyword plan, i.e. Plaintext alphabet straight, Cipertext alphabet straight
Condi is a Polyalphabetic Substitution Cipher using a keyed alphabet. It executes a series of ROT based substitutions using the position of each letter in the key as the ROT value.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz. Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz. Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZOffset should contain only 0123456789The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Despite being a well used cipher in itself and the basis for more complex ciphers such as ADFG(V)X and Double Transpoition there is no apparant record of by whom and when it was invented.This is a simple but very effective cipher. The letters in the text are written in rows and divided into the same number of columns as the number of letters in the key. After being written out in rows the columns are reorganised such that the letters in the key are in alphabetical order. The columns are then read vertically and the cipher text split into groups of 5 letters.Input formats for text and keysDecrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.
Double Columnar Transformation takes the result of a single Columnar Transposition and does another with a new key. This was the type of cipher used by the European resistance groups in World War II as it could be performed by hand.The letters used for the transformation keys were often selected from a poem or other well known text. A good book describing how this was used is Between Silk and Cyanide: A Codemaker's War, 1941-1945 by Leo Marks.Input formats for text and keysDecrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key 2 should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The railfence cipher is a simple transposition cipher. The letters in the plain text are rearranged by writing the text in a zig-zag form and then reading the cipher text off horizontally along the rows or rails. There is no apparant origin for this cipher. Cryptographic strength is very low.Input formats for text and keysDecrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Number of rails should contain only 0123456789Offset (a 0 (zero) offset is no offset) should contain only 0123456789The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The redefence cipher is a variation of the railfence transposition cipher. The letters in the plain text are rearranged by writing the text in a zig-zag form and then reading the cipher text off horizontally along the rows or rails. The order the rows are read is according to the key as with columnar transposition ciphers. There is no apparant origin for this cipher. Cryptographic strength is low.Input formats for text and keysDecrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 0123456789Offset (a 0 (zero) offset is no offset) should contain only 0123456789The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Skip or sometimes called SkyTail, more correctly Scytail meaning baton in ancient greek, is a simple transposition cipher where one just skips a given number of letters through the text. The original method of use was to write a text on a narrow strip of partchment and wrap it around the scytail then reading the cipher text off along the baton. It is believed to have first been use in ca 700 BCE. The skip value cannot be a factor of the length of the text to be encoded or decoded otherwise all the letters will not be encoded.Input formats for text and keysDecrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Skip value should contain only 0123456789
The Jefferson - Patterson Cipher is highly effective transposition cipher. Thomas Jefferson, founding father and 3rd president of the USA, was interested in cryptography as was his friend Robert Patterson from the American Philosophical SocietyPatterson told Jefferson of his idea in a letter of 19 December 1801 and Jefferson subsequently encrypted a letter that took 200 years to decrypt.The cipher works by writing the text vertically, in columns from left to right, using no capital letters or spaces. A random number of letters is then added to each line. The lines are then transposed. A key is then created consisting of the original line number and the number of random letters.Patterson estimated that the potential combinations to solve the puzzle was 'upwards of ninety millions of millions'.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only 0123456789,The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Chaocipher is a method of encryption invented by John F. Byrne in 1918, who tried unsuccessfully to interest the US Signal Corp and Navy in his system. In 1954, Byrne presented Chaocipher-encrypted messages as a challenge in his autobiography “Silent Years”. Although numerous students of cryptanalysis attempted to solve the challenge messages over the years, none succeeded. Chaocipher has been a closely guarded secret known only to a handful of persons. Following fruitful negotiations with the Byrne family during the period 2009-2010, the Chaocipher papers and materials have been donated to the National Cryptologic Museum in Ft. Meade, MD.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Left should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Right should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Burrows-Wheeler tranformation was created by Michael Burrows and David Wheeler in 1994 and isn't strictly a cipher but for Geocaching it can be used as one to obfuscate the text.The method was designed as a preparation step for a compression algorithm. By sorting and grouping sets of identical or similar characters the compression algorithm compresses more effectively.There are several versions of the basic transformation differing in the use of start and stop bits, a key number and different sorting strategies.The key or start and stop character aren't needed for encryption but are needed for decryption although, as all decryptions will produce human readable text, it isn't really necessary. If the start and stop characters are used for encryption they should be used for decryption too. The start and stop characters must not otherwise be in the text.Input formats for text and keysDecrypt the following characters are allowed in the text - Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
The Playfair cipher is named after Lord Playfair but was invented by Charles Wheatstone. It was invented in 1854 and was the fist literal digram substitution cipher.The Playfair is harder to break than substitution, transposition or vigenere type ciphers because the frequency analysis used for these others does not work with Playfair as it substitutes bigrams (two letters at a time) rather than single letters.As with many ciphers it was used in wartime. It was used for tactical purposes by British forces in the Second Boer War and in World War I and for the same purpose by the British and Australians during World War II.To perform the substitution, apply the following 4 rules, in order, to each pair of letters in the plaintext:If both letters are the same (or only one letter is left), add an 'X' after the first letter. Encrypt the new pair and continue. Some variants of Playfair use 'Q' instead of 'X', but any letter, itself uncommon as a repeated pair, will do.If the letters appear on the same row of your table, replace them with the letters to their immediate right respectively (wrapping around to the left side of the row if a letter in the original pair was on the right side of the row).If the letters appear on the same column of your table, replace them with the letters immediately below respectively (wrapping around to the top side of the column if a letter in the original pair was on the bottom side of the column).If the letters are not on the same row or column, replace them with the letters on the same row respectively but at the other pair of corners of the rectangle defined by the original pair. The order is important – the first letter of the encrypted pair is the one that lies on the same row as the first letter of the plaintext pair.Text from WikipediaFor the example on Wikipedia this works as followsText: HELLO WORLD = HE LL OW OR LD. The double L need to be split as per rule 1 and then because it is uneven in length an X is added giving HE LX LO WO RL DX.The key used is PLAYFAIR producing a keysquare ofP L A Y FI R B C DE G H K MN O Q S TU V W X ZHE = KG (rule 2)LX = YV (rule 4)LO = RV (rule 3)WO = VQ (rule 4)RL = GR (rule 3)DX = CZ (rule 4)The resulting cipher text is therefore KG YV RV VQ GR CZ, often written in groups of 5, i.e. KGYVR VVQGR CZ.There are several alternatives when for example two letters are the same. Rumkin and Practical Cryptography handle these in different ways.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
P L A Y FI R B C DE G H K MN O Q S TU V W X Z
The Bifid Cipher is a cipher which combines the Polybius square with fractionation to achieve diffusion. It was invented around 1901 by Felix Delastelle who also invented the Trifd and Four Square Ciphers. The Bifid Cipher was first presented in the Revue du Génie civil in 1895 under the name of "cryptographie nouvelle" or new cryptography. Delastelle was unusual in the world of cryptography as he is one of few amateurs who have invented several important ciphers.The Bifid Cipher uses a polybius square to first do a bigraphic substitution then by writing the result in rows and reading in columns it fractionates the result before doing a new bigraphic substitution through the keysquare.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Trifid cipher was invented by Félix Delastelle and was first described in 1902. It is an extension of his own Bifid cipher. It achieves both fractionation and transposition. The key alphabet is used to key a 27 letter alphabet, including . (dot). The alphabet can be written into three squares in several ways, horisontally or vertically in each square in turn or horizontally across all squares or vertically square by square. To make it even more difficult after the first fractionation the way the text is recombined can be any of 6 ways!. Delastelle also invented the Four Square cipher.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz. Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz. Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz. The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Two Square cipher, also invented by Félix Delastelle, is a variation of the Four Square cipher. It uses two 5x5 Polybius squares (one keyed, one plain) instead of four squares. The cipher is a polygraphic substitution cipher that replaces digraphs with digraphs. The plaintext is split into pairs of letters, with an X added if there is an uneven number. For each pair: the first letter is located in the plain square and the second in the keyed square. The ciphertext letters are read from the same row in the keyed square and same column in the plain square, then vice versa.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key 2 should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Four Square cipher was invented by frenchman Félix Delastelle who also invented the Bifid and Trifid ciphers. The Four Square cipher is a polygraphic substitution cipher. It replaces letters with digraphs so there are 676 (26x26) combinations of substitutions. The cipher has two 5x5 keys squares and two straight 25 letter squares hence the name four square. The two keys key the Top Right and Bottom Left squares. The text is first split into pairs of letters. An X is added to the end if there is an uneven number of letters in the text. The first letter of the pair is located in the top left square and the second letter in the bottom right square. The cipher letters are then read from the square corners, horizontally and vertically, from the Top Right and then Bottom Left squares. To decrypt simply reverse the procedure.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key 2 should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Polybius Cipher is probably the oldest of the digraphic substitution ciphers and one of the oldest known ciphers. Others developed later include playfair, bifid, trifid, four square, ADFG(V)X. In this original version an alphabet is written into a square grid and the plain text is encrypted simply by locating the letter in the grid and reading off the numbers in the column and row. It is believed to have been invented by the Ancient Greeks Cleoxenus and Democleitus but was perfected by Polybius some time around 150 BCE. It was originaly used to convert letters into numbers to send as a form of telegraphy through the use of torches.Input formats for text and keysDecrypt the following characters are allowed in the text - 0123456789Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzKey should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Nihilist cipher is a manually operated symmetric encryption cipher, originally used by Russian Nihilists in the 1880s to organize terrorism against the tsarist regime.There are several versions of the basic cipher and the basic cipher has developed into several other more complicated ciphers. The ultimate development along these lines was the VIC cipher , used in the 1950s by Reino HäyhänenFor this implementation of the basic cipher all numbers need to be number pairs therefore under 100. Some online versions have space separated number where values over 100 are allowed. Just remove the 100 part and it should work!Input formats for text and keysDecrypt the following characters are allowed in the text - 0123456789 Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key 2 should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Bazeries cipher was created by Étienne Bazeries who was a French military cryptanalyst active between 1890 and the First World War. He is best known for developing the "Bazeries Cylinder", an improved version of Thomas Jefferson's cipher cylinder. It was later refined into the US Army M-94 cipher device. The Bazeries cipher combines two grids (Polybius), one from a plain alphabet written vertically and the other from a number less than one million written out in words. The words are used to make the second grid in the normal polybus fasion with I/J shared and the the number is used to create an extra layer of encryption by splitting the text into groups by the key numbers before reversing the groups and then looking up the cipher text from the left square in the right square (reverse for decrypt). Technically it is simple substitution plus transposition cipher but placed into the polybus group as it uses two polybus squares.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only 0123456789The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The ADFGX cipher was a field cipher used by the German Army during World War I. It is closely related to the ADFGVX cipher. ADFGX is a fractionating transposition cipher which combined a modified Polybius square with a single columnar transposition. The cipher is named after the five possible letters used in the ciphertext: A, D, F, G and X. These letters were chosen deliberately because they sound very different from each other when transmitted via morse code. The intention was to reduce the possibility of operator error.Two examples of the ADFGX cipher. The first doesn't agree with mine, the second does! It is because of duplicate letters in the key?https://www.geocachingtoolbox.com/index.php?page=adfgvxCipher https://www.cryptool.org/en/cto-ciphers/adfg-v-x Input formats for text and keysDecrypt the following characters are allowed in the text - ADFGX Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Polibus key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The ADFGVX cipher was a field cipher used by the German Army during World War I. ADFGVX was in fact an extension of an earlier cipher called the ADFGX cipher. Invented by Colonel Fritz Nebel and introduced in March 1918, the cipher was a fractionating transposition cipher which combined a modified Polybius square with a single columnar transposition. The cipher is named after the six possible letters used in the ciphertext: A, D, F, G, V and X. These letters were chosen deliberately because they sound very different from each other when transmitted via morse code. The intention was to reduce the possibility of operator error.Two examples of the ADFGVX cipher. The first doesn't agree with mine, the second does! It is because of duplicate letters in the key?https://www.geocachingtoolbox.com/index.php?page=adfgvxCipher https://www.cryptool.org/en/cto-ciphers/adfg-v-x Input formats for text and keysDecrypt the following characters are allowed in the text - ADFGVX Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Polibus key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 0123456789The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Pollux cipher is of unknown origin. It is a simple but slightly effective fractionation cipher whereby letters are converted into Morse Code and then fractionated by replacing each . (dot), - (dash) and separators by numbers according to a simple key. The fractionation comes by replacing each . - and space by several different numbers from the key. It is common for the key to use 4 dots and 3 of each of the othersInput formats for text and keysDecrypt the following characters are allowed in the text - 0123456789 Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 0123456789.,?-=:;()/$'_Æ!+~#&/ÆØÅ Key should contain only .0-1xKey 2 should contain only 0123456789The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
A straddling checkerboard is a cipher that converts alphabetic plaintext into digits whilst simultaneously achieving fractionation (a simple form of information diffusion) and data compression relative to other schemes using digits. It also is known as a monôme-binôme cipher although there are slight differences.
An example with the test coordinates:
0 1 2 3 4 5 6 7 8 9 A B C D E F G H3 I J K L M N O P Q R8 S T U V W X Y Z / .
OEHGH HKAJA FHOEP EFFTI GUAGE HCCDB HGFHD FLXHG ADGBE EDCAQ CEZAD GZFDG .AHCB E/GFL GEHGE FAAHI EHXXC HEHCH GAHEU GFECG FDHFA JEUBH KGHFG FHJE. EDCAQ C
To start with the input text is coded through the matrix to
36, 5, 9, 7, 9, 9, 32, 0, 31, 0, 6, 9, 36, 5, 37, 5, 6, 6, 81, 30, 7, 82, 0, 7, 5, 9, 2, 2, 4, 1, 9, 7, 6, 9, 4, 6, 33, 85, 9, 7, 0, 4, 7, 1, 5, 5, 4, 2, 0, 38, 2, 5, 87, 0, 4, 7, 87, 6, 4, 7, 89, 0, 9, 2, 1, 5, 88, 7, 6, 33, 7, 5, 9, 7, 5, 6, 0, 0, 9, 30, 5, 9, 85, 85, 2, 9, 5, 9, 2, 9, 7, 0, 9, 5, 82, 7, 6, 5, 2, 7, 6, 4, 9, 6, 0, 31, 5, 82, 1, 9, 32, 7, 9, 6, 7, 6, 9, 31, 5, 89, 5, 4, 2, 0, 38, 2, 36, 5, 9, 7, 9, 9
The cipher text could be sent as
36597 99320 31069 36537 56681 30782 07592 24197 69463 38597 04715 54203 82587 04787 64789 09215 88763 37597 56009 30598 58529 59297 09582 76527 64960 31582 19327 96769 31589 54203 82
but is often encrypted further with another keyIn this case the key number 01234 is used as a modulus key with modulus 10Therefore to decrypt reverse the modulus10 addition
01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01234 01
35363 98196 30835 35303 55457 39558 06368 23963 68239 37363 03581 53079 81353 03553 63555 08081 87539 36363 55875 39364 57395 58063 08358 75393 63736 30358 18193 95535 30355 53079 81
Then split it and run it through the matrix again
35, 36, 39, 81, 9, 6, 30, 83, 5, 35, 30, 35, 5, 4, 5, 7, 39, 5, 5, 80, 6, 36, 82, 39, 6, 36, 82, 39, 37, 36, 30, 35, 81, 5, 30, 7, 9, 81, 35, 30, 35, 5, 36, 35, 5, 5, 0, 80, 81, 87, 5, 39, 36, 36, 35, 5, 87, 5, 39, 36, 4, 5, 7, 39, 5, 5, 80, 6, 30, 83, 5, 87, 5, 39, 36, 37, 36, 30, 35, 81, 81, 9, 39, 5, 5, 35, 30, 35, 5, 5, 30, 7, 9, 81
N O R T H F I V E N I N E D E G R E E S F O U R F O U R P O I N T E I G H T N I N E O N E E A S T Z E R O O N E Z E R O D E G R E E S F I V E Z E R O P O I N T T H R E E N I N E E I G H T
Monomé Dinomé is in the Nihilist family of ciphers and is a transposition and fractionation cipher. Monome Dinome comes from the fact that some of the coding results in single numbers and others in double numbers. The key is used for keying the alphabet to be used and the second key is for the transposition of the columns and the numbering of the two rows. A key may look something like this Key1 = HOLIDAYS and key2 = GEOCACHING = 4 3 9 1 0 2 6 7 8 5 (zero indexed) = 4,3,91026785. The resulting keySquare is then 9 1 0 2 6 7 8 5 H O L I D A Y S4 B C E F G K M N3 P R T U V W X ZOnce the conversion through the correct key is done the rest is just a substitution cipher.Input formats for text and keysThe key sizes and formats are important as they are used to make an 8x3 table. Key1 is used to make a keyed 24 character alphabet for the table. With 24 character there must be 2 pairs of shared letters. These are usually I/J and Y/Z but can be any pairs. Key2 is used to make a transposition key and 2 line keys. It can be input as 10 letters, i.e. GEOCACHING or n1(1),n2(1),n-key(8), i.e. 4,3,91026785Decrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 0123456789 Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz key word should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz key numbers should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 0123456789,The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
9 1 0 2 6 7 8 5 H O L I D A Y S4 B C E F G K M N3 P R T U V W X Z
The key sizes and formats are important as they are used to make an 8x3 table. Key1 is used to make a keyed 24 character alphabet for the table. With 24 character there must be 2 pairs of shared letters. These are usually I/J and Y/Z but can be any pairs. Key2 is used to make a transposition key and 2 line keys. It can be input as 10 letters, i.e. GEOCACHING or n1(1),n2(1),n-key(8), i.e. 4,3,91026785
The Fractionated Morse Cipher was developed by Crypto Pioneer Merle E. Ohaver in the early 1900s. As its name suggests it uses Morse Code to code letters and then fractionates the resulting morse through a key table.Each letter of the plaintext is first enciphered using Morse code with 'x' between letters and 'xx' between words. (xxx does not exist.) Normally punctuation is not enciphered, but for clarity or variation it may be added at the constructor's discretion.This series of dots, dashes, x's is taken off in units of three, each trigraph set vertically and cipher letters assigned to each group using a keyword alphabet:This keyword alphabet is taken from the American Cryptogram Association (ACA Fractionated Morse)K E Y W O R D A B C F G H I J L M N P Q S T U V X Z. . . . . . . . . - - - - - - - - - x x x x x x x x. . . - - - x x x . . . - - - x x x . . . - - - x x. - x . - x . - x . - x . - x . - x . - x . - x . -Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:()@=?!' Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:()@=?!' Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
K E Y W O R D A B C F G H I J L M N P Q S T U V X Z. . . . . . . . . - - - - - - - - - x x x x x x x x. . . - - - x x x . . . - - - x x x . . . - - - x x. - x . - x . - x . - x . - x . - x . - x . - x . -
The VIC cipher was a pencil and paper cipher used by the Soviet spy Reino Häyhänen, codenamed "VIC or VICTOR", in the 1950's. It was one of the most complicated manual cipher ever used and it remained unbroken until more information about its structure was available.To try to classify the cipher is impossible as it consists of so many steps using other cipher types. David Kahn described it as a straddling bipartite monoalphabetic substitution superenciphered by modified double transposition cipher!The original cipher documented by the CIA was in Russian and therefore some of the details are changed to work with an English alphabet. The Straddling Checkerboard in the Russian version consisted of 4 lines of 10 letters to accomodate the modern Russian cyrillic alphabet and some special characters such as number letter shift, dot and comman and 'true message start'. The message was split into two parts and a special character 'true message start' was added to indicate where. This was so that guessing the start of a message text was made more difficult. Guessing start texts is a common way of breaking cipher messages! This representation of the cipher uses a prefill text and values from an anonymous paper often cited that recreates the steps as accurately as possible using the English alphabet.The encryption process consists of 10 basic steps, all in themselves well known methods:1) Start by selecting 3 'secret key' elements. These were quite static. i) A short Phrase (e.g. the first line of a song) minimum 20 character long The Loan Accordian for the Russian version ii) A Date 3rd September 1945 = 391945 which is Victory over Japan (V-J) Day for Russians iii) A Personal Number (unique to agent, a 1 or 2 digit number) Häyhänen's personal number was 13. It was changed to 20 in 1956 to make transposition keys longer.In addition a 5 digit keygroup is created as the first step in the encryption for each message2) Use the secrets above (Phrase, Date, Keygroup and Personal Number) create a 50 digit block of pseudo random-numbers (itself using 14 steps)3) Use this block to create the message keys for i) A straddling Checkerboard ii) Two columnar transpositions4) Encrypt the Plaintext message via the straddling checkerboard5) Apply two transpositions to the resultant (intermediary) ciphertext through two columnar transpositions i) A 'Standard' Columnar Transposition ii) A Diagonal Columnar Transposition6) Insertion of the Keygroup into the ciphertext - as determined by the Personal Number.To help understand the workings of the cipher the steps will be shown in the Working Text after encrypting and decrypting.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz.0123456789/ Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz.0123456789 Key phrase (minimum length 20) should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz./ Date (DDMMYY) should contain only 0123456789The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Enigma Cipher is one of the best known ciphers of all time. Invented by a German engineer Arthur Scherbius at the end of World War I, it was first used commercially. With the onset of World War II it was adopted by the military and produced in several versions. The army, navy and airforce had different versions and there were versions used by the High Command with greater complexity and security.The folowing is a descriptions of some basic differences and how it works.Wehrmacht (Heer & Luftwaffe): Thick B or C reflector. Three rotors from I,II,III,IV and V. Uses number for the settings- Kriegsmarine M3: Thick B or C reflector. Three rotors from I,II,III,IV,V + VI,VII,VIII (double notched). Uses letters for settings- Kriegsmarine M4: Thin reflectors B or C, Beta or Gamma, Three rotors from I,II,III,IV,V + VI,VII,VIII (double notched).- Rotor - The wheels placed in the machine- Ring Setting (Ringstellung) - The setting (position) on the rotor from A-Z or 1 to 26. The ring setting is set before the wheel is placed into the machine.- Rotor Start Position (Spruchschlussel) or Grundstellung - The setting from the outside of where the rotors start.- The reflector, Umkehrwalze or UKW - B or C, thick or thin according to the type of machine- Plugs (Stecker) on the Plugboard (Steckerbrett)Each day, the Heer (Army) and Luftwaffe (Airforce) operators set up the machine according to the secret daily keysheet. This sheet contained the day (Tag), rotor selection and order (Walzenlage), ring setting (Ringstellung),plug connections (Steckerverbindungen) and identification groups (Kenngruppen). The days were printed inreversed order so that the operator could cut off each expired setting at the bottom.-----------------------------------------------------------------------------Tag Walzenlage Ringstellung Steckerverbindungen Kenngruppen -----------------------------------------------------------------------------31 I II V 06 22 14 PO ML IU KJ NH YT GB VF RE DC EXS TGY IKJ LOP30 III IV II 17 04 26 BN VC XS WQ AZ GT YH JU IK PM KIJ TFR BVC ZAE29 V I III 15 02 09 ML KJ HG FD SQ TR EZ IU BV XC QZE TRF IOU TGBOn day 31 the following message is transmitted, from C to U6Z, sent at 1500 hrs and containing 49 letters.U6Z DE C 1510 = 49 = EHZ TBS =TVEXS QBLTW LDAHH YEOEFPTWYB LENDP MKOXL DFAMUDWIJD XRJZ=To decrypt the message we proceed as follows:• Select the Wehrmacht Enigma I with B reflector.• Select the rotors (I II V), adjust their ring setting (06,22,14 = FVN) and set the plugs according to key sheet day 31• Set the rotor start positions to EHZ, the first trigram of the message (B,I,II,V,FVN,EHZ,PO ML IU KJ NH YT GB VF RE DC)• Type in the second trigram TBS to retrieve the original message key. The result should be XWB• Set the decrypted message key XWB as start position for the three rotors (B,I,II,V,FVN,XWB,PO ML IU KJ NH YT GB VF RE DC).• Now decrypt the actual message, but make sure to skip the key identification group TVEXS.Procedure pre 1. May 1940To Encode1. Using the daily setting set up the machine2. Choose three letters at random3. Encode these twice (write down the result)4. Set the machine rotors (Grundstellung) to the new settings - i.e. three random letters5. Endoce the message6. Add the 6 encoded letters to the start of the messageTo decode1. Set the machine up to the daily settings2. Decode the first 6 letters in the message (should be two sets of three letters)3. Set the rotors (Grundstellung) to the three letters4. Remove the first 6 letters of the message5. Decode the messageFor more information on how to set up the Enigma machine see Enigma Message Procedures Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Machine config should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789, The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
-----------------------------------------------------------------------------Tag Walzenlage Ringstellung Steckerverbindungen Kenngruppen -----------------------------------------------------------------------------31 I II V 06 22 14 PO ML IU KJ NH YT GB VF RE DC EXS TGY IKJ LOP30 III IV II 17 04 26 BN VC XS WQ AZ GT YH JU IK PM KIJ TFR BVC ZAE29 V I III 15 02 09 ML KJ HG FD SQ TR EZ IU BV XC QZE TRF IOU TGB
U6Z DE C 1510 = 49 = EHZ TBS =TVEXS QBLTW LDAHH YEOEFPTWYB LENDP MKOXL DFAMUDWIJD XRJZ=
The Lorenz cipher is a machine cipher similar to Enigma and was also used in World War II. It has 12 wheels with together 501 settings creating 2501 or 10151 alternative settings.The basic functioning is a teletype machine using ITA2 coding. Each letter is encrypted before being sent.Each of the 12 wheels has a different number of positions it can be in. The number of positions for each wheel is coprime to the others to maximise the time for them to repeat the same sequence. Each wheel has 'cams', movable pegs. The pegs could be raised or depressed. In the raised (active) position they are 1 and in the depreseed (inactive) position they are 0.The key information consists of the start positions for the 12 wheels and the pin settings for each wheel.For each key pressed the key is converted into a 5 bit ITA2 code and then encrypted with a key created from the first 5 and last 5 wheels in the machine, the psi (ψ) and chi (χ) wheels. The key is the 5 bits of the 5 wheels XORed together. The ITA2 code for the character is then XORed with the key.There are 3 types of machine implemented here. The SZ40, SZ42a and SZ42b. The SZ42 has a more complex mechanism than the SZ40 wherby there are more things affecting how the wheels making the key are moved as the letters are typed.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789?=)(/,:.+.- Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789?=)(/,:.+.- Wheel start positions should contain only 0123456789, Wheel pin configuration should contain only 01 , The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The Hill cipher is a polygraphic substitution cipher based on linear algebra. Polygraphic indicates that is operates on more than one character at a time. The cipher is placed under the machine ciphers section as the patent #US1845947A is under the classification G09C1/08 - Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system wherein elements corresponding to the signs making up the clear text are operatively connected with elements corresponding to the signs making up the ciphered text, the connections, during operation of the apparatus, being automatically and continuously permuted by a coding or key member the connections being mechanicalInvented by Lester S. Hill in 1929, it was the first polygraphic cipher in which it was practical (though barely) to operate on more than three symbols at once. The cipher works on linear algebra. Other polygraphic ciphers include Playfair, Bifid and Trifid.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Key should contain only ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
PGP (Pretty Good Privacy) is a computer based encryption used for sending strongly encrypted eMail og files over the internet. This implementations uses OpenPGP, an open source version of the PGP library. It is based on asymmetric public / private key encryption but can also use symmetric encryption.Symmetric encryption uses just a passphrase and it is this that is most used in GeocachingInput formats for text and keysDecrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Passphrase should contain only all prinatable characters with ASCII values from 32 to 126
The acronym RSA comes from the first letters of the surnames of the three people, Ron Rivest, Adi Shamir and Leonard Adleman, who first publicly described the algorithm in 1977.Clifford Cocks, an English mathematician, had developed an equivalent system in 1973, but it wasn't classified until 1997 becuase he developed it whilst working for the British government.
A user of RSA creates and then publishes the product of two large prime numbers, along with an auxiliary value, as their public key.The prime factors must be kept secret.Anyone can use the public key to encrypt a message, but with currently published methods, if the public key is large enough, only someone with knowledge of the prime factors can feasibly decode the message.Whether breaking RSA encryption is as hard as factoring is an open question known as the RSA problem.
The classic scenario is that of Alice, Bob and Eve.Alice wants to send Bob a message that she doesn't want Eve to read. Alice could pick any kind of encryption but mostrequire Eve to send the encryption key to Bob.If Eve were to intercept the key she could read all of Alice and Bobs messages. Rivest, Shamir and Adleman came up with RSAas a way to send encrypted messages without having to send the key, at least not the private key.
Alice chooses two prime numbers, the larger the better, say 23 and 7, These are called p and q.These two numbers are multiplied to give n.n is called the modulus.She then chooses another prime number thatdoes not divide into the first two minus 1 multiplied by each other, ie. (p-1)*(q-1).p-1 * q-1 = 22 * 6 = 132. The third number, e, can be 7 for example, as 132 cannot be divided by 7. It could also be 17 or 19. It could not be 11 as 132=11*12.Alice must then find another number, d, where ((e * d) - 1) is divisible by(p - 1) * (q - 1), i.e. 132, or rearranged d where((p - 1) * (q - 1)) + 1(i.e. 133) is a divisor.If e is 7 then d could be 19. 7 * 19 = 133 - 1 = 132 = (p - 1) * (q - 1).Next numbers for d are 151(151 * 7 - 1 = 1056 / 132 = 8), 283(283 * 7 - 1 = 1980 / 132 = 15) etc.
The RSA algorithm now creates two keys.A private key and a public key.Alice publishes her public key on the Internet and keeps her private key a secret.It is sometimes called her secret key.Bob does the same.He creates a key pair and publishes his public key on the Internet.Say Bob has chosen 11, 3 and 3 as his values for p, q, and e. p* q = n = 33. (p - 1) * (q - 1) = 20.d = 20 + 1 = 21 / e = 7.
Alice's keys are now Public key = (n, e) = 161, 7) and Private key = (n, d) = 161, 19)Bob's keys are Public key = (n, e) = 33, 3) and Private key = (n, d) = 33, 7)
To send a message to Bob, Alice writes her message and encrypts it with Bob's public key. Once encrypted it can only be decrypted with Bob's private key.
Computer based encryption comes in many forms but there are a few algorithms that can be used for making cache texts. The Bouncy Castle library implements a wide selection of them. See the drop down lists for the alternatives.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789/+= Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Key: should contain only all prinatable characters with ASCII values from 32 to 126IV (Hex string): should contain only 0123456789ABCDEF
A hash is a one way algorithm used to create a kind of signature that can be used to authenticate a text or file.The Bouncy Castle library implements a wide selection of them.Hashes are used to store passwords in databases and for web sites as it is impossible to get the password back from the hash through the algorithm, although, some of the early hashing types have been cracked. Cracking hashes relies on word lists or brute force, also a method called Rainbow Tables. Modern computers can check millions of passwords a second against word lists so DON'T use words in a dictionary or names of people or places!!Beware web sites for hash cracking as many are unsafe and can infect your PC with a virusFor the Mystery Toolkit there is a word list of about 500 000 words that can be used that may give a result. The list contains common words, countries and cities, people's names and the 100 000 most common passwords. As the code is not optimised for hashing it is quite slooooow! (cetainly not millions per second)The possible hash types are:-MD2 - 32 bytesMD4 - 32 bytesMD5 - 32 bytesRIPEMD128 - 32 bytesRIPEMD160 - 40 bytesRIPEMD256 - 64 bytesRIPEMD320 - 80 bytesSHA_1 - 40 bytesSHA_224 - 56 bytesSHA_256 - 64 bytesSHA_384 - 96 bytesSHA_512 - 128 bytesSHA_512_224 - 56 bytesSHA_512_256 - 64 bytesSHA3_224 - 56 bytesSHA3_256 - 64 bytesSHA3_384 - 96 bytesSHA3_512 - 128 bytesGOST3411 - 64 bytesTIGER - 48 bytesWHIRLPOOL - 128 bytesApache MD5Input formats for text and keysReverse hashing the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789/+=$Make hashes the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126Words to check should contain only all prinatable characters with ASCII values from 32 to 126
This implementation uses the BouncyCastle libraries from The Legion of the Bouncy Castle Copyright (c) 2000 - 2017 (https://www.bouncycastle.org). Licenced under The MIT Licence
The Basic World Cities Database from https://simplemaps.com/data/world-cities: The Provider offers a Basic World Cities Database free of charge. This database is licensed under the Creative Commons Attribution 4.0 license .
Brainfuck (alt. Brainf***, BF, Brainf**k) is an Esoteric Programming Language. Brainfuck was invented by Urban Müller in 1993, in an attempt to make a language for which he could write the smallest possible compiler for the Amiga OS, version 2.0. He managed to write a 240-byte compiler.The idea of an esoteric programming language is to create a language with a few commands, a tiny compiler with the most functions to test the limits of programming language design.
The language consists of just 8 programming instructions.
There are different levels of complexity in the interpreters so not all BF code can be read by all interpreters. This one can't cope with negative buffers necessary for writing very short BF code.
Ook! is a joke esoteric programming language created by David Morgan-Mar. It is identical to Brainf**k, except that the instructions are changed into Orangutan words.Like Brainf**k it has 8 commands and these translate to BF as follows. BFOok!Description > Ook. Ook?Value increment < Ook? Ook.Value decrement + Ook. Ook.Memory cell increment - Ook! Ook!Memory cell decrement . Ook! Ook.Output , Ook. Ook!Console input [ Ook! Ook?Loop start ] Ook? Ook!Loop endInput formats for text and keysDecrypt the following characters are allowed in the text - Ook!.? Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
The COW programming language is an esoteric programming language created by Sean Heber in 2003. It is a Brainf**k variant designed humorously with Bovinae in mind. Given that cows have somewhat limited vocabulary skills, it seemed natural to incorporate only the words they know into the language.COW has twelve instructions (four more than Brainf**k) and is Turing-complete . Most instructions are moos, only the capitalization varies: mOo, moO, mOO, Moo, and so on. MMM, OOO, oom and OOM are the exceptions. All other character combinations are ignored and treated as comments. Input formats for text and keysDecrypt the following characters are allowed in the text - MmOo Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
Number base conversion seems to be challenging for many, something we hated in school?. It is possible to represent both numbers and words in different bases from Base 2 to Base 62. Bases up to base 10 have just numbers (10 numbers). Bases up to base 36 can have numbers and letters but only either upper case or lower case (10 numbers + 26 letters), not both. Bases from 37 up to 62 can have numbers and both upper and lower case letters (10 numbers + 26 + 26 letters).Input formats for text and keysConvert From -> To the following characters are allowed in the text - 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Convert To -> From the following characters are allowed in the text - 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz From should contain only 0123456789To should contain only 0123456789
Number base conversion seems to be challenging for many, something we hated in school?. It is possible to represent both numbers and words in different bases from Base 2 to Base 62. Bases up to base 10 have just numbers. Bases up to base 36 can have numbers and letters [0-9 + A-Z = 10 + 26 = 36 chars] but only either upper case or lower case not both. Bases from 37 up to 62 can have numbers and both upper and lower case letters [0-9 + A-Z + a-z = 10 + 26 + 26 = 62]. Input formats for text and keysConvert the following characters are allowed in the text - 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz base from 2 to 62 should contain only 0123456789The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.
GCBase31 is a conversion for coding the Geocache IDs. The characters used for the base-31 conversion are 0123456789ABCDEFGHJKMNPQRTVWXYZ (the letters ILOSU are omitted). When converting from a base-31 waypoint ID back to its original sequential ID, you have to subtract 411120 due to the change in Cache numbering after cache GCFFFF where the base was changed from 16 to 31. Input formats for text and keysFrom GC Base31 to number the following characters are allowed in the text - 0123456789ABCDEFGHJKMNPQRTVWXYZ From number to GC Base31 the following characters are allowed in the text - 0123456789 The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Base64 is a group of similar binary-to-text encoding schemes that represent binary data in an ASCII string format by translating it into a radix-64 representation. The Base64 term originates from a specific MIME content transfer encoding. Base64 uses a 64 character alphabet ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789/+= Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
Base32 is one of several base 32 transfer encodings using a 32-character subset of the twenty-six letters A–Z and ten digits 0–9. Primarily Base32 is used to encode binary data, but is able to encode binary text like ASCII.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ234567= Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Base45 is defined in the Internet Engineering Task Force (IETF) Specification RFC 9285 for including binary data compactly in a QR code. The encoding takes 2 bytes at a time from the input stream, calculates the Base10 sum if the ASCII values and then converts it to 3 Base45 values before looking up the output in the Base45 alphabet. Base45 can encode any data that can be input as bytes with values between 0:255.Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz $%*+-./: Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
Base58 is one of several binary text encodings used for converting ASCII characters to typable text. Base58 is the encoding used for Bitcoin addresses.Bitcoin addresses are created from several steps:-Start with an Elliptic Curve Digital Signature Algorithm or ECDSA (a cryptographic algorithm used by Bitcoin to ensure that funds can only be spent by their rightful owners. It comprises a public and a private key. Take the corresponding public key generated with it (65 bytes, 1 byte 0x04, 32 bytes corresponding to X coordinate, 32 bytes corresponding to Y coordinate)Perform SHA-256 hashing on the public keyPerform RIPEMD-160 hashing on the result of SHA-256Add version byte in front of RIPEMD-160 hash (0x00 for Main Network)(note that below steps are the Base58Check encoding, which has multiple library options available implementing it)Perform SHA-256 hash on the extended RIPEMD-160 resultPerform SHA-256 hash on the result of the previous SHA-256 hashTake the first 4 bytes of the second SHA-256 hash. This is the address checksumAdd the 4 checksum bytes from stage 7 at the end of extended RIPEMD-160 hash from stage 4. This is the 25-byte binary Bitcoin Address.Convert the result from a byte string into a base58 string using Base58Check encoding. This is the most commonly used Bitcoin Address formatAnd that's all there is to it!! Easy. Go hack a bitcoin!Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHJKLMNPQRSTUVWXYZ123456789abcdefghijkmnopqrstuvwxyz Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
ASCII85 or Base85 is a text encoding system used mainly by Adobe. It codes 4 characters to 5 ASCII85 bytes. NB: It has compatability issues as both single and double quotes can end up in the encoded text giving problems on web pages and in XML. , i.e. tag lige results can also dissapear!.Input formats for text and keysDecrypt the following characters are allowed in the text - !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstu~ Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
Base91 or, basE91 as it is often shown as, uses 91 characters of the alphabet where Base64 uses 64 characters. The alphabet consists of character from ASCII #33 to #126 omitting - (dash ASCII #45), \ (backslash ASCII #92) and ' (apostrophe ASCII #39)Input formats for text and keysDecode the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!#$%&()*+,./:;<=>?@[]^_`{|}~"Encode the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
UUencoding is one of many binary to text encoding algorithms created to transfer text between computers. The UU stands for Unix to Unix. It has now mostly been replaced by Base64Input formats for text and keysDecrypt the following characters are allowed in the text - `!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ Encrypt the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
Simple coordinate conversion giving coordinates in decimal degrees, degrees + decimal minutes (geocache format), degrees minutes seconds, UTM, MGRSInput formats for text and keysConvert the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 0123456789°º'".,-
RGB Steg analysis allows you to examine the red, green and blue pixels of an image to see if there is any hidden text inserted by manipulating the RGB colours. It won't work on all kinds of image as there are too many different formats but hopefully it will work on most jpeg, png, gif and bmp files also some tiff files. Images are made up of pixels and each pixel is represented by from 1 to 64 binary bits. An image with 1 bit per pixel, bpp for short, can have just 2 colours with values 0 and 1. Other images have 4, 16, 24, 32, 48 or 64. Images with 16 bits per pixel use 5 (or 6) bits for each of red, green and blue. The most common formats are either 24 bits or 32 bits per pixel using 8 bits for each of the colours and with 32 bits an alpha channel or transparency layer.For 24 or 32 bit images each pixel is made up of a combination of red, green and blue colours. Each pixel can have up to 256 different values (binary 0 - 11111111) for each of red, green and blue giving 16 777 216 (256 x 256 x 256) possible different colours. Each colour for each pixel is made up of a value from 0 to 255, i.e. 256 possible values. The human eye can't see the difference between a colour of value 58 and that of 59 but a computer can. In binary 58 and 59 are 0011 1010 and 0011 1011. The last binary bit changes from 0 to 1. This is called the least significant bit or LSB and this kind of steganography is most often called LSB steganography and is the most used type.
By looking at the 'layers' of the image, i.e. the pixel depths from 0 to 7 (8 bits = 256 values) any hidden text might become visable (no guarantees).
Steganography uses this technique to hide large amounts of data in image files. By looking at the bits of the image you may see signs of a set of pixels that look out of place. Any image with steganography data encoded using Steghide will show a line of miscoloured pixels along the bottom of the image. Easy to spot on single coloured images, not so easy on a normal photograph image!
Geocaching Toolbox uses php mCrypt with Stegger.class.inc.php from Warren Smith from 2006 to hide text or images. The steganography algorithm uses both a private and a public key one of which the user enters and the other is on the server therefore it isn't possible to decrypt the hidden content but it is possible to detect that there is (or could be) hidden data. The algorith uses a start and end tag and as such can results in false positives and false negatives from the real image data in the file.
Some types of image files allow information to be hidden at the end of the file by adding the information after the End of File (EoF) marker. Geocachers exploit this. It is possible to add anything really including text, compressed and encrypted Zip (or 7z) files and even other images. This detection will just detect if there is anything there but not retrieve it, except maybe for plain text.
This is an extention or alterative to the EXIF and the End of File types of Steganography which adds text or other information anywhere in an image file exploiting weaknesses or unused parts of the image structure. Many (most) image types are made up of sections with an opening tag (sequence of bytes), a length indicator and then the data. However, sometimes it is possible to replace non-essential parts of the structure with text and other information. This extraction will find anything in a file that is an ASCII printable character. This will result in lots of rubbish but may just find something useful along the way.
Several type of image and other media files contain information in the files about the image, the equipment used to create the file and other useful information. This information is called EXIF data or image header data. Sometimes the file contains GPS coordinates, especially if an image is taken with a phone camera.It is possible to hide information in this EXIF data in tags such as the creator or author and description tags. This quick extraction routine can help find it.Input formats for text and keys
Most computer images are made up of pixels and the pixels are made up of Reg, Green and Blue colours in different amounts. This image processing function shows the 100 most used colours and their values. Sometimes this can reveal something usefull, othertimes, just 100 random numbers!Input formats for text and keys
QR and Barcodes contain anything from a few letters and numbers to small amounts of text. There are many formats each with their own structure. This decoder reads some but not all of the available formats.The following barcodes are supported by the decoder: UPC-A, UPC-E, EAN-8, EAN-13, Code 39, Code 93, Code 128, ITF, Codabar, MSI, RSS-14 (all variants), QR Code, Data Matrix, Aztec and PDF-417. The encoder supports the following formats: UPC-A, EAN-8, EAN-13, Code 39, Code 128, ITF, Codabar, Plessey, MSI, QR Code, PDF-417, Aztec, Data MatrixInput formats for text and keys
QR and Barcodes contain anything from a few letters and numbers to small amounts of text. There are many formats each with their own structure. The ZXing application can produce QR / barcodes from the text.The following barcodes are supported by the decoder: UPC-A, UPC-E, EAN-8, EAN-13, Code 39, Code 93, Code 128, ITF, Codabar, MSI, RSS-14 (all variants), QR Code, Data Matrix, Aztec and PDF-417. The encoder supports the following formats: UPC-A, EAN-8, EAN-13, Code 39, Code 128, ITF, Codabar, Plessey, MSI, QR Code, PDF-417, Aztec, Data MatrixInput formats for text and keysCreate QR/barcode the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126
Images can be stored as Base64 strings to store them in databases and send them across the internet without pointing to a saved image somewhere. Paste the Base64 text into the box and click ConvertInput formats for text and keysConvert the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789/+=
Images can be stored as Base64 strings to store them in databases and send them across the internet without pointing to a saved image somewhere. Select an image and then click EncodeInput formats for text and keys
Prime number lookup either as the Nth prime number or checking to see if a number is a prime and if so which in sequence. Calculating large prime numbers or checking if a large number is prime is a CPU intensive operation and there are many algorithms to do the maths. This method used Fermat's Little Theorum.Input formats for text and keysCheck primeness the following characters are allowed in the text - 0123456789 n'th prime the following characters are allowed in the text - 0123456789 The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
The colour code for resistors, also used on other small electronic components, was first used in the 1920s. Color bands were used because they were easily and cheaply printed on very small components.BlackBrownRedOrangeYellow 01234GreenBlueVioletGreyWhite 56789Input formats for text and keysTo numbers the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ To colours the following characters are allowed in the text - 0123456789NESW The cipher text should have no spaces. Spaces will (probably) be removed if there are any in the text.The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Black
Brown
Red
Orange
Yellow
Green
Blue
Violet
Grey
White
Regular Expressions (RegExp) is a shorthand syntax for manipulating text. In this implementation it can be used to reformat text using some relatively simple rules.The two input fields are text to match and text to replace.The simplest replacement is an exact match. Just type the text to search for and the text to replace it with.For more complex replacements matching single letters, numbers or characters in the text is surrounded by [] and to match everythin except [^]. So for example matching all alphanumerics would be [A-Za-z0-9].There are a number of special escpae characters\t = tab\r = CR\n = LF. = wildcard\w = any word character\W = any non-word character\s = white-space\S = non white-space\b = word space\d = a digit\D = a non-digitSome examples of useful RegEx strings\b[A-Za-z] - Get the first letter of each word that is a letter not a special character or numberInput formats for text and keysDo RegExp the following characters are allowed in the text - all prinatable characters with ASCII values from 32 to 126RegExp should contain only all prinatable characters with ASCII values from 32 to 126Replace should contain only all prinatable characters with ASCII values from 32 to 126
Cross sums are used occasionally in Geocaching to convert text to single digits by converting each letter to its number equivalent. There are many ways to do cross sums so beware.Input formats for text and keysCalculate cross sums the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
ISO 3166 is an international standard list of countries with 3 figure number codes and 2 and 3 letter codes as well as top level Internet domain codes.It is widely used in economic, trade and financial environments. It is used amoungst other things for the International Bank Account Number (IBAN) and the universal Bank Identifier Code (BIC, often called SWIFT code)Input formats for text and keysDecrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ Encrypt the following characters are allowed in the text - ABCDEFGHIJKLMNOPQRSTUVWXYZ The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Roman Numerals were most likly first written as symbols by the etruscans, an ancient civilisation from what is now Italy. The Romans probably adopted them and changed them to letters. However, there are many alternative theories as to their origin and early use.Input formats for text and keysFrom Roman to Number the following characters are allowed in the text - IVXLCDM From Number to Roman the following characters are allowed in the text - 0123456789 The cipher text should be upper case. Lower case letters will (probably) be converted to upper case.
Cryptanalysis is the art of decrypting a cipher without knowing what type it is and if a key is involved, without knowing the key.There are a few basic steps to placing the cipher into one of the major classes, these being:TranspositionCodes (not technically ciphers)Monoalphabetic SubstitutionPolyalphabetic SubstitutionFractionationOthersSome basic characteristics of these are:
Transposition: The letters in the plain text are not changed but rearranged therefore the normal distribution of letters in the alphabet is maintained and can therefore most often be easily identified.
Codes: Each letter of the aphabet or each word is replaced by a code. This maybe a symbol or other way of representing the letters, just not by another letter in an alphabet.
Monoalphabetic Substitution: Each letter of the alphabet is replaced by one other letter and the same letter is a replacement each time the letter is encountered. The normal letter distributions are not maintained but the relation between their frequencies is and this can easily be detected.
Polyalphabetic Substitution: Each letter of the alphabet is replaced by another letter but this time the replacement is calculated by an algorithm.
Fractionation: Fractionation is a combination of substitution and transposition. First the letters are replaced by substitution, most often by two or more other letters of numbers. These are then transposed before often being substituting back into the orginal alphabet. This disrupts the frequency counts so simple analysis is not possible.
Others: More advanced cryptographic techniques have been developed starting with machine based encryption such as Enigma and Lorenz and computer based cryptology such as PGP and RSA.
The basic steps for identifying the type of encryption are then: