Cryptography

0 comments

The GitHub site com/TomPrograms/Python-Internet-Chat-Room“>https://github.com/TomPrograms/Python-Internet-Chat-Room has a fully functional Internet Chat Room written in Python released under the MIT license, which allows use, copying, and modification.

Download a copy of this program and run it. What encryption does it use, if any? Is an eavesdropper with access to the network traffic able to read the messages sent to/from the users? Demonstrate.

Modify the program so that the traffic between server and client is properly encrypted. The program should

  • Include a mechanism so that the client and the server can verify the identity of each other.
  • Properly encrypt the data in transit between the client and the server.
  • What method is being used for key exchange?
  • What method is being used for encryption?
  • What message authentication code is being used?
  • A report that answers all the questions provided, including the following:
    • The results of running the original program
    • Evidence from the demonstration that an eavesdropper can or cannot read the messages sent by the original program.
    • An explanation of the mechanism that the client and server use to verify each others identity.
    • An explanation how the data is being encrypted
    • An explanation how key exchange is being handled
    • An explanation how authentication codes are being used
    • Screenshots or the equivalent showing your code in action.
    • Evidence from the demonstration that an eavesdropped cannot read the messages sent across the network.
  • The source code for your result.
    • It should be properly commented and written in a professional style.
    • If the source code is contained in a publicly available repository (e.g. GitHub) then it should have an appropriate license.
    • I will run the code, so any necessary instructions must be provided.

For your choice of encryption:

Demonstrate that the data transferred between the client and server cannot be read by an eavesdropper with access to the network traffic.

The project deliverables are

About the Author

Follow me


{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}