This project implements various cryptographic algorithms and attacks in Java 8.
-
Algorithms
- Asymmetric Cipher:
- RSA with PKCS1 v1.5 Padding
- Traditional Ciphers:
- Four Square
- Monoalphabetic
- Playfair
- Vigenere
- Asymmetric Cipher:
-
Attacks
- CBC Padding Oracle Attack
- RSA Attacks:
- Fermat Factorization
- Miller Factorization
- Kindle Signature Forgery
- Signature Without Padding
- Close Primes
- Attacks on Traditional Ciphers:
- Four Square
- Monoalphabetic
- Playfair
- Vigenere
Compile the project:
mvn compile
Run tests:
mvn test
Unit tests are provided for all implemented algorithms and attacks. See the test/
directory for details.
This project is licensed under the MIT License.
Attacks on traditional ciphers are based on solutions from Practical Cryptography.