Simple Cryptography Save

Scripts that illustrate basic cryptography concepts based on Coursera Standford Cryptography I course and more.

Project README

🐳 ☕️

About

  • Python scripts that illustrate basic cryptography concepts based on Coursera Standford Cryptography I course and more
  • Each has tests, notes and detailed explanations in the hopes that you can clearly understand what's happening
  • The references section of this README links to awesome websites you can use for learning cryptography

1. Many Time Pad

  • This script will be able to decrypt a target ciphertext, given a bunch on intercepted ciphertexts encrypted with the same key (which may or may not have random errors). A stream cipher key should never be used more than once.

2. Block Ciphers

  • You'll be able to encrypt or decrypt a message given a key using two modes of block cipher operations; CBC mode and CTR mode.

3. Simple File Authentication System

  • A simple file authentication system that simulate how you'd be able to authenticate and play video chunks as they are downloaded without having to wait for the entire file.

4. Padding Oracle Attack

  • This script illustrates how you'd be able to decrypt an intercepted ciphertext if the receiver reveals whether a sent ciphertext is of valid format or not.

5. Meet In the Middle Attack

  • The meet-in-the-middle attack (MITM) is a generic space–time tradeoff cryptographic attack. We demonstrate the MITM attack by using it to solve a discrete log problem.

6. Factoring Challenges

  • RSA can be broken when the public modulus N is generated incorrectly. These scripts illustrate how you'd be able to factor N when p and q are close to each other.

7. Basic RSA

  • An example pipeline that demonstrates basic RSA encryption and decryption.

References

🐳 ☕️

Open Source Agenda is not affiliated with "Simple Cryptography" Project. README Source: mithi/simple-cryptography