Skip to content

Functional playground for various cipher encoders and decoders

License

Notifications You must be signed in to change notification settings

NashFP/cipher-fun

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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".

About

Functional playground for various cipher encoders and decoders

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published