An introductory assignment for learning public/private-key exchange.
Difficulty: Medium.
Recommended level:
- Ability to code and understand python
- Some basic understanding of networks
Please read Background.md to gain some understanding of Key-Exchange.
Linux + Python3 + Git. Other environments not tested, but all UNIX environments should work.
Run the following:
git clone https://github.com/mzen17/SEP01-HW.git
cd SEP01-HW
sudo python3 -m test.py
Why does this program need sudo? It turns out, to create a socket in Linux, one needs root access.
- You should only be modifying the client.py file. Other files are system libraries.
- Sometimes the code will hang. Ctrl+C to quit.
This is what tests passing should look like:
- Implement SAT sharing with basic calculations.
- Ensure it says test1 passed.
- Implement decrypt and encrypt for strings->int and int->string
- Utilize it during SAT sharing.
- Ensure test2 passes.
IP.
We will review the program in lecture.
Post questions on the discord!
