https://github.com/clats97/vigenerecipher
A simple CLI & GUI Vigenere cipher tool. This tool will encrypt and decrypt text using the Vigenere cipher method. Its more secure than Caesar or ROT13.
https://github.com/clats97/vigenerecipher
cipher-algorithms ciphers encryption encryption-algorithms encryption-decryption encryption-tool trending trending-repositories vigenere-cipher vigenere-cipher-algorithm vigenere-encoder
Last synced: 2 days ago
JSON representation
A simple CLI & GUI Vigenere cipher tool. This tool will encrypt and decrypt text using the Vigenere cipher method. Its more secure than Caesar or ROT13.
- Host: GitHub
- URL: https://github.com/clats97/vigenerecipher
- Owner: Clats97
- License: apache-2.0
- Created: 2025-03-25T01:26:02.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-04-11T08:08:20.000Z (3 months ago)
- Last Synced: 2025-06-02T21:46:42.670Z (24 days ago)
- Topics: cipher-algorithms, ciphers, encryption, encryption-algorithms, encryption-decryption, encryption-tool, trending, trending-repositories, vigenere-cipher, vigenere-cipher-algorithm, vigenere-encoder
- Language: Python
- Homepage:
- Size: 11.3 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# VigenereCipher
A simple CLI & GUI Vigenere cipher tool. This tool will encrypt and decrypt text using the Vigenere cipher method. It's more secure than Caesar or ROT13.### Simple Explanation of the Vigenère Cipher:
The **Vigenère cipher** is a method of encrypting text by using a keyword. Unlike a basic Caesar cipher (which shifts letters by a fixed amount), the Vigenère cipher uses different shifts based on the letters of a keyword.

### How It Works (Step-by-Step):
**Step 1: Choose a Keyword**
- You select a word, for example: `KEY`.**Step 2: Write Your Plaintext**
- Suppose the message is: `HELLO`**Step 3: Repeat Your Keyword**
- Repeat the keyword beneath your message, letter by letter:
```
Message: H E L L O
Keyword: K E Y K E
```**Step 4: Convert Letters into Numerical Values**
- Assign numbers from `0 to 25` for each letter (`A=0, B=1, C=2... Z=25`):| Message | H(7) | E(4) | L(11) | L(11) | O(14) |
|---------|------|------|-------|-------|-------|
| Keyword | K(10)| E(4) | Y(24) | K(10) | E(4) |**Step 5: Add the Numbers (Modulo 26)**
- Add the numerical values of message and keyword letters together, then take the remainder when divided by `26` (modulo 26):| Calculation | (7+10)=17 | (4+4)=8 | (11+24)=35 mod 26=9 | (11+10)=21 | (14+4)=18 |
|-------------|-----------|---------|----------------------|------------|-----------|
| Result | 17 | 8 | 9 | 21 | 18 |**Step 6: Convert Back to Letters**
- Translate the numeric results back to letters (`A=0, B=1... Z=25`):| Result Number | 17 | 8 | 9 | 21 | 18 |
|---------------|----|---|---|----|----|
| Encrypted | R | I | J | V | S |The ciphertext becomes `RIJVS`.
---
### Decryption (Reversing the Process):
To decrypt, simply reverse this process:
- Convert letters back to numbers.
- Subtract keyword numbers from ciphertext numbers (using modulo 26).
- Convert numbers back to letters.---
### Why Vigenère is Better than Caesar:
- It doesn't always shift by the same amount, making it harder to crack.
- It resists frequency analysis better, because each letter can be encrypted differently depending on the keyword.- ## License
Distributed under the Apache 2.0 License.
**Author**
Joshua M Clatney (Clats97)
Ethical Pentesting Enthusiast
Copyright 2025 Joshua M Clatney (Clats97)