CS6903 Project One Python

Black pre-commit

CS6903 (Spring 2021) - Project One - Cryptanalysis of a Class of Ciphers

Features

Usage: castillo-chan-zhou-decrypt-binary [OPTIONS] COMMAND [ARGS]...

  CS6903 Project One - Cryptanalysis of a Class of Ciphers using Kasiski Examination

Options:
  --version  Show the version and exit.
  --help     Show this message and exit.

Commands:
  test-one  Decrypt ciphertext using a chosen-message attack.

            This method uses a known dictionary of possible plaintexts (e.g. chosen
            messages) to attempt to decrypt ciphertext. The key is determined by using
            the Kasiski Examination method of Cryptanalysis combined with an optimized
            check of the decrypted text using the prefix of the known plaintexts to
            return a plaintext guess.

  test-two  Decrypt ciphertext using a chosen-message attack.

            This method uses a known dictionary of possible plaintext words to
            attempt to decrypt ciphertext. The key is determined by decrypting  the
            first (x) ciphertext characters (where x is the length of each  word in
            the dictionary). We then use the same key to decrypt the rest of the
            ciphertext. The key with the most words decrypted is returned as the guess
            of the plaintext.

Installation

To install castillo-chan-zhou-decrypt-binary, run this command in your terminal:

$ python3 -m venv venv
$ source venv/bin/activate
$ curl -H "Accept: application/vnd.github.v3+json" \
        https://api.github.com/repos/joelbcastillo/CS6903-Project-One/releases/latest \
    | grep "browser_download_url.*whl" \
    | cut -d : -f 2,3 \
    | tr -d \" \
    | wget -qi - 
$ pip install *.whl

This is the preferred method to install castillo-chan-zhou-decrypt-binary, as it will always install the most recent stable release.

Authors

Credits

This package was created with Cookiecutter and the fedejaure/cookiecutter-modern-pypackage project template.