Skip to content

rishab-14/Caesar_Cryptography

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Caesar Cryptography and Stream Cipher - README

A Python‑based implementation of Caesar Cipher encryption & decryption, including brute‑force attacks and frequency‑analysis methods. Supports English and German languages with both manual input and file-based input options.

Note: This README contains essential instructions and summaries.
For deeper technical explanations, full theory, and detailed flowcharts, please refer to the full project report.

1. Project Overview

This project implements:

  • Caesar Cipher Encryption & Decryption
  • Random Key Generation
  • Manual Input and File-Based Input
  • Brute-Force Decryption
  • Frequency Analysis (Mathematical Attack)
  • Support for English & German Languages
  • Case‑Sensitive Encryption
  • Automatic Output File Generation

The system functions like a stream cipher, encrypting each character sequentially using a shifting mechanism.


2. Features

Encryption

  • Shifts characters based on a numeric key
  • Case‑sensitive encryption
    • Example: 'A' → 'V', but 'a' → 'd'

Decryption

  • Uses the provided key to reverse the shift

Brute Force Attack

  • Tries all possible keys
  • Writes results to Brute_Force_Output.txt

Frequency Analysis Attack

  • Uses unigram, bigram, and trigram statistics
  • Outputs results in Math_Analysis_Method_Output.txt

Dual Language Support

  • English
  • German

Flexible Input Options

  • Manual message input
  • File-based input using Original_data.txt

3. Technologies Used

  • Programming Language: Python
  • Cipher Type: Caesar Cipher (Stream-based shifting)
  • Techniques: Brute-force search, frequency analysis
  • Concepts: Character manipulation, modular arithmetic, file I/O

4. How to Run the Program

Method 1: Run Using Python

  1. Open the folder Caeser_Cryptography
  2. Open Command Prompt inside the folder
  3. Run:
python main.py

Method 2: Run the Executable

Double‑click to run:

Ceaser_Cryptography.exe

Or run via Command Prompt:

Ceaser_Cryptography.exe

Full Documentation Available

The complete project report, including flowcharts, architecture diagrams, file‑level explanations, and mathematical background, is available here:
Caesar_Cryptography_Report.pdf

About

The code deals with the encryption of data with the help of Caeser Stream cipher technique. The languages used are German and English. The code encrypts the all the alphabets in the message. This encrypted message is then can be sent through the secured channel which is decrypted at the receiver end.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages