Overview
Project Information
OverTheWire (Krypton  Cryptography)
Progress
 Started "Krypton" of OverTheWire
Project Links
 Github  Writeup
Useful Links
 Frequency Analysis
 Vigenere Cipher
** POTENTIAL SPOILERS AHEAD! **
Reflection
Day 1 (up to "Level 3 → Level 4")
 Writing the python scripts for the frequency analysis and caesar ciphers were pretty fun!
 Cryptography is fun when it works and frustrating when it doesn't < That can be said for all field of study though!
 Vanilla Caesar Ciphers were pretty easy to decode, but I had a lot of trouble with the Cipher requiring Frequency Analysis. It felt like a lot of mathematical brute forcing and "good guessing" that I didn't particularly enjoy. Oh well, to each their own.. Still good to learn though!

Considering that there are so many cipher decoder tools out there, I didn't feel like decoding this by hand. I'd use frequency analysis via keywords and a 6length column using a Vigenere Square if I were try to do it via pencilandpaper though. I will consider writing a python script to do this for me in the future (similar to what I did for the caesar ciphers above).
Vigenere Square Example
https://www.youtube.com/watch?v=SkJcmCaHqS0
Scratch Notes
 Substitution Ciphers: Caesar Cipher + Vigenere Cipher (both can be decoded via Frequency Analysis or Brute Force Key Shifting and some good guessing skills)
 Transposition Ciphers (swapping of bytes)
 Modern ciphers break into two types; symmetric and asymmetric.
 Symmetric ciphers come in two flavours: block and stream.
 Block ciphers use a fixed key to perform substitution. Transposition ciphers on each block discretely.
 Stream ciphers attempt to create an onthefly ‘random’ keystream to encrypt the incoming plaintext one byte at a time. Typically, the ‘random’ key byte is xor’d with the plaintext to produce the ciphertext. If the random keystream can be replicated at the recieving end, then a further xor will produce the plaintext once again