Skip to content

Encryption/decryption scripts for a Computer Security course, implementing LFSR, Affine Cipher, Caesar Cipher, Feistel Cipher, Playfair Cipher, and S-Box in Python.

Notifications You must be signed in to change notification settings

khaledkamr/encryption-algorithms

Repository files navigation

Encryption Algorithms

This project is a collection of encryption and decryption scripts developed as part of a Computer Security course in college. It implements various cryptographic algorithms taught in the course, including LFSR, Affine Cipher, Caesar Cipher, Feistel Cipher, Playfair Cipher, S-Box, Simple Shift Vigenère Cipher, Full Vigenère Cipher, Auto-key Vigenère Cipher, and Running Key Vigenère Cipher. Each algorithm is implemented in Python to demonstrate secure data encryption and decryption techniques.

Algorithms Included

  • LFSR.py: Linear Feedback Shift Register-based encryption.
  • affine_cipher.py: Affine Cipher, a monoalphabetic substitution cipher.
  • caesar_cipher.py: Caesar Cipher, a simple substitution cipher.
  • feistel_cipher.py: Feistel Cipher, a symmetric structure used in block ciphers.
  • play_fair.py: Playfair Cipher, a digraph substitution cipher.
  • s-box.py: S-Box (Substitution Box), a component used in many modern ciphers.
  • simple_shift_vigenere.py: Simple Shift Vigenère Cipher, a polyalphabetic cipher using a repeating key for shifting letters.
  • full_vigenere.py: Full Vigenère Cipher, a polyalphabetic cipher using a Vigenère table for substitution.
  • auto_key_vigenere.py: Auto-key Vigenère Cipher, a polyalphabetic cipher where the plaintext or ciphertext extends the key.
  • running_key_vigenere.py: Running Key Vigenère Cipher, a polyalphabetic cipher using a long text (e.g., a book) as the key.

About

Encryption/decryption scripts for a Computer Security course, implementing LFSR, Affine Cipher, Caesar Cipher, Feistel Cipher, Playfair Cipher, and S-Box in Python.

Topics

Resources

Stars

Watchers

Forks

Languages