This project demonstrates how to securely encrypt packets of messages using AES-256 encryption. Keys are securely exchanged using Kyber, a post-quantum cryptographic algorithm, and authenticated using Dilithium ensuring protection against both classical and quantum attacks.
-
Activate the environment
source venv/bin/activate
-
Git clone the
pqc_aes_multipath
repo:
https://github.com/abhisekjha/NextGenSecureMessaging.git
cd pqc_aes_multipath
- git clone
Kyber based PYKY
https://github.com/asdfjkl/pyky.git
- git clone
Dilithium
and rename it todilithium
https://github.com/GiacomoPope/dilithium-py
- Set and verify Pythonpath:
export PYTHONPATH=/path/to/NextGenSecureMessaging:/path/to/NextGenSecureMessaging/pyky:/path/to/NextGenSecureMessaging/dilithium
echo $PYTHONPATH
- Install requirements.txt
pip install -r requirements.txt
- Run test cases using make
make
I would like to thank the pyky repository and dilithium-py for providing the implementation of the Kyber cryptographic algorithm and Dilithium Implementation, which was used in this project.