/cipher

A repo containing work done for my team in the University of Southampton Cipher Challenge. I make no guarantees that these scripts will work correctly or indeed have been named or commented appropriately.

Primary LanguagePython

cipher

  • benedict thing.py = used to split up and recombine vigenere ciphers
  • bifidanneal.py = Attempt at annealing Bifid ciphers based on semi-comprehensible online resources on annealing. May or may not work, depending on the weather.
  • bifidvariance.py = generates bifid variance graphs
  • bigramfinder.py = counts the number of times each bigram appears in the cipher
  • box.py = full box cipher solver
  • cipher.py = simple letter substitution; useful for trying keys
  • cipher2.py = full-featured multipurpose substitution solver program, confirmed to be bug-ridden
  • hillcipher.py = partially completed hill cipher solver
  • hill2.py = partial hill bruteforcer
  • hillaaron.py = hill bruteforcer
  • keyword.py = cracks keyword substitution ciphers
  • keywordswapper.py = swaps between plain -> cipher and cipher -> plain vignere keywords
  • letterfinder.py = outputs all the locations of a chosen letter in a string
  • letterfreq.py = just a simple frequency analysis program
  • letternum.py = finds the letter of a number or the number of a letter
  • pdssyndicate.py = searching for 'dssynd' in substitution ciphers
  • reverse.py = reverses whatever string you throw in its general direction
  • splittar.py = splits strings into sections of a chosen length
  • totalconnie thing.py = finds that number that i can't remember the name of for a range of vigenère keyword lengths
  • vigenere.py = solves vigenère ciphers given the keyword
  • vigenerefreq.py = makes a best guess at a vigenère cipher using letter frequency analysis