Skip to content

Latest commit

 

History

History
51 lines (43 loc) · 2.64 KB

File metadata and controls

51 lines (43 loc) · 2.64 KB

Cipher Fun

Functional playground for various cipher encoders and decoders

In cryptography, a cipher (or cypher) is an algorithm for performing encryption or decryption—a series of well-defined steps that can be followed as a procedure. An alternative, less common term is encipherment. To encipher or encode is to convert information into cipher or code. In common parlance, "cipher" is synonymous with "code", as they are both a set of steps that encrypt a message; however, the concepts are distinct in cryptography, especially classical cryptography.

Codes generally substitute different length strings of character in the output, while ciphers generally substitute the same number of characters as are input. There are exceptions and some cipher systems may use slightly more, or fewer, characters when output versus the number that were input. - https://en.wikipedia.org/wiki/Cipher

Some classical ciphers to play with

Polyalphabetic is any cipher based on substitution, using multiple substitution alphabets.

Polybius square is a device is used for fractionating plaintext characters so that they can be represented by a smaller set of symbols

  • ADFGVX
  • Bifid
  • Nihilist
  • Tap code
  • Trifid
  • VIC cipher

Square

  • Playfair
  • Two-square
  • Four-square

Substitution a method of encrypting in which units of plaintext are replaced with ciphertext, according to a fixed system; the "units" may be single letters (the most common), pairs of letters, triplets of letters, mixtures of the above.

  • Affine
  • Atbash
  • Autokey
  • Beaufort
  • Caesar
  • Chaocipher
  • Great
  • Hill
  • Pigpen
  • ROT13
  • Running key

Transposition is a method of encryption by which the positions held by units of plaintext (which are commonly characters or groups of characters) are shifted according to a regular system, so that the ciphertext constitutes a permutation of the plaintext.

  • Columnar
  • Double
  • Myszkowski
  • Rail fence
  • Route

Contribute

Contribute your solutions by adding a directory named {your twitter handle}+{your language} such as "bryan_hunter+erlang".