Skip to content

mammaddrik/Christopher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

133 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Christopher logo

Christopher

Christopher is a comprehensive command-line cryptography toolkit designed for learning, experimenting with, and understanding classical encryption algorithms. It provides a wide collection of historical ciphers, hashing utilities, and encryption mechanisms in a single interactive interface. This project aims to demonstrate how traditional cryptographic systems work internally by allowing users to encrypt, decrypt, and even attempt to crack various classical ciphers. It serves as an educational resource for students, cybersecurity beginners, and anyone interested in the foundations of cryptography. Christopher includes implementations of substitution ciphers, transposition ciphers, polyalphabetic systems, hash functions, and even a simulation of the Enigma machine. The tool is built with modular architecture, making it easy to extend with additional algorithms and cryptographic techniques.

Note: The majority of the included ciphers are classical and are intended for educational purposes only. They should not be used for real-world security.

Christopher

What is Cryptography? Here

Features

  • 🔐 Implementation of multiple classical encryption algorithms
  • 🔄 Support for both encryption and decryption operations
  • 🧠 Cipher Cracking and basic cryptanalysis capabilities
  • 🧩 Modular architecture for easy extension
  • 🎓 Educational focus with practical experimentation support

Including

Details
  • Atbash Cipher
  • Caesar Cipher
    • Encryption
    • Decryption
    • Crack
  • Affine Cipher
    • Encryption
    • Decryption
    • Crack
  • Vigenère Cipher
    • Encryption
    • Decryption
    • Crack
  • Reverse Text
  • Play Fire Cipher
    • Encryption
    • Decryption
  • Rail Fence Cipher
    • Encryption
    • Decryption
    • Crack
  • Scytale Cipher
    • Encryption
    • Decryption
  • Polybius Square
  • Columnar Cipher
    • Encryption
    • Decryption
    • Crack
  • Simple Substitution Cipher
    • Encryption
    • Decryption
    • Crack
  • Baconian Cipher
  • Morse Code
  • Rot13 Cipher
  • One-Time Pad Cipher
    • Encryption
    • Decryption
  • Hash Function
    • Hash Generator
      • MD2
      • MD4
      • MD5
      • SHA1
      • SHA224
      • SHA256
      • SHA384
      • SHA512
      • sha3-224
      • sha3-256
      • sha3-384
      • sha3-512
      • shake-128
      • shake-256
      • blake2b
      • blake2s
      • NTLM
      • adler32
      • crc32
    • Hash Cracker
      • MD5
      • SHA1
      • SHA256
      • SHA384
      • SHA512
  • Enigma Machine
  • Public Key Cipher
    • Encryption
    • Decryption

Installation

Windows Windows

Note: Christopher isn't compatible with python2, run it with python3 instead.
I suggest you definitely use cmder.

git clone https://github.com/mammaddrik/christopher.git
cd christopher
python pip install -r requirements.txt
python christopher.py

docker Docker

install docker on your system. docker

docker build -t christopher .
docker run -ti christopher

Linux Linux

Note: Christopher isn't compatible with python2, run it with python3 instead.

git clone https://github.com/mammaddrik/christopher.git
cd christopher
python pip install -r requirements.txt
python christopher.py

requirements

Requirements Command Link Version
pycryptodome python pip install pycryptodome pypi 3.23.0
passlib python pip install passlib pypi 1.7.4

Note: You may encounter an error while installing this requirements. If an error occurs, use the following command.

python -m pip install --upgrade pip
python pip install -r requirements.txt

Usage

Follow on screen instructions to interact with the program: choose from encryption, decryption, hash generation, or cryptanalysis options, enter your messages or keys, and the tool will process and display the output directly in the terminal.

Screenshots

Encryption Decryption HashCracker

License

Christopher is licensed under MIT License.

back to top

About

Christopher is an interactive cryptography toolkit featuring classical ciphers, hashing utilities, and cipher cracking tools built for learning the foundations of encryption through hands on experimentation.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages