Skip to content

fardinanam/CSE406-Computer-Security

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CSE406 - Computer Security

Offline 1 (AES Encryption-Decryption with Diffie-Hellman Key Exchange)

Navigate to solutions folder and run the following commands:

pip install -r requirements.txt

Part 1 - Independent Implementation of AES

run testAES.py to see the results.

Part 2 - Independent Implementation of Diffie-Hellman Key Exchange

run testDH.py to see the results.

Part 3 - Implementation of AES cryptosystem with TCP socket programming

run server.py and client.py to see the results.

Bonus Tasks

  • RSA Key Exchange: RSA is used to exchange the AES key between the client and the server. The keys are generated on client side. The client and passes the public key to the server. The server then uses the public key to encrypt p, g, A and send those to the client. Again, the opposite is done while sending B from client to server. Run testRSA.py to see the results.
  • RSA Authentication: While sending data from one to the other, there is no way for the receiver to know if the sender is actually the one whose data the receiver is expecting. RSA can be used to authenticate the sender. The sender can sign the data with its private key and the receiver can verify the signature with the sender's public key. Details can be found here in the Signing Messages section.

Offline 2 (Malware)

Online 2 (Firewall)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published