This is a simple program that encrypts and decrypts a message m using the Blum-Goldwasser probabilistic encryption algorithm.
This cryptosystem is a very fast encryption and decryption algorithm, while remaining semantically secure, making it secured against
chosen plaintext attacks. However, Blum-Goldwasser encryption is still not secured agaings chosen ciphertext attacks. If a decryption
"oracle" will decrypt everything we feed it, we can very easily get all necessary pi
's to decrypt and encrypt any message with a certain starting seed.
This program is written in Python 2.7. To run simply run
python blumgoldwasser.py